1 # Makefile for Windows NT and Windows 95/98/2000
4 # _buildr - build Apache in Release mode
5 # _buildd - build Apache in Debug mode
6 # installr - build and install a Release build
7 # installd - build and install a Debug build
8 # clean - remove (most) generated files
9 # _cleanr - remove (most) files generated by a Release build
10 # _cleand - remove (most) files generated by a Debug build
11 # _browse - build the browse info file
13 # The following install defaults may be customized;
19 # DOMAINNAME example.com
20 # SERVERNAME www.example.com
21 # SERVERNAME admin@example.com
23 # ALL (unset) Includes additional modules for build testing
25 # Provide a DBD_LIST argument after configuring LIB and INCLUDE with
26 # the SDK paths of the corresponding client support libraries.
27 # The ODBC driver is always built on Windows
29 # DBD_LIST="sqlite3 pgsql oracle mysql freetds"
31 # Provide a DBM_LIST argument after configuring LIB and INCLUDE with
32 # the SDK paths of the corresponding client support libraries.
33 # The sdbm driver is always built in.
39 # nmake -f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
41 # Be aware that certain awk's will not accept backslashed names,
42 # so the server root should be given in forward slashes (quoted),
43 # preferably with the drive designation!
45 !IF EXIST("httpd.vcproj") && ([devenv /help > NUL 2>&1] == 0) \
46 && !defined(USEMAK) && !defined(USEDSW)
50 !ELSEIF EXIST("httpd.mak") && !defined(USEDSW)
62 !IF ("$(CTARGET)" == "") && ($(USESLN) == 1)
66 !IF EXIST("srclib\apr\include\apu.h")
69 !ELSEIF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
70 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
71 !MESSAGE sources (apr, apr-iconv and apr-util) into your srclib dir.
72 !MESSAGE Apache cannot build without these libraries!
74 !ERROR Need srclib\ apr, apr-iconv and apr-util
80 !IF !EXIST("srclib\expat") && !EXIST("srclib\apr-util\xml\expat")
81 !MESSAGE Please check out or download and unpack the current expat library source
82 !MESSAGE under your srclib dir for apr 2.x, or srclib\apr-util\xml\expat for apr 1.x
83 !MESSAGE Apache cannot build without this library!
85 !ERROR Need srclib\expat or srclib\apr-util\xml\expat
88 !IF !EXIST("srclib\pcre")
89 !MESSAGE Please check out or download and unpack the current PCRE library source
90 !MESSAGE under your srclib dir, and compile the pcre.dll with CMake options
91 !MESSAGE BUILD_SHARED_LIBS and CMAKE_BUILD_TYPE RelWithDebInfo.
92 !MESSAGE Apache cannot build without this library!
94 !ERROR Need srclib\pcre
98 # Note; _tryfoo: blocks are used only by the msvc developer studio environment
99 # to 'fix up' the build, since conditional dependencies aren't supported.
102 !IF EXIST("srclib\openssl")
103 !IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe")
112 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
115 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
117 !ELSEIF $(USESLN) == 1
118 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl
119 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs
121 @msdev $(TLP).dsw /USEENV /MAKE \
122 "mod_ssl - Win32 $(LONG)" \
123 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
127 # NOT EXIST("srclib\openssl")
131 @echo mod_ssl and ab/ssl will not build unless openssl is installed
132 @echo in srclib\openssl. They must be precompiled using the
133 @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32. The most
134 @echo recent version confirmed to build with mod_ssl and ab is 0.9.8d.
135 @echo Available from http://www.openssl.org/
137 # NOT EXIST("srclib\openssl")
139 !IF EXIST("srclib\serf")
144 $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
146 !ELSEIF $(USESLN) == 1
147 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_serf
149 @msdev $(TLP).dsw /USEENV /MAKE \
150 "mod_serf - Win32 $(LONG)" /NORECURSE $(CTARGET)
154 # NOT EXIST("srclib\serf")
158 @echo mod_serf will not build unless libserf.dll is built in srclib\serf
159 @echo For purposes of alpha, libserf release 0.3.0 works, but only with
160 @echo http://people.apache.org/~wrowe/fixserf-win32-0.3.0.patch
163 # NOT EXIST("srclib\serf")
165 !IF EXIST("srclib\zlib")
170 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
172 !ELSEIF $(USESLN) == 1
173 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate
175 @msdev $(TLP).dsw /USEENV /MAKE \
176 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
180 # NOT EXIST("srclib\zlib")
184 @echo mod_deflate will not build unless zlib is built in srclib\zlib.
185 @echo Version 1.2.1 and later available from http://www.gzip.org/zlib/
186 @echo built w/ nmake -f win32/Makefile.msc will satisfy this requirement.
190 !IF EXIST("srclib\libxml2")
195 $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET)
196 $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
198 !ELSEIF $(USESLN) == 1
199 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html
200 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc
202 @msdev $(TLP).dsw /USEENV /MAKE \
203 "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET)
204 @msdev $(TLP).dsw /USEENV /MAKE \
205 "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET)
209 # NOT EXIST("srclib\libxml2")
213 @echo mod_proxy_html and mod_xml2enc will not build unless libxml2 is
214 @echo built in srclib\libxml2. Version 2.7.7 and later available from
215 @echo http://xmlsoft.org/ will satisfy this requirement.
220 !IF EXIST("srclib\lua")
225 $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
227 !ELSEIF $(USESLN) == 1
228 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua
230 @msdev $(TLP).dsw /USEENV /MAKE \
231 "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
235 # NOT EXIST("srclib\lua")
239 @echo mod_lua will not build unless lua is installed in srclib\lua.
240 @echo Version 5.1 includes an etc\luavs.bat that will satisfy this requirement.
247 cd srclib\$(UTILDIR)\dbd
248 for %d in (odbc $(DBD_LIST)) do \
249 $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
251 for %d in ($(DBM_LIST) x) do if not %d == x \
252 $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
254 !ELSEIF $(USESLN) == 1
255 for %d in (odbc $(DBD_LIST)) do \
256 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbd_%d
257 for %d in ($(DBM_LIST) x) do if not %d == x \
258 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbm_%d
260 @for %d in (odbc $(DBD_LIST)) do \
261 msdev $(TLP).dsw /USEENV /MAKE \
262 "apr_dbd_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
263 @for %d in ($(DBM_LIST) x) do if not %d == x \
264 msdev $(TLP).dsw /USEENV /MAKE \
265 "apr_dbm_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
269 !IF "$(INSTDIR)" == ""
272 !IF "$(DOMAINNAME)" == ""
273 DOMAINNAME=example.com
275 !IF "$(SERVERNAME)" == ""
276 SERVERNAME=www.$(DOMAINNAME)
278 !IF "$(SERVERADMIN)" == ""
279 SERVERADMIN=admin@$(DOMAINNAME)
284 !IF "$(SSLPORT)" == ""
290 !MESSAGE INSTDIR = $(INSTDIR)
291 !MESSAGE DOMAINNAME = $(DOMAINNAME)
292 !MESSAGE SERVERNAME = $(SERVERNAME)
293 !MESSAGE SERVERADMIN = $(SERVERADMIN)
294 !MESSAGE PORT = $(PORT)
295 !IF EXIST("srclib\openssl")
296 !MESSAGE SSLPORT = $(SSLPORT)
299 !MESSAGE To change these options use 'nmake -f Makefile.win [option=value]'
300 !MESSAGE Example: nmake -f Makefile.win PORT=8080
306 # Only default the behavior if MAKEOPT= is omitted
308 # Microsoft NMake options
310 !ELSEIF "$(MAKE)" == "make"
311 # Borland make options? Not really supported (yet)
320 bscmake.exe -nologo -Iu -o Apache.bsc *.sbr
324 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
327 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build
330 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
333 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build _install
335 clean: _cleanr _cleand
336 -if exist Browse\. rd /s Browse < << > nul
343 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
346 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET=CLEAN _build
349 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
350 !IF !EXIST("srclib\apr-util")
352 $(MAKE) $(MAKEOPT) -f expat.mak CFG="expat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
356 $(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
357 $(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
359 !IF EXIST("srclib\apr-util")
361 $(MAKE) $(MAKEOPT) -f apriconv.mak CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
362 $(MAKE) $(MAKEOPT) -f libapriconv.mak CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
363 !IF "$(CTARGET)" == "CLEAN"
364 $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
365 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
368 $(MAKE) $(MAKEOPT) -f Makefile.win all \
369 BUILD_MODE=$(LONG) BIND_MODE=shared
371 $(MAKE) $(MAKEOPT) -f Makefile.win all \
372 BUILD_MODE=$(LONG) BIND_MODE=shared
376 cd srclib\apr-util\xml\expat\lib
377 $(MAKE) $(MAKEOPT) -f xml.mak CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
379 $(MAKE) $(MAKEOPT) -f aprutil.mak CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
380 $(MAKE) $(MAKEOPT) -f libaprutil.mak CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
382 $(MAKE) $(MAKEOPT) -f apr_ldap.mak CFG="apr_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
385 # DBD, DBM components live now in apr
389 for %d in (odbc $(DBD_LIST)) do \
390 $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
393 for %d in ($(DBM_LIST) x) do if not %d == x \
394 $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
398 $(MAKE) $(MAKEOPT) -f gen_test_char.mak CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
400 $(MAKE) $(MAKEOPT) -f libhttpd.mak CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
401 $(MAKE) $(MAKEOPT) -f httpd.mak CFG="httpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
402 # build ldap prior to authnz_ldap
404 $(MAKE) $(MAKEOPT) -f mod_ldap.mak CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
407 $(MAKE) $(MAKEOPT) -f mod_dbd.mak CFG="mod_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
410 $(MAKE) $(MAKEOPT) -f mod_access_compat.mak CFG="mod_access_compat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
411 $(MAKE) $(MAKEOPT) -f mod_allowmethods.mak CFG="mod_allowmethods - Win32 $(LONG)" RECURSE=0 $(CTARGET)
412 $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
413 $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
414 $(MAKE) $(MAKEOPT) -f mod_auth_form.mak CFG="mod_auth_form - Win32 $(LONG)" RECURSE=0 $(CTARGET)
415 $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
416 $(MAKE) $(MAKEOPT) -f mod_authn_core.mak CFG="mod_authn_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
417 $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
418 $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
419 $(MAKE) $(MAKEOPT) -f mod_authn_file.mak CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
420 $(MAKE) $(MAKEOPT) -f mod_authn_socache.mak CFG="mod_authn_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
421 $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
422 $(MAKE) $(MAKEOPT) -f mod_authz_core.mak CFG="mod_authz_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
423 $(MAKE) $(MAKEOPT) -f mod_authz_dbd.mak CFG="mod_authz_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
424 $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
425 $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
426 $(MAKE) $(MAKEOPT) -f mod_authz_host.mak CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
427 $(MAKE) $(MAKEOPT) -f mod_authz_owner.mak CFG="mod_authz_owner - Win32 $(LONG)" RECURSE=0 $(CTARGET)
428 $(MAKE) $(MAKEOPT) -f mod_authz_user.mak CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
430 cd modules\arch\win32
431 $(MAKE) $(MAKEOPT) -f mod_isapi.mak CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
434 $(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
435 $(MAKE) $(MAKEOPT) -f mod_cache_disk.mak CFG="mod_cache_disk - Win32 $(LONG)" RECURSE=0 $(CTARGET)
436 $(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
437 $(MAKE) $(MAKEOPT) -f mod_socache_dbm.mak CFG="mod_socache_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
438 # $(MAKE) $(MAKEOPT) -f mod_socache_dc.mak CFG="mod_socache_dc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
439 $(MAKE) $(MAKEOPT) -f mod_socache_memcache.mak CFG="mod_socache_memcache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
440 $(MAKE) $(MAKEOPT) -f mod_socache_shmcb.mak CFG="mod_socache_shmcb - Win32 $(LONG)" RECURSE=0 $(CTARGET)
443 $(MAKE) $(MAKEOPT) -f mod_watchdog.mak CFG="mod_watchdog - Win32 $(LONG)" RECURSE=0 $(CTARGET)
446 $(MAKE) $(MAKEOPT) -f mod_heartbeat.mak CFG="mod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
447 $(MAKE) $(MAKEOPT) -f mod_heartmonitor.mak CFG="mod_heartmonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
450 $(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
453 $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
456 $(MAKE) $(MAKEOPT) -f mod_dav_lock.mak CFG="mod_dav_lock - Win32 $(LONG)" RECURSE=0 $(CTARGET)
460 $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
462 $(MAKE) $(MAKEOPT) -f mod_dumpio.mak CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
466 $(MAKE) $(MAKEOPT) -f mod_echo.mak CFG="mod_echo - Win32 $(LONG)" RECURSE=0 $(CTARGET)
471 $(MAKE) $(MAKEOPT) -f mod_case_filter.mak CFG="mod_case_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
472 $(MAKE) $(MAKEOPT) -f mod_case_filter_in.mak CFG="mod_case_filter_in - Win32 $(LONG)" RECURSE=0 $(CTARGET)
473 $(MAKE) $(MAKEOPT) -f mod_example_hooks.mak CFG="mod_example_hooks - Win32 $(LONG)" RECURSE=0 $(CTARGET)
474 $(MAKE) $(MAKEOPT) -f mod_example_ipc.mak CFG="mod_example_ipc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
478 $(MAKE) $(MAKEOPT) -f mod_buffer.mak CFG="mod_buffer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
479 $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
480 $(MAKE) $(MAKEOPT) -f mod_data.mak CFG="mod_data - Win32 $(LONG)" RECURSE=0 $(CTARGET)
481 !IF EXIST("srclib\zlib")
482 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
484 $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
485 $(MAKE) $(MAKEOPT) -f mod_filter.mak CFG="mod_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
486 $(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
487 !IF EXIST("srclib\libxml2")
488 $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET)
489 $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
491 $(MAKE) $(MAKEOPT) -f mod_ratelimit.mak CFG="mod_ratelimit - Win32 $(LONG)" RECURSE=0 $(CTARGET)
492 $(MAKE) $(MAKEOPT) -f mod_reflector.mak CFG="mod_reflector - Win32 $(LONG)" RECURSE=0 $(CTARGET)
493 $(MAKE) $(MAKEOPT) -f mod_reqtimeout.mak CFG="mod_reqtimeout - Win32 $(LONG)" RECURSE=0 $(CTARGET)
494 $(MAKE) $(MAKEOPT) -f mod_request.mak CFG="mod_request - Win32 $(LONG)" RECURSE=0 $(CTARGET)
495 $(MAKE) $(MAKEOPT) -f mod_sed.mak CFG="mod_sed - Win32 $(LONG)" RECURSE=0 $(CTARGET)
496 $(MAKE) $(MAKEOPT) -f mod_substitute.mak CFG="mod_substitute - Win32 $(LONG)" RECURSE=0 $(CTARGET)
498 cd modules\generators
499 $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
500 $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
501 $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
502 $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
503 $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
506 $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
509 $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
510 $(MAKE) $(MAKEOPT) -f mod_log_debug.mak CFG="mod_log_debug - Win32 $(LONG)" RECURSE=0 $(CTARGET)
511 $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
512 $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
514 !IF EXIST("srclib\lua")
516 $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
520 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
521 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
522 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
523 $(MAKE) $(MAKEOPT) -f mod_imagemap.mak CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
524 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
525 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
526 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
527 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
528 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
531 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
532 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
533 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
534 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
535 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
536 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
537 $(MAKE) $(MAKEOPT) -f mod_remoteip.mak CFG="mod_remoteip - Win32 $(LONG)" RECURSE=0 $(CTARGET)
538 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
539 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
540 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
541 $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
544 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
545 $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
546 $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
547 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
548 $(MAKE) $(MAKEOPT) -f mod_proxy_express.mak CFG="mod_proxy_express - Win32 $(LONG)" RECURSE=0 $(CTARGET)
549 $(MAKE) $(MAKEOPT) -f mod_proxy_fcgi.mak CFG="mod_proxy_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
550 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
551 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
552 $(MAKE) $(MAKEOPT) -f mod_proxy_scgi.mak CFG="mod_proxy_scgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
553 !IF EXIST("srclib\serf")
554 $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
557 cd modules\proxy\balancers
558 $(MAKE) $(MAKEOPT) -f mod_lbmethod_bybusyness.mak CFG="mod_lbmethod_bybusyness - Win32 $(LONG)" RECURSE=0 $(CTARGET)
559 $(MAKE) $(MAKEOPT) -f mod_lbmethod_byrequests.mak CFG="mod_lbmethod_byrequests - Win32 $(LONG)" RECURSE=0 $(CTARGET)
560 $(MAKE) $(MAKEOPT) -f mod_lbmethod_bytraffic.mak CFG="mod_lbmethod_bytraffic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
561 $(MAKE) $(MAKEOPT) -f mod_lbmethod_heartbeat.mak CFG="mod_lbmethod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
564 cd modules\proxy\examples
565 $(MAKE) $(MAKEOPT) -f mod_lbmethod_rr.mak CFG="mod_lbmethod_rr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
569 $(MAKE) $(MAKEOPT) -f mod_session.mak CFG="mod_session - Win32 $(LONG)" RECURSE=0 $(CTARGET)
570 $(MAKE) $(MAKEOPT) -f mod_session_cookie.mak CFG="mod_session_cookie - Win32 $(LONG)" RECURSE=0 $(CTARGET)
571 $(MAKE) $(MAKEOPT) -f mod_session_dbd.mak CFG="mod_session_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
574 $(MAKE) $(MAKEOPT) -f mod_slotmem_plain.mak CFG="mod_slotmem_plain - Win32 $(LONG)" RECURSE=0 $(CTARGET)
575 $(MAKE) $(MAKEOPT) -f mod_slotmem_shm.mak CFG="mod_slotmem_shm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
577 !IF EXIST("srclib\openssl")
579 # $(MAKE) $(MAKEOPT) -f mod_session_crypto.mak CFG="mod_session_crypto - Win32 $(LONG)" RECURSE=0 $(CTARGET)
582 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
585 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
589 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
590 # $(MAKE) $(MAKEOPT) -f fcgistarter.mak CFG="fcgistarter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
591 $(MAKE) $(MAKEOPT) -f htcacheclean.mak CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET)
592 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
593 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
594 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
595 $(MAKE) $(MAKEOPT) -f httxt2dbm.mak CFG="httxt2dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
596 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
597 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
600 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
601 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
604 !ELSEIF $(USESLN) == 1
607 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
610 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
613 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
615 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildAll
617 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildBin
619 !IF EXIST("srclib\openssl")
620 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl
621 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs
623 !IF EXIST("srclib\zlib")
624 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate
626 !IF EXIST("srclib\lua")
627 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua
629 !IF EXIST("srclib\libxml2")
630 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html
631 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc
637 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
640 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
643 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
645 @msdev $(TLP).dsw /USEENV /MAKE \
646 "BuildAll - Win32 $(LONG)" $(CTARGET)
648 @msdev $(TLP).dsw /USEENV /MAKE \
649 "BuildBin - Win32 $(LONG)" $(CTARGET)
651 !IF "$(CTARGET)" == "/CLEAN"
652 !IF EXIST("srclib\apr-iconv")
654 @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
655 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
659 !IF EXIST("srclib\openssl")
660 @msdev $(TLP).dsw /USEENV /MAKE \
661 "mod_ssl - Win32 $(LONG)" \
662 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
664 !IF EXIST("srclib\zlib")
665 @msdev $(TLP).dsw /USEENV /MAKE \
666 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
668 !IF EXIST("srclib\lua")
669 @msdev $(TLP).dsw /USEENV /MAKE \
670 "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
672 !IF EXIST("srclib\libxml2")
673 @msdev $(TLP).dsw /USEENV /MAKE \
674 "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET)
675 @msdev $(TLP).dsw /USEENV /MAKE \
676 "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET)
683 copy $(LONG)\httpd.$(src_exe) "$(inst_exe)" <.y
684 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
685 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
686 !IF EXIST("srclib\apr-util")
687 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
688 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
689 copy srclib\apr-util\ldap\$(LONG)\apr_ldap-1.$(src_dll) "$(inst_dll)" <.y
691 for %d in (odbc $(DBD_LIST)) do ( \
692 copy srclib\$(UTILDIR)\dbd\$(LONG)\apr_dbd_%d-1.$(src_dll) "$(inst_dll)" <.y \
694 for %d in ($(DBM_LIST) x) do if not %d == x ( \
695 copy srclib\$(UTILDIR)\dbm\$(LONG)\apr_dbm_%d-1.$(src_dll) "$(inst_dll)" <.y \
697 !IF EXIST("srclib\serf")
698 copy srclib\serf\$(LONG)\libserf.$(src_dll) "$(inst_dll)" <.y
700 copy srclib\pcre\pcre.$(src_dll) "$(inst_dll)" <.y
701 copy modules\aaa\$(LONG)\mod_access_compat.$(src_so) "$(inst_so)" <.y
702 copy modules\aaa\$(LONG)\mod_allowmethods.$(src_so) "$(inst_so)" <.y
703 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
704 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
705 copy modules\aaa\$(LONG)\mod_auth_form.$(src_so) "$(inst_so)" <.y
706 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
707 copy modules\aaa\$(LONG)\mod_authn_core.$(src_so) "$(inst_so)" <.y
708 copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so) "$(inst_so)" <.y
709 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
710 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
711 copy modules\aaa\$(LONG)\mod_authn_socache.$(src_so) "$(inst_so)" <.y
712 copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so) "$(inst_so)" <.y
713 copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y
714 copy modules\aaa\$(LONG)\mod_authz_dbd.$(src_so) "$(inst_so)" <.y
715 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
716 copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y
717 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
718 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
719 copy modules\aaa\$(LONG)\mod_authz_owner.$(src_so) "$(inst_so)" <.y
720 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
721 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
722 copy modules\cache\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
723 copy modules\cache\$(LONG)\mod_cache_disk.$(src_so) "$(inst_so)" <.y
724 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
725 copy modules\cache\$(LONG)\mod_socache_dbm.$(src_so) "$(inst_so)" <.y
726 # copy modules\cache\$(LONG)\mod_socache_dc.$(src_so) "$(inst_so)" <.y
727 copy modules\cache\$(LONG)\mod_socache_memcache.$(src_so) "$(inst_so)" <.y
728 copy modules\cache\$(LONG)\mod_socache_shmcb.$(src_so) "$(inst_so)" <.y
729 copy modules\core\$(LONG)\mod_watchdog.$(src_so) "$(inst_so)" <.y
730 copy modules\cluster\$(LONG)\mod_heartbeat.$(src_so) "$(inst_so)" <.y
731 copy modules\cluster\$(LONG)\mod_heartmonitor.$(src_so) "$(inst_so)" <.y
732 copy modules\database\$(LONG)\mod_dbd.$(src_so) "$(inst_so)" <.y
733 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
734 copy modules\dav\lock\$(LONG)\mod_dav_lock.$(src_so) "$(inst_so)" <.y
735 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
737 copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so) "$(inst_so)" <.y
739 copy modules\debugging\$(LONG)\mod_dumpio.$(src_so) "$(inst_so)" <.y
741 copy modules\echo\$(LONG)\mod_echo.$(src_so) "$(inst_so)" <.y
742 copy modules\examples\$(LONG)\mod_case_filter.$(src_so) "$(inst_so)" <.y
743 copy modules\examples\$(LONG)\mod_case_filter_in.$(src_so) "$(inst_so)" <.y
744 copy modules\examples\$(LONG)\mod_example_hooks.$(src_so) "$(inst_so)" <.y
745 copy modules\examples\$(LONG)\mod_example_ipc.$(src_so) "$(inst_so)" <.y
747 copy modules\filters\$(LONG)\mod_buffer.$(src_so) "$(inst_so)" <.y
748 copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
749 copy modules\filters\$(LONG)\mod_data.$(src_so) "$(inst_so)" <.y
750 !IF EXIST("srclib\zlib")
751 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
752 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
753 copy srclib\zlib\zlib1.$(src_dll) "$(inst_dll)" <.y
756 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
757 copy modules\filters\$(LONG)\mod_filter.$(src_so) "$(inst_so)" <.y
758 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
759 !IF EXIST("srclib\libxml2")
760 copy modules\filters\$(LONG)\mod_proxy_html.$(src_so) "$(inst_so)" <.y
761 copy modules\filters\$(LONG)\mod_xml2enc.$(src_so) "$(inst_so)" <.y
762 !IF EXIST("srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll)")
763 copy srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll) "$(inst_dll)" <.y
766 copy modules\filters\$(LONG)\mod_ratelimit.$(src_so) "$(inst_so)" <.y
767 copy modules\filters\$(LONG)\mod_reflector.$(src_so) "$(inst_so)" <.y
768 copy modules\filters\$(LONG)\mod_reqtimeout.$(src_so) "$(inst_so)" <.y
769 copy modules\filters\$(LONG)\mod_request.$(src_so) "$(inst_so)" <.y
770 copy modules\filters\$(LONG)\mod_sed.$(src_so) "$(inst_so)" <.y
771 copy modules\filters\$(LONG)\mod_substitute.$(src_so) "$(inst_so)" <.y
772 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
773 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
774 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
775 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
776 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
777 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
778 copy modules\ldap\$(LONG)\mod_ldap.$(src_so) "$(inst_so)" <.y
779 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
780 copy modules\loggers\$(LONG)\mod_log_debug.$(src_so) "$(inst_so)" <.y
781 copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
782 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
783 !IF EXIST("srclib\lua")
784 copy modules\lua\$(LONG)\mod_lua.$(src_so) "$(inst_so)" <.y
785 !IF EXIST("srclib\lua\src\lua51.$(src_dll)")
786 copy srclib\lua\src\lua51.$(src_dll) "$(inst_dll)" <.y
789 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
790 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
791 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
792 copy modules\mappers\$(LONG)\mod_imagemap.$(src_so) "$(inst_so)" <.y
793 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
794 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
795 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
796 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
797 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
798 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
799 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
800 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
801 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
802 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
803 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
804 copy modules\metadata\$(LONG)\mod_remoteip.$(src_so) "$(inst_so)" <.y
805 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
806 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
807 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
808 copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y
809 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
810 copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so) "$(inst_so)" <.y
811 copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
812 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
813 copy modules\proxy\$(LONG)\mod_proxy_express.$(src_so) "$(inst_so)" <.y
814 copy modules\proxy\$(LONG)\mod_proxy_fcgi.$(src_so) "$(inst_so)" <.y
815 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
816 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
817 copy modules\proxy\$(LONG)\mod_proxy_scgi.$(src_so) "$(inst_so)" <.y
818 !IF EXIST("srclib\serf")
819 copy modules\proxy\$(LONG)\mod_serf.$(src_so) "$(inst_so)" <.y
821 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bybusyness.$(src_so) "$(inst_so)" <.y
822 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_byrequests.$(src_so) "$(inst_so)" <.y
823 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bytraffic.$(src_so) "$(inst_so)" <.y
824 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_heartbeat.$(src_so) "$(inst_so)" <.y
826 copy modules\proxy\examples\$(LONG)\mod_lbmethod_rr.$(src_so) "$(inst_so)" <.y
828 copy modules\session\$(LONG)\mod_session.$(src_so) "$(inst_so)" <.y
829 copy modules\session\$(LONG)\mod_session_cookie.$(src_so) "$(inst_so)" <.y
830 copy modules\session\$(LONG)\mod_session_dbd.$(src_so) "$(inst_so)" <.y
831 copy modules\slotmem\$(LONG)\mod_slotmem_plain.$(src_so) "$(inst_so)" <.y
832 copy modules\slotmem\$(LONG)\mod_slotmem_shm.$(src_so) "$(inst_so)" <.y
833 !IF EXIST("srclib\openssl")
834 # copy modules\session\$(LONG)\mod_session_crypto.$(src_so) "$(inst_so)" <.y
835 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
836 -copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
837 -copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
838 -copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
839 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)" <.y
841 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
842 # copy support\$(LONG)\fcgistarter.$(src_exe) "$(inst_exe)" <.y
843 copy support\$(LONG)\htcacheclean.$(src_exe) "$(inst_exe)" <.y
844 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
845 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
846 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
847 copy support\$(LONG)\httxt2dbm.$(src_exe) "$(inst_exe)" <.y
848 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
849 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
850 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
851 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
854 # First we create the tree and populate the README so that
855 # whatever happens, all licensing has already propagated.
856 # Then repeatedly invoke the _copybin build to copy the
857 # real binaries, then pdb symbols, anf finally dbg syms.
858 # Then hit docs of various sorts, then includes and libs,
859 # and finally do the .conf magic.
865 -mkdir "$(INSTDIR)\bin"
866 !IF EXIST("srclib\apr-util")
867 -mkdir "$(INSTDIR)\bin\iconv"
869 -mkdir "$(INSTDIR)\cgi-bin"
870 -mkdir "$(INSTDIR)\conf"
871 -mkdir "$(INSTDIR)\conf\extra"
872 -mkdir "$(INSTDIR)\conf\original"
873 -mkdir "$(INSTDIR)\conf\original\extra"
874 -mkdir "$(INSTDIR)\error"
875 -mkdir "$(INSTDIR)\htdocs"
876 -mkdir "$(INSTDIR)\manual"
877 -mkdir "$(INSTDIR)\icons"
878 -mkdir "$(INSTDIR)\include"
879 -mkdir "$(INSTDIR)\lib"
880 -mkdir "$(INSTDIR)\logs"
881 -mkdir "$(INSTDIR)\modules"
882 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
883 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
884 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
885 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
886 copy NOTICE "$(INSTDIR)\NOTICE.txt" <.y
887 copy README "$(INSTDIR)\README.txt" <.y
888 type << >> "$(INSTDIR)\NOTICE.txt"
890 Regular expression support is provided by the PCRE library package,
891 which is open source software, written by Philip Hazel, and copyright
892 by the University of Cambridge, England. The original software is
894 ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
896 -awk -f <<script1.awk < "srclib\pcre\LICENCE" >> "$(INSTDIR)\LICENSE.txt"
899 print "For the pcre.dll component:";
901 while ( getline > 0 ) {
902 if ( $$0 ~ /^End$$/ ) $$0 = "END OF PCRE LICENSE";
907 !IF EXIST("srclib\openssl")
908 -copy srclib\openssl\apps\openssl.cnf "$(INSTDIR)\conf\openssl.cnf" <.y
909 type << >> "$(INSTDIR)\NOTICE.txt"
911 This binary distribution includes cryptographic software written by
912 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
913 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
914 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
916 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
919 print "For the libeay32.dll, ssleay32.dll and openssl.exe components:";
921 while ( getline > 0 ) {
926 copy << "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
928 Apache HTTP Server 2.3 Limited OpenSSL Distribution
930 This binary distribution includes the minimal components of OpenSSL required
931 to support mod_ssl for Apache HTTP Server version 2.3 (details are listed
932 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
933 versions of OpenSSL, please refer to the definative source,
934 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
935 full binary or source distribution package from <http://www.openssl.org/>.
937 These OpenSSL binaries were built for distribution from the U.S. without
938 support for the patented encryption methods IDEA, MDC-2 or RC5.
940 --------------------------------------------------------------------------------
943 -copy "$(INSTDIR)\OPENSSL-NEWS.txt" \
944 + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt"
945 copy << "$(INSTDIR)\OPENSSL-README.txt" <.y
947 Apache HTTP Server 2.3 Limited OpenSSL Distribution
949 This binary installation of OpenSSL is a limited distribution of the
950 files derived from the OpenSSL project:
952 LICENSE.txt (includes openssl LICENSE)
960 These are the minimal libraries and tools required to use mod_ssl as
961 distributed with Apache HTTP Server version 2.3. No library link files,
962 headers or sources are distributed with this binary distribution. Please
963 refer to the <http://www.openssl.org/> site for complete source or binary
966 These OpenSSL binaries were built for distribution from the U.S. without
967 support for the patented encryption methods IDEA, MDC-2 or RC5.
969 The Apache HTTP Project only supports the binary distribution of these files
970 and development of the mod_ssl module. We cannot provide support assistance
971 for using or configuring the OpenSSL package or these modules. Please refer
972 all installation and configuration questions to the appropriate forum,
973 such as the user supported lists, <http://httpd.apache.org/userslist.html>
974 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
975 OpenSSL support page.
977 --------------------------------------------------------------------------------
980 -copy "$(INSTDIR)\OPENSSL-README.txt" \
981 + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt"
983 !IF EXIST("srclib\zlib")
984 type << >> "$(INSTDIR)\NOTICE.txt"
986 This binary distribution of mod_deflate.so includes zlib compression code
987 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
988 and Mark Adler (madler@alumni.caltech.edu) .
990 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
992 while ( getline > 0 ) {
993 if ( $$0 ~ /Copyright notice:/ ) {
995 print "For the mod_deflate zlib compression component:";
996 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
1006 !IF EXIST("srclib\lua")
1007 type << >> "$(INSTDIR)\NOTICE.txt"
1009 This binary distribution of mod_lua.so includes the Lua language,
1010 developed at Lua.org, a laboratory of the Department of Computer Science
1011 of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro in Brazil).
1012 For complete information, visit Lua's web site at http://www.lua.org/
1014 -awk -f <<script.awk < "srclib\lua\COPYRIGHT" >> "$(INSTDIR)\LICENSE.txt"
1017 print "For the mod_lua language component:";
1019 while ( getline > 0 && $$0 !~ /end of COPYRIGHT/ ) {
1026 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1027 _copybin src_exe=exe src_dll=dll src_so=so \
1028 inst_exe="$(INSTDIR)\bin" \
1029 inst_dll="$(INSTDIR)\bin" \
1030 inst_so="$(INSTDIR)\modules"
1031 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1032 _copybin src_exe=pdb src_dll=pdb src_so=pdb \
1033 inst_exe="$(INSTDIR)\bin" \
1034 inst_dll="$(INSTDIR)\bin" \
1035 inst_so="$(INSTDIR)\modules"
1036 !IF EXIST("srclib\apr-util")
1038 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
1039 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
1040 INSTALL_DIR="$(INSTDIR)\bin\iconv"
1043 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
1044 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
1046 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
1047 gsub( /\\/, "/", perlroot );
1048 print "#!" perlroot;
1052 if ( $$0 !~ /^#!/ ) {
1057 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
1058 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
1059 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
1060 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
1062 srclib\expat\lib\expat.h \
1063 srclib\apr-util\xml\expat\lib\expat.h \
1064 srclib\apr\include\*.h \
1065 srclib\apr-util\include\*.h \
1066 !IF EXIST("srclib\serf")
1071 modules\cache\mod_cache.h \
1072 modules\core\mod_so.h \
1073 modules\core\mod_watchdog.h \
1074 modules\database\mod_dbd.h \
1075 modules\dav\main\mod_dav.h \
1076 modules\filters\mod_include.h \
1077 modules\generators\mod_cgi.h \
1078 modules\generators\mod_status.h \
1079 modules\loggers\mod_log_config.h \
1080 modules\mappers\mod_rewrite.h \
1081 modules\proxy\mod_proxy.h \
1082 modules\proxy\mod_serf.h \
1083 modules\ssl\mod_ssl.h \
1085 @copy %f "$(INSTDIR)\include" < .y > nul
1086 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
1087 copy srclib\apr\Lib$(SHORT)\apr-1.pdb "$(INSTDIR)\lib" <.y
1088 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
1089 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
1090 !IF EXIST("srclib\apr-util")
1091 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
1092 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.pdb "$(INSTDIR)\lib" <.y
1093 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
1094 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.pdb "$(INSTDIR)\lib" <.y
1095 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
1096 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
1097 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
1098 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
1100 copy srclib\expat\win32\$(LONG)\libexpatMT.lib "$(INSTDIR)\lib" <.y
1101 copy srclib\expat\win32\$(LONG)\libexpatMT.exp "$(INSTDIR)\lib" <.y
1102 copy srclib\expat\win32\$(LONG)\libexpat.lib "$(INSTDIR)\lib" <.y
1103 copy srclib\expat\win32\$(LONG)\libexpat.exp "$(INSTDIR)\lib" <.y
1104 copy srclib\expat\win32\$(LONG)\libexpat.dll "$(INSTDIR)\bin" <.y
1106 !IF EXIST("srclib\serf")
1107 copy srclib\serf\$(LONG)\libserf.lib "$(INSTDIR)\lib" <.y
1108 copy srclib\serf\$(LONG)\libserf.exp "$(INSTDIR)\lib" <.y
1110 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
1111 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
1112 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
1113 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
1114 for %f in ( charset.conv magic mime.types ) do ( \
1115 copy docs\conf\%f "$(INSTDIR)\conf\original\%f" <.y )
1116 awk -f build\installwinconf.awk $(DOMAINNAME) $(SERVERNAME) \
1117 $(SERVERADMIN) $(PORT) $(SSLPORT) "$(INSTDIR) " docs/conf/
1118 copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl"
1119 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
1120 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
1121 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
1123 if ( $$0 !~ /^#!@perlbin@/ )