| # |
| # NMAKE Makefile for Microsoft Windows |
| # |
| # 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 |
| # |
| # The following install defaults may be customized; |
| # |
| # Option Default |
| # INSTDIR /Apache22 |
| # |
| # For example; |
| # |
| # nmake -f Makefile-fcgid.win INSTDIR="d:/Program Files/Apache" installr |
| # |
| # Be aware that certain awk's will not accept backslashed names, |
| # so the server root should be given in forward slashes (quoted), |
| # preferably with the drive designation! |
| |
| !IF "$(INSTDIR)" == "" |
| INSTDIR=\Apache22 |
| !ENDIF |
| |
| !IF EXIST("modules\fcgid\mod_fcgid.vcproj") \ |
| && ([devenv /help > NUL 2>&1] == 0) \ |
| && !defined(USEMAK) && !defined(USEDSW) |
| USESLN=1 |
| USEMAK=0 |
| USEDSW=0 |
| !ELSEIF EXIST("modules\fcgid\mod_fcgid.mak") && !defined(USEDSW) |
| USESLN=0 |
| USEMAK=1 |
| USEDSW=0 |
| !ELSE |
| USESLN=0 |
| USEMAK=0 |
| USEDSW=1 |
| !ENDIF |
| |
| !IF ("$(CTARGET)" == "") && ($(USESLN) == 1) |
| CTARGET=/build |
| !ENDIF |
| |
| !IF "$(APACHE2_HOME)" == "" |
| APACHE2_HOME=$(INSTDIR) |
| !ENDIF |
| |
| !IF EXIST("$(APACHE2_HOME)\lib\libapr-2.lib") |
| APACHE2_APRSFX=-2 |
| !ELSEIF EXIST("$(APACHE2_HOME)\lib\libapr-1.lib") |
| APACHE2_APRSFX=-1 |
| !ELSEIF EXIST("$(APACHE2_HOME)\lib\libapr.lib") |
| APACHE2_APRSFX= |
| !ELSE |
| !MESSAGE Point INSTDIR at the directory containing an already installed httpd |
| !MESSAGE including build support directories of lib and include. It must |
| !MESSAGE include apr and apr-util. mod_fcgid cannot build without these files! |
| !ENDIF |
| |
| !IF "$(LONG)" == "" |
| !MESSAGE |
| !MESSAGE INSTDIR = $(INSTDIR) |
| !MESSAGE APACHE2_HOME = $(APACHE2_HOME) |
| !MESSAGE |
| !MESSAGE To change these options use 'nmake -f Makefile-fcgid.win [option=value]' |
| !MESSAGE Example: nmake -f Makefile-fcgid.win |
| !MESSAGE |
| !ENDIF |
| |
| !IFNDEF MAKEOPT |
| # Only default the behavior if MAKEOPT= is omitted |
| !IFDEF _NMAKE_VER |
| # Microsoft NMake options |
| MAKEOPT=-nologo |
| !ELSEIF "$(MAKE)" == "make" |
| # Borland make options? Not really supported (yet) |
| MAKEOPT=-s -N |
| !ENDIF |
| !ENDIF |
| |
| _buildr: |
| @$(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=R LONG=Release _build |
| |
| _buildd: |
| @$(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=D LONG=Debug _build |
| |
| installr: |
| @$(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=R LONG=Release _build _install |
| |
| installd: |
| @$(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=D LONG=Debug _build _install |
| |
| clean: _cleanr _cleand |
| -if exist Browse\. rd /s Browse < << > nul |
| y |
| << |
| |
| !IF $(USEMAK) == 1 |
| |
| _cleanr: |
| $(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=R LONG=Release CTARGET=CLEAN _build |
| |
| _cleand: |
| $(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=D LONG=Debug CTARGET=CLEAN _build |
| |
| _build: |
| echo Building Win32 $(LONG) targets ($(SHORT) suffixes) |
| cd modules\fcgid |
| $(MAKE) $(MAKEOPT) -f mod_fcgid.mak CFG="mod_fcgid - Win32 $(LONG)" RECURSE=0 $(CTARGET) |
| cd ..\.. |
| |
| !ELSEIF $(USESLN) == 1 |
| |
| _cleanr: |
| $(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=R LONG=Release CTARGET="/clean" _build |
| |
| _cleand: |
| $(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=D LONG=Debug CTARGET="/clean" _build |
| |
| _build: |
| echo Building Win32 $(LONG) targets ($(SHORT) suffixes) |
| devenv mod_fcgid.sln /useenv $(CTARGET) $(LONG) /project mod_fcgid |
| |
| !ELSE |
| |
| _cleanr: |
| @$(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=R LONG=Release CTARGET="/CLEAN" _build |
| |
| _cleand: |
| @$(MAKE) $(MAKEOPT) -f Makefile-fcgid.win \ |
| INSTDIR="$(INSTDIR)" APACHE2_HOME="$(APACHE2_HOME)" \ |
| SHORT=D LONG=Debug CTARGET="/CLEAN" _build |
| |
| _build: |
| @echo Building Win32 $(LONG) targets ($(SHORT) suffixes) |
| @msdev mod_fcgid.dsw /USEENV /MAKE "mod_fcgid - Win32 $(LONG)" $(CTARGET) |
| |
| !ENDIF |
| |
| httpd_conffile=$(INSTDIR)\conf\httpd.conf |
| httpd_origconffile=$(INSTDIR)\conf\original\httpd.conf |
| |
| _install: |
| echo Y >.y |
| echo A >.A |
| -mkdir "$(INSTDIR)" |
| -mkdir "$(INSTDIR)\conf" |
| -mkdir "$(INSTDIR)\conf\original" |
| !IFDEF HAVE_HTTPD_FCGID_CONF |
| -mkdir "$(INSTDIR)\conf\extra" |
| -mkdir "$(INSTDIR)\conf\original\extra" |
| !ENDIF |
| !IFDEF HAVE_MOD_FCGID_H |
| -mkdir "$(INSTDIR)\include" |
| !ENDIF |
| -mkdir "$(INSTDIR)\manual" |
| -mkdir "$(INSTDIR)\modules" |
| copy CHANGES-FCGID "$(INSTDIR)\CHANGES-FCGID.txt" <.y |
| copy LICENSE-FCGID "$(INSTDIR)\LICENSE-FCGID.txt" <.y |
| copy NOTICE-FCGID "$(INSTDIR)\NOTICE-FCGID.txt" <.y |
| copy README-FCGID "$(INSTDIR)\README-FCGID.txt" <.y |
| copy modules\fcgid\$(LONG)\mod_fcgid.so "$(INSTDIR)\modules" <.y |
| copy modules\fcgid\$(LONG)\mod_fcgid.pdb "$(INSTDIR)\modules" <.y |
| xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a |
| !IFDEF HAVE_MOD_FCGID_H |
| copy include\mod_fcgid.h "$(INSTDIR)\include" < .y > nul |
| !ENDIF |
| for %f in ("$(httpd_origconffile)" "$(httpd_conffile)") do \ |
| if exist "%f" ( \ |
| awk -f build/addloadexample.awk -v MODULE=fcgid -v DSO=.so \ |
| !IFDEF HAVE_HTTPD_FCGID_CONF |
| -v EXAMPLECONF=conf/extra/httpd-fcgid.conf \ |
| !ENDIF |
| -v LIBPATH=modules "%f" > "%f.new" && \ |
| move "%f" "%f.bak" && move "%f.new" "%f" \ |
| ) |
| !IFDEF HAVE_HTTPD_FCGID_CONF |
| copy docs\conf\extra\httpd-fcgid.conf "$(INSTDIR)\conf\original\extra\httpd-fcgid.conf" <.y |
| awk -f << docs\conf\extra\httpd-fcgid.conf > "$(INSTDIR)\conf\original\extra\httpd-fcgid.conf" |
| /^\#@@LoadFcgidModules@@/ { next; } |
| { sub(/@exp_runtimedir@/, "logs"); |
| sub(/@exp_sysconfdir@/, "conf"); |
| sub(/@rel_sysconfdir@/, "conf"); |
| sub(/@rel_logfiledir@/, "logs"); |
| print $0; |
| } |
| << |
| if not exist "$(INSTDIR)\conf\extra\httpd-fcgid.conf" \ |
| copy "$(INSTDIR)\conf\original\extra\httpd-fcgid.conf" \ |
| "$(INSTDIR)\conf\extra\httpd-fcgid.conf" <.y |
| !ENDIF |
| del .y |
| del .a |
| |