rse 98/08/25 02:52:40
Modified: src CHANGES . configure Added: src/helpers buildinfo.sh Log: Replace the inlined information grabbing stuff for the configuration adjustment feature (no --without-confadjust) with calls to a new helper script `buildinfo.sh' which is both more flexible and already proofed to be more robust against platform differences (latest ePerl and WML releases shipped with it and no problems with it were discovered by the users). This mainly fixes the recently occured ``sed: command garbled: ...'' problems. PR: 2776, 2848 Revision Changes Path 1.1035 +7 -0 apache-1.3/src/CHANGES Index: CHANGES =================================================================== RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.1034 retrieving revision 1.1035 diff -u -r1.1034 -r1.1035 --- CHANGES 1998/08/25 09:22:12 1.1034 +++ CHANGES 1998/08/25 09:52:37 1.1035 @@ -1,5 +1,12 @@ Changes with Apache 1.3.2 + *) Replace the inlined information grabbing stuff for the configuration + adjustment feature (no --without-confadjust) with calls to a new helper + script `buildinfo.sh' which is both more flexible and already proofed to + be more robust against platform differences. This mainly fixes the + recently occured ``sed: command garbled: ...'' problems. + [Ralf S. Engelschall] PR#2776, PR#2848 + *) Make ab.c again pass ``gcc -Wall -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline'' without complains after we recently added the POST feature. 1.44 +2 -36 apache-1.3/configure Index: configure =================================================================== RCS file: /export/home/cvs/apache-1.3/configure,v retrieving revision 1.43 retrieving revision 1.44 diff -u -r1.43 -r1.44 --- configure 1998/08/15 15:02:46 1.43 +++ configure 1998/08/25 09:52:39 1.44 @@ -824,42 +824,8 @@ if [ ".`id | grep root`" = . ]; then conf_port="8080" fi - username="$LOGNAME" - if [ ".$username" = . ]; then - username="$USER" - if [ ".$username" = . ]; then - username="`whoami 2>/dev/null | sed -e 's/\n$//'`" - if [ ".$username" = . ]; then - username="`who am i 2>/dev/null | cut '-d ' -f1`" - if [ ".$username" = . ]; then - username="unknown" - fi - fi - fi - fi - hostname="`uname -n | sed -e 's/\n$//'`" - if [ ".$hostname" = . ]; then - hostname="`hostname | sed -e 's/\n$//'`" - if [ ".$hostname" = . ]; then - hostname="hostname" - fi - fi - hostname="`echo $hostname | sed -e 's/\..*//'`" - domainname=""; - if [ -f /etc/resolv.conf ]; then - domainname="`egrep '^[ ]*domain' /etc/resolv.conf | head -1 |\ - sed -e 's/.*domain//' -e 's/^[ ]*//' \ - -e 's/^ *//' -e 's/^ *//' \ - -e 's/^\.//' -e 's/^/./'`" - if [ ".$domainname" = . ]; then - domainname="`egrep '^[ ]*search' /etc/resolv.conf | head -1 |\ - sed -e 's/.*search//' -e 's/^[ ]*//' \ - -e 's/^ *//' -e 's/^ *//' \ - -e 's/ .*//' -e 's/^\.//' -e 's/^/./'`" - fi - fi - conf_serveradmin="[EMAIL PROTECTED]" - conf_servername="$hostname$domainname" + conf_serveradmin="`$aux/buildinfo.sh -n [EMAIL PROTECTED]" + conf_servername="`$aux/buildinfo.sh -n %h%d`" fi ## 1.1 apache-1.3/src/helpers/buildinfo.sh Index: buildinfo.sh =================================================================== #!/bin/sh ## ## buildinfo.sh -- Determine Build Information ## Written by Ralf S. Engelschall <[EMAIL PROTECTED]> ## for the Apache's Autoconf-style Interface (APACI) ## # # argument line handling # error=no if [ $# -ne 1 -a $# -ne 2 ]; then error=yes fi if [ $# -eq 2 -a ".$1" != ".-n" ]; then error=yes fi if [ $error = yes ]; then echo "$0:Error: invalid argument line" echo "$0:Usage: $0 [-n] <format-string>" echo "Where <format-string> can contain:" echo " %u ...... substituted by determined username (foo)" echo " %h ...... substituted by determined hostname (bar)" echo " %d ...... substituted by determined domainname (.com)" echo " %D ...... substituted by determined day (DD)" echo " %M ...... substituted by determined month (MM)" echo " %Y ...... substituted by determined year (YYYYY)" echo " %m ...... substituted by determined monthname (Jan)" exit 1 fi if [ $# -eq 2 ]; then newline=no format_string="$2" else newline=yes format_string="$1" fi # # initialization # username='' hostname='' domainname='' time_day='' time_month='' time_year='' time_monthname='' # # determine username # username="$LOGNAME" if [ ".$username" = . ]; then username="$USER" if [ ".$username" = . ]; then username="`whoami 2>/dev/null |\ awk '{ printf("%s", $1); }'`" if [ ".$username" = . ]; then username="`who am i 2>/dev/null |\ awk '{ printf("%s", $1); }'`" if [ ".$username" = . ]; then username='unknown' fi fi fi fi # # determine hostname and domainname # hostname="`uname -n 2>/dev/null |\ awk '{ printf("%s", $1); }'`" if [ ".$hostname" = . ]; then hostname="`hostname 2>/dev/null |\ awk '{ printf("%s", $1); }'`" if [ ".$hostname" = . ]; then hostname='unknown' fi fi case $hostname in *.* ) domainname=".`echo $hostname | cut -d. -f2-`" hostname="`echo $hostname | cut -d. -f1`" ;; esac if [ ".$domainname" = . ]; then if [ -f /etc/resolv.conf ]; then domainname="`egrep '^[ ]*domain' /etc/resolv.conf | head -1 |\ sed -e 's/.*domain//' \ -e 's/^[ ]*//' -e 's/^ *//' -e 's/^ *//' \ -e 's/^\.//' -e 's/^/./' |\ awk '{ printf("%s", $1); }'`" if [ ".$domainname" = . ]; then domainname="`egrep '^[ ]*search' /etc/resolv.conf | head -1 |\ sed -e 's/.*search//' \ -e 's/^[ ]*//' -e 's/^ *//' -e 's/^ *//' \ -e 's/ .*//' -e 's/ .*//' \ -e 's/^\.//' -e 's/^/./' |\ awk '{ printf("%s", $1); }'`" fi fi fi # # determine current time # time_day="`date '+%d' | awk '{ printf("%s", $1); }'`" time_month="`date '+%m' | awk '{ printf("%s", $1); }'`" time_year="`date '+%Y' 2>/dev/null | awk '{ printf("%s", $1); }'`" if test ".$time_year" = .; then time_year="`date '+%y' | awk '{ printf("%s", $1); }'`" case $time_year in 9[0-9]*) time_year="19$time_year" ;; *) time_year="20$time_year" ;; esac fi case $time_month in 1|01) time_monthname='Jan' ;; 2|02) time_monthname='Feb' ;; 3|03) time_monthname='Mar' ;; 4|04) time_monthname='Apr' ;; 5|05) time_monthname='May' ;; 6|06) time_monthname='Jun' ;; 7|07) time_monthname='Jul' ;; 8|08) time_monthname='Aug' ;; 9|09) time_monthname='Sep' ;; 10) time_monthname='Oct' ;; 11) time_monthname='Nov' ;; 12) time_monthname='Dec' ;; esac # # create result string # if [ ".$newline" = .yes ]; then echo $format_string |\ sed -e "s;%u;$username;g" \ -e "s;%h;$hostname;g" \ -e "s;%d;$domainname;g" \ -e "s;%D;$time_day;g" \ -e "s;%M;$time_month;g" \ -e "s;%Y;$time_year;g" \ -e "s;%m;$time_monthname;g" else echo "${format_string}&" |\ sed -e "s;%u;$username;g" \ -e "s;%h;$hostname;g" \ -e "s;%d;$domainname;g" \ -e "s;%D;$time_day;g" \ -e "s;%M;$time_month;g" \ -e "s;%Y;$time_year;g" \ -e "s;%m;$time_monthname;g" |\ awk '-F&' '{ printf("%s", $1); }' fi