pcs 98/03/25 02:38:50
Modified: src Makefile.nt
Log:
Reduce repeated code in the makefile by setting environment variables
for the build types (debug vs. release)
Revision Changes Path
1.25 +97 -206 apache-1.3/src/Makefile.nt
Index: Makefile.nt
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/Makefile.nt,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- Makefile.nt 1998/03/21 05:02:52 1.24
+++ Makefile.nt 1998/03/25 10:38:49 1.25
@@ -1,239 +1,130 @@
# Makefile for Windows NT and Windows 95
+
+# Targets are:
+# _apacher - build Apache in Release mode
+# _apached - build Apache in Debug mode
+# installr - build and install a Release build
+# installd - build and install a Debug build
+# clean - remove (most) generated files
+# _cleanr - remove (most) files generated by a Release build
+# _cleand - remove (most) files generated by a Debug build
+#
+# The default installation directory is \Apache. This can be changed
+# with the INSTDIR macro, for example:
#
-# Note that this doesn't quite work... ApacheCore.dll doesn't depend
-# on proxy.lib or regex.lib. Nor can it, without some messing about -
-# the debug and release versions need different dependencies, and that
-# isn't an option. One way that occurs to me to solve the problem is
-# to have the proxy and regex makes delete the appropriate
-# apache.exe. Tacky, but it'll work! Ben, 5 July 97
+# nmake /f Makefile.nt INSTDIR="d:\Program Files\Apache" installr
+#
+# Note: this does *NOT* change the compiled in default "server root"
+!IF "$(INSTDIR)" == ""
+INSTDIR=\Apache
+!MESSAGE Using default install directory \Apache
+!ENDIF
+default: _apacher
-_apacher:
- cd os\win32
- set CFG=ApacheOS - Win32 Release
- nmake /nologo -f ApacheOS.mak
- cd ..\..
- cd regex
- set CFG=regex - Win32 Release
- nmake /nologo -f regex.mak
- cd ..
- cd ap
- set CFG=ap - Win32 Release
- nmake /nologo -f ap.mak
- cd ..
- -del CoreR\buildmark.obj
- set CFG=ApacheCore - Win32 Release
- nmake /nologo -f ApacheCore.mak
- set CFG=Apache - Win32 Release
- nmake /nologo -f Apache.mak
- cd os\win32
- set CFG=ApacheModuleStatus - Win32 Release
- nmake /nologo -f ApacheModuleStatus.mak
-# set CFG=ApacheModuleInfo - Win32 Release
-# nmake /nologo -f ApacheModuleInfo.mak
- set CFG=ApacheModuleAuthAnon - Win32 Release
- nmake /nologo -f ApacheModuleAuthAnon.mak
- set CFG=ApacheModuleDigest - Win32 Release
- nmake /nologo -f ApacheModuleDigest.mak
- set CFG=ApacheModuleCERNMeta - Win32 Release
- nmake /nologo -f ApacheModuleCERNMeta.mak
- set CFG=ApacheModuleExpires - Win32 Release
- nmake /nologo -f ApacheModuleExpires.mak
- set CFG=ApacheModuleHeaders - Win32 Release
- nmake /nologo -f ApacheModuleHeaders.mak
- set CFG=ApacheModuleSpeling - Win32 Release
- nmake /nologo -f ApacheModuleSpeling.mak
- set CFG=ApacheModuleUserTrack - Win32 Release
- nmake /nologo -f ApacheModuleUserTrack.mak
- set CFG=ApacheModuleRewrite - Win32 Release
- nmake /nologo -f ApacheModuleRewrite.mak
- cd ..\..
- cd modules\proxy
- set CFG=ApacheModuleProxy - Win32 Release
- nmake /nologo -f ApacheModuleProxy.mak
- cd ..\..
+_release:
+ set SHORT=R
+ set LONG=Release
-_apached:
- cd os\win32
- set CFG=ApacheOS - Win32 Debug
- nmake /nologo -f ApacheOS.mak
- cd ..\..
- cd regex
- set CFG=regex - Win32 Debug
- nmake /nologo -f regex.mak
- cd ..
- cd ap
- set CFG=ap - Win32 Debug
- nmake /nologo -f ap.mak
- cd ..
- -del CoreD\buildmark.obj
- set CFG=ApacheCore - Win32 Debug
- nmake /nologo -f ApacheCore.mak
- set CFG=Apache - Win32 Debug
- nmake /nologo -f Apache.mak
- cd os\win32
- set CFG=ApacheModuleStatus - Win32 Debug
- nmake /nologo -f ApacheModuleStatus.mak
-# set CFG=ApacheModuleInfo - Win32 Debug
-# nmake /nologo -f ApacheModuleInfo.mak
- set CFG=ApacheModuleAuthAnon - Win32 Debug
- nmake /nologo -f ApacheModuleAuthAnon.mak
- set CFG=ApacheModuleDigest - Win32 Debug
- nmake /nologo -f ApacheModuleDigest.mak
- set CFG=ApacheModuleCERNMeta - Win32 Debug
- nmake /nologo -f ApacheModuleCERNMeta.mak
- set CFG=ApacheModuleExpires - Win32 Debug
- nmake /nologo -f ApacheModuleExpires.mak
- set CFG=ApacheModuleHeaders - Win32 Debug
- nmake /nologo -f ApacheModuleHeaders.mak
- set CFG=ApacheModuleSpeling - Win32 Debug
- nmake /nologo -f ApacheModuleSpeling.mak
- set CFG=ApacheModuleUserTrack - Win32 Debug
- nmake /nologo -f ApacheModuleUserTrack.mak
- set CFG=ApacheModuleRewrite - Win32 Debug
- nmake /nologo -f ApacheModuleRewrite.mak
- cd ..\..
- cd modules\proxy
- set CFG=ApacheModuleProxy - Win32 Debug
- nmake /nologo -f ApacheModuleProxy.mak
- cd ..\..
+_debug:
+ set SHORT=D
+ set LONG=Debug
-installr: _apacher
- -mkdir \Apache
- -mkdir \Apache\modules
- -mkdir \Apache\logs
- -mkdir \Apache\conf
- copy ApacheR\Apache.exe \Apache
- copy CoreR\ApacheCore.dll \Apache
- copy os\win32\ApacheModuleStatusR\ApacheModuleStatus.dll \Apache\modules
-# copy os\win32\ApacheModuleInfoR\ApacheModuleInfo.dll \Apache\modules
- copy os\win32\ApacheModuleAuthAnonR\ApacheModuleAuthAnon.dll
\Apache\modules
- copy os\win32\ApacheModuleDigestR\ApacheModuleDigest.dll \Apache\modules
- copy os\win32\ApacheModuleCERNMetaR\ApacheModuleCERNMeta.dll
\Apache\modules
- copy os\win32\ApacheModuleExpiresR\ApacheModuleExpires.dll
\Apache\modules
- copy os\win32\ApacheModuleHeadersR\ApacheModuleHeaders.dll
\Apache\modules
- copy os\win32\ApacheModuleRewriteR\ApacheModuleRewrite.dll
\Apache\modules
- copy os\win32\ApacheModuleSpelingR\ApacheModuleSpeling.dll
\Apache\modules
- copy os\win32\ApacheModuleUserTrackR\ApacheModuleUserTrack.dll
\Apache\modules
- copy modules\proxy\Release\ApacheModuleProxy.dll \Apache\modules
-
-installd: _apached
- -mkdir \Apache
- -mkdir \Apache\modules
- -mkdir \Apache\logs
- -mkdir \Apache\conf
- copy ApacheD\Apache.exe \Apache
- copy CoreD\ApacheCore.dll \Apache
- copy os\win32\ApacheModuleStatusD\ApacheModuleStatus.dll \Apache\modules
-# copy os\win32\ApacheModuleInfoD\ApacheModuleInfo.dll \Apache\modules
- copy os\win32\ApacheModuleAuthAnonD\ApacheModuleAuthAnon.dll
\Apache\modules
- copy os\win32\ApacheModuleDigestD\ApacheModuleDigest.dll \Apache\modules
- copy os\win32\ApacheModuleCERNMetaD\ApacheModuleCERNMeta.dll
\Apache\modules
- copy os\win32\ApacheModuleExpiresD\ApacheModuleExpires.dll
\Apache\modules
- copy os\win32\ApacheModuleHeadersD\ApacheModuleHeaders.dll
\Apache\modules
- copy os\win32\ApacheModuleRewriteD\ApacheModuleRewrite.dll
\Apache\modules
- copy os\win32\ApacheModuleSpelingD\ApacheModuleSpeling.dll
\Apache\modules
- copy os\win32\ApacheModuleUserTrackD\ApacheModuleUserTrack.dll
\Apache\modules
- copy modules\proxy\Debug\ApacheModuleProxy.dll \Apache\modules
+_apacher: _release _build
+_apached: _debug _build
+installr: _release _build _install
+installd: _debug _build _install
+_cleanr: _release _clean
+_cleand: _debug _clean
-cleanr:
+clean:
+ $(MAKE) /f Makefile.nt _cleanr
+ $(MAKE) /f Makefile.nt _cleand
+
+installdll: _release installdll
+
+_build:
+ echo LONG %LONG% SHORT %SHORT% x
cd os\win32
- set CFG=ApacheOS - Win32 Release
- nmake /nologo -f ApacheOS.mak clean
+ nmake /nologo CFG="ApacheOS - Win32 %LONG%" -f ApacheOS.mak
cd ..\..
cd regex
- set CFG=regex - Win32 Release
- nmake /nologo -f regex.mak clean
+ nmake /nologo CFG="regex - Win32 %LONG%" -f regex.mak
cd ..
cd ap
- set CFG=ap - Win32 Release
- nmake /nologo -f ap.mak clean
+ nmake /nologo CFG="ap - Win32 %LONG%" -f ap.mak
cd ..
- set CFG=ApacheCore - Win32 Release
- nmake /nologo -f ApacheCore.mak clean
- set CFG=Apache - Win32 Release
- nmake /nologo -f Apache.mak clean
- cd os\win32
- set CFG=ApacheModuleStatus - Win32 Release
- nmake /nologo -f ApacheModuleStatus.mak clean
-# set CFG=ApacheModuleInfo - Win32 Release
-# nmake /nologo -f ApacheModuleInfo.mak clean
- set CFG=ApacheModuleAuthAnon - Win32 Release
- nmake /nologo -f ApacheModuleAuthAnon.mak clean
- set CFG=ApacheModuleDigest - Win32 Release
- nmake /nologo -f ApacheModuleDigest.mak clean
- set CFG=ApacheModuleCERNMeta - Win32 Release
- nmake /nologo -f ApacheModuleCERNMeta.mak clean
- set CFG=ApacheModuleExpires - Win32 Release
- nmake /nologo -f ApacheModuleExpires.mak clean
- set CFG=ApacheModuleHeaders - Win32 Release
- nmake /nologo -f ApacheModuleHeaders.mak clean
- set CFG=ApacheModuleSpeling - Win32 Release
- nmake /nologo -f ApacheModuleSpeling.mak clean
- set CFG=ApacheModuleUserTrack - Win32 Release
- nmake /nologo -f ApacheModuleUserTrack.mak clean
+ -del Core%SHORT%\buildmark.obj
+ nmake /nologo CFG="ApacheCore - Win32 %LONG%" -f ApacheCore.mak
+ nmake /nologo CFG="Apache - Win32 %LONG%" -f Apache.mak
+ cd os\win32
+ set CFG=ApacheModuleStatus - Win32 %LONG%
+ nmake /nologo CFG="ApacheModuleStatus - Win32 %LONG%" -f
ApacheModuleStatus.mak
+# nmake /nologo CFG ""/nologo -f
ApacheModuleStatus.mak"=ApacheModuleInfo - Win32 %LONG%" -f ApacheModuleInfo.mak
+ nmake /nologo CFG="ApacheModuleAuthAnon - Win32 %LONG%" -f
ApacheModuleAuthAnon.mak
+ nmake /nologo CFG="ApacheModuleDigest - Win32 %LONG%" -f
ApacheModuleDigest.mak
+ nmake /nologo CFG="ApacheModuleCERNMeta - Win32 %LONG%" -f
ApacheModuleCERNMeta.mak
+ nmake /nologo CFG="ApacheModuleExpires - Win32 %LONG%" -f
ApacheModuleExpires.mak
+ nmake /nologo CFG="ApacheModuleHeaders - Win32 %LONG%" -f
ApacheModuleHeaders.mak
+ nmake /nologo CFG="ApacheModuleSpeling - Win32 %LONG%" -f
ApacheModuleSpeling.mak
+ nmake /nologo CFG="ApacheModuleUserTrack - Win32 %LONG%" -f
ApacheModuleUserTrack.mak
+ nmake /nologo CFG="ApacheModuleRewrite - Win32 %LONG%" -f
ApacheModuleRewrite.mak
cd ..\..
cd modules\proxy
- set CFG=ApacheModuleProxy - Win32 Release
- nmake /nologo -f ApacheModuleProxy.mak clean
+ nmake /nologo CFG="ApacheModuleProxy - Win32 %LONG%" -f
ApacheModuleProxy.mak
cd ..\..
-cleand:
+_install:
+ -mkdir $(INSTDIR)
+ -mkdir $(INSTDIR)\modules
+ -mkdir $(INSTDIR)\logs
+ -mkdir $(INSTDIR)\conf
+ copy Apache%SHORT%\Apache.exe $(INSTDIR)
+ copy Core%SHORT%\ApacheCore.dll $(INSTDIR)
+ copy os\win32\ApacheModuleStatus%SHORT%\ApacheModuleStatus.dll
$(INSTDIR)\modules
+# copy os\win32\ApacheModuleInfo%SHORT%\ApacheModuleInfo.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleAuthAnon%SHORT%\ApacheModuleAuthAnon.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleDigest%SHORT%\ApacheModuleDigest.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleCERNMeta%SHORT%\ApacheModuleCERNMeta.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleExpires%SHORT%\ApacheModuleExpires.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleHeaders%SHORT%\ApacheModuleHeaders.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleRewrite%SHORT%\ApacheModuleRewrite.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleSpeling%SHORT%\ApacheModuleSpeling.dll
$(INSTDIR)\modules
+ copy os\win32\ApacheModuleUserTrack%SHORT%\ApacheModuleUserTrack.dll
$(INSTDIR)\modules
+ copy modules\proxy\%LONG%\ApacheModuleProxy.dll $(INSTDIR)\modules
+
+_clean:
cd os\win32
- set CFG=ApacheOS - Win32 Debug
- nmake /nologo -f ApacheOS.mak
+ nmake /nologo CFG="ApacheOS - Win32 %LONG%" -f ApacheOS.mak clean
cd ..\..
cd regex
- set CFG=regex - Win32 Debug
- nmake /nologo -f regex.mak clean
+ nmake /nologo CFG="regex - Win32 %LONG%" -f regex.mak clean
cd ..
cd ap
- set CFG=ap - Win32 Debug
- nmake /nologo -f ap.mak clean
+ nmake /nologo CFG="ap - Win32 %LONG%" -f ap.mak clean
cd ..
- set CFG=ApacheCore - Win32 Debug
- nmake /nologo -f ApacheCore.mak clean
- set CFG=Apache - Win32 Debug
- nmake /nologo -f Apache.mak clean
+ nmake /nologo CFG="ApacheCore - Win32 %LONG%" -f ApacheCore.mak clean
+ nmake /nologo CFG="Apache - Win32 %LONG%" -f Apache.mak clean
cd os\win32
- set CFG=ApacheModuleStatus - Win32 Debug
- nmake /nologo -f ApacheModuleStatus.mak clean
-# set CFG=ApacheModuleInfo - Win32 Debug
-# nmake /nologo -f ApacheModuleInfo.mak clean
- set CFG=ApacheModuleAuthAnon - Win32 Debug
- nmake /nologo -f ApacheModuleAuthAnon.mak clean
- set CFG=ApacheModuleDigest - Win32 Debug
- nmake /nologo -f ApacheModuleDigest.mak clean
- set CFG=ApacheModuleCERNMeta - Win32 Debug
- nmake /nologo -f ApacheModuleCERNMeta.mak clean
- set CFG=ApacheModuleExpires - Win32 Debug
- nmake /nologo -f ApacheModuleExpires.mak clean
- set CFG=ApacheModuleHeaders - Win32 Debug
- nmake /nologo -f ApacheModuleHeaders.mak clean
- set CFG=ApacheModuleSpeling - Win32 Debug
- nmake /nologo -f ApacheModuleSpeling.mak clean
- set CFG=ApacheModuleUserTrack - Win32 Debug
- nmake /nologo -f ApacheModuleUserTrack.mak clean
+ nmake /nologo CFG="ApacheModuleStatus - Win32 %LONG%" -f
ApacheModuleStatus.mak clean
+# nmake /nologo CFG="ApacheModuleInfo - Win32 %LONG%" -f
ApacheModuleInfo.mak clean
+ nmake /nologo CFG="ApacheModuleAuthAnon - Win32 %LONG%" -f
ApacheModuleAuthAnon.mak clean
+ nmake /nologo CFG="ApacheModuleDigest - Win32 %LONG%" -f
ApacheModuleDigest.mak clean
+ nmake /nologo CFG="ApacheModuleCERNMeta - Win32 %LONG%" -f
ApacheModuleCERNMeta.mak clean
+ nmake /nologo CFG="ApacheModuleExpires - Win32 %LONG%" -f
ApacheModuleExpires.mak clean
+ nmake /nologo CFG="ApacheModuleHeaders - Win32 %LONG%" -f
ApacheModuleHeaders.mak clean
+ nmake /nologo CFG="ApacheModuleSpeling - Win32 %LONG%" -f
ApacheModuleSpeling.mak clean
+ nmake /nologo CFG="ApacheModuleUserTrack - Win32 %LONG%" -f
ApacheModuleUserTrack.mak clean
cd ..\..
cd modules\proxy
- set CFG=ApacheModuleProxy - Win32 Debug
- nmake /nologo -f ApacheModuleProxy.mak clean
+ nmake /nologo CFG="ApacheModuleProxy - Win32 %LONG%" -f
ApacheModuleProxy.mak clean
cd ..\..
-
-clean: cleand cleanr installdll-clean
-
-installdll:
cd os\win32\installer\installdll
- set CFG=install - Win32 Release
- nmake /nologo -f install.mak
+ nmake /nologo CFG="install - Win32 %LONG%" -f install.mak clean
cd ..\..\..
-installdll-clean:
+_installdll:
cd os\win32\installer\installdll
- set CFG=install - Win32 Release
- nmake /nologo -f install.mak clean
- set CFG=install - Win32 Debug
- nmake /nologo -f install.mak clean
+ nmake /nologo CFG="install - Win32 %LONG%" -f install.mak
cd ..\..\..
-