pcs 97/07/26 14:08:09 Modified: src Configure Makefile.tmpl Log: Source re-organisation. Configure can get module info from source file or separet file for binary modules. Revision Changes Path 1.123 +290 -108 apachen/src/Configure Index: Configure =================================================================== RCS file: /export/home/cvs/apachen/src/Configure,v retrieving revision 1.122 retrieving revision 1.123 diff -u -r1.122 -r1.123 --- Configure 1997/07/25 02:10:46 1.122 +++ Configure 1997/07/26 21:06:47 1.123 @@ -21,6 +21,8 @@ ## file=Configuration tmpfile=htconf.$$ +tmpfile2=$tmpfile.2 +tmpfile3=$tmpfile.3 makefile_tmpl=Makefile.tmpl #################################################################### @@ -76,6 +78,7 @@ # we bail out # if egrep -v '^%?Module[ ]+[A-Za-z0-9_]+[ ]+[^ ]+$' $tmpfile \ + | egrep -v '^%?AddModule[ ]+[^ ]+$' \ | grep -v = > /dev/null then echo "Syntax error --- The configuration file is used only to" @@ -93,39 +96,6 @@ if [ -f modules.c ] ; then mv modules.c modules.c.bak; fi #################################################################### -# Start building the modules.c file from what was included -# in Configuration -#### -sed -e 's/_module//' $tmpfile | awk >modules.c '\ - BEGIN { modules[n++] = "core" ; pmodules[pn++] = "core"} \ - /^Module/ { modules[n++] = $2 ; pmodules[pn++] = $2 } \ - /^%Module/ { pmodules[pn++] = $2 } \ - END { print "/* modules.c --- automatically generated by Apache"; \ - print " * configuration script. DO NOT HAND EDIT!!!!!"; \ - print " */"; \ - print ""; \ - print "#include \"httpd.h\""; \ - print "#include \"http_config.h\""; \ - print ""; \ - for (i = 0; i < pn; ++i) { \ - printf ("extern module %s_module;\n", pmodules[i]); \ - } \ - print ""; \ - print "module *prelinked_modules[] = {"; \ - for (i = 0; i < n; ++i) { \ - printf " &%s_module,\n", modules[i]; \ - } \ - print " NULL"; \ - print "};"; \ - print "module *preloaded_modules[] = {"; \ - for (i = 0; i < pn; ++i) { \ - printf " &%s_module,\n", pmodules[i]; \ - } \ - print " NULL"; \ - print "};"; \ - }' - -#################################################################### # Start creating the Makefile. We add some comments and # then fold in the modules that were included in Configuration # @@ -136,17 +106,6 @@ echo "# is re-run" >> Makefile echo "#" >> Makefile -awk >>Makefile <$tmpfile '\ - /^Module/ { modules[n++] = $3 } \ - /^%Module/ { modules[n++] = $3 } \ - END { print "MODULES=\\"; \ - for (i = 0; i < n; ++i) { \ - if (i < n-1) printf (" %s \\\n", modules[i]); \ - else printf (" %s\n", modules[i]); \ - } \ - print "" \ - }' - #################################################################### # Now we create a stub file, called Makefile.config, which # just includes those assignments (eg: CC=gcc) in Configuration @@ -196,6 +155,9 @@ PLAT=`./helpers/GuessOS` +SHELL="/bin/sh" +OSDIR="os/unix" + case "$PLAT" in *MPE/iX*) OS='MPE/iX' @@ -536,6 +498,7 @@ #################################################################### # Show user what OS we came up with # +SRCDIR=`pwd` echo " + configured for $OS platform" #################################################################### @@ -662,45 +625,6 @@ fi fi -# -# Now HS's POSIX regex implementation if needed/wanted -# -if [ "$RULE_WANTHSREGEX" = "yes" ]; then - REGLIB="regex/libregex.a" - INCLUDES="$INCLUDES -Iregex" -fi - -# -# Now SOCKS4. -# NOTE: We assume that if they are using SOCKS4, then they've -# adjusted EXTRA_LIBS and/or EXTRA_LDFLAGS as required, -# otherwise we assume "-L/usr/local/lib -lsocks" -# -if [ "$RULE_SOCKS4" = "yes" ]; 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 - if [ "$OS" = "Solaris 2" ]; then - LIBS="$LIBS -lresolv" - fi -fi - -#################################################################### -# Continue building Makefile.config. We can add all flags with -# the exception of LIBS at this point -# -echo "CFLAGS1=$CFLAGS">> Makefile.config -echo "INCLUDES1=$INCLUDES">> Makefile.config -echo "LDFLAGS1=$LDFLAGS">> Makefile.config -echo "BROKEN_BPRINTF_FLAGS=$OSBPRINTF">> Makefile.config -echo "REGLIB=$REGLIB">> Makefile.config -echo "RANLIB=$RANLIB">> Makefile.config -echo "SHELL=$SHELL">> Makefile.config - #################################################################### # Use TestCompile to see if $(CC) is ANSI # @@ -720,7 +644,7 @@ # case "$PLAT" in - *-linux*) + *-linux*) # newer systems using glibc 2.x need -lcrypt if ./helpers/TestCompile lib crypt; then LIBS="$LIBS -lcrypt" @@ -736,6 +660,8 @@ DBM_LIB="-ldbm" elif ./helpers/TestCompile lib ndbm; then DBM_LIB="-lndbm" + elif ./helpers/TestCompile lib gdbm; then + DBM_LIB="-lgdbm" fi ;; esac @@ -743,19 +669,231 @@ # # Are they using dbm/db auth? If so, add DBM/DB library. # -if grep mod_auth_dbm Makefile > /dev/null; then - LIBS="$LIBS $DBM_LIB" - if [ "X$DBM_LIB" != "X" ]; then - echo " + using $DBM_LIB for mod_auth_dbm" - fi +#if grep mod_auth_dbm Makefile > /dev/null; then +# LIBS="$LIBS $DBM_LIB" +# if [ "X$DBM_LIB" != "X" ]; then +# echo " + using $DBM_LIB for mod_auth_dbm" +# fi +#fi +#if grep mod_auth_db Makefile > /dev/null; then +# LIBS="$LIBS $DB_LIB" +# if [ "X$DB_LIB" != "X" ]; then +# echo " + using $DB_LIB for mod_auth_db" +# fi +#fi + +# +# Now HS's POSIX regex implementation if needed/wanted +# +if [ "$RULE_WANTHSREGEX" = "yes" ]; then + REGLIB="regex/libregex.a" + INCLUDES="$INCLUDES -I${SRCDIR}/regex" fi -if grep mod_auth_db Makefile > /dev/null; then - LIBS="$LIBS $DB_LIB" - if [ "X$DB_LIB" != "X" ]; then - echo " + using $DB_LIB for mod_auth_db" + +# +# Now SOCKS4. +# NOTE: We assume that if they are using SOCKS4, then they've +# adjusted EXTRA_LIBS and/or EXTRA_LDFLAGS as required, +# otherwise we assume "-L/usr/local/lib -lsocks" +# +if [ "$RULE_SOCKS4" = "yes" ]; 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 + if [ "$OS" = "Solaris 2" ]; then + LIBS="$LIBS -lresolv" fi fi +# +# Find out what modules we want and try and configure things for them +# Module lines can look like this: +# +# Module name_module some/path/mod_name[.[oa]] +# AddModule some/path/mod_name[.[oa]] +# +# In both cases, the some/path can either be an arbitrary path (including +# an absolue path), or a path like "modules/DIR", in which case we _might_ +# auto-generate a Makefile in modules/DIR (see later). +# +# The first case is the original style, where we give the module's +# name as well as it's binary file location - either a .o or .a. +# +# The second format is new, and means we do not repeat the module +# name, which is already part of the module source or definition. +# The way we find the module name (and other optional information about +# the module) is like this: +# +# 1 If extension is not given or is .c, assume .o was given and goto 3 +# 2 If extension if .module, go to D1 +# 3 If extension is .o, look for a corresponding .c file and if +# found, go to C1 +# 4 If no .c file was found, look for a .module file (Apache module +# definition file). If found, go to D1 +# 5 Assume module name is the "name" part of "mod_name", as in +# name_module. +# +# If a C file is found: +# +# C1 Look for module name given by an MODULE: line (e.g. MODULE: name_module) +# If found assume module contains a definition, and go to D1 +# C2 If not found, look for a module name given on the declaration of the +# module structure (e.g. module name_module). +# C3 If neither given, go to 4 above. +# +# If a definition file is found, or a .c file includes a module definition: +# +# D1 Get the module name from the MODULE: name= line +# D2 Get other module options (libraries etc). To be done later. +# + +# For now, we will convert the AddModule lines into Module format +# lines, so the rest of Configure can do its stuff without too much +# additional hackery. It would be nice to reduce the number of times +# we have to awk the $tmpfile, though. + +# MODFILES contains a list of module filenames (could be .c, .o, .a +# or .module files) from AddModule lines only +# MODDIRS contains a list of subdirectories under 'modules' which +# contain modules we want to build from both AddModule and Module +# lines + +MODFILES=`awk <$tmpfile '$1 == "AddModule" { printf "%s ", $2 }'` +MODDIRS=`awk < $tmpfile '\ + ($1 == "Module" && $3 ~ /^modules\//) { \ + split ($3, pp, "/"); \ + if (! SEEN[pp[2]]) { printf "%s ", pp[2]; SEEN[pp[2]] = 1; } \ + } \ + ($1 == "AddModule" && $2 ~ /^modules\//) { \ + split ($2, pp, "/"); \ + if (! SEEN[pp[2]]) { printf "%s ", pp[2]; SEEN[pp[2]] = 1; } \ + } \ +'` + +# +# Now autoconfigure each of the modules specified by AddModule. +# Use tmpfile2 for the module definition file, and tmpfile3 for the +# shell commands to be executed for this module. +# + +for modfile in $MODFILES ; do +# echo Trying to find $modfile + rm -f $tmpfile2 $tmpfile3 + modname= + + ext=`echo $modfile | sed 's/^.*\.//'` + modbase=`echo $modfile | sed 's/\.[^.]*$//'` + if [ x$ext = x$modfile ]; then ext=o; modbase=$modfile; modfile=$modbase.o; fi + if [ x$ext = x ] ; then ext=o; modbase=$modfile; fi + + # modbase is the path+filename without extension, ext is the + # extension given, or if none, o +# echo bas=$modbase ext=$ext + + if [ -r $modbase.module ] ; then + cat $modbase.module > $tmpfile2 + elif [ -e $modbase.c ] ; then + # Guess module structure name in case there is not + # module definition in this file + modname=`grep '^module .*;' $modbase.c | head -1 |\ + sed 's/^module.*[ ][ ]*//' | \ + sed 's/[ ]*;[ ]*$//'` + # Get any module definition part + if fgrep "MODULE-DEFINITION-" $modbase.c > /dev/null; then + cat $modbase.c | \ + sed '1,/MODULE-DEFINITION-START/d;/MODULE-DEFINITION-END/,$d' \ + > $tmpfile2 + fi + fi + if [ -r $tmpfile2 ] ; then + # Read a module definition from .module or .c + modname=`fgrep "Name:" $tmpfile2 | sed 's/^.*Name:[ ]*//'` + cat $tmpfile2 | sed '1,/ConfigStart/d;/ConfigEnd/,$d' > \ + $tmpfile3 + . $tmpfile3 + rm -f $tmpfile2 $tmpfile3 + ext=o + fi + if [ -z "$modname" ] ; then + modname=`echo $modbase | sed 's/^.*\///' | \ + sed 's/^mod_//' | sed 's/^lib//' | sed 's/$/_module/'` + fi + echo "Adding Module $modname $modbase.$ext" + echo "Module $modname $modbase.$ext" >>$tmpfile +done + +# $tmpfile now contains Module lines for all the modules we want + +# create modules.c + +sed -e 's/_module//' $tmpfile | awk >modules.c '\ + BEGIN { modules[n++] = "core" ; pmodules[pn++] = "core"} \ + /^Module/ { modules[n++] = $2 ; pmodules[pn++] = $2 } \ + /^%Module/ { pmodules[pn++] = $2 } \ + END { print "/* modules.c --- automatically generated by Apache"; \ + print " * configuration script. DO NOT HAND EDIT!!!!!"; \ + print " */"; \ + print ""; \ + print "#include \"httpd.h\""; \ + print "#include \"http_config.h\""; \ + print ""; \ + for (i = 0; i < pn; ++i) { \ + printf ("extern module %s_module;\n", pmodules[i]); \ + } \ + print ""; \ + print "module *prelinked_modules[] = {"; \ + for (i = 0; i < n; ++i) { \ + printf " &%s_module,\n", modules[i]; \ + } \ + print " NULL"; \ + print "};"; \ + print "module *preloaded_modules[] = {"; \ + for (i = 0; i < pn; ++i) { \ + printf " &%s_module,\n", pmodules[i]; \ + } \ + print " NULL"; \ + print "};"; \ + }' + +# Add the module targets to the Makefile + +awk >>Makefile <$tmpfile '\ + /^Module/ { modules[n++] = $3 } \ + /^%Module/ { modules[n++] = $3 } \ + END { print "MODULES=\\"; \ + for (i = 0; i < n; ++i) { \ + if (i < n-1) printf (" %s \\\n", modules[i]); \ + else printf (" %s\n", modules[i]); \ + } \ + print "" \ + }' + +#################################################################### +# Continue building Makefile.config. We can add all flags with +# the exception of LIBS at this point +# +echo >> Makefile +if [ "x$CC" != "x" ]; then + echo "CC=$CC" >> Makefile.config +fi +if [ "x$OPTIM" != "x" ]; then + echo "OPTIM=$OPTIM" >> Makefile.config +fi +echo "CFLAGS1=$CFLAGS">> Makefile.config +echo "INCLUDES1=$INCLUDES -I${SRCDIR}/core">> Makefile.config +echo "LIBS1=$LIBS">> Makefile.config +echo "LDFLAGS1=$LDFLAGS">> Makefile.config +echo "BROKEN_BPRINTF_FLAGS=$OSBPRINTF">> Makefile.config +echo "REGLIB=$REGLIB">> Makefile.config +echo "RANLIB=$RANLIB">> Makefile.config +echo "SHELL=$SHELL">> Makefile.config +echo "OSOBJ=${SRCDIR}/$OSDIR/os.o">> Makefile.config +echo "OSDIR=${SRCDIR}/$OSDIR">> Makefile.config + #################################################################### # NOW we finish Makefile.config # @@ -763,6 +901,8 @@ echo >> Makefile.config echo "#### End of Configure created section ####">> Makefile.config +cp $OSDIR/os.h core/os.h + #################################################################### # Now (finish) creating the makefiles # @@ -772,11 +912,16 @@ sed -e "s#@@Configuration@@#$file#" "$makefile_tmpl" >>Makefile awk >>Makefile <$tmpfile \ '($1 == "Module" && $3 ~ /modules\//) { printf "%s: modules/last-built ; @cat /dev/null\n\n", $3, $3}' -cat Makefile.config ../support/Makefile.tmpl > ../support/Makefile # -# ./modules/Makefile +# directories to create makefiles in # +MAKEDIRS="support core $OSDIR" +for dir in $MAKEDIRS ; do + echo Creating Makefile in $dir + cat Makefile.config $dir/Makefile.tmpl > $dir/Makefile +done + cat << EOF > modules/Makefile # # Simple Makefile for modules in src/modules. @@ -794,17 +939,14 @@ echo "INCLUDES2=$INCLUDES2">> modules/Makefile echo "MOD_CFLAGS=\$(INCLUDES2) \$(AUX_CFLAGS)">> modules/Makefile -awk >> modules/Makefile < $tmpfile '\ - BEGIN {printf "MODULES="} \ - ($1 == "Module" && $3 ~ /modules\//) {split ($3, pp, "/"); printf "%s ", pp[2]} \ - END {printf "\n"}' - -awk >> modules/Makefile < $tmpfile '\ - BEGIN {printf "CLEANERS="} \ - ($1 == "Module" && $3 ~ /modules\//) {split ($3, pp, "/"); printf "%s_clean ", pp[2]} \ - END {printf "\n"}' +CLEANERS="" +for i in $MODDIRS ; do + CLEANERS="$CLEANERS${i}_clean " +done cat << EOF >> modules/Makefile +MODULES=$MODDIRS +CLEANERS=$CLEANERS default: \$(MODULES) @echo "Done building module subdirectories" @@ -812,14 +954,54 @@ clean: \$(CLEANERS) @echo "Done cleaning module subdirectories" -placeholder \$(MODULES): ForceMe +\$(MODULES): ForceMe (cd \$@; \$(MAKE) CC='\$(CC)' AUX_CFLAGS='\$(MOD_CFLAGS)' RANLIB='\$(RANLIB)') ForceMe: EOF -awk >>modules/Makefile <$tmpfile \ - '($1 == "Module" && $3 ~ /modules\//) { split ($3, pp, "/"); \ - printf "%s_clean:\n\t(cd %s; $(MAKE) clean)\n\n", pp[2], pp[2]}' +( +for i in $MODDIRS ; do + echo "${i}_clean:" + echo " (cd ${i}; \$(MAKE) clean)" + echo "" +done +) >> modules/Makefile + +for moddir in $MODDIRS ; do + if [ ! -e modules/$moddir/Makefile.tmpl ] ; then + continue + fi + echo "Creating Makefile in modules/$moddir" + + cat Makefile.config > modules/$moddir/Makefile + awk >> modules/$moddir/Makefile < $tmpfile '\ + BEGIN { printf "OBJS=" }\ + ($1 == "Module" && $3 ~ /^modules\/'$moddir'\//) { \ + split ($3, pp, "/"); \ + printf "%s ", pp[3]; \ + } \ + END {printf "\n"}' + + cat << 'EOF' >> modules/$moddir/Makefile +CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_CFLAGS) +LIBS=$(EXTRA_LIBS) $(LIBS1) +INCLUDES=$(INCLUDES1) $(EXTRA_INCLUDES) +LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) +INCDIR=../../core + +all: $(OBJS) + +.c.o: + $(CC) -c $(INCLUDES) $(CFLAGS) $(SPACER) $< + +clean: + rm -f $(OBJS) + +EOF +cat >> modules/$moddir/Makefile < modules/$moddir/Makefile.tmpl + +done + 1.53 +28 -112 apachen/src/Makefile.tmpl Index: Makefile.tmpl =================================================================== RCS file: /export/home/cvs/apachen/src/Makefile.tmpl,v retrieving revision 1.52 retrieving revision 1.53 diff -u -r1.52 -r1.53 --- Makefile.tmpl 1997/07/17 04:37:46 1.52 +++ Makefile.tmpl 1997/07/26 21:06:48 1.53 @@ -8,15 +8,21 @@ INCLUDES=$(INCLUDES1) $(EXTRA_INCLUDES) LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) -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 util_date.o util_snprintf.o\ +OBJS= \ + core/alloc.o core/http_main.o core/http_core.o \ + core/http_config.o core/http_request.o core/http_log.o \ + core/http_protocol.o core/rfc1413.o core/util.o \ + core/util_script.o core/buff.o core/md5c.o \ + core/util_md5.o core/explain.o core/http_bprintf.o \ + core/util_date.o core/util_snprintf.o \ + modules.o \ + $(OSOBJ) \ $(MODULES) .c.o: $(CC) -c $(INCLUDES) $(CFLAGS) $(SPACER) $< -all: @@Configuration@@ httpd +all: @@Configuration@@ os-dir core-dir modules/last-built httpd @@Configuration@@: Configuration.tmpl @echo "@@Configuration@@ older than Configuration.tmpl, or doesn't exist." @@ -25,7 +31,7 @@ @echo "If not, you will at least have to touch @@Configuration@@." @false -httpd: $(REGLIB) $(OBJS) +httpd: $(REGLIB) modules.o $(CC) $(LDFLAGS) -o httpd $(OBJS) $(REGLIB) $(LIBS) regex/libregex.a: @@ -35,10 +41,23 @@ (cd modules; \ $(MAKE) CC='$(CC)' AUX_CFLAGS='$(CFLAGS)' RANLIB='$(RANLIB)') +support: support-dir + +support-dir: + cd support; $(MAKE) + +core-dir: + cd core; $(MAKE) + +os-dir: + cd $(OSDIR); $(MAKE) + clean: - rm -f httpd *.o core + rm -f httpd *.o $(OBJS) + cd core; $(MAKE) clean cd regex; $(MAKE) clean cd modules; $(MAKE) clean + cd support; $(MAKE) clean dist.tar: # Assure a semi-sensible configuration going out... @@ -47,10 +66,6 @@ tar cvf dist.tar README INSTALL CHANGES TODO API.html \ Configuration Configure Makefile.tmpl Makefile *.h *.c -# Work around broken compilers -http_bprintf.o: http_bprintf.c - $(CC) -c $(INCLUDES) $(CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c - # We really don't expect end users to use this rule. It works only with # gcc, and rebuilds Makefile.tmpl. You have to re-run Configure after # using it. @@ -60,110 +75,11 @@ && mv Makefile.tmpl Makefile.tmpl.bak \ && mv Makefile.new Makefile.tmpl + #Dependencies $(OBJS): Makefile # DO NOT REMOVE -alloc.o: alloc.c httpd.h conf.h alloc.h buff.h multithread.h -buff.o: buff.c httpd.h conf.h alloc.h buff.h http_main.h -dummy.o: dummy.c -explain.o: explain.c explain.h -http_bprintf.o: http_bprintf.c httpd.h conf.h alloc.h buff.h -http_config.o: http_config.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h http_log.h http_request.h \ - http_conf_globals.h explain.h -http_core.o: http_core.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_core.h http_protocol.h http_conf_globals.h http_main.h \ - http_log.h rfc1413.h util_md5.h md5.h scoreboard.h -http_log.o: http_log.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_core.h http_log.h -http_main.o: http_main.c httpd.h conf.h alloc.h buff.h http_main.h \ - http_log.h http_config.h http_protocol.h http_request.h \ - http_conf_globals.h http_core.h scoreboard.h multithread.h explain.h -http_protocol.o: http_protocol.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h http_protocol.h http_main.h http_log.h \ - util_date.h -http_request.o: http_request.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_request.h http_core.h http_protocol.h http_log.h \ - http_main.h scoreboard.h -md5c.o: md5c.c md5.h -mod_access.o: mod_access.c httpd.h conf.h alloc.h buff.h http_core.h \ - http_config.h http_log.h http_request.h -mod_actions.o: mod_actions.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_request.h http_core.h http_protocol.h http_main.h \ - http_log.h util_script.h -mod_alias.o: mod_alias.c httpd.h conf.h alloc.h buff.h http_config.h -mod_asis.o: mod_asis.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_protocol.h http_log.h util_script.h http_main.h http_request.h -mod_auth.o: mod_auth.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_core.h http_log.h http_protocol.h -mod_auth_anon.o: mod_auth_anon.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h http_log.h http_protocol.h -mod_auth_db.o: mod_auth_db.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h http_log.h http_protocol.h -mod_auth_dbm.o: mod_auth_dbm.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h http_log.h http_protocol.h -mod_auth_msql.o: mod_auth_msql.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h http_log.h http_protocol.h -mod_autoindex.o: mod_autoindex.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h http_request.h http_protocol.h http_log.h \ - http_main.h util_script.h -mod_browser.o: mod_browser.c httpd.h conf.h alloc.h buff.h \ - http_config.h -mod_cern_meta.o: mod_cern_meta.c httpd.h conf.h alloc.h buff.h \ - http_config.h util_script.h http_log.h http_request.h -mod_cgi.o: mod_cgi.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_request.h http_core.h http_protocol.h http_main.h http_log.h \ - util_script.h http_conf_globals.h -mod_digest.o: mod_digest.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_core.h http_log.h http_protocol.h util_md5.h md5.h -mod_dir.o: mod_dir.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_core.h http_request.h http_protocol.h http_log.h http_main.h \ - util_script.h -mod_dld.o: mod_dld.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_conf_globals.h -mod_env.o: mod_env.c httpd.h conf.h alloc.h buff.h http_config.h -mod_expires.o: mod_expires.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_log.h -mod_headers.o: mod_headers.c httpd.h conf.h alloc.h buff.h \ - http_config.h -mod_imap.o: mod_imap.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_request.h http_core.h http_protocol.h http_main.h http_log.h \ - util_script.h -mod_include.o: mod_include.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_request.h http_core.h http_protocol.h http_log.h \ - http_main.h util_script.h -mod_info.o: mod_info.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_core.h http_log.h http_main.h http_protocol.h util_script.h \ - http_conf_globals.h -mod_log_agent.o: mod_log_agent.c httpd.h conf.h alloc.h buff.h \ - http_config.h -mod_log_config.o: mod_log_config.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h -mod_log_referer.o: mod_log_referer.c httpd.h conf.h alloc.h buff.h \ - http_config.h -mod_mime.o: mod_mime.c httpd.h conf.h alloc.h buff.h http_config.h -mod_mime_magic.o: mod_mime_magic.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_request.h http_core.h http_log.h http_protocol.h -mod_negotiation.o: mod_negotiation.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_request.h http_core.h http_log.h util_script.h -mod_rewrite.o: mod_rewrite.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_request.h http_core.h http_log.h mod_rewrite.h -mod_status.o: mod_status.c httpd.h conf.h alloc.h buff.h http_config.h \ - http_core.h http_protocol.h http_main.h util_script.h scoreboard.h \ - http_log.h -mod_userdir.o: mod_userdir.c httpd.h conf.h alloc.h buff.h \ - http_config.h -mod_usertrack.o: mod_usertrack.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_core.h -modules.o: modules.c httpd.h conf.h alloc.h buff.h http_config.h -rfc1413.o: rfc1413.c httpd.h conf.h alloc.h buff.h http_log.h \ - rfc1413.h http_main.h -util.o: util.c httpd.h conf.h alloc.h buff.h http_conf_globals.h -util_date.o: util_date.c util_date.h -util_md5.o: util_md5.c httpd.h conf.h alloc.h buff.h util_md5.h md5.h -util_script.o: util_script.c httpd.h conf.h alloc.h buff.h \ - http_config.h http_conf_globals.h http_main.h http_log.h \ - http_protocol.h http_core.h http_request.h util_script.h -util_snprintf.o: util_snprintf.c conf.h +modules.o: modules.c core/httpd.h core/conf.h core/alloc.h core/buff.h \ + core/http_config.h
Added: src/core Makefile.tmpl Log: Dependencies in new core directory Revision Changes Path 1.1 apachen/src/core/Makefile.tmpl Index: Makefile.tmpl =================================================================== # Apache makefile suffix for core files # This is combined with the information in the "Configuration" file # by the configure script to make the actual Makefile. CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_CFLAGS) LIBS=$(EXTRA_LIBS) $(LIBS1) INCLUDES=$(INCLUDES1) $(EXTRA_INCLUDES) LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) 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 buff.o\ md5c.o util_md5.o explain.o http_bprintf.o util_date.o util_snprintf.o .c.o: $(CC) -c $(INCLUDES) $(CFLAGS) $(SPACER) $< all: $(OBJS) clean: rm -f $(OBJS) # Work around broken compilers http_bprintf.o: http_bprintf.c $(CC) -c $(INCLUDES) $(CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c #Dependencies $(OBJS): # DO NOT REMOVE alloc.o: alloc.c httpd.h conf.h alloc.h buff.h multithread.h buff.o: buff.c httpd.h conf.h alloc.h buff.h http_main.h dummy.o: dummy.c explain.o: explain.c explain.h http_bprintf.o: http_bprintf.c httpd.h conf.h alloc.h buff.h http_config.o: http_config.c httpd.h conf.h alloc.h buff.h \ http_config.h http_core.h http_log.h http_request.h \ http_conf_globals.h explain.h http_core.o: http_core.c httpd.h conf.h alloc.h buff.h http_config.h \ http_core.h http_protocol.h http_conf_globals.h http_main.h \ http_log.h rfc1413.h util_md5.h md5.h scoreboard.h http_log.o: http_log.c httpd.h conf.h alloc.h buff.h http_config.h \ http_core.h http_log.h http_main.o: http_main.c httpd.h conf.h alloc.h buff.h http_main.h \ http_log.h http_config.h http_protocol.h http_request.h \ http_conf_globals.h http_core.h scoreboard.h multithread.h explain.h http_protocol.o: http_protocol.c httpd.h conf.h alloc.h buff.h \ http_config.h http_core.h http_protocol.h http_main.h http_log.h \ util_date.h http_request.o: http_request.c httpd.h conf.h alloc.h buff.h \ http_config.h http_request.h http_core.h http_protocol.h http_log.h \ http_main.h scoreboard.h md5c.o: md5c.c md5.h rfc1413.o: rfc1413.c httpd.h conf.h alloc.h buff.h http_log.h \ rfc1413.h http_main.h util.o: util.c httpd.h conf.h alloc.h buff.h http_conf_globals.h util_date.o: util_date.c util_date.h util_md5.o: util_md5.c httpd.h conf.h alloc.h buff.h util_md5.h md5.h util_script.o: util_script.c httpd.h conf.h alloc.h buff.h \ http_config.h http_conf_globals.h http_main.h http_log.h \ http_protocol.h http_core.h http_request.h util_script.h util_snprintf.o: util_snprintf.c conf.h Modified: src/modules/example Makefile src/modules/proxy Makefile proxy_ftp.c Log: Header files now in core dir Revision Changes Path 1.3 +1 -1 apachen/src/modules/example/Makefile Index: Makefile =================================================================== RCS file: /export/home/cvs/apachen/src/modules/example/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- Makefile 1997/07/23 18:08:45 1.2 +++ Makefile 1997/07/26 21:07:21 1.3 @@ -56,7 +56,7 @@ # directory. If the depth or relationship changes, the following line # may need to be changed. # -INCDIR=../.. +INCDIR=../../core # # Everything below this point should be invariant. 1.12 +1 -1 apachen/src/modules/proxy/Makefile Index: Makefile =================================================================== RCS file: /export/home/cvs/apachen/src/modules/proxy/Makefile,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- Makefile 1997/03/18 10:23:56 1.11 +++ Makefile 1997/07/26 21:07:29 1.12 @@ -53,7 +53,7 @@ SHELL = /bin/sh -INCDIR = ../.. +INCDIR = ../../core LIB=libproxy.a 1.27 +1 -1 apachen/src/modules/proxy/proxy_ftp.c Index: proxy_ftp.c =================================================================== RCS file: /export/home/cvs/apachen/src/modules/proxy/proxy_ftp.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- proxy_ftp.c 1997/07/21 03:37:53 1.26 +++ proxy_ftp.c 1997/07/26 21:07:29 1.27 @@ -54,7 +54,7 @@ #include "mod_proxy.h" #include "http_main.h" -#include "mod_mime.h" +#include "../../modules/standard/mod_mime.h" /* * Decodes a '%' escaped string, and returns the number of characters Added: src/os/unix Makefile.tmpl os.c os.h Log: Dummy os files for Unix (at the moment) Revision Changes Path 1.1 apachen/src/os/unix/Makefile.tmpl Index: Makefile.tmpl =================================================================== CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_CFLAGS) LIBS=$(EXTRA_LIBS) $(LIBS1) INCLUDES=$(INCLUDES1) $(EXTRA_INCLUDES) LFLAGS=$(LFLAGS1) $(EXTRA_LFLAGS) INCDIR=../../core OBJS= os.o all: $(OBJS) .c.o: $(CC) -c $(INCLUDES) $(CFLAGS) $(SPACER) $< clean: rm -f $(OBJS) # DO NOT REMOVE os.o: os.c 1.1 apachen/src/os/unix/os.c Index: os.c =================================================================== 1.1 apachen/src/os/unix/os.h Index: os.h =================================================================== Modified: src/support Makefile.tmpl Log: Updated make for new location of support dir Revision Changes Path 1.5 +2 -2 apachen/src/support/Makefile.tmpl Index: Makefile.tmpl =================================================================== RCS file: /export/home/cvs/apachen/src/support/Makefile.tmpl,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- Makefile.tmpl 1997/07/20 23:44:49 1.4 +++ Makefile.tmpl 1997/07/26 21:08:08 1.5 @@ -16,10 +16,10 @@ all: $(TARGETS) htpasswd: htpasswd.c - $(CC) $(CFLAGS) htpasswd.c -o htpasswd $(LIBS) + $(CC) $(INCLUDES) $(CFLAGS) htpasswd.c -o htpasswd $(LIBS) htdigest: htdigest.c - $(CC) $(CFLAGS) htdigest.c -o htdigest $(LIBS) + $(CC) $(INCLUDES) $(CFLAGS) htdigest.c -o htdigest httpd_monitor: httpd_monitor.c $(CC) $(INCLUDES) $(CFLAGS) httpd_monitor.c -o httpd_monitor