1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
#! /bin/sh
# $Id$
# Get configuration info from `Makefile' and `config.h'
# Copyright (C) 1995 Technische Universitaet Braunschweig, Germany.
# Written by Andreas Zeller <zeller@gnu.org>.
#
# This file is part of DDD.
#
# DDD is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public
# License as published by the Free Software Foundation; either
# version 3 of the License, or (at your option) any later version.
#
# DDD is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with DDD -- see the file COPYING.
# If not, see <http://www.gnu.org/licenses/>.
#
# DDD is the data display debugger.
# For details, see the DDD World-Wide-Web page,
# `http://www.gnu.org/software/ddd/',
# or send a mail to the DDD developers <ddd@gnu.org>.
# Feature info is seldom useful, so leave it out by default
features=false
test "$#" = 0 && set USERINFO
for file in "$@"; do
if [ $file = '-f' -o $file = '--full' ]; then
features=true
else
test -f $file && break
fi
done
userinfo=`cat $file || echo "the DDD development team <ddd@gnu.org>"`
userinfo=`echo "$userinfo." |
sed ':a
\/......................................................../q
s/.*/& /
b a'`
echo "// Generated automatically by \`config-info' from \`Makefile' and \`config.h'."
echo "// Do not edit."
echo
echo '#include "configinfo.h"'
echo
echo "static const char *config_sccs_info = "
# Issue date in ISO 8601 YYYY-MM-DD format
year=`date '+%Y' 2>/dev/null || date +'%y'`
case $year in
9?) year=19$year;;
??) year=20$year;;
esac
month=`date '+%m'`
day=`date '+%d'`
date=${year}-${month}-${day}
(
echo "@(#)Built $date by $userinfo"
if $features; then
echo ""
echo Features:
(
grep '#define' config.h
grep '#undef' config.h
) |
sed 's,/\* *\(.*\) *\*/,\1,g' |
sed 's, *$,,' | sort +1 | sed 's,#undef ,#undef ,'
echo
echo Tools and Flags:
grep '^[_a-zA-Z]* *=' Makefile | grep -v '\\$' |
sed 's/\([_a-zA-Z]*\) *= *\(.*\)/\1=\2/' | sort -f
fi
) | sed '
s/[\"]/\\&/g
s/.*/"&\\n";/'
echo "const char *config_info = config_sccs_info + 4;"
echo "const char *config_dummy = \"@(#)\";";
|