diff options
Diffstat (limited to 'Makefile.win')
-rw-r--r-- | Makefile.win | 1297 |
1 files changed, 1297 insertions, 0 deletions
diff --git a/Makefile.win b/Makefile.win new file mode 100644 index 0000000..701ea06 --- /dev/null +++ b/Makefile.win @@ -0,0 +1,1297 @@ +# Makefile for Windows NT and Windows 95/98/2000 + +# Targets are: +# _buildr - build Apache in Release mode +# _buildd - 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 +# _browse - build the browse info file +# +# The following install defaults may be customized; +# +# Option Default +# INSTDIR /Apache24 +# PORT 80 +# SSLPORT 443 +# DOMAINNAME example.com +# SERVERNAME www.example.com +# SERVERNAME admin@example.com +# +# ALL (unset) Includes additional modules for build testing +# +# Provide a DBD_LIST argument after configuring LIB and INCLUDE with +# the SDK paths of the corresponding client support libraries. +# The ODBC driver is always built on Windows +# +# 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 +# +# 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 EXIST("Apache.sln") && ([devenv /help > NUL 2>&1] == 0) \ + && !defined(USEMAK) && !defined(USEDSW) +USESLN=1 +USEMAK=0 +USEDSW=0 +!ELSEIF EXIST("httpd.mak") && !defined(USEDSW) +USESLN=0 +USEMAK=1 +USEDSW=0 +!ELSE +USESLN=0 +USEMAK=0 +USEDSW=1 +!ENDIF + +# APU 1.6 (and up?) +!IF EXIST("srclib\apr-util\xml\xml.mak") +EXPAT=xml +EXPBCK = .. +!ELSE +EXPAT=xml\expat\lib +EXPBCK = ..\..\.. +!ENDIF + +default: _buildr + +!IF ("$(CTARGET)" == "") && ($(USESLN) == 1) +CTARGET=/build +!ENDIF + +!IF EXIST("srclib\apr\include\apu.h") +TLP=Apache-apr2 +UTILDIR=apr +!ELSEIF !EXIST("srclib\apr") || !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! +!MESSAGE +!ERROR Need srclib\ apr, apr-iconv and apr-util +!ELSE +TLP=Apache +UTILDIR=apr-util +!ENDIF + +!IF !EXIST("srclib\expat") && !EXIST("srclib\apr-util\xml\expat") +!MESSAGE Please check out or download and unpack the current expat library source +!MESSAGE under your srclib dir for apr 2.x, or srclib\apr-util\xml\expat for apr 1.x +!MESSAGE Apache cannot build without this library! +!MESSAGE +!ERROR Need srclib\expat or srclib\apr-util\xml\expat +!ENDIF + +!IF !EXIST("srclib\pcre") +!MESSAGE Please check out or download and unpack the current PCRE library source +!MESSAGE under your srclib dir, and compile the pcre.dll with CMake options +!MESSAGE BUILD_SHARED_LIBS and CMAKE_BUILD_TYPE RelWithDebInfo. +!MESSAGE Apache cannot build without this library! +!MESSAGE +!ERROR Need srclib\pcre +!ENDIF + + +# Note; _tryfoo: blocks are used only by the msvc developer studio environment +# to 'fix up' the build, since conditional dependencies aren't supported. +# + +!IF EXIST("srclib\openssl") +!IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe") +SSLBIN=out32dll.dbg +SSLAPP=out32dll.dbg +SSLCRP=libeay32 +SSLLIB=ssleay32 +!ELSEIF EXIST("srclib\openssl\libcrypto.lib") +!MESSAGE Building with OpenSSL 1.1.0 +!MESSAGE +SSLBIN=. +SSLAPP=apps +SSLCRP=libcrypto +SSLLIB=libssl +SSLOPT=_HAVE_OSSL110=1 +!ELSE +SSLBIN=out32dll +SSLAPP=out32dll +SSLCRP=libeay32 +SSLLIB=ssleay32 +!ENDIF + + +_tryssl: +!IF $(USEMAK) == 1 + cd modules\ssl + $(MAKE) $(MAKEOPT) $(SSLOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd support + $(MAKE) $(MAKEOPT) $(SSLOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd .. +!ELSEIF $(USESLN) == 1 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_ssl - Win32 $(LONG)" \ + "abs - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ELSE +# NOT EXIST("srclib\openssl") + +_tryssl: + @echo ----- + @echo mod_ssl and ab/ssl will not build unless openssl is installed + @echo in srclib\openssl. They must be precompiled using the + @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32. The most + @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\zlib") + +_tryzlib: +!IF $(USEMAK) == 1 + cd modules\filters + $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ELSEIF $(USESLN) == 1 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ELSE +# NOT EXIST("srclib\zlib") + +_tryzlib: + @echo ----- + @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 + +!IF EXIST("srclib\libxml2") + +_tryxml: +!IF $(USEMAK) == 1 + cd modules\filters + $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ELSEIF $(USESLN) == 1 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET) + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ELSE +# NOT EXIST("srclib\libxml2") + +_tryxml: + @echo ----- + @echo mod_proxy_html and mod_xml2enc will not build unless libxml2 is + @echo built in srclib\libxml2. Version 2.7.7 and later available from + @echo http://xmlsoft.org/ will satisfy this requirement. + +!ENDIF + + +!IF EXIST("srclib\lua") + +_trylua: +!IF $(USEMAK) == 1 + cd modules\lua + $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ELSEIF $(USESLN) == 1 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ELSE +# NOT EXIST("srclib\lua") + +_trylua: + @echo ----- + @echo mod_lua will not build unless lua is installed in srclib\lua. + @echo Version 5.1 includes an etc\luavs.bat that will satisfy this requirement. + +!ENDIF + +!IF EXIST("srclib\nghttp2") + +_trynghttp2: +!IF $(USEMAK) == 1 + cd modules\http2 + $(MAKE) $(MAKEOPT) -f mod_http2.mak CFG="mod_http2 - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_proxy_http2.mak CFG="mod_proxy_http2 - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ELSEIF $(USESLN) == 1 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_http2 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_http2 +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_http2 - Win32 $(LONG)" /NORECURSE $(CTARGET) + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_proxy_http2 - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ELSE +# NOT EXIST("srclib\nghttp2") + +_trynghttp2: + @echo ----- + @echo mod_http2 will not build unless nghttp2 is installed in srclib\nghttp2. + @echo Version 1.0 includes an lib\makefile.msvc that will satisfy this + @echo requirement. + +!ENDIF + +!IF EXIST("srclib\brotli") + +_trybrotli: +!IF $(USEMAK) == 1 + cd modules\filters + $(MAKE) $(MAKEOPT) -f mod_brotli.mak CFG="mod_brotli - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ELSEIF $(USESLN) == 1 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_brotli +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_brotli - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ELSE +# NOT EXIST("srclib\brotli") + +_trybrotli: + @echo ----- + @echo mod_brotli will not build unless brotli is built in srclib\brotli. + @echo Version 1.0.0 and later available from https://github.com/google/brotli/releases + @echo build with: + @echo cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF + @echo nmake + +!ENDIF + +!IF EXIST("srclib\openssl") && EXIST("srclib\jansson") && EXIST("srclib\curl") + +_trymd: +!IF $(USEMAK) == 1 + cd modules\md + $(MAKE) $(MAKEOPT) $(SSLOPT) -f mod_md.mak CFG="mod_md - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ELSEIF $(USESLN) == 1 + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_md +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_md - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ELSE +# NOT EXIST("srclib\openssl") && EXIST("srclib\jansson") && EXIST("srclib\curl") + +_trymd: + @echo ----- + @echo mod_md will not build unless OpenSSL, Jansson and Curl are built and placed + @echo in srclib. Example: srclib/openssl, srclib/jansson and srclib/curl + +!ENDIF + +_trydb: +!IF $(USEMAK) == 1 + cd srclib\$(UTILDIR)\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 $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbd_%d + for %d in ($(DBM_LIST) x) do if not %d == x \ + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbm_%d +!ELSE + @for %d in (odbc $(DBD_LIST)) do \ + msdev $(TLP).dsw /USEENV /MAKE \ + "apr_dbd_%d - Win32 $(LONG)" /NORECURSE $(CTARGET) + @for %d in ($(DBM_LIST) x) do if not %d == x \ + msdev $(TLP).dsw /USEENV /MAKE \ + "apr_dbm_%d - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + + +!IF "$(INSTDIR)" == "" +INSTDIR=\Apache24 +!ENDIF +!IF "$(DOMAINNAME)" == "" +DOMAINNAME=example.com +!ENDIF +!IF "$(SERVERNAME)" == "" +SERVERNAME=www.$(DOMAINNAME) +!ENDIF +!IF "$(SERVERADMIN)" == "" +SERVERADMIN=admin@$(DOMAINNAME) +!ENDIF +!IF "$(PORT)" == "" +PORT=80 +!ENDIF +!IF "$(SSLPORT)" == "" +SSLPORT=443 +!ENDIF + +!IF "$(LONG)" == "" +!MESSAGE +!MESSAGE INSTDIR = $(INSTDIR) +!MESSAGE DOMAINNAME = $(DOMAINNAME) +!MESSAGE SERVERNAME = $(SERVERNAME) +!MESSAGE SERVERADMIN = $(SERVERADMIN) +!MESSAGE PORT = $(PORT) +!IF EXIST("srclib\openssl") +!MESSAGE SSLPORT = $(SSLPORT) +!ENDIF +!MESSAGE +!MESSAGE To change these options use 'nmake -f Makefile.win [option=value]' +!MESSAGE Example: nmake -f Makefile.win PORT=8080 +!MESSAGE +!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 + +_dummy: + +_browse: + cd Browse + bscmake.exe -nologo -Iu -o Apache.bsc *.sbr + cd .. + +_buildr: + @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build + +_buildd: + @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build + +installr: + @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install + +installd: + @$(MAKE) $(MAKEOPT) -f Makefile.win 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.win SHORT=R LONG=Release CTARGET=CLEAN _build + +_cleand: + $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET=CLEAN _build + +_build: + echo Building Win32 $(LONG) targets ($(SHORT) suffixes) +!IF !EXIST("srclib\apr-util") + cd srclib\expat\lib + $(MAKE) $(MAKEOPT) -f expat.mak CFG="expat - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\..\.. +!ENDIF + cd srclib\apr + $(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!IF EXIST("srclib\apr-util") + cd srclib\apr-iconv + $(MAKE) $(MAKEOPT) -f apriconv.mak CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libapriconv.mak CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET) +!IF "$(CTARGET)" == "CLEAN" + $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \ + BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. +!ELSE + cd ccs + $(MAKE) $(MAKEOPT) -f Makefile.win all \ + BUILD_MODE=$(LONG) BIND_MODE=shared + cd ..\ces + $(MAKE) $(MAKEOPT) -f Makefile.win all \ + BUILD_MODE=$(LONG) BIND_MODE=shared + cd .. +!ENDIF + cd ..\.. + cd srclib\apr-util\$(EXPAT) + $(MAKE) $(MAKEOPT) -f xml.mak CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd $(EXPBCK) + $(MAKE) $(MAKEOPT) $(SSLOPT) -f aprutil.mak CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) $(SSLOPT) -f libaprutil.mak CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ldap + $(MAKE) $(MAKEOPT) -f apr_ldap.mak CFG="apr_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd .. +!ELSE + # DBD, DBM components live now in apr + cd srclib\apr +!ENDIF + cd 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 .. + 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 .. + $(MAKE) $(MAKEOPT) -f libhttpd.mak CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f httpd.mak CFG="httpd - Win32 $(LONG)" RECURSE=0 $(CTARGET) +# build ldap prior to authnz_ldap + cd modules\ldap + $(MAKE) $(MAKEOPT) -f mod_ldap.mak CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\database + $(MAKE) $(MAKEOPT) -f mod_dbd.mak CFG="mod_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\aaa + $(MAKE) $(MAKEOPT) -f mod_access_compat.mak CFG="mod_access_compat - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_allowmethods.mak CFG="mod_allowmethods - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_auth_form.mak CFG="mod_auth_form - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authn_core.mak CFG="mod_authn_core - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authn_file.mak CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authn_socache.mak CFG="mod_authn_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authnz_fcgi.mak CFG="mod_authnz_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authz_core.mak CFG="mod_authz_core - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authz_dbd.mak CFG="mod_authz_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authz_host.mak CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authz_owner.mak CFG="mod_authz_owner - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_authz_user.mak CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\arch\win32 + $(MAKE) $(MAKEOPT) -f mod_isapi.mak CFG="mod_isapi - 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_cache_socache.mak CFG="mod_cache_socache - 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_socache_dbm.mak CFG="mod_socache_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET) +# $(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) + $(MAKE) $(MAKEOPT) -f mod_socache_redis.mak CFG="mod_socache_redis - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\core + $(MAKE) $(MAKEOPT) -f mod_macro.mak CFG="mod_macro - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(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 ..\..\.. + cd modules\dav\fs + $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\..\.. + cd modules\dav\lock + $(MAKE) $(MAKEOPT) -f mod_dav_lock.mak CFG="mod_dav_lock - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\..\.. + cd modules\debugging +!IFDEF ALL + $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET) +!ENDIF + $(MAKE) $(MAKEOPT) -f mod_dumpio.mak CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\echo +!IFDEF ALL + $(MAKE) $(MAKEOPT) -f mod_echo.mak CFG="mod_echo - Win32 $(LONG)" RECURSE=0 $(CTARGET) +!ENDIF + cd ..\.. +!IFDEF ALL + cd modules\examples + $(MAKE) $(MAKEOPT) -f mod_case_filter.mak CFG="mod_case_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_case_filter_in.mak CFG="mod_case_filter_in - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_example_hooks.mak CFG="mod_example_hooks - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_example_ipc.mak CFG="mod_example_ipc - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ENDIF + cd modules\filters +!IF EXIST("srclib\brotli") + $(MAKE) $(MAKEOPT) -f mod_brotli.mak CFG="mod_brotli - Win32 $(LONG)" RECURSE=0 $(CTARGET) +!ENDIF + $(MAKE) $(MAKEOPT) -f mod_buffer.mak CFG="mod_buffer - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_data.mak CFG="mod_data - Win32 $(LONG)" RECURSE=0 $(CTARGET) +!IF EXIST("srclib\zlib") + $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET) +!ENDIF + $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(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) +!IF EXIST("srclib\libxml2") + $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET) +!ENDIF + $(MAKE) $(MAKEOPT) -f mod_ratelimit.mak CFG="mod_ratelimit - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_reflector.mak CFG="mod_reflector - 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) + cd ..\.. + cd modules\generators + $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\http + $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\loggers + $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_log_debug.mak CFG="mod_log_debug - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!IF EXIST("srclib\lua") + cd modules\lua + $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ENDIF + cd modules\mappers + $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_imagemap.mak CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!IF EXIST("srclib\openssl") && EXIST("srclib\jansson") && EXIST("srclib\curl") + cd modules\md + $(MAKE) $(MAKEOPT) $(SSLOPT) -f mod_md.mak CFG="mod_md - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ENDIF + cd modules\metadata + $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_remoteip.mak CFG="mod_remoteip - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\proxy + $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_proxy_express.mak CFG="mod_proxy_express - 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_hcheck.mak CFG="mod_proxy_hcheck - 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) + $(MAKE) $(MAKEOPT) -f mod_proxy_uwsgi.mak CFG="mod_proxy_uwsgi - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_proxy_wstunnel.mak CFG="mod_proxy_wstunnel - Win32 $(LONG)" RECURSE=0 $(CTARGET) + 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 ..\..\.. +# mod_proxy_http2 must be built after mod_proxy and mod_http2 +!IF EXIST("srclib\nghttp2") + cd modules\http2 + $(MAKE) $(MAKEOPT) -f mod_http2.mak CFG="mod_http2 - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_proxy_http2.mak CFG="mod_proxy_http2 - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. +!ENDIF + cd modules\session + $(MAKE) $(MAKEOPT) -f mod_session.mak CFG="mod_session - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_session_cookie.mak CFG="mod_session_cookie - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_session_dbd.mak CFG="mod_session_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd modules\slotmem + $(MAKE) $(MAKEOPT) -f mod_slotmem_plain.mak CFG="mod_slotmem_plain - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f mod_slotmem_shm.mak CFG="mod_slotmem_shm - 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\ssl + $(MAKE) $(MAKEOPT) $(SSLOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + cd support + $(MAKE) $(MAKEOPT) $(SSLOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd .. +!ENDIF + cd support + $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET) +# $(MAKE) $(MAKEOPT) -f fcgistarter.mak CFG="fcgistarter - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f htcacheclean.mak CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f httxt2dbm.mak CFG="httxt2dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd .. + cd support\win32 + $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET) + cd ..\.. + +!ELSEIF $(USESLN) == 1 + +_cleanr: + $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build + +_cleand: + $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build + +_build: + echo Building Win32 $(LONG) targets ($(SHORT) suffixes) +!IFDEF ALL + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildAll +!ELSE + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildBin +!ENDIF +!IF EXIST("srclib\openssl") + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs +!ENDIF +!IF EXIST("srclib\zlib") + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate +!ENDIF +!IF EXIST("srclib\lua") + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua +!ENDIF +!IF EXIST("srclib\libxml2") + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html + devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc +!ENDIF + +!ELSE + +_cleanr: + @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build + +_cleand: + @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build + +_build: + @echo Building Win32 $(LONG) targets ($(SHORT) suffixes) +!IFDEF ALL + @msdev $(TLP).dsw /USEENV /MAKE \ + "BuildAll - Win32 $(LONG)" $(CTARGET) +!ELSE + @msdev $(TLP).dsw /USEENV /MAKE \ + "BuildBin - Win32 $(LONG)" $(CTARGET) +!ENDIF +!IF "$(CTARGET)" == "/CLEAN" +!IF EXIST("srclib\apr-iconv") + @cd srclib\apr-iconv + @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \ + BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. + @cd ..\.. +!ENDIF +!ENDIF +!IF EXIST("srclib\openssl") + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_ssl - Win32 $(LONG)" \ + "abs - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF +!IF EXIST("srclib\zlib") + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF +!IF EXIST("srclib\lua") + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF +!IF EXIST("srclib\libxml2") + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET) + @msdev $(TLP).dsw /USEENV /MAKE \ + "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET) +!ENDIF + +!ENDIF + + +_copybin: + copy $(LONG)\httpd.$(src_exe) "$(inst_exe)" <.y + copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y + copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y +!IF EXIST("srclib\apr-util") + 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 +!ENDIF + for %d in (odbc $(DBD_LIST)) do ( \ + copy srclib\$(UTILDIR)\dbd\$(LONG)\apr_dbd_%d-1.$(src_dll) "$(inst_dll)" <.y \ + ) + for %d in ($(DBM_LIST) x) do if not %d == x ( \ + copy srclib\$(UTILDIR)\dbm\$(LONG)\apr_dbm_%d-1.$(src_dll) "$(inst_dll)" <.y \ + ) +!IF "$(SHORT)" == "D" + copy srclib\pcre\pcred.$(src_dll) "$(inst_dll)" <.y +!ELSE + copy srclib\pcre\pcre.$(src_dll) "$(inst_dll)" <.y +!ENDIF + copy modules\aaa\$(LONG)\mod_access_compat.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_allowmethods.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_auth_form.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authn_core.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authn_socache.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authnz_fcgi.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authz_dbd.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y + copy modules\aaa\$(LONG)\mod_authz_owner.$(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_cache_socache.$(src_so) "$(inst_so)" <.y + copy modules\cache\$(LONG)\mod_file_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_memcache.$(src_so) "$(inst_so)" <.y + copy modules\cache\$(LONG)\mod_socache_shmcb.$(src_so) "$(inst_so)" <.y + copy modules\cache\$(LONG)\mod_socache_redis.$(src_so) "$(inst_so)" <.y + copy modules\core\$(LONG)\mod_macro.$(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\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y +!IFDEF ALL + copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so) "$(inst_so)" <.y +!ENDIF + copy modules\debugging\$(LONG)\mod_dumpio.$(src_so) "$(inst_so)" <.y +!IFDEF ALL + copy modules\echo\$(LONG)\mod_echo.$(src_so) "$(inst_so)" <.y + copy modules\examples\$(LONG)\mod_case_filter.$(src_so) "$(inst_so)" <.y + copy modules\examples\$(LONG)\mod_case_filter_in.$(src_so) "$(inst_so)" <.y + copy modules\examples\$(LONG)\mod_example_hooks.$(src_so) "$(inst_so)" <.y + copy modules\examples\$(LONG)\mod_example_ipc.$(src_so) "$(inst_so)" <.y +!ENDIF +!IF EXIST("srclib\brotli") + copy modules\filters\$(LONG)\mod_brotli.$(src_so) "$(inst_so)" <.y +!ENDIF + copy modules\filters\$(LONG)\mod_buffer.$(src_so) "$(inst_so)" <.y + copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y + copy modules\filters\$(LONG)\mod_data.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\zlib") + copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\zlib\zlib1.$(src_dll)") + copy srclib\zlib\zlib1.$(src_dll) "$(inst_dll)" <.y +!ENDIF +!ENDIF + copy modules\filters\$(LONG)\mod_ext_filter.$(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 +!IF EXIST("srclib\libxml2") + copy modules\filters\$(LONG)\mod_proxy_html.$(src_so) "$(inst_so)" <.y + copy modules\filters\$(LONG)\mod_xml2enc.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll)") + copy srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll) "$(inst_dll)" <.y +!ENDIF +!ENDIF + copy modules\filters\$(LONG)\mod_ratelimit.$(src_so) "$(inst_so)" <.y + copy modules\filters\$(LONG)\mod_reflector.$(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\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y + copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y + copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y + copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y + copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y + copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\nghttp2") + copy modules\http2\$(LONG)\mod_http2.$(src_so) "$(inst_so)" <.y + copy modules\http2\$(LONG)\mod_proxy_http2.$(src_so) "$(inst_so)" <.y +!IF "$(SHORT)" == "D" + copy srclib\nghttp2\lib\MSVC_obj\nghttp2d.$(src_dll) "$(inst_dll)" <.y +!ELSE + copy srclib\nghttp2\lib\MSVC_obj\nghttp2.$(src_dll) "$(inst_dll)" <.y +!ENDIF +!ENDIF + copy modules\ldap\$(LONG)\mod_ldap.$(src_so) "$(inst_so)" <.y + copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y + copy modules\loggers\$(LONG)\mod_log_debug.$(src_so) "$(inst_so)" <.y + copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y + copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\lua") + copy modules\lua\$(LONG)\mod_lua.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\lua\src\lua51.$(src_dll)") + copy srclib\lua\src\lua51.$(src_dll) "$(inst_dll)" <.y +!ENDIF +!ENDIF + copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_imagemap.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y + copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\openssl") && EXIST("srclib\jansson") && EXIST("srclib\curl") + copy modules\md\$(LONG)\mod_md.$(src_so) "$(inst_so)" <.y +!IF "$(SHORT)" == "D" + -copy srclib\curl\bin\libcurl_debug.$(src_dll) "$(inst_dll)" <.y + -copy srclib\jansson\bin\jansson_d.$(src_dll) "$(inst_dll)" <.y +!ELSE + -copy srclib\curl\bin\libcurl.$(src_dll) "$(inst_dll)" <.y + -copy srclib\jansson\bin\jansson.$(src_dll) "$(inst_dll)" <.y +!ENDIF +!ENDIF + copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_remoteip.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y + copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y + copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y + copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so) "$(inst_so)" <.y + copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y + copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y + copy modules\proxy\$(LONG)\mod_proxy_express.$(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_hcheck.$(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 + copy modules\proxy\$(LONG)\mod_proxy_uwsgi.$(src_so) "$(inst_so)" <.y + copy modules\proxy\$(LONG)\mod_proxy_wstunnel.$(src_so) "$(inst_so)" <.y + 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 + 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 + copy modules\slotmem\$(LONG)\mod_slotmem_plain.$(src_so) "$(inst_so)" <.y + copy modules\slotmem\$(LONG)\mod_slotmem_shm.$(src_so) "$(inst_so)" <.y +!IF EXIST("srclib\openssl") +# 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)\$(SSLCRP)*.$(src_dll) "$(inst_dll)" <.y + -copy srclib\openssl\$(SSLBIN)\$(SSLLIB)*.$(src_dll) "$(inst_dll)" <.y + -copy srclib\openssl\$(SSLAPP)\openssl.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)" <.y +!ENDIF + copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y +# copy support\$(LONG)\fcgistarter.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\htcacheclean.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\httxt2dbm.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y + copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y + copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y + copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y + + +# First we create the tree and populate the README so that +# whatever happens, all licensing has already propagated. +# Then repeatedly invoke the _copybin build to copy the +# real binaries, then pdb symbols, anf finally dbg syms. +# Then hit docs of various sorts, then includes and libs, +# and finally do the .conf magic. +# +_install: + echo Y >.y + echo A >.A + -mkdir "$(INSTDIR)" + -mkdir "$(INSTDIR)\bin" +!IF EXIST("srclib\apr-util") + -mkdir "$(INSTDIR)\bin\iconv" +!ENDIF + -mkdir "$(INSTDIR)\cgi-bin" + -mkdir "$(INSTDIR)\conf" + -mkdir "$(INSTDIR)\conf\extra" + -mkdir "$(INSTDIR)\conf\original" + -mkdir "$(INSTDIR)\conf\original\extra" + -mkdir "$(INSTDIR)\error" + -mkdir "$(INSTDIR)\htdocs" + -mkdir "$(INSTDIR)\manual" + -mkdir "$(INSTDIR)\icons" + -mkdir "$(INSTDIR)\include" + -mkdir "$(INSTDIR)\lib" + -mkdir "$(INSTDIR)\logs" + -mkdir "$(INSTDIR)\modules" + copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y + copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y + copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y + copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y + copy NOTICE "$(INSTDIR)\NOTICE.txt" <.y + copy README "$(INSTDIR)\README.txt" <.y + type << >> "$(INSTDIR)\NOTICE.txt" + +Regular expression support is provided by the PCRE library package, +which is open source software, written by Philip Hazel, and copyright +by the University of Cambridge, England. The original software is +available from + ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ +<< + -awk -f <<script1.awk < "srclib\pcre\LICENCE" >> "$(INSTDIR)\LICENSE.txt" +BEGIN { + print ""; + print "For the pcre.dll component:"; + print ""; + while ( getline > 0 ) { + if ( $$0 ~ /^End$$/ ) $$0 = "END OF PCRE LICENSE"; + print $$0; + } +} +<< +!IF EXIST("srclib\openssl") + -copy srclib\openssl\apps\openssl.cnf "$(INSTDIR)\conf\openssl.cnf" <.y + type << >> "$(INSTDIR)\NOTICE.txt" + +This binary distribution includes cryptographic software written by +Eric Young (eay@cryptsoft.com), software written by Tim Hudson +(tjh@cryptsoft.com), and software developed by the OpenSSL Project +for use in the OpenSSL Toolkit <http://www.openssl.org/>. +<< + -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt" +BEGIN { + print ""; + print "For the libeay32.dll, ssleay32.dll and openssl.exe components:"; + print ""; + while ( getline > 0 ) { + print $$0; + } +} +<< + copy << "$(INSTDIR)\OPENSSL-NEWS.txt" <.y + + Apache HTTP Server 2.4 Limited OpenSSL Distribution + + This binary distribution includes the minimal components of OpenSSL required + to support mod_ssl for Apache HTTP Server version 2.4 (details are listed + in OPENSSL-README.txt.) For the complete list of CHANGES to this and later + versions of OpenSSL, please refer to the definative source, + <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the + full binary or source distribution package from <http://www.openssl.org/>. + + These OpenSSL binaries were built for distribution from the U.S. without + support for the patented encryption methods IDEA, MDC-2 or RC5. + +-------------------------------------------------------------------------------- + +<< + -copy "$(INSTDIR)\OPENSSL-NEWS.txt" \ + + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt" + copy << "$(INSTDIR)\OPENSSL-README.txt" <.y + + Apache HTTP Server 2.4 Limited OpenSSL Distribution + + This binary installation of OpenSSL is a limited distribution of the + files derived from the OpenSSL project: + + LICENSE.txt (includes openssl LICENSE) + OPENSSL-NEWS.txt + OPENSSL-README.txt + conf\openssl.cnf + bin\libeay32.dll + bin\ssleay32.dll + bin\openssl.exe + + These are the minimal libraries and tools required to use mod_ssl as + distributed with Apache HTTP Server version 2.4. No library link files, + headers or sources are distributed with this binary distribution. Please + refer to the <http://www.openssl.org/> site for complete source or binary + distributions. + + These OpenSSL binaries were built for distribution from the U.S. without + support for the patented encryption methods IDEA, MDC-2 or RC5. + + The Apache HTTP Project only supports the binary distribution of these files + and development of the mod_ssl module. We cannot provide support assistance + for using or configuring the OpenSSL package or these modules. Please refer + all installation and configuration questions to the appropriate forum, + such as the user supported lists, <http://httpd.apache.org/userslist.html> + the Apache HTTP Server user's list or <http://www.openssl.org/support/> the + OpenSSL support page. + +-------------------------------------------------------------------------------- + +<< + -copy "$(INSTDIR)\OPENSSL-README.txt" \ + + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt" +!ENDIF +!IF EXIST("srclib\zlib") + type << >> "$(INSTDIR)\NOTICE.txt" + +This binary distribution of mod_deflate.so includes zlib compression code +<http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org) +and Mark Adler (madler@alumni.caltech.edu) . +<< + -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt" +BEGIN { + while ( getline > 0 ) { + if ( $$0 ~ /Copyright notice:/ ) { + print ""; + print "For the mod_deflate zlib compression component:"; + while ( getline > 0 && $$0 !~ /^[^ ]/ ) { + print $$0; + } + exit 0; + } + } + exit 1; +} +<< +!ENDIF +!IF EXIST("srclib\lua") + type << >> "$(INSTDIR)\NOTICE.txt" + +This binary distribution of mod_lua.so includes the Lua language, +developed at Lua.org, a laboratory of the Department of Computer Science +of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro in Brazil). +For complete information, visit Lua's web site at http://www.lua.org/ +<< + -awk -f <<script.awk < "srclib\lua\COPYRIGHT" >> "$(INSTDIR)\LICENSE.txt" +BEGIN { + print ""; + print "For the mod_lua language component:"; + print ""; + while ( getline > 0 && $$0 !~ /end of COPYRIGHT/ ) { + print $$0; + } + exit 0; +} +<< +!ENDIF +!IF EXIST("srclib\libxml2") + type << >> "$(INSTDIR)\NOTICE.txt" + +This binary distributions of mod_proxy_html.so and mod_xml2enc.so include the +libxml2 C library written by Daniel Veillard (daniel veillard.com), Bjorn +Reese (breese users.sourceforge.net) and Gary Pennington (Gary.Pennington +uk.sun.com). For complete information, visit LibXML2's web site at +https://http://www.xmlsoft.org/ +<< + -awk -f <<script.awk < "srclib\libxml2\Copyright" >> "$(INSTDIR)\LICENSE.txt" +BEGIN { + print ""; + print "For the mod_proxy_html and mod_xml2enc components:"; + print ""; + while ( getline > 0 ) { + print $$0; + } + exit 0; +} +<< +!ENDIF +!IF EXIST("srclib\nghttp2") + type << >> "$(INSTDIR)\NOTICE.txt" + +This binary distribution of mod_http2.so includes nghttp2 C library written +by Tatsuhiro Tsujikawa. For complete information, visit nghttp2's web site +at https://nghttp2.org/ +<< + -awk -f <<script.awk < "srclib\nghttp2\COPYING" >> "$(INSTDIR)\LICENSE.txt" +BEGIN { + print ""; + print "For the mod_http2 component:"; + print ""; + while ( getline > 0 ) { + print $$0; + } + exit 0; +} +<< +!ENDIF +!IF EXIST("srclib\brotli") + type << >> "$(INSTDIR)\NOTICE.txt" + +This binary distribution of mod_brotli.so includes Brotli C library written +by the Brotli Authors. For complete information, visit Brotli's web site +at https://github.com/google/brotli +<< + -awk -f <<script.awk < "srclib\brotli\LICENSE" >> "$(INSTDIR)\LICENSE.txt" +BEGIN { + print ""; + print "For the mod_brotli component:"; + print ""; + while ( getline > 0 ) { + print $$0; + } + exit 0; +} +<< +!ENDIF + $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \ + _copybin src_exe=exe src_dll=dll src_so=so \ + inst_exe="$(INSTDIR)\bin" \ + inst_dll="$(INSTDIR)\bin" \ + inst_so="$(INSTDIR)\modules" + $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \ + _copybin src_exe=pdb src_dll=pdb src_so=pdb \ + inst_exe="$(INSTDIR)\bin" \ + inst_dll="$(INSTDIR)\bin" \ + inst_so="$(INSTDIR)\modules" +!IF EXIST("srclib\apr-util") + cd srclib\apr-iconv + $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \ + BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \ + INSTALL_DIR="$(INSTDIR)\bin\iconv" + cd ..\.. +!ENDIF + copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y + -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl" + BEGIN { + if ( "perl -e \"print $$^X;\"" | getline perlroot ) { + gsub( /\\/, "/", perlroot ); + print "#!" perlroot; + } + } + { + if ( $$0 !~ /^#!/ ) { + print $$0; + } + } +<< + xcopy docs\error "$(INSTDIR)\error" /s /d < .a + xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a + xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a + xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a + for %f in ( \ + srclib\expat\lib\expat.h \ + srclib\apr-util\xml\expat\lib\expat.h \ + srclib\apr\include\*.h \ + srclib\apr-util\include\*.h \ + include\*.h \ + os\win32\os.h \ + modules\cache\mod_cache.h \ + modules\cache\cache_common.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\http2\mod_http2.h \ + modules\loggers\mod_log_config.h \ + modules\mappers\mod_rewrite.h \ + modules\proxy\mod_proxy.h \ + modules\ssl\mod_ssl.h \ + modules\ssl\mod_ssl_openssl.h \ + ) 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\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y + copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y +!IF EXIST("srclib\apr-util") + copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y + copy srclib\apr-util\Lib$(SHORT)\aprutil-1.pdb "$(INSTDIR)\lib" <.y + copy srclib\apr-util\$(EXPAT)\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y + copy srclib\apr-util\$(EXPAT)\Lib$(SHORT)\xml.pdb "$(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 + copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y + copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y +!ELSE + copy srclib\expat\win32\$(LONG)\libexpatMT.lib "$(INSTDIR)\lib" <.y + copy srclib\expat\win32\$(LONG)\libexpatMT.exp "$(INSTDIR)\lib" <.y + copy srclib\expat\win32\$(LONG)\libexpat.lib "$(INSTDIR)\lib" <.y + copy srclib\expat\win32\$(LONG)\libexpat.exp "$(INSTDIR)\lib" <.y + copy srclib\expat\win32\$(LONG)\libexpat.dll "$(INSTDIR)\bin" <.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 + copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y + for %f in ( charset.conv magic mime.types ) do ( \ + copy docs\conf\%f "$(INSTDIR)\conf\original\%f" <.y ) + awk -f build\installwinconf.awk $(DOMAINNAME) $(SERVERNAME) \ + $(SERVERADMIN) $(PORT) $(SSLPORT) "$(INSTDIR) " docs/conf/ + copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl" + -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl" + { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) { + sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" ); + } + if ( $$0 !~ /^#!@perlbin@/ ) + print $$0; + } +<< + del .y + del .a |