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
12 # _fixshebang - add proper shebang lines to activate installed
14 # Note: _fixshebang must be run separately and is not
15 # run by any of the above install* targets.
17 # The following install defaults may be customized;
23 # DOMAINNAME example.com
24 # SERVERNAME www.example.com
25 # SERVERNAME admin@example.com
27 # ALL (unset) Includes additional modules for build testing
29 # Provide a DBD_LIST argument after configuring LIB and INCLUDE with
30 # the SDK paths of the corresponding client support libraries.
31 # The ODBC driver is always built on Windows
33 # DBD_LIST="sqlite3 pgsql oracle mysql freetds"
35 # Provide a DBM_LIST argument after configuring LIB and INCLUDE with
36 # the SDK paths of the corresponding client support libraries.
37 # The sdbm driver is always built in.
43 # nmake -f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
45 # Be aware that certain awk's will not accept backslashed names,
46 # so the server root should be given in forward slashes (quoted),
47 # preferably with the drive designation!
49 !IF EXIST("Apache.sln") && ([devenv /help > NUL 2>&1] == 0) \
50 && !defined(USEMAK) && !defined(USEDSW)
54 !ELSEIF EXIST("httpd.mak") && !defined(USEDSW)
66 !IF ("$(CTARGET)" == "") && ($(USESLN) == 1)
70 !IF EXIST("srclib\apr\include\apu.h")
73 !ELSEIF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
74 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
75 !MESSAGE sources (apr, apr-iconv and apr-util) into your srclib dir.
76 !MESSAGE Apache cannot build without these libraries!
78 !ERROR Need srclib\ apr, apr-iconv and apr-util
84 !IF !EXIST("srclib\expat") && !EXIST("srclib\apr-util\xml\expat")
85 !MESSAGE Please check out or download and unpack the current expat library source
86 !MESSAGE under your srclib dir for apr 2.x, or srclib\apr-util\xml\expat for apr 1.x
87 !MESSAGE Apache cannot build without this library!
89 !ERROR Need srclib\expat or srclib\apr-util\xml\expat
92 !IF !EXIST("srclib\pcre")
93 !MESSAGE Please check out or download and unpack the current PCRE library source
94 !MESSAGE under your srclib dir, and compile the pcre.dll with CMake options
95 !MESSAGE BUILD_SHARED_LIBS and CMAKE_BUILD_TYPE RelWithDebInfo.
96 !MESSAGE Apache cannot build without this library!
98 !ERROR Need srclib\pcre
102 # Note; _tryfoo: blocks are used only by the msvc developer studio environment
103 # to 'fix up' the build, since conditional dependencies aren't supported.
106 !IF EXIST("srclib\openssl")
107 !IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe")
116 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
119 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
121 !ELSEIF $(USESLN) == 1
122 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl
123 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs
125 @msdev $(TLP).dsw /USEENV /MAKE \
126 "mod_ssl - Win32 $(LONG)" \
127 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
131 # NOT EXIST("srclib\openssl")
135 @echo mod_ssl and ab/ssl will not build unless openssl is installed
136 @echo in srclib\openssl. They must be precompiled using the
137 @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32. The most
138 @echo recent version confirmed to build with mod_ssl and ab is 0.9.8d.
139 @echo Available from http://www.openssl.org/
141 # NOT EXIST("srclib\openssl")
143 !IF EXIST("srclib\serf")
148 $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
150 !ELSEIF $(USESLN) == 1
151 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_serf
153 @msdev $(TLP).dsw /USEENV /MAKE \
154 "mod_serf - Win32 $(LONG)" /NORECURSE $(CTARGET)
158 # NOT EXIST("srclib\serf")
162 @echo mod_serf will not build unless libserf.dll is built in srclib\serf
163 @echo For purposes of alpha, libserf release 0.3.0 works, but only with
164 @echo http://people.apache.org/~wrowe/fixserf-win32-0.3.0.patch
167 # NOT EXIST("srclib\serf")
169 !IF EXIST("srclib\zlib")
174 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
176 !ELSEIF $(USESLN) == 1
177 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate
179 @msdev $(TLP).dsw /USEENV /MAKE \
180 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
184 # NOT EXIST("srclib\zlib")
188 @echo mod_deflate will not build unless zlib is built in srclib\zlib.
189 @echo Version 1.2.1 and later available from http://www.gzip.org/zlib/
190 @echo built w/ nmake -f win32/Makefile.msc will satisfy this requirement.
194 !IF EXIST("srclib\libxml2")
199 $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET)
200 $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
202 !ELSEIF $(USESLN) == 1
203 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html
204 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc
206 @msdev $(TLP).dsw /USEENV /MAKE \
207 "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET)
208 @msdev $(TLP).dsw /USEENV /MAKE \
209 "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET)
213 # NOT EXIST("srclib\libxml2")
217 @echo mod_proxy_html and mod_xml2enc will not build unless libxml2 is
218 @echo built in srclib\libxml2. Version 2.7.7 and later available from
219 @echo http://xmlsoft.org/ will satisfy this requirement.
224 !IF EXIST("srclib\lua")
229 $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
231 !ELSEIF $(USESLN) == 1
232 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua
234 @msdev $(TLP).dsw /USEENV /MAKE \
235 "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
239 # NOT EXIST("srclib\lua")
243 @echo mod_lua will not build unless lua is installed in srclib\lua.
244 @echo Version 5.1 includes an etc\luavs.bat that will satisfy this requirement.
251 cd srclib\$(UTILDIR)\dbd
252 for %d in (odbc $(DBD_LIST)) do \
253 $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
255 for %d in ($(DBM_LIST) x) do if not %d == x \
256 $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
258 !ELSEIF $(USESLN) == 1
259 for %d in (odbc $(DBD_LIST)) do \
260 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbd_%d
261 for %d in ($(DBM_LIST) x) do if not %d == x \
262 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbm_%d
264 @for %d in (odbc $(DBD_LIST)) do \
265 msdev $(TLP).dsw /USEENV /MAKE \
266 "apr_dbd_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
267 @for %d in ($(DBM_LIST) x) do if not %d == x \
268 msdev $(TLP).dsw /USEENV /MAKE \
269 "apr_dbm_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
273 !IF "$(INSTDIR)" == ""
276 !IF "$(DOMAINNAME)" == ""
277 DOMAINNAME=example.com
279 !IF "$(SERVERNAME)" == ""
280 SERVERNAME=www.$(DOMAINNAME)
282 !IF "$(SERVERADMIN)" == ""
283 SERVERADMIN=admin@$(DOMAINNAME)
288 !IF "$(SSLPORT)" == ""
294 !MESSAGE INSTDIR = $(INSTDIR)
295 !MESSAGE DOMAINNAME = $(DOMAINNAME)
296 !MESSAGE SERVERNAME = $(SERVERNAME)
297 !MESSAGE SERVERADMIN = $(SERVERADMIN)
298 !MESSAGE PORT = $(PORT)
299 !IF EXIST("srclib\openssl")
300 !MESSAGE SSLPORT = $(SSLPORT)
303 !MESSAGE To change these options use 'nmake -f Makefile.win [option=value]'
304 !MESSAGE Example: nmake -f Makefile.win PORT=8080
310 # Only default the behavior if MAKEOPT= is omitted
312 # Microsoft NMake options
314 !ELSEIF "$(MAKE)" == "make"
315 # Borland make options? Not really supported (yet)
324 bscmake.exe -nologo -Iu -o Apache.bsc *.sbr
328 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
331 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build
334 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
337 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build _install
339 clean: _cleanr _cleand
340 -if exist Browse\. rd /s Browse < << > nul
347 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
350 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET=CLEAN _build
353 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
354 !IF !EXIST("srclib\apr-util")
356 $(MAKE) $(MAKEOPT) -f expat.mak CFG="expat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
360 $(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
361 $(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
363 !IF EXIST("srclib\apr-util")
365 $(MAKE) $(MAKEOPT) -f apriconv.mak CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
366 $(MAKE) $(MAKEOPT) -f libapriconv.mak CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
367 !IF "$(CTARGET)" == "CLEAN"
368 $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
369 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
372 $(MAKE) $(MAKEOPT) -f Makefile.win all \
373 BUILD_MODE=$(LONG) BIND_MODE=shared
375 $(MAKE) $(MAKEOPT) -f Makefile.win all \
376 BUILD_MODE=$(LONG) BIND_MODE=shared
380 cd srclib\apr-util\xml\expat\lib
381 $(MAKE) $(MAKEOPT) -f xml.mak CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
383 $(MAKE) $(MAKEOPT) -f aprutil.mak CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
384 $(MAKE) $(MAKEOPT) -f libaprutil.mak CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
386 $(MAKE) $(MAKEOPT) -f apr_ldap.mak CFG="apr_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
389 # DBD, DBM components live now in apr
393 for %d in (odbc $(DBD_LIST)) do \
394 $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
397 for %d in ($(DBM_LIST) x) do if not %d == x \
398 $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
402 $(MAKE) $(MAKEOPT) -f gen_test_char.mak CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
404 $(MAKE) $(MAKEOPT) -f libhttpd.mak CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
405 $(MAKE) $(MAKEOPT) -f httpd.mak CFG="httpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
406 # build ldap prior to authnz_ldap
408 $(MAKE) $(MAKEOPT) -f mod_ldap.mak CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
411 $(MAKE) $(MAKEOPT) -f mod_dbd.mak CFG="mod_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
414 $(MAKE) $(MAKEOPT) -f mod_access_compat.mak CFG="mod_access_compat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
415 $(MAKE) $(MAKEOPT) -f mod_allowhandlers.mak CFG="mod_allowhandlers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
416 $(MAKE) $(MAKEOPT) -f mod_allowmethods.mak CFG="mod_allowmethods - Win32 $(LONG)" RECURSE=0 $(CTARGET)
417 $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
418 $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
419 $(MAKE) $(MAKEOPT) -f mod_auth_form.mak CFG="mod_auth_form - Win32 $(LONG)" RECURSE=0 $(CTARGET)
420 $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
421 $(MAKE) $(MAKEOPT) -f mod_authn_core.mak CFG="mod_authn_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
422 $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
423 $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
424 $(MAKE) $(MAKEOPT) -f mod_authn_file.mak CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
425 $(MAKE) $(MAKEOPT) -f mod_authn_socache.mak CFG="mod_authn_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
426 $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
427 $(MAKE) $(MAKEOPT) -f mod_authz_core.mak CFG="mod_authz_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
428 $(MAKE) $(MAKEOPT) -f mod_authz_dbd.mak CFG="mod_authz_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
429 $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
430 $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
431 $(MAKE) $(MAKEOPT) -f mod_authz_host.mak CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
432 $(MAKE) $(MAKEOPT) -f mod_authz_owner.mak CFG="mod_authz_owner - Win32 $(LONG)" RECURSE=0 $(CTARGET)
433 $(MAKE) $(MAKEOPT) -f mod_authz_user.mak CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
435 cd modules\arch\win32
436 $(MAKE) $(MAKEOPT) -f mod_isapi.mak CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
439 $(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
440 $(MAKE) $(MAKEOPT) -f mod_cache_disk.mak CFG="mod_cache_disk - Win32 $(LONG)" RECURSE=0 $(CTARGET)
441 $(MAKE) $(MAKEOPT) -f mod_cache_socache.mak CFG="mod_cache_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
442 $(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
443 $(MAKE) $(MAKEOPT) -f mod_socache_dbm.mak CFG="mod_socache_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
444 # $(MAKE) $(MAKEOPT) -f mod_socache_dc.mak CFG="mod_socache_dc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
445 $(MAKE) $(MAKEOPT) -f mod_socache_memcache.mak CFG="mod_socache_memcache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
446 $(MAKE) $(MAKEOPT) -f mod_socache_shmcb.mak CFG="mod_socache_shmcb - Win32 $(LONG)" RECURSE=0 $(CTARGET)
449 $(MAKE) $(MAKEOPT) -f mod_macro.mak CFG="mod_macro - Win32 $(LONG)" RECURSE=0 $(CTARGET)
450 $(MAKE) $(MAKEOPT) -f mod_watchdog.mak CFG="mod_watchdog - Win32 $(LONG)" RECURSE=0 $(CTARGET)
453 $(MAKE) $(MAKEOPT) -f mod_heartbeat.mak CFG="mod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
454 $(MAKE) $(MAKEOPT) -f mod_heartmonitor.mak CFG="mod_heartmonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
457 $(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
460 $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
463 $(MAKE) $(MAKEOPT) -f mod_dav_lock.mak CFG="mod_dav_lock - Win32 $(LONG)" RECURSE=0 $(CTARGET)
467 $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
469 $(MAKE) $(MAKEOPT) -f mod_dumpio.mak CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
473 $(MAKE) $(MAKEOPT) -f mod_echo.mak CFG="mod_echo - Win32 $(LONG)" RECURSE=0 $(CTARGET)
478 $(MAKE) $(MAKEOPT) -f mod_case_filter.mak CFG="mod_case_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
479 $(MAKE) $(MAKEOPT) -f mod_case_filter_in.mak CFG="mod_case_filter_in - Win32 $(LONG)" RECURSE=0 $(CTARGET)
480 $(MAKE) $(MAKEOPT) -f mod_example_hooks.mak CFG="mod_example_hooks - Win32 $(LONG)" RECURSE=0 $(CTARGET)
481 $(MAKE) $(MAKEOPT) -f mod_example_ipc.mak CFG="mod_example_ipc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
485 $(MAKE) $(MAKEOPT) -f mod_buffer.mak CFG="mod_buffer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
486 $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
487 $(MAKE) $(MAKEOPT) -f mod_data.mak CFG="mod_data - Win32 $(LONG)" RECURSE=0 $(CTARGET)
488 !IF EXIST("srclib\zlib")
489 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
491 $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
492 $(MAKE) $(MAKEOPT) -f mod_filter.mak CFG="mod_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
493 $(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
494 !IF EXIST("srclib\libxml2")
495 $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET)
496 $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
498 $(MAKE) $(MAKEOPT) -f mod_ratelimit.mak CFG="mod_ratelimit - Win32 $(LONG)" RECURSE=0 $(CTARGET)
499 $(MAKE) $(MAKEOPT) -f mod_reflector.mak CFG="mod_reflector - Win32 $(LONG)" RECURSE=0 $(CTARGET)
500 $(MAKE) $(MAKEOPT) -f mod_reqtimeout.mak CFG="mod_reqtimeout - Win32 $(LONG)" RECURSE=0 $(CTARGET)
501 $(MAKE) $(MAKEOPT) -f mod_request.mak CFG="mod_request - Win32 $(LONG)" RECURSE=0 $(CTARGET)
502 $(MAKE) $(MAKEOPT) -f mod_sed.mak CFG="mod_sed - Win32 $(LONG)" RECURSE=0 $(CTARGET)
503 $(MAKE) $(MAKEOPT) -f mod_substitute.mak CFG="mod_substitute - Win32 $(LONG)" RECURSE=0 $(CTARGET)
505 cd modules\generators
506 $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
507 $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
508 $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
509 $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
510 $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
513 $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
516 $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
517 $(MAKE) $(MAKEOPT) -f mod_log_debug.mak CFG="mod_log_debug - Win32 $(LONG)" RECURSE=0 $(CTARGET)
518 $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
519 $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
521 !IF EXIST("srclib\lua")
523 $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
527 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
528 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
529 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
530 $(MAKE) $(MAKEOPT) -f mod_imagemap.mak CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
531 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
532 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
533 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
534 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
535 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
538 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
539 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
540 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
541 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
542 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
543 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
544 $(MAKE) $(MAKEOPT) -f mod_remoteip.mak CFG="mod_remoteip - Win32 $(LONG)" RECURSE=0 $(CTARGET)
545 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
546 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
547 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
548 $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
551 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
552 $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
553 $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
554 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
555 $(MAKE) $(MAKEOPT) -f mod_proxy_express.mak CFG="mod_proxy_express - Win32 $(LONG)" RECURSE=0 $(CTARGET)
556 $(MAKE) $(MAKEOPT) -f mod_proxy_fcgi.mak CFG="mod_proxy_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
557 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
558 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
559 $(MAKE) $(MAKEOPT) -f mod_proxy_scgi.mak CFG="mod_proxy_scgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
560 $(MAKE) $(MAKEOPT) -f mod_proxy_wstunnel.mak CFG="mod_proxy_wstunnel - Win32 $(LONG)" RECURSE=0 $(CTARGET)
561 !IF EXIST("srclib\serf")
562 $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
565 cd modules\proxy\balancers
566 $(MAKE) $(MAKEOPT) -f mod_lbmethod_bybusyness.mak CFG="mod_lbmethod_bybusyness - Win32 $(LONG)" RECURSE=0 $(CTARGET)
567 $(MAKE) $(MAKEOPT) -f mod_lbmethod_byrequests.mak CFG="mod_lbmethod_byrequests - Win32 $(LONG)" RECURSE=0 $(CTARGET)
568 $(MAKE) $(MAKEOPT) -f mod_lbmethod_bytraffic.mak CFG="mod_lbmethod_bytraffic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
569 $(MAKE) $(MAKEOPT) -f mod_lbmethod_heartbeat.mak CFG="mod_lbmethod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
572 cd modules\proxy\examples
573 $(MAKE) $(MAKEOPT) -f mod_lbmethod_rr.mak CFG="mod_lbmethod_rr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
577 $(MAKE) $(MAKEOPT) -f mod_session.mak CFG="mod_session - Win32 $(LONG)" RECURSE=0 $(CTARGET)
578 $(MAKE) $(MAKEOPT) -f mod_session_cookie.mak CFG="mod_session_cookie - Win32 $(LONG)" RECURSE=0 $(CTARGET)
579 $(MAKE) $(MAKEOPT) -f mod_session_dbd.mak CFG="mod_session_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
582 $(MAKE) $(MAKEOPT) -f mod_slotmem_plain.mak CFG="mod_slotmem_plain - Win32 $(LONG)" RECURSE=0 $(CTARGET)
583 $(MAKE) $(MAKEOPT) -f mod_slotmem_shm.mak CFG="mod_slotmem_shm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
585 !IF EXIST("srclib\openssl")
587 # $(MAKE) $(MAKEOPT) -f mod_session_crypto.mak CFG="mod_session_crypto - Win32 $(LONG)" RECURSE=0 $(CTARGET)
590 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
593 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
597 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
598 # $(MAKE) $(MAKEOPT) -f fcgistarter.mak CFG="fcgistarter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
599 $(MAKE) $(MAKEOPT) -f htcacheclean.mak CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET)
600 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
601 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
602 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
603 $(MAKE) $(MAKEOPT) -f httxt2dbm.mak CFG="httxt2dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
604 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
605 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
608 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
609 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
612 !ELSEIF $(USESLN) == 1
615 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
618 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
621 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
623 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildAll
625 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildBin
627 !IF EXIST("srclib\openssl")
628 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl
629 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs
631 !IF EXIST("srclib\zlib")
632 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate
634 !IF EXIST("srclib\lua")
635 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua
637 !IF EXIST("srclib\libxml2")
638 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html
639 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc
641 !IF EXIST("srclib\serf")
642 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_serf
648 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
651 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
654 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
656 @msdev $(TLP).dsw /USEENV /MAKE \
657 "BuildAll - Win32 $(LONG)" $(CTARGET)
659 @msdev $(TLP).dsw /USEENV /MAKE \
660 "BuildBin - Win32 $(LONG)" $(CTARGET)
662 !IF "$(CTARGET)" == "/CLEAN"
663 !IF EXIST("srclib\apr-iconv")
665 @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
666 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
670 !IF EXIST("srclib\openssl")
671 @msdev $(TLP).dsw /USEENV /MAKE \
672 "mod_ssl - Win32 $(LONG)" \
673 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
675 !IF EXIST("srclib\zlib")
676 @msdev $(TLP).dsw /USEENV /MAKE \
677 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
679 !IF EXIST("srclib\lua")
680 @msdev $(TLP).dsw /USEENV /MAKE \
681 "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
683 !IF EXIST("srclib\libxml2")
684 @msdev $(TLP).dsw /USEENV /MAKE \
685 "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET)
686 @msdev $(TLP).dsw /USEENV /MAKE \
687 "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET)
689 !IF EXIST("srclib\serf")
690 @msdev $(TLP).dsw /USEENV /MAKE \
691 "mod_serf - Win32 $(LONG)" /NORECURSE $(CTARGET)
698 copy $(LONG)\httpd.$(src_exe) "$(inst_exe)" <.y
699 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
700 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
701 !IF EXIST("srclib\apr-util")
702 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
703 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
704 copy srclib\apr-util\ldap\$(LONG)\apr_ldap-1.$(src_dll) "$(inst_dll)" <.y
706 for %d in (odbc $(DBD_LIST)) do ( \
707 copy srclib\$(UTILDIR)\dbd\$(LONG)\apr_dbd_%d-1.$(src_dll) "$(inst_dll)" <.y \
709 for %d in ($(DBM_LIST) x) do if not %d == x ( \
710 copy srclib\$(UTILDIR)\dbm\$(LONG)\apr_dbm_%d-1.$(src_dll) "$(inst_dll)" <.y \
712 !IF EXIST("srclib\serf")
713 copy srclib\serf\$(LONG)\libserf.$(src_dll) "$(inst_dll)" <.y
715 !IF "$(SHORT)" == "D"
716 copy srclib\pcre\pcred.$(src_dll) "$(inst_dll)" <.y
718 copy srclib\pcre\pcre.$(src_dll) "$(inst_dll)" <.y
720 copy modules\aaa\$(LONG)\mod_access_compat.$(src_so) "$(inst_so)" <.y
721 copy modules\aaa\$(LONG)\mod_allowhandlers.$(src_so) "$(inst_so)" <.y
722 copy modules\aaa\$(LONG)\mod_allowmethods.$(src_so) "$(inst_so)" <.y
723 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
724 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
725 copy modules\aaa\$(LONG)\mod_auth_form.$(src_so) "$(inst_so)" <.y
726 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
727 copy modules\aaa\$(LONG)\mod_authn_core.$(src_so) "$(inst_so)" <.y
728 copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so) "$(inst_so)" <.y
729 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
730 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
731 copy modules\aaa\$(LONG)\mod_authn_socache.$(src_so) "$(inst_so)" <.y
732 copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so) "$(inst_so)" <.y
733 copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y
734 copy modules\aaa\$(LONG)\mod_authz_dbd.$(src_so) "$(inst_so)" <.y
735 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
736 copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y
737 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
738 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
739 copy modules\aaa\$(LONG)\mod_authz_owner.$(src_so) "$(inst_so)" <.y
740 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
741 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
742 copy modules\cache\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
743 copy modules\cache\$(LONG)\mod_cache_disk.$(src_so) "$(inst_so)" <.y
744 copy modules\cache\$(LONG)\mod_cache_socache.$(src_so) "$(inst_so)" <.y
745 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
746 copy modules\cache\$(LONG)\mod_socache_dbm.$(src_so) "$(inst_so)" <.y
747 # copy modules\cache\$(LONG)\mod_socache_dc.$(src_so) "$(inst_so)" <.y
748 copy modules\cache\$(LONG)\mod_socache_memcache.$(src_so) "$(inst_so)" <.y
749 copy modules\cache\$(LONG)\mod_socache_shmcb.$(src_so) "$(inst_so)" <.y
750 copy modules\core\$(LONG)\mod_macro.$(src_so) "$(inst_so)" <.y
751 copy modules\core\$(LONG)\mod_watchdog.$(src_so) "$(inst_so)" <.y
752 copy modules\cluster\$(LONG)\mod_heartbeat.$(src_so) "$(inst_so)" <.y
753 copy modules\cluster\$(LONG)\mod_heartmonitor.$(src_so) "$(inst_so)" <.y
754 copy modules\database\$(LONG)\mod_dbd.$(src_so) "$(inst_so)" <.y
755 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
756 copy modules\dav\lock\$(LONG)\mod_dav_lock.$(src_so) "$(inst_so)" <.y
757 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
759 copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so) "$(inst_so)" <.y
761 copy modules\debugging\$(LONG)\mod_dumpio.$(src_so) "$(inst_so)" <.y
763 copy modules\echo\$(LONG)\mod_echo.$(src_so) "$(inst_so)" <.y
764 copy modules\examples\$(LONG)\mod_case_filter.$(src_so) "$(inst_so)" <.y
765 copy modules\examples\$(LONG)\mod_case_filter_in.$(src_so) "$(inst_so)" <.y
766 copy modules\examples\$(LONG)\mod_example_hooks.$(src_so) "$(inst_so)" <.y
767 copy modules\examples\$(LONG)\mod_example_ipc.$(src_so) "$(inst_so)" <.y
769 copy modules\filters\$(LONG)\mod_buffer.$(src_so) "$(inst_so)" <.y
770 copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
771 copy modules\filters\$(LONG)\mod_data.$(src_so) "$(inst_so)" <.y
772 !IF EXIST("srclib\zlib")
773 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
774 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
775 copy srclib\zlib\zlib1.$(src_dll) "$(inst_dll)" <.y
778 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
779 copy modules\filters\$(LONG)\mod_filter.$(src_so) "$(inst_so)" <.y
780 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
781 !IF EXIST("srclib\libxml2")
782 copy modules\filters\$(LONG)\mod_proxy_html.$(src_so) "$(inst_so)" <.y
783 copy modules\filters\$(LONG)\mod_xml2enc.$(src_so) "$(inst_so)" <.y
784 !IF EXIST("srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll)")
785 copy srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll) "$(inst_dll)" <.y
788 copy modules\filters\$(LONG)\mod_ratelimit.$(src_so) "$(inst_so)" <.y
789 copy modules\filters\$(LONG)\mod_reflector.$(src_so) "$(inst_so)" <.y
790 copy modules\filters\$(LONG)\mod_reqtimeout.$(src_so) "$(inst_so)" <.y
791 copy modules\filters\$(LONG)\mod_request.$(src_so) "$(inst_so)" <.y
792 copy modules\filters\$(LONG)\mod_sed.$(src_so) "$(inst_so)" <.y
793 copy modules\filters\$(LONG)\mod_substitute.$(src_so) "$(inst_so)" <.y
794 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
795 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
796 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
797 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
798 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
799 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
800 copy modules\ldap\$(LONG)\mod_ldap.$(src_so) "$(inst_so)" <.y
801 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
802 copy modules\loggers\$(LONG)\mod_log_debug.$(src_so) "$(inst_so)" <.y
803 copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
804 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
805 !IF EXIST("srclib\lua")
806 copy modules\lua\$(LONG)\mod_lua.$(src_so) "$(inst_so)" <.y
807 !IF EXIST("srclib\lua\src\lua51.$(src_dll)")
808 copy srclib\lua\src\lua51.$(src_dll) "$(inst_dll)" <.y
811 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
812 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
813 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
814 copy modules\mappers\$(LONG)\mod_imagemap.$(src_so) "$(inst_so)" <.y
815 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
816 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
817 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
818 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
819 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
820 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
821 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
822 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
823 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
824 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
825 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
826 copy modules\metadata\$(LONG)\mod_remoteip.$(src_so) "$(inst_so)" <.y
827 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
828 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
829 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
830 copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y
831 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
832 copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so) "$(inst_so)" <.y
833 copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
834 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
835 copy modules\proxy\$(LONG)\mod_proxy_express.$(src_so) "$(inst_so)" <.y
836 copy modules\proxy\$(LONG)\mod_proxy_fcgi.$(src_so) "$(inst_so)" <.y
837 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
838 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
839 copy modules\proxy\$(LONG)\mod_proxy_scgi.$(src_so) "$(inst_so)" <.y
840 copy modules\proxy\$(LONG)\mod_proxy_wstunnel.$(src_so) "$(inst_so)" <.y
841 !IF EXIST("srclib\serf")
842 copy modules\proxy\$(LONG)\mod_serf.$(src_so) "$(inst_so)" <.y
844 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bybusyness.$(src_so) "$(inst_so)" <.y
845 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_byrequests.$(src_so) "$(inst_so)" <.y
846 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bytraffic.$(src_so) "$(inst_so)" <.y
847 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_heartbeat.$(src_so) "$(inst_so)" <.y
849 copy modules\proxy\examples\$(LONG)\mod_lbmethod_rr.$(src_so) "$(inst_so)" <.y
851 copy modules\session\$(LONG)\mod_session.$(src_so) "$(inst_so)" <.y
852 copy modules\session\$(LONG)\mod_session_cookie.$(src_so) "$(inst_so)" <.y
853 copy modules\session\$(LONG)\mod_session_dbd.$(src_so) "$(inst_so)" <.y
854 copy modules\slotmem\$(LONG)\mod_slotmem_plain.$(src_so) "$(inst_so)" <.y
855 copy modules\slotmem\$(LONG)\mod_slotmem_shm.$(src_so) "$(inst_so)" <.y
856 !IF EXIST("srclib\openssl")
857 # copy modules\session\$(LONG)\mod_session_crypto.$(src_so) "$(inst_so)" <.y
858 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
859 -copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
860 -copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
861 -copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
862 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)" <.y
864 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
865 # copy support\$(LONG)\fcgistarter.$(src_exe) "$(inst_exe)" <.y
866 copy support\$(LONG)\htcacheclean.$(src_exe) "$(inst_exe)" <.y
867 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
868 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
869 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
870 copy support\$(LONG)\httxt2dbm.$(src_exe) "$(inst_exe)" <.y
871 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
872 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
873 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
874 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
877 # First we create the tree and populate the README so that
878 # whatever happens, all licensing has already propagated.
879 # Then repeatedly invoke the _copybin build to copy the
880 # real binaries, then pdb symbols, anf finally dbg syms.
881 # Then hit docs of various sorts, then includes and libs,
882 # and finally do the .conf magic.
888 -mkdir "$(INSTDIR)\bin"
889 !IF EXIST("srclib\apr-util")
890 -mkdir "$(INSTDIR)\bin\iconv"
892 -mkdir "$(INSTDIR)\cgi-bin"
893 -mkdir "$(INSTDIR)\conf"
894 -mkdir "$(INSTDIR)\conf\extra"
895 -mkdir "$(INSTDIR)\conf\original"
896 -mkdir "$(INSTDIR)\conf\original\extra"
897 -mkdir "$(INSTDIR)\error"
898 -mkdir "$(INSTDIR)\htdocs"
899 -mkdir "$(INSTDIR)\manual"
900 -mkdir "$(INSTDIR)\icons"
901 -mkdir "$(INSTDIR)\include"
902 -mkdir "$(INSTDIR)\lib"
903 -mkdir "$(INSTDIR)\logs"
904 -mkdir "$(INSTDIR)\modules"
905 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
906 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
907 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
908 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
909 copy NOTICE "$(INSTDIR)\NOTICE.txt" <.y
910 copy README "$(INSTDIR)\README.txt" <.y
911 type << >> "$(INSTDIR)\NOTICE.txt"
913 Regular expression support is provided by the PCRE library package,
914 which is open source software, written by Philip Hazel, and copyright
915 by the University of Cambridge, England. The original software is
917 ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
919 -awk -f <<script1.awk < "srclib\pcre\LICENCE" >> "$(INSTDIR)\LICENSE.txt"
922 print "For the pcre.dll component:";
924 while ( getline > 0 ) {
925 if ( $$0 ~ /^End$$/ ) $$0 = "END OF PCRE LICENSE";
930 !IF EXIST("srclib\openssl")
931 -copy srclib\openssl\apps\openssl.cnf "$(INSTDIR)\conf\openssl.cnf" <.y
932 type << >> "$(INSTDIR)\NOTICE.txt"
934 This binary distribution includes cryptographic software written by
935 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
936 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
937 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
939 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
942 print "For the libeay32.dll, ssleay32.dll and openssl.exe components:";
944 while ( getline > 0 ) {
949 copy << "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
951 Apache HTTP Server 2.5 Limited OpenSSL Distribution
953 This binary distribution includes the minimal components of OpenSSL required
954 to support mod_ssl for Apache HTTP Server version 2.5 (details are listed
955 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
956 versions of OpenSSL, please refer to the definative source,
957 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
958 full binary or source distribution package from <http://www.openssl.org/>.
960 These OpenSSL binaries were built for distribution from the U.S. without
961 support for the patented encryption methods IDEA, MDC-2 or RC5.
963 --------------------------------------------------------------------------------
966 -copy "$(INSTDIR)\OPENSSL-NEWS.txt" \
967 + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt"
968 copy << "$(INSTDIR)\OPENSSL-README.txt" <.y
970 Apache HTTP Server 2.5 Limited OpenSSL Distribution
972 This binary installation of OpenSSL is a limited distribution of the
973 files derived from the OpenSSL project:
975 LICENSE.txt (includes openssl LICENSE)
983 These are the minimal libraries and tools required to use mod_ssl as
984 distributed with Apache HTTP Server version 2.5. No library link files,
985 headers or sources are distributed with this binary distribution. Please
986 refer to the <http://www.openssl.org/> site for complete source or binary
989 These OpenSSL binaries were built for distribution from the U.S. without
990 support for the patented encryption methods IDEA, MDC-2 or RC5.
992 The Apache HTTP Project only supports the binary distribution of these files
993 and development of the mod_ssl module. We cannot provide support assistance
994 for using or configuring the OpenSSL package or these modules. Please refer
995 all installation and configuration questions to the appropriate forum,
996 such as the user supported lists, <http://httpd.apache.org/userslist.html>
997 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
998 OpenSSL support page.
1000 --------------------------------------------------------------------------------
1003 -copy "$(INSTDIR)\OPENSSL-README.txt" \
1004 + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt"
1006 !IF EXIST("srclib\zlib")
1007 type << >> "$(INSTDIR)\NOTICE.txt"
1009 This binary distribution of mod_deflate.so includes zlib compression code
1010 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
1011 and Mark Adler (madler@alumni.caltech.edu) .
1013 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
1015 while ( getline > 0 ) {
1016 if ( $$0 ~ /Copyright notice:/ ) {
1018 print "For the mod_deflate zlib compression component:";
1019 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
1029 !IF EXIST("srclib\lua")
1030 type << >> "$(INSTDIR)\NOTICE.txt"
1032 This binary distribution of mod_lua.so includes the Lua language,
1033 developed at Lua.org, a laboratory of the Department of Computer Science
1034 of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro in Brazil).
1035 For complete information, visit Lua's web site at http://www.lua.org/
1037 -awk -f <<script.awk < "srclib\lua\COPYRIGHT" >> "$(INSTDIR)\LICENSE.txt"
1040 print "For the mod_lua language component:";
1042 while ( getline > 0 && $$0 !~ /end of COPYRIGHT/ ) {
1049 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1050 _copybin src_exe=exe src_dll=dll src_so=so \
1051 inst_exe="$(INSTDIR)\bin" \
1052 inst_dll="$(INSTDIR)\bin" \
1053 inst_so="$(INSTDIR)\modules"
1054 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1055 _copybin src_exe=pdb src_dll=pdb src_so=pdb \
1056 inst_exe="$(INSTDIR)\bin" \
1057 inst_dll="$(INSTDIR)\bin" \
1058 inst_so="$(INSTDIR)\modules"
1059 !IF EXIST("srclib\apr-util")
1061 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
1062 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
1063 INSTALL_DIR="$(INSTDIR)\bin\iconv"
1066 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
1067 copy docs\cgi-examples\printenv.vbs "$(INSTDIR)\cgi-bin\printenv.vbs" <.y
1068 copy docs\cgi-examples\printenv.wsf "$(INSTDIR)\cgi-bin\printenv.wsf" <.y
1069 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
1070 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
1071 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
1072 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
1074 srclib\expat\lib\expat.h \
1075 srclib\apr-util\xml\expat\lib\expat.h \
1076 srclib\apr\include\*.h \
1077 srclib\apr-util\include\*.h \
1078 !IF EXIST("srclib\serf")
1083 modules\cache\mod_cache.h \
1084 modules\cache\cache_common.h \
1085 modules\core\mod_so.h \
1086 modules\core\mod_watchdog.h \
1087 modules\database\mod_dbd.h \
1088 modules\dav\main\mod_dav.h \
1089 modules\filters\mod_include.h \
1090 modules\generators\mod_cgi.h \
1091 modules\generators\mod_status.h \
1092 modules\loggers\mod_log_config.h \
1093 modules\mappers\mod_rewrite.h \
1094 modules\proxy\mod_proxy.h \
1095 modules\proxy\mod_serf.h \
1096 modules\ssl\mod_ssl.h \
1098 @copy %f "$(INSTDIR)\include" < .y > nul
1099 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
1100 copy srclib\apr\Lib$(SHORT)\apr-1.pdb "$(INSTDIR)\lib" <.y
1101 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
1102 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
1103 !IF EXIST("srclib\apr-util")
1104 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
1105 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.pdb "$(INSTDIR)\lib" <.y
1106 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
1107 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.pdb "$(INSTDIR)\lib" <.y
1108 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
1109 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
1110 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
1111 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
1113 copy srclib\expat\win32\$(LONG)\libexpatMT.lib "$(INSTDIR)\lib" <.y
1114 copy srclib\expat\win32\$(LONG)\libexpatMT.exp "$(INSTDIR)\lib" <.y
1115 copy srclib\expat\win32\$(LONG)\libexpat.lib "$(INSTDIR)\lib" <.y
1116 copy srclib\expat\win32\$(LONG)\libexpat.exp "$(INSTDIR)\lib" <.y
1117 copy srclib\expat\win32\$(LONG)\libexpat.dll "$(INSTDIR)\bin" <.y
1119 !IF EXIST("srclib\serf")
1120 copy srclib\serf\$(LONG)\libserf.lib "$(INSTDIR)\lib" <.y
1121 copy srclib\serf\$(LONG)\libserf.exp "$(INSTDIR)\lib" <.y
1123 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
1124 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
1125 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
1126 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
1127 for %f in ( charset.conv magic mime.types ) do ( \
1128 copy docs\conf\%f "$(INSTDIR)\conf\original\%f" <.y )
1129 awk -f build\installwinconf.awk $(DOMAINNAME) $(SERVERNAME) \
1130 $(SERVERADMIN) $(PORT) $(SSLPORT) "$(INSTDIR) " docs/conf/
1131 copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl"
1132 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
1133 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
1134 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
1136 if ( $$0 !~ /^#!@perlbin@/ )
1144 !IF EXIST("$(INSTDIR)\cgi-bin")
1145 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
1147 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
1148 gsub( /\\/, "/", perlroot );
1149 print "#!" perlroot;
1153 if ( $$0 !~ /^#!/ ) {
1158 -cscript -nologo <<script.vbs "docs/cgi-examples/printenv.vbs" "$(INSTDIR)\cgi-bin\printenv.vbs"
1160 Set fso = CreateObject("Scripting.FileSystemObject")
1161 Set f = fso.OpenTextFile(WScript.Arguments(0), 1)
1165 Set f = fso.OpenTextFile(WScript.Arguments(1), 2, TRUE)
1166 f.WriteLine "'!" & Replace(WScript.FullName, "\", "/") & " -nologo"
1170 -cscript -nologo <<script.vbs "docs/cgi-examples/printenv.wsf" "$(INSTDIR)\cgi-bin\printenv.wsf"
1172 Set fso = CreateObject("Scripting.FileSystemObject")
1173 Set f = fso.OpenTextFile(WScript.Arguments(0), 1)
1177 Set f = fso.OpenTextFile(WScript.Arguments(1), 2, TRUE)
1178 f.WriteLine "'!" & Replace(WScript.FullName, "\", "/") & " -nologo"