mirror of
https://github.com/apache/httpd.git
synced 2026-01-26 19:01:35 +03:00
still remains is that some of the apr-util functions aren't being compiled in, so they work when the apr-util library is in the right location, but once that library is removed, the server won't start. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87468 13f79535-47bb-0310-9956-ffa450edef68
161 lines
4.4 KiB
Bash
Executable File
161 lines
4.4 KiB
Bash
Executable File
#!/bin/sh
|
|
##
|
|
## buildinfo.sh -- Determine Build Information
|
|
## Initially written by Ralf S. Engelschall <rse@apache.org>
|
|
## for the Apache's Autoconf-style Interface (APACI)
|
|
##
|
|
#
|
|
# This script falls under the Apache License.
|
|
# See http://www.apache.org/docs/LICENSE
|
|
|
|
|
|
#
|
|
# argument line handling
|
|
#
|
|
error=no
|
|
if [ $# -ne 1 -a $# -ne 2 ]; then
|
|
error=yes
|
|
fi
|
|
if [ $# -eq 2 -a "x$1" != "x-n" ]; then
|
|
error=yes
|
|
fi
|
|
if [ "x$error" = "xyes" ]; 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 [ "x$username" = "x" ]; then
|
|
username="$USER"
|
|
if [ "x$username" = "x" ]; then
|
|
username="`(whoami) 2>/dev/null |\
|
|
awk '{ printf("%s", $1); }'`"
|
|
if [ "x$username" = "x" ]; then
|
|
username="`(who am i) 2>/dev/null |\
|
|
awk '{ printf("%s", $1); }'`"
|
|
if [ "x$username" = "x" ]; then
|
|
username='unknown'
|
|
fi
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
#
|
|
# determine hostname and domainname
|
|
#
|
|
hostname="`(uname -n) 2>/dev/null |\
|
|
awk '{ printf("%s", $1); }'`"
|
|
if [ "x$hostname" = "x" ]; then
|
|
hostname="`(hostname) 2>/dev/null |\
|
|
awk '{ printf("%s", $1); }'`"
|
|
if [ "x$hostname" = "x" ]; then
|
|
hostname='unknown'
|
|
fi
|
|
fi
|
|
case $hostname in
|
|
*.* )
|
|
domainname=".`echo $hostname | cut -d. -f2-`"
|
|
hostname="`echo $hostname | cut -d. -f1`"
|
|
;;
|
|
esac
|
|
if [ "x$domainname" = "x" ]; 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 [ "x$domainname" = "x" ]; 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 [ "x$time_year" = "x" ]; then
|
|
time_year="`date '+%y' | awk '{ printf("%s", $1); }'`"
|
|
case $time_year in
|
|
[5-9][0-9]) time_year="19$time_year" ;;
|
|
[0-4][0-9]) 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 [ "x$newline" = "xyes" ]; 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
|
|
|