You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by Jim Jagielski <ji...@hyperreal.com> on 1996/09/13 23:02:23 UTC
cvs commit: apache/src GuessOS CHANGES Configuration.tmpl Configure INSTALL
jim 96/09/13 14:02:21
Modified: src CHANGES Configuration.tmpl Configure INSTALL
Added: src GuessOS
Log:
New Configure version. We now guess the
OS/Platform
Revision Changes Path
1.63 +4 -4 apache/src/CHANGES
Index: CHANGES
===================================================================
RCS file: /export/home/cvs/apache/src/CHANGES,v
retrieving revision 1.62
retrieving revision 1.63
diff -C3 -r1.62 -r1.63
*** CHANGES 1996/09/08 17:31:33 1.62
--- CHANGES 1996/09/13 21:02:13 1.63
***************
*** 1,4 ****
! $Id: CHANGES,v 1.62 1996/09/08 17:31:33 jim Exp $
Changes with Apache 1.2b1:
--- 1,4 ----
! $Id: CHANGES,v 1.63 1996/09/13 21:02:13 jim Exp $
Changes with Apache 1.2b1:
***************
*** 19,27 ****
[Ben Laurie].
*) Somewhat cleaner Configure implementation
! Only a simple selection of PLATFORM is required for Configure/
! Configuration to work. Concept of "Rules" added to allow
! for control of Configure's behavior. [Jim Jagielski]
*) Add setuid/gid execution via setuid wrapper
Apache can now execute CGI scripts as the User/Group of the
--- 19,27 ----
[Ben Laurie].
*) Somewhat cleaner Configure implementation
! GuessOS script used to determine OS/Platform for Configure.
! Concept of "Rules" added to allow for control of Configure's
! behavior. [Jim Jagielski]
*) Add setuid/gid execution via setuid wrapper
Apache can now execute CGI scripts as the User/Group of the
1.36 +22 -51 apache/src/Configuration.tmpl
Index: Configuration.tmpl
===================================================================
RCS file: /export/home/cvs/apache/src/Configuration.tmpl,v
retrieving revision 1.35
retrieving revision 1.36
diff -C3 -r1.35 -r1.36
*** Configuration.tmpl 1996/09/08 17:18:43 1.35
--- Configuration.tmpl 1996/09/13 21:02:15 1.36
***************
*** 1,4 ****
! # $Id: Configuration.tmpl,v 1.35 1996/09/08 17:18:43 jim Exp $
# Config file for the Apache httpd.
# Configuration.tmpl is the template for Configuration. Configuration should
--- 1,4 ----
! # $Id: Configuration.tmpl,v 1.36 1996/09/13 21:02:15 jim Exp $
# Config file for the Apache httpd.
# Configuration.tmpl is the template for Configuration. Configuration should
***************
*** 56,76 ****
# functions. The format is: Rule RULE=value
#
# At present, only the following RULES are known: WANTHSREGEX, SOCKS,
! # STATUS and BADMMAP.
#
# For all Rules, if set to "yes", then Configure knows we want that
# capability and does what is required to add it in. If set to "default"
# then Configure makes a "best guess"; if set to anything else, or not
# present, then nothing is done.
#
- # WANTHSREGEX:
- # Apache requires a POSIX regex implementation. Harry Spencer's
- # excellent regex package is included with Apache and can be used
- # if desired. If your OS has a decent regex, you can elect to
- # not use this one by setting WANTHSREGEX to 'no' or commenting
- # out the Rule. The "default" action is "no" unless overruled
- # by OS specifics
- #
# SOCKS:
# If SOCKS is set to 'yes', be sure that you add the sock library
# location to EXTRA_LIBS, otherwise Configure will assume
--- 56,68 ----
# functions. The format is: Rule RULE=value
#
# At present, only the following RULES are known: WANTHSREGEX, SOCKS,
! # STATUS, BADMMAP and IRIXNIS.
#
# For all Rules, if set to "yes", then Configure knows we want that
# capability and does what is required to add it in. If set to "default"
# then Configure makes a "best guess"; if set to anything else, or not
# present, then nothing is done.
#
# SOCKS:
# If SOCKS is set to 'yes', be sure that you add the sock library
# location to EXTRA_LIBS, otherwise Configure will assume
***************
*** 82,139 ****
# to 'yes'. If the status module is not included, having STATUS
# set to 'yes' has no impact.
#
! # BADMMAP:
! # If you find that your OS can't cope with mmap (compiles OKAY but refuses
! # to run and moans "httpd: Could not mmap memory" .. or similar) set
! # this to 'yes'.
Rule STATUS=yes
Rule SOCKS=no
# The following rules should be set automatically by Configure. However, if
# they are not set by Configure (because we don't know the correct value for
# your platform), or are set incorrectly, you may override them here.
# If you have to do this, please let us know what you set and what your
# platform is, by sending mail to apache-bugs@apache.org.
-
- Rule WANTHSREGEX=default
- Rule BADMMAP=default
-
- ###############
#
! # The platforms: Uncomment the line for your OS/platform
! # PLATFORM:
#
! ###############
! #PLATFORM=SUNOS4 # SunOS4
! #PLATFORM=SOLARIS2 # Solaris 2
! #PLATFORM=IRIX # SGI IRIX
! #PLATFORM=IRIXNIS # SGI IRIX with NIS and user-supplied directories
! #PLATFORM=HP-UX # HP-UX
! #PLATFORM=HP-UX10 # HP-UX 10
! #PLATFORM=AIX # IBM AIX
! #PLATFORM=ULTRIX # Ultrix
! #PLATFORM=OSF # DEC OSF/1
! #PLATFORM=NeXT # NeXT
! #PLATFORM=SEQUENT # Sequent
! #PLATFORM=LINUX # Linux with 486 support in kernel
! #PLATFORM=A/UX # Apple A/UX
! #PLATFORM=SCO3 # SCO ODT 3
! #PLATFORM=SCO5 # SCO ODT 5
! #PLATFORM=SVR4 # SVR4 implementation (non Unixware)
! #PLATFORM=UNIXWARE # Unixware
! #PLATFORM=UTS # Amdahl UTS 2.1
! #PLATFORM=APOLLO # HP / Apollo Domain/OS
! #PLATFORM=BSD # FreeBSD/NetBSD
! #PLATFORM=BSD486 # FreeBSD/NetBSD on 486/586
! #PLATFORM=BSDI # BSDI
! #PLATFORM=BSDI486 # BSDI on 486/586
! #PLATFORM=QNX # QNX
! #PLATFORM=LYNXOS # LynxOS
! #PLATFORM=DGUX # DG/UX 5.4
! #PLATFORM=UXPDS # UXP/DS V20L10
! #PLATFORM=OS/2 # EMX OS/2 Port
################################################################
# Module configuration
--- 74,110 ----
# to 'yes'. If the status module is not included, having STATUS
# set to 'yes' has no impact.
#
! # IRIXNIS:
! # Only takes effect if Configure determines that you are running
! # SGI IRIX. If you are, and you are using NIS, you should set this
! # to 'yes'
! #
Rule STATUS=yes
Rule SOCKS=no
+ Rule IRIXNIS=no
# The following rules should be set automatically by Configure. However, if
# they are not set by Configure (because we don't know the correct value for
# your platform), or are set incorrectly, you may override them here.
# If you have to do this, please let us know what you set and what your
# platform is, by sending mail to apache-bugs@apache.org.
#
! # WANTHSREGEX:
! # Apache requires a POSIX regex implementation. Harry Spencer's
! # excellent regex package is included with Apache and can be used
! # if desired. If your OS has a decent regex, you can elect to
! # not use this one by setting WANTHSREGEX to 'no' or commenting
! # out the Rule. The "default" action is "no" unless overruled
! # by OS specifics
#
! # BADMMAP:
! # If you find that your OS can't cope with mmap (compiles OKAY but refuses
! # to run and moans "httpd: Could not mmap memory" .. or similar) set
! # this to 'yes'.
+ Rule WANTHSREGEX=default
+ Rule BADMMAP=default
################################################################
# Module configuration
***************
*** 198,204 ****
## The status module allows the server to display current details about
## how well it is performing and what it is doing. Consider also enabling
! ## :STATUS=yes (see the Rules section near the start of the file) to allow
## full status information. Check conf/access.conf on how to enable this.
# Module status_module mod_status.o
--- 169,175 ----
## The status module allows the server to display current details about
## how well it is performing and what it is doing. Consider also enabling
! ## STATUS=yes (see the Rules section near the start of the file) to allow
## full status information. Check conf/access.conf on how to enable this.
# Module status_module mod_status.o
1.17 +68 -55 apache/src/Configure
Index: Configure
===================================================================
RCS file: /export/home/cvs/apache/src/Configure,v
retrieving revision 1.16
retrieving revision 1.17
diff -C3 -r1.16 -r1.17
*** Configure 1996/09/08 17:18:45 1.16
--- Configure 1996/09/13 21:02:16 1.17
***************
*** 1,5 ****
#!/bin/sh
! # $Id: Configure,v 1.16 1996/09/08 17:18:45 jim Exp $
trap 'rm $tmpfile; exit' 0 1 2 3 15
# Apache configuration script, first cut --- rst.
--- 1,5 ----
#!/bin/sh
! # $Id: Configure,v 1.17 1996/09/13 21:02:16 jim Exp $
trap 'rm $tmpfile; exit' 0 1 2 3 15
# Apache configuration script, first cut --- rst.
***************
*** 10,15 ****
--- 10,17 ----
# contains comments, specific compiler flags, a list of included
# modules and "rules". These rules are used to allow Configure to
# be totally configured from Configuration
+ #
+ # Uses 2 supplemental scripts: CutRule and GuessOS
file=Configuration
tmpfile=htconf.$$
***************
*** 21,26 ****
--- 23,33 ----
echo "Using '$file' as config file"
fi
+ if [ ! -r $file ]; then
+ echo "Can't see or read \"$file\""
+ exit 1
+ fi
+
# First, strip comments and blank lines and then change Rules to comments
sed 's/#.*//' $file | sed '/^[ ]*$/d' | sed 's/[ ]*$//' | \
***************
*** 100,106 ****
END { print "###############"; }'
#
! # Now we scan thru the Makefile for the PLATFORM seting.
# We adjust CFLAGS, LIBS, LFLAGS and INCLUDES (and other Makefile
# options) as required. Setting CC and OPTIM here has no effect
# if they were set in Configure.
--- 107,124 ----
END { print "###############"; }'
#
! # Extract the rules.
! #
! RULE_WANTHSREGEX=`./CutRule WANTHSREGEX`
! RULE_STATUS=`./CutRule STATUS`
! RULE_SOCKS=`./CutRule SOCKS`
! RULE_BADMMAP=`./CutRule BADMMAP`
! RULE_IRIXNIS=`./CutRule IRIXNIS`
!
! #
! # Now we determine the OS/Platform automagically, thanks to
! # GuessOS, a home-brewed OS-determiner ala config.guess
! #
# We adjust CFLAGS, LIBS, LFLAGS and INCLUDES (and other Makefile
# options) as required. Setting CC and OPTIM here has no effect
# if they were set in Configure.
***************
*** 112,126 ****
# add the required lines below.
#
! PLAT=`grep "PLATFORM=" Makefile | awk '{ print $1 }' | awk -F= '{ print $2 }'`
!
! if [ "x$PLAT" = "x" ]; then
! echo "PLATFORM has not been set!"
! exit 1
! fi
case "$PLAT" in
! A/UX)
OS='A/UX 3.1.x'
CFLAGS="$CFLAGS -DAUX -D_POSIX_SOURCE"
LIBS="$LIBS -lposix -lbsd"
--- 130,139 ----
# add the required lines below.
#
! PLAT=`./GuessOS`
case "$PLAT" in
! *-apple-aux3*)
OS='A/UX 3.1.x'
CFLAGS="$CFLAGS -DAUX -D_POSIX_SOURCE"
LIBS="$LIBS -lposix -lbsd"
***************
*** 128,142 ****
DEF_WANTHSREGEX=no
DEF_BADMMAP=no
;;
! AIX)
OS='IBM AIX'
CFLAGS="$CFLAGS -DAIX -U__STR__"
;;
! APOLLO)
OS='Apollo Domain'
CFLAGS="$CFLAGS -DAPOLLO"
;;
! DGUX)
OS='DG/UX 5.4'
CFLAGS="$CFLAGS -DDGUX"
;;
--- 141,155 ----
DEF_WANTHSREGEX=no
DEF_BADMMAP=no
;;
! *-ibm-aix*)
OS='IBM AIX'
CFLAGS="$CFLAGS -DAIX -U__STR__"
;;
! *-apollo-*)
OS='Apollo Domain'
CFLAGS="$CFLAGS -DAPOLLO"
;;
! *-dg-dgux-*)
OS='DG/UX 5.4'
CFLAGS="$CFLAGS -DDGUX"
;;
***************
*** 145,196 ****
CFLAGS="$CFLAGS -Zbsd-signals -Zbin-files -DNO_KILLPG -DNEED_STRCASECMP -DNO_SETSID -g"
LIBS="$LIBS -lsocket -llibufc -lgdbm -lbsd"
;;
! HP-UX)
! OS='HP-UX'
! CFLAGS="$CFLAGS -DHPUX"
! ;;
! HP-UX10)
OS='HP-UX 10'
CFLAGS="$CFLAGS -DHPUX10"
;;
! IRIX)
! OS='SGI IRIX'
! CFLAGS="$CFLAGS -DIRIX"
! ;;
! IRIXNIS)
! OS='SGI IRIX w/NIS'
! CFLAGS="$CFLAGS -DIRIX"
! LIBS="$LIBS -lsun"
;;
! LINUX)
OS='Linux'
CFLAGS="$CFLAGS -DLINUX"
;;
! LYNXOS)
OS='LynxOS'
CFLAGS="$CFLAGS -DLYNXOS"
LIBS="$LIBS -lbsd -ldes -lc_p"
;;
! BSDI)
! OS='BSDI'
! ;;
! BSDI486)
OS='BSDI w/486'
CFLAGS="$CFLAGS -m486"
;;
! BSD)
! OS='FreeBSD/NetBSD'
! LIBS="$LIBS -lcrypt"
;;
! BSD486)
OS='FreeBSD/NETBSD on 486'
LIBS="$LIBS -lcrypt"
;;
! NeXT)
OS='NeXT'
CFLAGS="$CFLAGS -DNEXT"
;;
! OSF)
OS='DEC OSF/1'
CFLAGS="$CFLAGS -DOSF1"
;;
--- 158,210 ----
CFLAGS="$CFLAGS -Zbsd-signals -Zbin-files -DNO_KILLPG -DNEED_STRCASECMP -DNO_SETSID -g"
LIBS="$LIBS -lsocket -llibufc -lgdbm -lbsd"
;;
! *-hp-hpux10.*)
OS='HP-UX 10'
CFLAGS="$CFLAGS -DHPUX10"
;;
! *-hp-hpux*)
! OS='HP-UX'
! CFLAGS="$CFLAGS -DHPUX"
;;
! *-sgi-irix*)
! if [ $RULE_IRIXNIS="yes" ]; then
! OS='SGI IRIX w/NIS'
! CFLAGS="$CFLAGS -DIRIX"
! LIBS="$LIBS -lsun"
! else
! OS='SGI IRIX'
! CFLAGS="$CFLAGS -DIRIX"
! fi
! ;;
! *-linux-*)
OS='Linux'
CFLAGS="$CFLAGS -DLINUX"
;;
! *-lynx-lynxos*)
OS='LynxOS'
CFLAGS="$CFLAGS -DLYNXOS"
LIBS="$LIBS -lbsd -ldes -lc_p"
;;
! *486-*-bsdi*)
OS='BSDI w/486'
CFLAGS="$CFLAGS -m486"
;;
! *-bsdi*)
! OS='BSDI'
;;
! *486-*-freebsd*|*486-*-netbsd*)
OS='FreeBSD/NETBSD on 486'
LIBS="$LIBS -lcrypt"
;;
! *-freebsd*|*-netbsd*)
! OS='FreeBSD/NetBSD'
! LIBS="$LIBS -lcrypt"
! ;;
! *-next-nextstep*)
OS='NeXT'
CFLAGS="$CFLAGS -DNEXT"
;;
! *-dec-osf*)
OS='DEC OSF/1'
CFLAGS="$CFLAGS -DOSF1"
;;
***************
*** 199,210 ****
CFLAGS="$CFLAGS -DQNX"
LIBS="$LIBS -N128k -lsocket"
;;
! SCO3)
OS='SCO 3'
CFLAGS="$CFLAGS -DSCO -Oacgiltz"
LIBS="$LIBS -lPW -lsocket -lmalloc -lcrypt_i"
;;
! SCO5)
OS='SCO 5'
CFLAGS="$CFLAGS -DSCO5"
LIBS="$LIBS -lsocket -lmalloc -lprot"
--- 213,224 ----
CFLAGS="$CFLAGS -DQNX"
LIBS="$LIBS -N128k -lsocket"
;;
! *-sco3*)
OS='SCO 3'
CFLAGS="$CFLAGS -DSCO -Oacgiltz"
LIBS="$LIBS -lPW -lsocket -lmalloc -lcrypt_i"
;;
! *-sco5*)
OS='SCO 5'
CFLAGS="$CFLAGS -DSCO5"
LIBS="$LIBS -lsocket -lmalloc -lprot"
***************
*** 212,237 ****
DEF_WANTHSREGEX=no
DEF_BADMMAP=no
;;
! SOLARIS2)
OS='Solaris 2'
CFLAGS="$CFLAGS -DSOLARIS2"
LIBS="$LIBS -lsocket -lnsl"
;;
! SUNOS4)
OS='SunOS 4'
CFLAGS="$CFLAGS -DSUNOS4"
;;
! UNIXWARE)
OS='Unixware'
CFLAGS="$CFLAGS -DSVR4"
LIBS="$LIBS -lsocket -lnsl -lcrypt"
;;
! SVR4)
OS='SVR4'
CFLAGS="$CFLAGS -DSVR4"
LIBS="$LIBS -lsocket -lnsl -lc"
;;
! UTS)
OS='Amdahl UTS'
CFLAGS="$CFLAGS -Xa -eft -DUTS21"
LIBS="$LIBS -lsocket -lbsd -la"
--- 226,251 ----
DEF_WANTHSREGEX=no
DEF_BADMMAP=no
;;
! *-solaris2*)
OS='Solaris 2'
CFLAGS="$CFLAGS -DSOLARIS2"
LIBS="$LIBS -lsocket -lnsl"
;;
! *-sunos4*)
OS='SunOS 4'
CFLAGS="$CFLAGS -DSUNOS4"
;;
! *-unixware*)
OS='Unixware'
CFLAGS="$CFLAGS -DSVR4"
LIBS="$LIBS -lsocket -lnsl -lcrypt"
;;
! *-sysv4*)
OS='SVR4'
CFLAGS="$CFLAGS -DSVR4"
LIBS="$LIBS -lsocket -lnsl -lc"
;;
! *-uts*)
OS='Amdahl UTS'
CFLAGS="$CFLAGS -Xa -eft -DUTS21"
LIBS="$LIBS -lsocket -lbsd -la"
***************
*** 241,257 ****
CFLAGS="$CFLAGS -DUXPDS"
LIBS="$LIBS -lsocket -lnsl"
;;
! *) # default
;;
esac
! # Extract the rules
!
! RULE_WANTHSREGEX=`./CutRule WANTHSREGEX`
! RULE_STATUS=`./CutRule STATUS`
! RULE_SOCKS=`./CutRule SOCKS`
! RULE_BADMMAP=`./CutRule BADMMAP`
!
if [ "$RULE_WANTHSREGEX" = "default" ]; then
if [ "x$DEF_WANTHSREGEX" = "x" ]; then
RULE_WANTHSREGEX=no
--- 255,271 ----
CFLAGS="$CFLAGS -DUXPDS"
LIBS="$LIBS -lsocket -lnsl"
;;
! *) # default: Catch systems we don't know about
! echo Sorry, but we cannot grok \"$PLAT\"
! echo Please Email this output to apache-bugs@apache.org
! echo Thank you
! exit 1
;;
esac
! #
! # See if we need to override WANTHSREGEX or BADMMAP
! #
if [ "$RULE_WANTHSREGEX" = "default" ]; then
if [ "x$DEF_WANTHSREGEX" = "x" ]; then
RULE_WANTHSREGEX=no
***************
*** 272,279 ****
echo "# Platform: $OS" >> Makefile
echo "# Final Rules:" >> Makefile
! echo "# Rule WANTHSREGEX=$RULE_WANTHSREGEX" >> Makefile
! echo "# Rule BADMMAP=$RULE_BADMMAP" >> Makefile
echo "###############" >> Makefile
#
--- 286,293 ----
echo "# Platform: $OS" >> Makefile
echo "# Final Rules:" >> Makefile
! echo "# Rule WANTHSREGEX=$RULE_WANTHSREGEX" >> Makefile
! echo "# Rule BADMMAP=$RULE_BADMMAP" >> Makefile
echo "###############" >> Makefile
#
***************
*** 281,287 ****
#
echo "Configured for $OS platform"
- echo
#
# Handle the setting of CC and OPTIM. The values in Configure
--- 295,300 ----
1.7 +4 -5 apache/src/INSTALL
Index: INSTALL
===================================================================
RCS file: /export/home/cvs/apache/src/INSTALL,v
retrieving revision 1.6
retrieving revision 1.7
diff -C3 -r1.6 -r1.7
*** INSTALL 1996/08/20 11:50:34 1.6
--- INSTALL 1996/09/13 21:02:17 1.7
***************
*** 1,4 ****
! $Id: INSTALL,v 1.6 1996/08/20 11:50:34 paul Exp $
This release of Apache supports the notion of "optional modules".
However, the server has to know which modules are compiled into it, in
--- 1,4 ----
! $Id: INSTALL,v 1.7 1996/09/13 21:02:17 jim Exp $
This release of Apache supports the notion of "optional modules".
However, the server has to know which modules are compiled into it, in
***************
*** 10,22 ****
To do this:
1) Copy the file "Configuration.tmpl" to "Configuration" and then edit
! "Configuration". This contains the per-machine config settings of
! the Makefile, and also an additional section at the bottom which
lists the modules which have been compiled in, and also names the
files containing them. You will need to:
! a) Select the PLATFORM that you will be compiling for. You may also
! adjust the Rules and EXTRA_CFLAGS|LIBS|LFLAGS|INCLUDES if
you feel so inclined.
b) Uncomment lines corresponding to those optional modules you wish
--- 10,21 ----
To do this:
1) Copy the file "Configuration.tmpl" to "Configuration" and then edit
! "Configuration". This contains the list and settings of various
! "Rules" and an additional section at the bottom which
lists the modules which have been compiled in, and also names the
files containing them. You will need to:
! a) Adjust the Rules and EXTRA_CFLAGS|LIBS|LFLAGS|INCLUDES if
you feel so inclined.
b) Uncomment lines corresponding to those optional modules you wish