You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Jim Jagielski <ji...@jaguNET.com> on 1996/08/03 00:24:28 UTC
New Config, Final Phase
I'd like to offer this patch for final consideration. It's been tuned
and adjusted in response to all the feedback, public and private.
It's a _MUCH_ cleaner way to Configure Apache and seems to make more
sense; The person simply notes the platform being used (and some
simple "rules") and Configure takes care of the rest.
Index: apache/src/Configuration.tmpl
===================================================================
RCS file: /export/home/cvs/apache/src/Configuration.tmpl,v
retrieving revision 1.25
diff -c -r1.25 Configuration.tmpl
*** Configuration.tmpl 1996/07/30 19:36:57 1.25
--- Configuration.tmpl 1996/08/02 22:17:54
***************
*** 1,185 ****
# Config file for the Apache httpd.
# Configuration.tmpl is the template for Configuration. Configuration should
! # be edited to select system type. Configuration.tmpl should only be changed
! # when a new system or module is added, or an existing one modified.
! # There are three types of lines here:
# '#' comments, distinguished by having a '#' as the first non-blank character
#
! # Lines which set a Make option --- these are simply copied into the Makefile
#
# Module selection lines, distinguished by having 'Module' at the front.
# These list the configured modules, in priority order (highest priority
# first). They're down at the bottom.
- # First, ordinary compile-time configuration.
-
- # What to call the compiler: For normal machines with ANSI compilers
- # CC= cc
- # For Suns or other non-ANSI platforms. Please make sure your gcc is
- # 2.0 or later, as 1.40 seems to create bad code for the Sun 4.
- CC= gcc
-
- # CFLAGS, compile flags.
-
- # -DMINIMAL_DNS is now obsolete. Use httpd.conf settings of
- # HostnameLookups on
- # or
- # HostnameLookups off
- #
- # If you want to have more secure hostname resolution at the cost of some
- # performance, use -DMAXIMUM_DNS.
- # If you want setting the xbit of a file to cause it to be treated as
- # server-included HTML (unless it is a CGI script), say -DXBITHACK. Note
- # that this is a run-time option, per-directory, either way (via the XBITHACK
- # command); this option only sets the default.
-
- # 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) try
- # disabling use of shared memory for process management (scoreboard with
- # -DNO_MMAP) by uncommenting the line below:
- #NOMMAPCFLAG= -DNO_MMAP
-
- # Status Instrumentation
- # In order for the status module to obtain full statistics Apache must
- # be modified to keep track of various information. This is not
- # turned on by default. In order to enable full status details uncomment
- # the line below:
- #STATCFLAG= -DSTATUS
-
- # Using SOCKS
- # Apache can be compiled to work over a SOCKS firewall by
- # uncommenting the line below:
- #SOCKSCFLAG= -Dconnect=Rconnect -Dselect=Rselect -Dgethostbyname=Rgethostbyname
-
- #
- # Also add the following to the EXTRA_LIBS define:
- #
- # -L/usr/local/lib -lsocks
- #
- # making sure that -L points to wherever you've put libsocks.a.
-
- # [Some other former Apache compile-time options are now treated differently;
- # the virtual host code is always present; DBM auth is an optional module, and
- # may be configured out by changing the module config below, though it still
- # defaults in. Note that this config file does not include DBM auth by
- # default --- configure it in below if you need it].
-
- # What level of optimization?
- OPTMCFLAG= -O2
-
- # Add whatever other flags you'd like here... Like, maybe -Wall
- XTRACFLAG=
-
- # Apache requires a POSIX regex implementation. Some/most platforms provide
- # this capability, but for those that don't, Apache provides, simply for
- # convenience, a regex implementation. The regex code is NOT official
- # Apache code and the Apache team does not support or guarantee the code.
- # If you want to use the supplied regex package, uncomment the following
- # line (or set it equal to the regex lib on your system). ALSO: If
- # using this _regex_ package, be sure to also uncomment REGINC as well
- #REGLIBS=regex/libregex.a
- #REGINC= -Iregex
-
- # Default to using ranlib on libraries (for regex). Set this to something else
- # if ranlib kills your system (usually by setting it again in the OS specific
- # section below)
- RANLIB=ranlib
! # Place here any flags you may need upon linking, such as a flag to
! # prevent dynamic linking (if desired)
! LFLAGS=
!
! # Place here any extra libraries you may need to link to.
! # -lndbm is commonly required for DBM auth, if that is configured in.
EXTRA_LIBS=
! # Build CFLAGS
! CFLAGS= $(OPTMCFLAG) $(NOMMAPCFLAG) $(STATCFLAG) $(SOCKSCFLAG) $(XTRACFLAG)
#
! # AUX_CFLAGS are system-specific control flags.
! # NOTE: IF YOU DO NOT CHOOSE ONE OF THESE, EDIT httpd.h AND CHOOSE
! # SETTINGS FOR THE SYSTEM FLAGS. IF YOU DON'T, BAD THINGS WILL HAPPEN.
!
! # For SunOS 4
! #AUX_CFLAGS= -DSUNOS4
! # For Solaris 2.
! #AUX_CFLAGS= -DSOLARIS2
! #AUX_LIBS= -lsocket -lnsl
! # For SGI IRIX. Use the AUX_LIBS line if you're using NIS and want
! # user-supported directories
! #AUX_CFLAGS= -DIRIX
! #AUX_LIBS= -lsun
! # For HP-UX n.b. if you use the paid-for HP CC compiler, use flag -Ae
! #AUX_CFLAGS= -DHPUX
! # For HP-UX 10
! #AUX_CFLAGS= -DHPUX10
! # For AIX
! #AUX_CFLAGS= -DAIX -U__STR__
! # For Ultrix
! #AUX_CFLAGS= -DULTRIX
! # For DEC OSF/1
! #AUX_CFLAGS= -DOSF1
! # For NeXT
! #AUX_CFLAGS= -DNEXT
! # For Sequent
! #AUX_CFLAGS= -DSEQUENT
! # For Linux -m486 ONLY IF YOU HAVE 486 BINARY SUPPORT IN KERNEL
! #AUX_CFLAGS= -DLINUX
! # For A/UX
! #AUX_CFLAGS= -DAUX -D_POSIX_SOURCE
! #AUX_LIBS= -lposix -lbsd -s
! # For SCO ODT 3
! # libcrypt_i available from sosco.sco.com, files /SLS/lng225b.Z and
! # /SLS/lng225b.ltr.Z
! # the -Oe option causes cc to die compiling mod_imap (using 3.0.0a of the dev sys)
! #CFLAGS= -Oacgiltz
! #AUX_CFLAGS= -DSCO
! #AUX_LIBS= -lPW -lsocket -lmalloc -lcrypt_i
! # For SCO OpenServer Release 5
! # -K noinline is needed to work around an optimiser bug which appears in
! # http_bprintf.c
! #AUX_CFLAGS= -DSCO5
! #AUX_LIBS=-lsocket -lmalloc -lprot
! #BROKEN_BPRINTF_FLAGS=-K noinline
! #RANLIB=true
! # For SVR4
! # Some SVR4 implementations will require SO_LINGER option to be set in order
! # to guarantee buffer flushes. Dell, Esix, and UnixWare are a few of these.
! # Use -DNEED_LINGER in addition to other AUX_CFLAGS for these.
! #AUX_CFLAGS= -DSVR4
! #AUX_LIBS= -lsocket -lnsl -lc
! # For UnixWare 2.x, no longer just SVR4 (sigh) - use cc, not gcc
! # AUX_LIBS= -lsocket -lnsl -lcrypt
! # For Amdahl UTS 2.1
! # -Xa enables ANSI mode, -eft is expanded types
! #AUX_CFLAGS= -Xa -eft -DUTS21
! #AUX_LIBS= -lsocket -lbsd -la
! # For HP/Apollo Domain/OS
! #AUX_CFLAGS= -DAPOLLO
! # For NetBSD/FreeBSD/BSDI 2.x
! # -m486 only if you are running on Intel 486/586
! #AUX_CFLAGS= -m486
! # BSDI doesn't need -lcrypt
! #AUX_LIBS= -lcrypt
! # For QNX
! #AUX_CFLAGS= -DQNX
! #AUX_LFLAGS= -N 0x20000
! # For LynxOS
! #AUX_CFLAGS= -DLYNXOS
! #EXTRA_LIBS=-lbsd -ldes -lc_p
! # For DG/UX 5.4
! #AUX_CFLAGS= -DDGUX
! #AUX_LIBS=
!
! # For EMX OS/2 port
! #AUX_CFLAGS= -Zbsd-signals -Zbin-files
! #-DNO_KILLPG -DNEED_STRCASECMP -DNO_SETSID
! #-g
! #AUX_LIBS= -lsocket -llibufc -lgdbm -lbsd
################################################################
# Module configuration
--- 1,124 ----
# Config file for the Apache httpd.
# Configuration.tmpl is the template for Configuration. Configuration should
! # be edited to select the modules to be included as well as various flags
! # for Makefile.
! # The template should only be changed when a new system or module is added,
! # or an existing one modified.
!
! # There are 4 types of lines here:
# '#' comments, distinguished by having a '#' as the first non-blank character
#
! # Makefile options, such as CC=gcc, etc...
! #
! # Rules, distinquished by having "Rule" at the front.
! # These are used to control Configure's behavior
#
# Module selection lines, distinguished by having 'Module' at the front.
# These list the configured modules, in priority order (highest priority
# first). They're down at the bottom.
! ################################################################
! # Makefile configuration
! #
! # These are added to the general flags determined by Configure.
! # Edit these to work around Configure if needed. The EXTRA_* family
! # will be added to the regular Makefile flags. For example, if you
! # want to compile with -Wall, then add that to EXTRA_CFLAGS.
! #
! # You can also set the compiler and Optimization used here as well.
! # Settings here have priority; If not set, Configure will assume
! # 'gcc' and '-O2'
! #
! EXTRA_CFLAGS=
! EXTRA_LFLAGS=
EXTRA_LIBS=
+ EXTRA_INCLUDES=
+
+ CC=gcc
+ OPTIM=-O2
! #
! # Set to 'true' for systems that lack or don't need ranlib
! RANLIB=ranlib
+ ################################################################
+ # Rules configuration
#
! # These are used to let Configure know that we want certain
! # functions. The format is: Rule RULE=value (The ':' must be the 1st char).
! # At present, only the following RULES are known: REGEX, SOCKS, STATUS
! # and BADMMAP.
! #
! # For all Rules, if set to "yes" then Configure knows we want
! # it, and does what is required to add in the capability. If set to
! # anything else, or not present, then nothing is done.
! #
! # REGEX:
! # 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 REGEX to 'no'
! #
! # SOCKS:
! # If SOCKS is set to 'yes', be sure that you add the sock library
! # location to EXTRA_LIBS, otherwise Configure will assume
! # "-L/usr/local/lib -lsocks"
! #
! # STATUS:
! # If Configure determines that you are using the status_module,
! # it will automatically enable full status information if set
! # 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 REGEX=yes
! Rule STATUS=yes
! Rule SOCKS=no
! Rule BADMMAP=no
!
! ###############
! #
! # The platforms: Uncomment the line for your OS/platform
! # PLATFORM:
! # Uncomment the line that refers to your OS/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
! #PLATFORM=UNIXWARE # Unixware
! #PLATFORM=UTS # Amdahl UTS 2.1
! #PLATFORM=APOLLO # HP / Apollo Domain/OS
! #PLATFORM=486 # 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=EMX # EMX OS/2 Port
!
################################################################
# Module configuration
***************
*** 246,252 ****
## The status module allows the server to display current details about
## how well it is performing and what it is doing. Consider also enabling
! ## -DSTATUS (see the CFLAGS 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
--- 185,191 ----
## 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
Index: apache/src/Configure
===================================================================
RCS file: /export/home/cvs/apache/src/Configure,v
retrieving revision 1.6
diff -c -r1.6 Configure
*** Configure 1996/05/12 21:51:28 1.6
--- Configure 1996/08/02 22:17:54
***************
*** 1,8 ****
! #! /bin/sh
# Apache configuration script, first cut --- rst.
# Dont like it? Inspired to do something better? Go for it.
file=Configuration
tmpfile=htconf.$$
--- 1,15 ----
! #!/bin/sh
! trap 'rm $tmpfile; exit' 0 1 2 3 15
# Apache configuration script, first cut --- rst.
# Dont like it? Inspired to do something better? Go for it.
+ # second cut --- jmj
+ # At this point we change what Configuration contains. It maintain
+ # 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
+
file=Configuration
tmpfile=htconf.$$
***************
*** 13,34 ****
echo "Using '$file' as config file"
fi
! # First, strip comments and blank lines...
! sed 's/#.*//' $file | sed '/^[ ]*$/d' | sed 's/[ ]*$//' > $tmpfile
# Check for syntax errors...
! if grep -v = $tmpfile | \
! egrep -v '^Module[ ]+[A-Za-z0-9_]+[ ]+[^ ]+$' > /dev/null
then
! echo "Syntax error --- each config file command must either"
! echo "set a Makefile option, or configure a module (giving a"
! echo "module name and a filename). This doesn't appear to be"
! echo "doing either:"
! grep -v = $tmpfile | \
! egrep -v '^Module[ ]+[A-Za-z0-9_]+[ ]+[^ ]+$'
! rm $tmpfile
exit 1
fi
--- 20,40 ----
echo "Using '$file' as config file"
fi
! # First, strip comments and blank lines and then change Rules to comments
! sed 's/#.*//' $file | sed '/^[ ]*$/d' | sed 's/[ ]*$//' | \
! sed 's/^Rule[ ]*/##Rule:/' > $tmpfile
# Check for syntax errors...
! if egrep -v '^Module[ ]+[A-Za-z0-9_]+[ ]+[^ ]+$' $tmpfile | \
! grep -v = > /dev/null
then
! echo "Syntax error --- The configuration file is used only to"
! echo "define the list of included modules or to set Makefile"
! echo "options or Configure rules, and I don't see that at all:"
! egrep -v '^Module[ ]+[A-Za-z0-9_]+[ ]+[^ ]+$' $tmpfile | \
! grep -v =
exit 1
fi
***************
*** 65,70 ****
--- 71,79 ----
print "};"; \
}'
+ #
+ # Add module set only
+ #
awk >Makefile <$tmpfile '\
BEGIN { print "# Makefile automatically generated from Makefile.tmpl"; \
print "# and configuration file by Apache config script. "; \
***************
*** 72,78 ****
print "# is re-run."; \
} \
/^Module/ { modules[n++] = $3 } \
- /\=/ { print } \
END { print "MODULES=\\"; \
for (i = 0; i < n; ++i) { \
if (i < n-1) printf (" %s \\\n", modules[i]); \
--- 81,86 ----
***************
*** 80,85 ****
} \
print "" \
}'
cat Makefile.tmpl >> Makefile
- rm $tmpfile
--- 88,308 ----
} \
print "" \
}'
+ #
+ # Now add Makefile additions and Rules
+ #
+ awk >>Makefile <$tmpfile '\
+ BEGIN { print "# Makefile options inherited from Configure"; \
+ print "###############"; \
+ } \
+ /\=/ { print } \
+ END { print "###############"; }'
+
+ #
+ # Now we scan thru the Makefile for the PLATFORM rule.
+ # 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.
+ #
+
+ PLAT=`grep "PLATFORM=" Makefile | awk '{ print $1 }' | awk -F= '{ print $2 }'`
+
+ case "$PLAT" in
+ A/UX)
+ OS='A/UX 3.1.x'
+ CFLAGS="$CFLAGS -DAUX -D_POSIX_SOURCE"
+ LIBS="$LIBS -lposix -lbsd"
+ LFLAGS="$LFLAGS -s"
+ ;;
+ 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"
+ ;;
+ EMX)
+ OS='EMX OS/2'
+ 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"
+ ;;
+ 486)
+ OS='FreeBSD/NETBSD on 486'
+ ;;
+ NeXT)
+ OS='NeXT'
+ CFLAGS="$CFLAGS -DNEXT"
+ ;;
+ OSF)
+ OS='DEC OSF/1'
+ CFLAGS="$CFLAGS -DOSF1"
+ ;;
+ QNX)
+ OS='QNX'
+ CFLAGS="$CFLAGS -DQNX"
+ LIBS="$LIBS -N 0x20000"
+ ;;
+ 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"
+ OSBPRINTF="-K noinline"
+ ;;
+ 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"
+ ;;
+ *) # default
+ ;;
+ esac
+
+ #
+ # Now that _that's_ done, get on with it
+ #
+
+ echo "Configured for $OS platform"
+ echo
+ #
+ # Handle the setting of CC and OPTIM. The values in Configure
+ # have priority. If not set there, then we check if they were
+ # set above. If so, then we honor that; if not the we set some
+ # defaults (gcc and -O2)
+ #
+ if grep "CC=" Makefile > /dev/null; then
+ CC="" # clear it just in case
+ else
+ if [ "x$CC" = "x" ]; then CC="gcc"; fi
+ fi
+
+ #
+ # Ditto for optimization
+ #
+ if grep "OPTIM=" Makefile > /dev/null; then
+ OPTIM="" # ditto
+ else
+ if [ "x$OPTIM" = "x" ]; then OPTIM="-O2"; fi
+ fi
+
+ #
+ # Are they using the status monitor module?
+ #
+ if grep "Rule:STATUS=yes" Makefile > /dev/null; then
+ CFLAGS="$CFLAGS -DSTATUS"
+ fi
+
+ #
+ # Now REGEX if needed
+ #
+ if grep "Rule:REGEX=yes" Makefile > /dev/null; then
+ REGLIB="regex/libregex.a"
+ INCLUDES="$INCLUDES -Iregex"
+ fi
+
+ #
+ # Broken MMAP?
+ #
+ if grep "Rule:BADMMAP=yes" Makefile > /dev/null; then
+ CFLAGS="$CFLAGS -DNO_MMAP"
+ fi
+
+ #
+ # Now SOCKS
+ #
+ if grep "Rule:SOCKS=yes" Makefile > /dev/null; then
+ # Set flag and check Makefile for -lsocks line
+ CFLAGS="$CFLAGS -Dconnect=Rconnect -Dselect=Rselect"
+ CFLAGS="$CFLAGS -Dgethostbyname=Rgethostbyname"
+ if grep EXTRA_ Makefile | grep "-lsocks" > /dev null; then
+ :
+ else
+ LIBS="$LIBS -L/usr/local/lib -lsocks"
+ fi
+ fi
+ #
+ # Good enough
+ #
+ echo >> Makefile
+ if [ "x$CC" != "x" ]; then
+ echo "CC=$CC" >> Makefile
+ fi
+ if [ "x$OPTIM" != "x" ]; then
+ echo "OPTIM=$OPTIM" >> Makefile
+ fi
+ echo "CFLAGS1=$CFLAGS">> Makefile
+ echo "INCLUDES1=$INCLUDES">> Makefile
+ echo "LIBS1=$LIBS">> Makefile
+ echo "LFLAGS1=$LFLAGS">> Makefile
+ echo "BROKEN_BPRINTF_FLAGS=$OSBPRINTF">> Makefile
+ echo "REGLIB=$REGLIB">> Makefile
+ echo >> Makefile
+ echo "#### End of Configure created section ####">> Makefile
+ echo >> Makefile
cat Makefile.tmpl >> Makefile
Index: apache/src/Makefile.tmpl
===================================================================
RCS file: /export/home/cvs/apache/src/Makefile.tmpl,v
retrieving revision 1.19
diff -c -r1.19 Makefile.tmpl
*** Makefile.tmpl 1996/07/30 19:36:58 1.19
--- Makefile.tmpl 1996/08/02 22:17:55
***************
*** 3,14 ****
# This is combined with the information in the "Configuration" file
# by the configure script to make the actual Makefile.
OBJS= alloc.o http_main.o http_core.o http_config.o http_request.o \
http_log.o http_protocol.o rfc1413.o util.o util_script.o modules.o buff.o\
md5c.o util_md5.o explain.o http_bprintf.o $(MODULES)
.c.o:
! $(CC) -c $(REGINC) $(CFLAGS) $(AUX_CFLAGS) $<
all: Configuration httpd
--- 3,19 ----
# This is combined with the information in the "Configuration" file
# by the configure script to make the actual Makefile.
+ CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_FLAGS)
+ LIBS=$(EXTRA_LIBS) $(LIBS1)
+ INCLUDES=$(INCLUDES1) $(EXTRA_INCLUDES)
+ LFLAGS=$(LFLAGS1) $(EXTRA_LFLAGS)
+
OBJS= alloc.o http_main.o http_core.o http_config.o http_request.o \
http_log.o http_protocol.o rfc1413.o util.o util_script.o modules.o buff.o\
md5c.o util_md5.o explain.o http_bprintf.o $(MODULES)
.c.o:
! $(CC) -c $(INCLUDES) $(CFLAGS) $<
all: Configuration httpd
***************
*** 19,29 ****
@echo "If not, you will at least have to touch Configuration."
@false
! httpd: $(REGLIBS) $(OBJS)
! $(CC) $(LFLAGS) $(AUX_LFLAGS) -o httpd $(OBJS) $(REGLIBS) $(EXTRA_LIBS) $(AUX_LIBS)
regex/libregex.a:
! cd regex; make lib CC=$(CC) AUX_CFLAGS="$(CFLAGS) $(AUX_CFLAGS)" RANLIB=$(RANLIB)
clean:
rm -f httpd $(OBJS) *pure*
--- 24,34 ----
@echo "If not, you will at least have to touch Configuration."
@false
! httpd: $(REGLIB) $(OBJS)
! $(CC) $(LFLAGS) -o httpd $(OBJS) $(REGLIB) $(LIBS)
regex/libregex.a:
! cd regex; make lib CC=$(CC) AUX_CFLAGS="$(CFLAGS)" RANLIB=$(RANLIB)
clean:
rm -f httpd $(OBJS) *pure*
***************
*** 38,44 ****
# Work around broken compilers
http_bprintf.o: http_bprintf.c
! $(CC) -c $(REGINC) $(CFLAGS) $(AUX_CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c
#Dependencies
#Core code
--- 43,49 ----
# Work around broken compilers
http_bprintf.o: http_bprintf.c
! $(CC) -c $(INCLUDES) $(CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c
#Dependencies
#Core code
--
Jim Jagielski << jim@jaguNET.com >> | "There is a time for laughing,
** jaguNET Access Services ** | and a time for not laughing,
Email: info@jaguNET.com | and this is not one of them"
++ http://www.jaguNET.com/ +++ Voice/Fax: 410-931-3157 ++
Re: New Config, Final Phase
Posted by Alexei Kosut <ak...@organic.com>.
On Fri, 2 Aug 1996, Jim Jagielski wrote:
> I'd like to offer this patch for final consideration. It's been tuned
> and adjusted in response to all the feedback, public and private.
>
> It's a _MUCH_ cleaner way to Configure Apache and seems to make more
> sense; The person simply notes the platform being used (and some
> simple "rules") and Configure takes care of the rest.
I like it. +1, but only if you take out the slash between POSIX and regex.
-- Alexei Kosut <ak...@organic.com> The Apache HTTP Server
http://www.nueva.pvt.k12.ca.us/~akosut/ http://www.apache.org/