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 ..\..\.. -