#
# DBD_LIST="sqlite3 pgsql oracle mysql freetds"
#
+# Provide a DBM_LIST argument after configuring LIB and INCLUDE with
+# the SDK paths of the corresponding client support libraries.
+# The sdbm driver is always built in.
+#
+# DBM_LIST="db gdbm"
+#
# For example;
#
# nmake -f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
CTARGET=/build
!ENDIF
-!IF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
+!IF !EXIST("srclib\apr") || (!(EXIST("srclib\apr\include\apu.hw") || !EXIST("srclib\apr-util")) && !EXIST("srclib\apr-iconv"))
!MESSAGE Please check out or download and unpack the Apache Portability Runtime
!MESSAGE sources (apr, apr-iconv and apr-util) into your srclib dir.
!MESSAGE Apache cannot build without these libraries!
@echo recent version confirmed to build with mod_ssl and ab is 0.9.8d.
@echo Available from http://www.openssl.org/
!ENDIF
+# NOT EXIST("srclib\openssl")
+
+!IF EXIST("srclib\serf")
+
+_tryserf:
+!IF $(USEMAK) == 1
+ cd modules\proxy
+ $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..\..
+!ELSEIF $(USESLN) == 1
+ devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_serf
+!ELSE
+ @msdev Apache.dsw /USEENV /MAKE \
+ "mod_serf - Win32 $(LONG)" /NORECURSE $(CTARGET)
+!ENDIF
+
+!ELSE
+# NOT EXIST("srclib\serf")
+
+_tryserf:
+ @echo -----
+ @echo mod_serf will not build unless libserf.dll is built in srclib\serf
+ @echo For purposes of alpha, libserf release 0.3.0 works, but only with
+ @echo http://people.apache.org/~wrowe/fixserf-win32-0.3.0.patch
+!ENDIF
+# NOT EXIST("srclib\serf")
!IF EXIST("srclib\zlib")
_tryzlib:
@echo -----
- @echo mod_deflate will not build unless zlib is installed in srclib\zlib.
+ @echo mod_deflate will not build unless zlib is built in srclib\zlib.
@echo Version 1.2.1 and later available from http://www.gzip.org/zlib/
@echo built w/ nmake -f win32/Makefile.msc will satisfy this requirement.
!ENDIF
-_trydbd:
+_trydb:
!IF $(USEMAK) == 1
cd srclib\apr-util\dbd
for %d in (odbc $(DBD_LIST)) do \
$(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..\dbm
+ for %d in ($(DBM_LIST) x) do if not %d == x \
+ $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..\..\..
!ELSEIF $(USESLN) == 1
for %d in (odbc $(DBD_LIST)) do \
devenv Apache.sln /useenv $(CTARGET) $(LONG) /project apr_dbd_%d
+ for %d in ($(DBM_LIST) x) do if not %d == x \
+ devenv Apache.sln /useenv $(CTARGET) $(LONG) /project apr_dbm_%d
!ELSE
@for %d in (odbc $(DBD_LIST)) do \
msdev Apache.dsw /USEENV /MAKE \
"apr_dbd_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
+ @for %d in ($(DBM_LIST) x) do if not %d == x \
+ msdev Apache.dsw /USEENV /MAKE \
+ "apr_dbm_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
!ENDIF
for %d in (odbc $(DBD_LIST)) do \
$(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..
+ cd dbm
+ for %d in ($(DBM_LIST) x) do if not %d == x \
+ $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..
cd ..\..
cd server
$(MAKE) $(MAKEOPT) -f gen_test_char.mak CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..\..\..
cd modules\cache
$(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_cache_disk.mak CFG="mod_cache_disk - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
- $(MAKE) $(MAKEOPT) -f mod_disk_cache.mak CFG="mod_disk_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_socache_dbm.mak CFG="mod_socache_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
-!IFDEF ALL
- $(MAKE) $(MAKEOPT) -f mod_socache_dc.mak CFG="mod_socache_dc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
-!ENDIF
+# $(MAKE) $(MAKEOPT) -f mod_socache_dc.mak CFG="mod_socache_dc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_socache_memcache.mak CFG="mod_socache_memcache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_socache_shmcb.mak CFG="mod_socache_shmcb - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..\..
+ cd modules\core
+ $(MAKE) $(MAKEOPT) -f mod_watchdog.mak CFG="mod_watchdog - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..\..
+ cd modules\cluster
+ $(MAKE) $(MAKEOPT) -f mod_heartbeat.mak CFG="mod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_heartmonitor.mak CFG="mod_heartmonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..\..
cd modules\dav\main
$(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..\..\..
$(MAKE) $(MAKEOPT) -f mod_filter.mak CFG="mod_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_ratelimit.mak CFG="mod_ratelimit - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_reqtimeout.mak CFG="mod_reqtimeout - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_request.mak CFG="mod_request - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_sed.mak CFG="mod_sed - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_substitute.mak CFG="mod_substitute - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_proxy_fcgi.mak CFG="mod_proxy_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_proxy_scgi.mak CFG="mod_proxy_scgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+!IF EXIST("srclib\serf")
+ $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+!ENDIF
cd ..\..
+ cd modules\proxy\balancers
+ $(MAKE) $(MAKEOPT) -f mod_lbmethod_bybusyness.mak CFG="mod_lbmethod_bybusyness - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_lbmethod_byrequests.mak CFG="mod_lbmethod_byrequests - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_lbmethod_bytraffic.mak CFG="mod_lbmethod_bytraffic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_lbmethod_heartbeat.mak CFG="mod_lbmethod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..\..\..
!IFDEF ALL
cd modules\proxy\examples
$(MAKE) $(MAKEOPT) -f mod_lbmethod_rr.mak CFG="mod_lbmethod_rr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_session_dbd.mak CFG="mod_session_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..\..
!IF EXIST("srclib\openssl")
- #cd modules\session
- # $(MAKE) $(MAKEOPT) -f mod_session_crypto.mak CFG="mod_session_crypto - Win32 $(LONG)" RECURSE=0 $(CTARGET)
- #cd ..\..
+# cd modules\session
+# $(MAKE) $(MAKEOPT) -f mod_session_crypto.mak CFG="mod_session_crypto - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+# cd ..\..
cd modules\ssl
$(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..\..
copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
copy srclib\apr-util\ldap\$(LONG)\apr_ldap-1.$(src_dll) "$(inst_dll)" <.y
+!IF EXIST("srclib\serf")
+ copy srclib\serf\$(LONG)\libserf.$(src_dll) "$(inst_dll)" <.y
+!ENDIF
for %d in (odbc $(DBD_LIST)) do ( \
copy srclib\apr-util\dbd\$(LONG)\apr_dbd_%d-1.$(src_dll) "$(inst_dll)" <.y \
)
+ for %d in ($(DBM_LIST) x) do if not %d == x ( \
+ copy srclib\apr-util\dbm\$(LONG)\apr_dbm_%d-1.$(src_dll) "$(inst_dll)" <.y \
+ )
copy srclib\pcre\pcre.$(src_dll) "$(inst_dll)" <.y
copy modules\aaa\$(LONG)\mod_access_compat.$(src_so) "$(inst_so)" <.y
copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
copy modules\cache\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
+ copy modules\cache\$(LONG)\mod_cache_disk.$(src_so) "$(inst_so)" <.y
copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
- copy modules\cache\$(LONG)\mod_disk_cache.$(src_so) "$(inst_so)" <.y
copy modules\cache\$(LONG)\mod_socache_dbm.$(src_so) "$(inst_so)" <.y
- -copy modules\cache\$(LONG)\mod_socache_dc.$(src_so) "$(inst_so)" <.y
+# copy modules\cache\$(LONG)\mod_socache_dc.$(src_so) "$(inst_so)" <.y
copy modules\cache\$(LONG)\mod_socache_memcache.$(src_so) "$(inst_so)" <.y
copy modules\cache\$(LONG)\mod_socache_shmcb.$(src_so) "$(inst_so)" <.y
+ copy modules\core\$(LONG)\mod_watchdog.$(src_so) "$(inst_so)" <.y
+ copy modules\cluster\$(LONG)\mod_heartbeat.$(src_so) "$(inst_so)" <.y
+ copy modules\cluster\$(LONG)\mod_heartmonitor.$(src_so) "$(inst_so)" <.y
copy modules\database\$(LONG)\mod_dbd.$(src_so) "$(inst_so)" <.y
copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
copy modules\dav\lock\$(LONG)\mod_dav_lock.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_filter.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_ratelimit.$(src_so) "$(inst_so)" <.y
+ copy modules\filters\$(LONG)\mod_reqtimeout.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_request.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_sed.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_substitute.$(src_so) "$(inst_so)" <.y
copy modules\proxy\$(LONG)\mod_proxy_fcgi.$(src_so) "$(inst_so)" <.y
copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
+ copy modules\proxy\$(LONG)\mod_proxy_scgi.$(src_so) "$(inst_so)" <.y
+!IF EXIST("srclib\serf")
+ copy modules\proxy\$(LONG)\mod_serf.$(src_so) "$(inst_so)" <.y
+!ENDIF
+ copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bybusyness.$(src_so) "$(inst_so)" <.y
+ copy modules\proxy\balancers\$(LONG)\mod_lbmethod_byrequests.$(src_so) "$(inst_so)" <.y
+ copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bytraffic.$(src_so) "$(inst_so)" <.y
+ copy modules\proxy\balancers\$(LONG)\mod_lbmethod_heartbeat.$(src_so) "$(inst_so)" <.y
!IFDEF ALL
- -copy modules\proxy\examples\$(LONG)\mod_lbmethod_rr.$(src_so) "$(inst_so)" <.y
+ copy modules\proxy\examples\$(LONG)\mod_lbmethod_rr.$(src_so) "$(inst_so)" <.y
!ENDIF
copy modules\session\$(LONG)\mod_session.$(src_so) "$(inst_so)" <.y
copy modules\session\$(LONG)\mod_session_cookie.$(src_so) "$(inst_so)" <.y
copy modules\session\$(LONG)\mod_session_dbd.$(src_so) "$(inst_so)" <.y
!IF EXIST("srclib\openssl")
-!IFDEF ALL
- -copy modules\session\$(LONG)\mod_session_crypto.$(src_so) "$(inst_so)" <.y
-!ENDIF
+# copy modules\session\$(LONG)\mod_session_crypto.$(src_so) "$(inst_so)" <.y
copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
-copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
-copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
-mkdir "$(INSTDIR)\lib"
-mkdir "$(INSTDIR)\logs"
-mkdir "$(INSTDIR)\modules"
- -mkdir "$(INSTDIR)\symbols"
- -mkdir "$(INSTDIR)\symbols\exe"
- -mkdir "$(INSTDIR)\symbols\dll"
- -mkdir "$(INSTDIR)\symbols\so"
copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
srclib\apr-util\xml\expat\lib\expat.h \
srclib\apr\include\*.h \
srclib\apr-util\include\*.h \
+!IF EXIST("srclib\serf")
+ srclib\serf\*.h \
+!ENDIF
include\*.h \
os\win32\os.h \
+ modules\cache\mod_cache.h \
+ modules\core\mod_so.h \
+ modules\core\mod_watchdog.h \
modules\database\mod_dbd.h \
modules\dav\main\mod_dav.h \
modules\filters\mod_include.h \
modules\generators\mod_cgi.h \
modules\generators\mod_status.h \
modules\loggers\mod_log_config.h \
+ modules\mappers\mod_rewrite.h \
modules\proxy\mod_proxy.h \
modules\proxy\mod_serf.h \
modules\ssl\mod_ssl.h \
- modules\mappers\mod_so.h \
- modules\mappers\mod_rewrite.h \
- modules\mappers\mod_watchdog.h \
- modules\cache\mod_cache.h ) do \
+ ) do \
@copy %f "$(INSTDIR)\include" < .y > nul
copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
copy srclib\apr\Lib$(SHORT)\apr-1.pdb "$(INSTDIR)\lib" <.y
copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
+!IF EXIST("srclib\serf")
+ copy srclib\serf\$(LONG)\libserf.lib "$(INSTDIR)\lib" <.y
+ copy srclib\serf\$(LONG)\libserf.exp "$(INSTDIR)\lib" <.y
+!ENDIF
copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y