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_allowhandlers.mak CFG="mod_allowhandlers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
412 $(MAKE) $(MAKEOPT) -f mod_allowmethods.mak CFG="mod_allowmethods - Win32 $(LONG)" RECURSE=0 $(CTARGET)
413 $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
414 $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
415 $(MAKE) $(MAKEOPT) -f mod_auth_form.mak CFG="mod_auth_form - Win32 $(LONG)" RECURSE=0 $(CTARGET)
416 $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
417 $(MAKE) $(MAKEOPT) -f mod_authn_core.mak CFG="mod_authn_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
418 $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
419 $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
420 $(MAKE) $(MAKEOPT) -f mod_authn_file.mak CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
421 $(MAKE) $(MAKEOPT) -f mod_authn_socache.mak CFG="mod_authn_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
422 $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
423 $(MAKE) $(MAKEOPT) -f mod_authz_core.mak CFG="mod_authz_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
424 $(MAKE) $(MAKEOPT) -f mod_authz_dbd.mak CFG="mod_authz_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
425 $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
426 $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
427 $(MAKE) $(MAKEOPT) -f mod_authz_host.mak CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
428 $(MAKE) $(MAKEOPT) -f mod_authz_owner.mak CFG="mod_authz_owner - Win32 $(LONG)" RECURSE=0 $(CTARGET)
429 $(MAKE) $(MAKEOPT) -f mod_authz_user.mak CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
431 cd modules\arch\win32
432 $(MAKE) $(MAKEOPT) -f mod_isapi.mak CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
435 $(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
436 $(MAKE) $(MAKEOPT) -f mod_cache_disk.mak CFG="mod_cache_disk - Win32 $(LONG)" RECURSE=0 $(CTARGET)
437 $(MAKE) $(MAKEOPT) -f mod_cache_socache.mak CFG="mod_cache_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
438 $(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
439 $(MAKE) $(MAKEOPT) -f mod_socache_dbm.mak CFG="mod_socache_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
440 # $(MAKE) $(MAKEOPT) -f mod_socache_dc.mak CFG="mod_socache_dc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
441 $(MAKE) $(MAKEOPT) -f mod_socache_memcache.mak CFG="mod_socache_memcache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
442 $(MAKE) $(MAKEOPT) -f mod_socache_shmcb.mak CFG="mod_socache_shmcb - Win32 $(LONG)" RECURSE=0 $(CTARGET)
445 $(MAKE) $(MAKEOPT) -f mod_watchdog.mak CFG="mod_watchdog - Win32 $(LONG)" RECURSE=0 $(CTARGET)
448 $(MAKE) $(MAKEOPT) -f mod_heartbeat.mak CFG="mod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
449 $(MAKE) $(MAKEOPT) -f mod_heartmonitor.mak CFG="mod_heartmonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
452 $(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
455 $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
458 $(MAKE) $(MAKEOPT) -f mod_dav_lock.mak CFG="mod_dav_lock - Win32 $(LONG)" RECURSE=0 $(CTARGET)
462 $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
464 $(MAKE) $(MAKEOPT) -f mod_dumpio.mak CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
468 $(MAKE) $(MAKEOPT) -f mod_echo.mak CFG="mod_echo - Win32 $(LONG)" RECURSE=0 $(CTARGET)
473 $(MAKE) $(MAKEOPT) -f mod_case_filter.mak CFG="mod_case_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
474 $(MAKE) $(MAKEOPT) -f mod_case_filter_in.mak CFG="mod_case_filter_in - Win32 $(LONG)" RECURSE=0 $(CTARGET)
475 $(MAKE) $(MAKEOPT) -f mod_example_hooks.mak CFG="mod_example_hooks - Win32 $(LONG)" RECURSE=0 $(CTARGET)
476 $(MAKE) $(MAKEOPT) -f mod_example_ipc.mak CFG="mod_example_ipc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
480 $(MAKE) $(MAKEOPT) -f mod_buffer.mak CFG="mod_buffer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
481 $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
482 $(MAKE) $(MAKEOPT) -f mod_data.mak CFG="mod_data - Win32 $(LONG)" RECURSE=0 $(CTARGET)
483 !IF EXIST("srclib\zlib")
484 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
486 $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
487 $(MAKE) $(MAKEOPT) -f mod_filter.mak CFG="mod_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
488 $(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
489 !IF EXIST("srclib\libxml2")
490 $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET)
491 $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
493 $(MAKE) $(MAKEOPT) -f mod_ratelimit.mak CFG="mod_ratelimit - Win32 $(LONG)" RECURSE=0 $(CTARGET)
494 $(MAKE) $(MAKEOPT) -f mod_reflector.mak CFG="mod_reflector - Win32 $(LONG)" RECURSE=0 $(CTARGET)
495 $(MAKE) $(MAKEOPT) -f mod_reqtimeout.mak CFG="mod_reqtimeout - Win32 $(LONG)" RECURSE=0 $(CTARGET)
496 $(MAKE) $(MAKEOPT) -f mod_request.mak CFG="mod_request - Win32 $(LONG)" RECURSE=0 $(CTARGET)
497 $(MAKE) $(MAKEOPT) -f mod_sed.mak CFG="mod_sed - Win32 $(LONG)" RECURSE=0 $(CTARGET)
498 $(MAKE) $(MAKEOPT) -f mod_substitute.mak CFG="mod_substitute - Win32 $(LONG)" RECURSE=0 $(CTARGET)
500 cd modules\generators
501 $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
502 $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
503 $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
504 $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
505 $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
508 $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
511 $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
512 $(MAKE) $(MAKEOPT) -f mod_log_debug.mak CFG="mod_log_debug - Win32 $(LONG)" RECURSE=0 $(CTARGET)
513 $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
514 $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
516 !IF EXIST("srclib\lua")
518 $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
522 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
523 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
524 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
525 $(MAKE) $(MAKEOPT) -f mod_imagemap.mak CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
526 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
527 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
528 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
529 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
530 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
533 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
534 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
535 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
536 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
537 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
538 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
539 $(MAKE) $(MAKEOPT) -f mod_remoteip.mak CFG="mod_remoteip - Win32 $(LONG)" RECURSE=0 $(CTARGET)
540 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
541 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
542 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
543 $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
546 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
547 $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
548 $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
549 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
550 $(MAKE) $(MAKEOPT) -f mod_proxy_express.mak CFG="mod_proxy_express - Win32 $(LONG)" RECURSE=0 $(CTARGET)
551 $(MAKE) $(MAKEOPT) -f mod_proxy_fcgi.mak CFG="mod_proxy_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
552 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
553 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
554 $(MAKE) $(MAKEOPT) -f mod_proxy_scgi.mak CFG="mod_proxy_scgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
555 !IF EXIST("srclib\serf")
556 $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
559 cd modules\proxy\balancers
560 $(MAKE) $(MAKEOPT) -f mod_lbmethod_bybusyness.mak CFG="mod_lbmethod_bybusyness - Win32 $(LONG)" RECURSE=0 $(CTARGET)
561 $(MAKE) $(MAKEOPT) -f mod_lbmethod_byrequests.mak CFG="mod_lbmethod_byrequests - Win32 $(LONG)" RECURSE=0 $(CTARGET)
562 $(MAKE) $(MAKEOPT) -f mod_lbmethod_bytraffic.mak CFG="mod_lbmethod_bytraffic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
563 $(MAKE) $(MAKEOPT) -f mod_lbmethod_heartbeat.mak CFG="mod_lbmethod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
566 cd modules\proxy\examples
567 $(MAKE) $(MAKEOPT) -f mod_lbmethod_rr.mak CFG="mod_lbmethod_rr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
571 $(MAKE) $(MAKEOPT) -f mod_session.mak CFG="mod_session - Win32 $(LONG)" RECURSE=0 $(CTARGET)
572 $(MAKE) $(MAKEOPT) -f mod_session_cookie.mak CFG="mod_session_cookie - Win32 $(LONG)" RECURSE=0 $(CTARGET)
573 $(MAKE) $(MAKEOPT) -f mod_session_dbd.mak CFG="mod_session_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
576 $(MAKE) $(MAKEOPT) -f mod_slotmem_plain.mak CFG="mod_slotmem_plain - Win32 $(LONG)" RECURSE=0 $(CTARGET)
577 $(MAKE) $(MAKEOPT) -f mod_slotmem_shm.mak CFG="mod_slotmem_shm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
579 !IF EXIST("srclib\openssl")
581 # $(MAKE) $(MAKEOPT) -f mod_session_crypto.mak CFG="mod_session_crypto - Win32 $(LONG)" RECURSE=0 $(CTARGET)
584 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
587 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
591 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
592 # $(MAKE) $(MAKEOPT) -f fcgistarter.mak CFG="fcgistarter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
593 $(MAKE) $(MAKEOPT) -f htcacheclean.mak CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET)
594 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
595 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
596 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
597 $(MAKE) $(MAKEOPT) -f httxt2dbm.mak CFG="httxt2dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
598 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
599 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
602 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
603 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
606 !ELSEIF $(USESLN) == 1
609 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
612 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
615 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
617 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildAll
619 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildBin
621 !IF EXIST("srclib\openssl")
622 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl
623 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs
625 !IF EXIST("srclib\zlib")
626 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate
628 !IF EXIST("srclib\lua")
629 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua
631 !IF EXIST("srclib\libxml2")
632 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html
633 devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc
639 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
642 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
645 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
647 @msdev $(TLP).dsw /USEENV /MAKE \
648 "BuildAll - Win32 $(LONG)" $(CTARGET)
650 @msdev $(TLP).dsw /USEENV /MAKE \
651 "BuildBin - Win32 $(LONG)" $(CTARGET)
653 !IF "$(CTARGET)" == "/CLEAN"
654 !IF EXIST("srclib\apr-iconv")
656 @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
657 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
661 !IF EXIST("srclib\openssl")
662 @msdev $(TLP).dsw /USEENV /MAKE \
663 "mod_ssl - Win32 $(LONG)" \
664 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
666 !IF EXIST("srclib\zlib")
667 @msdev $(TLP).dsw /USEENV /MAKE \
668 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
670 !IF EXIST("srclib\lua")
671 @msdev $(TLP).dsw /USEENV /MAKE \
672 "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
674 !IF EXIST("srclib\libxml2")
675 @msdev $(TLP).dsw /USEENV /MAKE \
676 "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET)
677 @msdev $(TLP).dsw /USEENV /MAKE \
678 "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET)
685 copy $(LONG)\httpd.$(src_exe) "$(inst_exe)" <.y
686 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
687 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
688 !IF EXIST("srclib\apr-util")
689 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
690 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
691 copy srclib\apr-util\ldap\$(LONG)\apr_ldap-1.$(src_dll) "$(inst_dll)" <.y
693 for %d in (odbc $(DBD_LIST)) do ( \
694 copy srclib\$(UTILDIR)\dbd\$(LONG)\apr_dbd_%d-1.$(src_dll) "$(inst_dll)" <.y \
696 for %d in ($(DBM_LIST) x) do if not %d == x ( \
697 copy srclib\$(UTILDIR)\dbm\$(LONG)\apr_dbm_%d-1.$(src_dll) "$(inst_dll)" <.y \
699 !IF EXIST("srclib\serf")
700 copy srclib\serf\$(LONG)\libserf.$(src_dll) "$(inst_dll)" <.y
702 copy srclib\pcre\pcre.$(src_dll) "$(inst_dll)" <.y
703 copy modules\aaa\$(LONG)\mod_access_compat.$(src_so) "$(inst_so)" <.y
704 copy modules\aaa\$(LONG)\mod_allowhandlers.$(src_so) "$(inst_so)" <.y
705 copy modules\aaa\$(LONG)\mod_allowmethods.$(src_so) "$(inst_so)" <.y
706 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
707 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
708 copy modules\aaa\$(LONG)\mod_auth_form.$(src_so) "$(inst_so)" <.y
709 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
710 copy modules\aaa\$(LONG)\mod_authn_core.$(src_so) "$(inst_so)" <.y
711 copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so) "$(inst_so)" <.y
712 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
713 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
714 copy modules\aaa\$(LONG)\mod_authn_socache.$(src_so) "$(inst_so)" <.y
715 copy modules\aaa\$(LONG)\mod_authnz_ldap.$(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_dbd.$(src_so) "$(inst_so)" <.y
718 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
719 copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y
720 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
721 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
722 copy modules\aaa\$(LONG)\mod_authz_owner.$(src_so) "$(inst_so)" <.y
723 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
724 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
725 copy modules\cache\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
726 copy modules\cache\$(LONG)\mod_cache_disk.$(src_so) "$(inst_so)" <.y
727 copy modules\cache\$(LONG)\mod_cache_socache.$(src_so) "$(inst_so)" <.y
728 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
729 copy modules\cache\$(LONG)\mod_socache_dbm.$(src_so) "$(inst_so)" <.y
730 # copy modules\cache\$(LONG)\mod_socache_dc.$(src_so) "$(inst_so)" <.y
731 copy modules\cache\$(LONG)\mod_socache_memcache.$(src_so) "$(inst_so)" <.y
732 copy modules\cache\$(LONG)\mod_socache_shmcb.$(src_so) "$(inst_so)" <.y
733 copy modules\core\$(LONG)\mod_watchdog.$(src_so) "$(inst_so)" <.y
734 copy modules\cluster\$(LONG)\mod_heartbeat.$(src_so) "$(inst_so)" <.y
735 copy modules\cluster\$(LONG)\mod_heartmonitor.$(src_so) "$(inst_so)" <.y
736 copy modules\database\$(LONG)\mod_dbd.$(src_so) "$(inst_so)" <.y
737 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
738 copy modules\dav\lock\$(LONG)\mod_dav_lock.$(src_so) "$(inst_so)" <.y
739 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
741 copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so) "$(inst_so)" <.y
743 copy modules\debugging\$(LONG)\mod_dumpio.$(src_so) "$(inst_so)" <.y
745 copy modules\echo\$(LONG)\mod_echo.$(src_so) "$(inst_so)" <.y
746 copy modules\examples\$(LONG)\mod_case_filter.$(src_so) "$(inst_so)" <.y
747 copy modules\examples\$(LONG)\mod_case_filter_in.$(src_so) "$(inst_so)" <.y
748 copy modules\examples\$(LONG)\mod_example_hooks.$(src_so) "$(inst_so)" <.y
749 copy modules\examples\$(LONG)\mod_example_ipc.$(src_so) "$(inst_so)" <.y
751 copy modules\filters\$(LONG)\mod_buffer.$(src_so) "$(inst_so)" <.y
752 copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
753 copy modules\filters\$(LONG)\mod_data.$(src_so) "$(inst_so)" <.y
754 !IF EXIST("srclib\zlib")
755 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
756 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
757 copy srclib\zlib\zlib1.$(src_dll) "$(inst_dll)" <.y
760 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
761 copy modules\filters\$(LONG)\mod_filter.$(src_so) "$(inst_so)" <.y
762 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
763 !IF EXIST("srclib\libxml2")
764 copy modules\filters\$(LONG)\mod_proxy_html.$(src_so) "$(inst_so)" <.y
765 copy modules\filters\$(LONG)\mod_xml2enc.$(src_so) "$(inst_so)" <.y
766 !IF EXIST("srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll)")
767 copy srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll) "$(inst_dll)" <.y
770 copy modules\filters\$(LONG)\mod_ratelimit.$(src_so) "$(inst_so)" <.y
771 copy modules\filters\$(LONG)\mod_reflector.$(src_so) "$(inst_so)" <.y
772 copy modules\filters\$(LONG)\mod_reqtimeout.$(src_so) "$(inst_so)" <.y
773 copy modules\filters\$(LONG)\mod_request.$(src_so) "$(inst_so)" <.y
774 copy modules\filters\$(LONG)\mod_sed.$(src_so) "$(inst_so)" <.y
775 copy modules\filters\$(LONG)\mod_substitute.$(src_so) "$(inst_so)" <.y
776 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
777 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
778 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
779 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
780 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
781 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
782 copy modules\ldap\$(LONG)\mod_ldap.$(src_so) "$(inst_so)" <.y
783 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
784 copy modules\loggers\$(LONG)\mod_log_debug.$(src_so) "$(inst_so)" <.y
785 copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
786 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
787 !IF EXIST("srclib\lua")
788 copy modules\lua\$(LONG)\mod_lua.$(src_so) "$(inst_so)" <.y
789 !IF EXIST("srclib\lua\src\lua51.$(src_dll)")
790 copy srclib\lua\src\lua51.$(src_dll) "$(inst_dll)" <.y
793 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
794 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
795 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
796 copy modules\mappers\$(LONG)\mod_imagemap.$(src_so) "$(inst_so)" <.y
797 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
798 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
799 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
800 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
801 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
802 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
803 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
804 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
805 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
806 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
807 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
808 copy modules\metadata\$(LONG)\mod_remoteip.$(src_so) "$(inst_so)" <.y
809 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
810 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
811 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
812 copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y
813 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
814 copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so) "$(inst_so)" <.y
815 copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
816 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
817 copy modules\proxy\$(LONG)\mod_proxy_express.$(src_so) "$(inst_so)" <.y
818 copy modules\proxy\$(LONG)\mod_proxy_fcgi.$(src_so) "$(inst_so)" <.y
819 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
820 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
821 copy modules\proxy\$(LONG)\mod_proxy_scgi.$(src_so) "$(inst_so)" <.y
822 !IF EXIST("srclib\serf")
823 copy modules\proxy\$(LONG)\mod_serf.$(src_so) "$(inst_so)" <.y
825 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bybusyness.$(src_so) "$(inst_so)" <.y
826 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_byrequests.$(src_so) "$(inst_so)" <.y
827 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bytraffic.$(src_so) "$(inst_so)" <.y
828 copy modules\proxy\balancers\$(LONG)\mod_lbmethod_heartbeat.$(src_so) "$(inst_so)" <.y
830 copy modules\proxy\examples\$(LONG)\mod_lbmethod_rr.$(src_so) "$(inst_so)" <.y
832 copy modules\session\$(LONG)\mod_session.$(src_so) "$(inst_so)" <.y
833 copy modules\session\$(LONG)\mod_session_cookie.$(src_so) "$(inst_so)" <.y
834 copy modules\session\$(LONG)\mod_session_dbd.$(src_so) "$(inst_so)" <.y
835 copy modules\slotmem\$(LONG)\mod_slotmem_plain.$(src_so) "$(inst_so)" <.y
836 copy modules\slotmem\$(LONG)\mod_slotmem_shm.$(src_so) "$(inst_so)" <.y
837 !IF EXIST("srclib\openssl")
838 # copy modules\session\$(LONG)\mod_session_crypto.$(src_so) "$(inst_so)" <.y
839 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
840 -copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
841 -copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
842 -copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
843 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)" <.y
845 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
846 # copy support\$(LONG)\fcgistarter.$(src_exe) "$(inst_exe)" <.y
847 copy support\$(LONG)\htcacheclean.$(src_exe) "$(inst_exe)" <.y
848 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
849 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
850 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
851 copy support\$(LONG)\httxt2dbm.$(src_exe) "$(inst_exe)" <.y
852 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
853 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
854 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
855 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
858 # First we create the tree and populate the README so that
859 # whatever happens, all licensing has already propagated.
860 # Then repeatedly invoke the _copybin build to copy the
861 # real binaries, then pdb symbols, anf finally dbg syms.
862 # Then hit docs of various sorts, then includes and libs,
863 # and finally do the .conf magic.
869 -mkdir "$(INSTDIR)\bin"
870 !IF EXIST("srclib\apr-util")
871 -mkdir "$(INSTDIR)\bin\iconv"
873 -mkdir "$(INSTDIR)\cgi-bin"
874 -mkdir "$(INSTDIR)\conf"
875 -mkdir "$(INSTDIR)\conf\extra"
876 -mkdir "$(INSTDIR)\conf\original"
877 -mkdir "$(INSTDIR)\conf\original\extra"
878 -mkdir "$(INSTDIR)\error"
879 -mkdir "$(INSTDIR)\htdocs"
880 -mkdir "$(INSTDIR)\manual"
881 -mkdir "$(INSTDIR)\icons"
882 -mkdir "$(INSTDIR)\include"
883 -mkdir "$(INSTDIR)\lib"
884 -mkdir "$(INSTDIR)\logs"
885 -mkdir "$(INSTDIR)\modules"
886 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
887 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
888 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
889 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
890 copy NOTICE "$(INSTDIR)\NOTICE.txt" <.y
891 copy README "$(INSTDIR)\README.txt" <.y
892 type << >> "$(INSTDIR)\NOTICE.txt"
894 Regular expression support is provided by the PCRE library package,
895 which is open source software, written by Philip Hazel, and copyright
896 by the University of Cambridge, England. The original software is
898 ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
900 -awk -f <<script1.awk < "srclib\pcre\LICENCE" >> "$(INSTDIR)\LICENSE.txt"
903 print "For the pcre.dll component:";
905 while ( getline > 0 ) {
906 if ( $$0 ~ /^End$$/ ) $$0 = "END OF PCRE LICENSE";
911 !IF EXIST("srclib\openssl")
912 -copy srclib\openssl\apps\openssl.cnf "$(INSTDIR)\conf\openssl.cnf" <.y
913 type << >> "$(INSTDIR)\NOTICE.txt"
915 This binary distribution includes cryptographic software written by
916 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
917 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
918 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
920 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
923 print "For the libeay32.dll, ssleay32.dll and openssl.exe components:";
925 while ( getline > 0 ) {
930 copy << "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
932 Apache HTTP Server 2.5 Limited OpenSSL Distribution
934 This binary distribution includes the minimal components of OpenSSL required
935 to support mod_ssl for Apache HTTP Server version 2.5 (details are listed
936 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
937 versions of OpenSSL, please refer to the definative source,
938 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
939 full binary or source distribution package from <http://www.openssl.org/>.
941 These OpenSSL binaries were built for distribution from the U.S. without
942 support for the patented encryption methods IDEA, MDC-2 or RC5.
944 --------------------------------------------------------------------------------
947 -copy "$(INSTDIR)\OPENSSL-NEWS.txt" \
948 + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt"
949 copy << "$(INSTDIR)\OPENSSL-README.txt" <.y
951 Apache HTTP Server 2.5 Limited OpenSSL Distribution
953 This binary installation of OpenSSL is a limited distribution of the
954 files derived from the OpenSSL project:
956 LICENSE.txt (includes openssl LICENSE)
964 These are the minimal libraries and tools required to use mod_ssl as
965 distributed with Apache HTTP Server version 2.5. No library link files,
966 headers or sources are distributed with this binary distribution. Please
967 refer to the <http://www.openssl.org/> site for complete source or binary
970 These OpenSSL binaries were built for distribution from the U.S. without
971 support for the patented encryption methods IDEA, MDC-2 or RC5.
973 The Apache HTTP Project only supports the binary distribution of these files
974 and development of the mod_ssl module. We cannot provide support assistance
975 for using or configuring the OpenSSL package or these modules. Please refer
976 all installation and configuration questions to the appropriate forum,
977 such as the user supported lists, <http://httpd.apache.org/userslist.html>
978 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
979 OpenSSL support page.
981 --------------------------------------------------------------------------------
984 -copy "$(INSTDIR)\OPENSSL-README.txt" \
985 + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt"
987 !IF EXIST("srclib\zlib")
988 type << >> "$(INSTDIR)\NOTICE.txt"
990 This binary distribution of mod_deflate.so includes zlib compression code
991 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
992 and Mark Adler (madler@alumni.caltech.edu) .
994 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
996 while ( getline > 0 ) {
997 if ( $$0 ~ /Copyright notice:/ ) {
999 print "For the mod_deflate zlib compression component:";
1000 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
1010 !IF EXIST("srclib\lua")
1011 type << >> "$(INSTDIR)\NOTICE.txt"
1013 This binary distribution of mod_lua.so includes the Lua language,
1014 developed at Lua.org, a laboratory of the Department of Computer Science
1015 of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro in Brazil).
1016 For complete information, visit Lua's web site at http://www.lua.org/
1018 -awk -f <<script.awk < "srclib\lua\COPYRIGHT" >> "$(INSTDIR)\LICENSE.txt"
1021 print "For the mod_lua language component:";
1023 while ( getline > 0 && $$0 !~ /end of COPYRIGHT/ ) {
1030 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1031 _copybin src_exe=exe src_dll=dll src_so=so \
1032 inst_exe="$(INSTDIR)\bin" \
1033 inst_dll="$(INSTDIR)\bin" \
1034 inst_so="$(INSTDIR)\modules"
1035 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1036 _copybin src_exe=pdb src_dll=pdb src_so=pdb \
1037 inst_exe="$(INSTDIR)\bin" \
1038 inst_dll="$(INSTDIR)\bin" \
1039 inst_so="$(INSTDIR)\modules"
1040 !IF EXIST("srclib\apr-util")
1042 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
1043 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
1044 INSTALL_DIR="$(INSTDIR)\bin\iconv"
1047 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
1048 copy docs\cgi-examples\printenv.vbs "$(INSTDIR)\cgi-bin\printenv.vbs" <.y
1049 copy docs\cgi-examples\printenv.wsf "$(INSTDIR)\cgi-bin\printenv.wsf" <.y
1050 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
1051 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
1052 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
1053 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
1055 srclib\expat\lib\expat.h \
1056 srclib\apr-util\xml\expat\lib\expat.h \
1057 srclib\apr\include\*.h \
1058 srclib\apr-util\include\*.h \
1059 !IF EXIST("srclib\serf")
1064 modules\cache\mod_cache.h \
1065 modules\core\mod_so.h \
1066 modules\core\mod_watchdog.h \
1067 modules\database\mod_dbd.h \
1068 modules\dav\main\mod_dav.h \
1069 modules\filters\mod_include.h \
1070 modules\generators\mod_cgi.h \
1071 modules\generators\mod_status.h \
1072 modules\loggers\mod_log_config.h \
1073 modules\mappers\mod_rewrite.h \
1074 modules\proxy\mod_proxy.h \
1075 modules\proxy\mod_serf.h \
1076 modules\ssl\mod_ssl.h \
1078 @copy %f "$(INSTDIR)\include" < .y > nul
1079 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
1080 copy srclib\apr\Lib$(SHORT)\apr-1.pdb "$(INSTDIR)\lib" <.y
1081 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
1082 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
1083 !IF EXIST("srclib\apr-util")
1084 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
1085 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.pdb "$(INSTDIR)\lib" <.y
1086 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
1087 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.pdb "$(INSTDIR)\lib" <.y
1088 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
1089 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
1090 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
1091 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
1093 copy srclib\expat\win32\$(LONG)\libexpatMT.lib "$(INSTDIR)\lib" <.y
1094 copy srclib\expat\win32\$(LONG)\libexpatMT.exp "$(INSTDIR)\lib" <.y
1095 copy srclib\expat\win32\$(LONG)\libexpat.lib "$(INSTDIR)\lib" <.y
1096 copy srclib\expat\win32\$(LONG)\libexpat.exp "$(INSTDIR)\lib" <.y
1097 copy srclib\expat\win32\$(LONG)\libexpat.dll "$(INSTDIR)\bin" <.y
1099 !IF EXIST("srclib\serf")
1100 copy srclib\serf\$(LONG)\libserf.lib "$(INSTDIR)\lib" <.y
1101 copy srclib\serf\$(LONG)\libserf.exp "$(INSTDIR)\lib" <.y
1103 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
1104 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
1105 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
1106 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
1107 for %f in ( charset.conv magic mime.types ) do ( \
1108 copy docs\conf\%f "$(INSTDIR)\conf\original\%f" <.y )
1109 awk -f build\installwinconf.awk $(DOMAINNAME) $(SERVERNAME) \
1110 $(SERVERADMIN) $(PORT) $(SSLPORT) "$(INSTDIR) " docs/conf/
1111 copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl"
1112 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
1113 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
1114 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
1116 if ( $$0 !~ /^#!@perlbin@/ )
1123 _fixshebang: _install
1124 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
1126 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
1127 gsub( /\\/, "/", perlroot );
1128 print "#!" perlroot;
1132 if ( $$0 !~ /^#!/ ) {
1137 -cscript -nologo <<script.vbs "docs/cgi-examples/printenv.vbs" "$(INSTDIR)\cgi-bin\printenv.vbs"
1139 Set fso = CreateObject("Scripting.FileSystemObject")
1140 Set f = fso.OpenTextFile(WScript.Arguments(0), 1)
1144 Set f = fso.OpenTextFile(WScript.Arguments(1), 2, TRUE)
1145 f.WriteLine "'!" & Replace(WScript.FullName, "\", "/") & " -nologo"
1149 -cscript -nologo <<script.vbs "docs/cgi-examples/printenv.wsf" "$(INSTDIR)\cgi-bin\printenv.wsf"
1151 Set fso = CreateObject("Scripting.FileSystemObject")
1152 Set f = fso.OpenTextFile(WScript.Arguments(0), 1)
1156 Set f = fso.OpenTextFile(WScript.Arguments(1), 2, TRUE)
1157 f.WriteLine "'!" & Replace(WScript.FullName, "\", "/") & " -nologo"