1 # Makefile for Windows NT and Windows 95/98/2000
4 # _apacher - build Apache in Release mode
5 # _apached - 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 # SERVERNAME localhost
23 # nmake -f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
25 # Be aware that certain awk's will not accept backslahed names,
26 # so the server root should be given in forward slashes (quoted),
27 # preferably with the drive designation!
31 !IF ("$(CTARGET)" == "") && !EXIST("httpd.mak") && EXIST("Apache.sln")
35 !IF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
36 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
37 !MESSAGE sources (apr, apr-iconv and apr-util) into your srclib dir.
38 !MESSAGE Apache cannot build without these libraries!
40 !ERROR Need srclib\ apr, apr-iconv and apr-util
43 # Note; _tryssl: is only used by the msvc developer studio environment to 'fix up'
44 # the build, since conditional dependencies aren't supported.
46 !IF EXIST("srclib\openssl")
47 !IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe")
54 !IF EXIST("modules\ssl\mod_ssl.mak")
56 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
59 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
61 !ELSEIF EXIST("Apache.sln")
62 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
63 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
65 @msdev Apache.dsw /USEENV /MAKE \
66 "mod_ssl - Win32 $(LONG)" \
67 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
71 # NOT EXIST("srclib\openssl")
75 @echo mod_ssl and ab/ssl will not build unless openssl is installed
76 @echo in srclib\openssl. They must be precompiled using the
77 @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32. The most
78 @echo recent version confirmed to build with mod_ssl and ab is 0.9.8d.
79 @echo Available from http://www.openssl.org/
82 !IF EXIST("srclib\zlib")
85 !IF EXIST("modules\filters\mod_deflate.mak")
87 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
89 !ELSEIF EXIST("Apache.sln")
90 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
92 @msdev Apache.dsw /USEENV /MAKE \
93 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
97 # NOT EXIST("srclib\zlib")
101 @echo mod_deflate will not build unless zlib is installed in srclib\zlib.
102 @echo Version 1.2.1 and later available from http://www.gzip.org/zlib/
103 @echo built w/ nmake -f win32/Makefile.msc will satisfy this requirement.
107 !IF "$(INSTDIR)" == ""
110 !IF "$(SERVERNAME)" == ""
116 !IF "$(SSLPORT)" == ""
122 !MESSAGE INSTDIR = $(INSTDIR)
123 !MESSAGE SERVERNAME = $(SERVERNAME)
124 !MESSAGE PORT = $(PORT)
125 !IF EXIST("srclib\openssl")
126 !MESSAGE SSLPORT = $(SSLPORT)
129 !MESSAGE To change these options use 'nmake -f Makefile.win [option=value]'
130 !MESSAGE Example: nmake -f Makefile.win PORT=8080
136 # Only default the behavior if MAKEOPT= is omitted
138 # Microsoft NMake options
140 !ELSEIF "$(MAKE)" == "make"
141 # Borland make options? Not really supported (yet)
150 bscmake.exe -nologo -Iu -o Apache.bsc *.sbr
154 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
157 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build
160 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
163 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build _install
165 clean: _cleanr _cleand
166 -if exist Browse\. rd /s Browse < << > nul
170 !IF EXIST("httpd.mak")
173 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
176 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET=CLEAN _build
179 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
181 $(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
182 $(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
185 $(MAKE) $(MAKEOPT) -f apriconv.mak CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
186 $(MAKE) $(MAKEOPT) -f libapriconv.mak CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
187 !IF "$(CTARGET)" == "CLEAN"
188 $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
189 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
192 $(MAKE) $(MAKEOPT) -f Makefile.win all \
193 BUILD_MODE=$(LONG) BIND_MODE=shared
195 $(MAKE) $(MAKEOPT) -f Makefile.win all \
196 BUILD_MODE=$(LONG) BIND_MODE=shared
200 cd srclib\apr-util\xml\expat\lib
201 $(MAKE) $(MAKEOPT) -f xml.mak CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
203 $(MAKE) $(MAKEOPT) -f aprutil.mak CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
204 $(MAKE) $(MAKEOPT) -f libaprutil.mak CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
207 $(MAKE) $(MAKEOPT) -f dftables.mak CFG="dftables - Win32 $(LONG)" RECURSE=0 $(CTARGET)
208 $(MAKE) $(MAKEOPT) -f pcre.mak CFG="pcre - Win32 $(LONG)" RECURSE=0 $(CTARGET)
211 $(MAKE) $(MAKEOPT) -f gen_test_char.mak CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
213 $(MAKE) $(MAKEOPT) -f libhttpd.mak CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
214 $(MAKE) $(MAKEOPT) -f httpd.mak CFG="httpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
215 # build ldap prior to authnz_ldap
217 $(MAKE) $(MAKEOPT) -f mod_ldap.mak CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
220 $(MAKE) $(MAKEOPT) -f mod_dbd.mak CFG="mod_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
223 $(MAKE) $(MAKEOPT) -f mod_access_compat.mak CFG="mod_access_compat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
224 $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
225 $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
226 $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
227 $(MAKE) $(MAKEOPT) -f mod_authn_core.mak CFG="mod_authn_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
228 $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
229 $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
230 $(MAKE) $(MAKEOPT) -f mod_authn_default.mak CFG="mod_authn_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
231 $(MAKE) $(MAKEOPT) -f mod_authn_file.mak CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
232 $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
233 $(MAKE) $(MAKEOPT) -f mod_authz_core.mak CFG="mod_authz_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
234 $(MAKE) $(MAKEOPT) -f mod_authz_default.mak CFG="mod_authz_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
235 $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
236 $(MAKE) $(MAKEOPT) -f mod_authz_host.mak CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
237 $(MAKE) $(MAKEOPT) -f mod_authz_user.mak CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
238 $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
240 cd modules\arch\win32
241 $(MAKE) $(MAKEOPT) -f mod_isapi.mak CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
244 $(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
245 $(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
246 $(MAKE) $(MAKEOPT) -f mod_mem_cache.mak CFG="mod_mem_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
247 $(MAKE) $(MAKEOPT) -f mod_disk_cache.mak CFG="mod_disk_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
250 $(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
253 $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
256 $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
257 $(MAKE) $(MAKEOPT) -f mod_dumpio.mak CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
259 cd modules\experimental
262 $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
263 !IF EXIST("srclib\zlib")
264 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
266 $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
267 $(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
269 cd modules\generators
270 $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
271 $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
272 $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
273 $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
274 $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
277 $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
280 $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
281 $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
282 $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
285 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
286 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
287 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
288 $(MAKE) $(MAKEOPT) -f mod_imagemap.mak CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
289 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
290 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
291 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
292 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
293 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
296 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
297 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
298 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
299 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
300 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
301 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
302 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
303 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
304 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
305 $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
308 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
309 $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
310 $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
311 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
312 $(MAKE) $(MAKEOPT) -f mod_proxy_fcgi.mak CFG="mod_proxy_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
313 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
314 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
316 !IF EXIST("srclib\openssl")
318 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
321 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
325 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
326 $(MAKE) $(MAKEOPT) -f htcacheclean.mak CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET)
327 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
328 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
329 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
330 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
331 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
334 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
335 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
338 !ELSEIF EXIST("Apache.sln")
341 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
344 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
347 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
348 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildBin
349 !IF EXIST("srclib\openssl")
350 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
351 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
353 !IF EXIST("srclib\zlib")
354 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
360 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
363 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
366 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
367 @msdev Apache.dsw /USEENV /MAKE \
368 "BuildBin - Win32 $(LONG)" $(CTARGET)
369 !IF "$(CTARGET)" == "/CLEAN"
371 @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
372 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
375 !IF EXIST("srclib\openssl")
376 @msdev Apache.dsw /USEENV /MAKE \
377 "mod_ssl - Win32 $(LONG)" \
378 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
380 !IF EXIST("srclib\zlib")
381 @msdev Apache.dsw /USEENV /MAKE \
382 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
389 copy $(LONG)\httpd.$(src_exe) "$(inst_exe)" <.y
390 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
391 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
392 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
393 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
394 copy modules\aaa\$(LONG)\mod_access_compat.$(src_so) "$(inst_so)" <.y
395 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
396 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
397 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
398 copy modules\aaa\$(LONG)\mod_authn_core.$(src_so) "$(inst_so)" <.y
399 copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so) "$(inst_so)" <.y
400 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
401 copy modules\aaa\$(LONG)\mod_authn_default.$(src_so) "$(inst_so)" <.y
402 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
403 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
404 copy modules\aaa\$(LONG)\mod_authz_core.$(src_so) "$(inst_so)" <.y
405 copy modules\aaa\$(LONG)\mod_authz_default.$(src_so) "$(inst_so)" <.y
406 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
407 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
408 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
409 copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so) "$(inst_so)" <.y
410 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
411 copy modules\cache\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
412 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
413 copy modules\cache\$(LONG)\mod_mem_cache.$(src_so) "$(inst_so)" <.y
414 copy modules\cache\$(LONG)\mod_disk_cache.$(src_so) "$(inst_so)" <.y
415 copy modules\database\$(LONG)\mod_dbd.$(src_so) "$(inst_so)" <.y
416 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
417 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
418 copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so) "$(inst_so)" <.y
419 copy modules\debugging\$(LONG)\mod_dumpio.$(src_so) "$(inst_so)" <.y
420 copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
421 !IF EXIST("srclib\zlib")
422 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
423 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
424 copy srclib\zlib\zlib1.$(src_dll) "$(inst_dll)" <.y
427 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
428 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
429 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
430 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
431 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
432 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
433 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
434 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
435 copy modules\ldap\$(LONG)\mod_ldap.$(src_so) "$(inst_so)" <.y
436 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
437 copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
438 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
439 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
440 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
441 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
442 copy modules\mappers\$(LONG)\mod_imagemap.$(src_so) "$(inst_so)" <.y
443 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
444 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
445 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
446 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
447 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
448 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
449 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
450 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
451 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
452 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
453 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
454 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
455 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
456 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
457 copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y
458 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
459 copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so) "$(inst_so)" <.y
460 copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
461 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
462 copy modules\proxy\$(LONG)\mod_proxy_fcgi.$(src_so) "$(inst_so)" <.y
463 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
464 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
465 !IF EXIST("srclib\openssl")
466 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
467 $(quiet)copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
468 $(quiet)copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
469 $(quiet)copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
470 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)\ab.$(src_exe)" <.y
472 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
474 copy support\$(LONG)\htcacheclean.$(src_exe) "$(inst_exe)" <.y
475 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
476 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
477 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
478 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
479 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
480 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
481 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
484 # First we create the tree and populate the README so that
485 # whatever happens, all licensing has already propagated.
486 # Then repeatedly invoke the _copybin build to copy the
487 # real binaries, then pdb symbols, anf finally dbg syms.
488 # Then hit docs of various sorts, then includes and libs,
489 # and finally do the .conf magic.
495 -mkdir "$(INSTDIR)\bin"
496 -mkdir "$(INSTDIR)\bin\iconv"
497 -mkdir "$(INSTDIR)\cgi-bin"
498 -mkdir "$(INSTDIR)\conf"
499 -mkdir "$(INSTDIR)\conf\extra"
500 -mkdir "$(INSTDIR)\error"
501 -mkdir "$(INSTDIR)\htdocs"
502 -mkdir "$(INSTDIR)\manual"
503 -mkdir "$(INSTDIR)\icons"
504 -mkdir "$(INSTDIR)\include"
505 -mkdir "$(INSTDIR)\lib"
506 -mkdir "$(INSTDIR)\logs"
507 -mkdir "$(INSTDIR)\modules"
508 -mkdir "$(INSTDIR)\proxy"
509 -mkdir "$(INSTDIR)\symbols"
510 -mkdir "$(INSTDIR)\symbols\exe"
511 -mkdir "$(INSTDIR)\symbols\dll"
512 -mkdir "$(INSTDIR)\symbols\so"
513 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
514 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
515 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
516 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
517 copy NOTICE "$(INSTDIR)\NOTICE.txt" <.y
518 copy README "$(INSTDIR)\README.txt" <.y
519 !IF EXIST("srclib\openssl")
520 copy srclib\openssl\apps\openssl.cnf "$(INSTDIR)\conf\openssl.cnf" <.y
521 type << >> "$(INSTDIR)\NOTICE.txt"
523 This binary distribution includes cryptographic software written by
524 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
525 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
526 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
528 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
531 print "For the libeay32.dll, ssleay32.dll and certtool.exe components:";
533 while ( getline > 0 ) {
538 copy << + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
540 Apache HTTP Server 2.3 Limited OpenSSL Distribution
542 This binary distribution includes the minimal components of OpenSSL required
543 to support mod_ssl for Apache HTTP Server version 2.3 (details are listed
544 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
545 versions of OpenSSL, please refer to the definative source,
546 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
547 full binary or source distribution package from <http://www.openssl.org/>.
549 These OpenSSL binaries were built for distribution from the U.S. without
550 support for the patented encryption methods IDEA, MDC-2 or RC5.
552 --------------------------------------------------------------------------------
554 copy << + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt" <.y
556 Apache HTTP Server 2.3 Limited OpenSSL Distribution
558 This binary installation of OpenSSL is a limited distribution of the
559 files derived from the OpenSSL project:
569 These are the minimal libraries and tools required to use mod_ssl as
570 distributed with Apache HTTP Server version 2.3. No library link files,
571 headers or sources are distributed with this binary distribution. Please
572 refer to the <http://www.openssl.org/> site for complete source or binary
575 These OpenSSL binaries were built for distribution from the U.S. without
576 support for the patented encryption methods IDEA, MDC-2 or RC5.
578 The Apache HTTP Project only supports the binary distribution of these files
579 and development of the mod_ssl module. We cannot provide support assistance
580 for using or configuring the OpenSSL package or these modules. Please refer
581 all installation and configuration questions to the appropriate forum,
582 such as the user supported lists, <http://httpd.apache.org/userslist.html>
583 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
584 OpenSSL support page.
586 --------------------------------------------------------------------------------
589 !IF EXIST("srclib\zlib")
590 type << >> "$(INSTDIR)\NOTICE.txt"
592 This binary distribution of mod_deflate.so includes zlib compression code
593 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
594 and Mark Adler (madler@alumni.caltech.edu) .
596 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
598 while ( getline > 0 ) {
599 if ( $$0 ~ /Copyright notice:/ ) {
601 print "For the mod_deflate zlib compression component:";
602 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
612 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
613 _copybin src_exe=exe src_dll=dll src_so=so \
614 inst_exe="$(INSTDIR)\bin" \
615 inst_dll="$(INSTDIR)\bin" \
616 inst_so="$(INSTDIR)\modules"
617 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
618 _copybin src_exe=pdb src_dll=pdb src_so=pdb quiet="-" \
619 inst_exe="$(INSTDIR)\bin" \
620 inst_dll="$(INSTDIR)\bin" \
621 inst_so="$(INSTDIR)\modules"
623 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
624 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
625 INSTALL_DIR="$(INSTDIR)\bin\iconv"
627 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
628 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
630 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
631 gsub( /\\/, "/", perlroot );
636 if ( $$0 !~ /^#!/ ) {
641 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
642 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
643 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
644 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
645 xcopy srclib\apr-util\xml\expat\lib\expat.h "$(INSTDIR)\include" /d < .a
646 xcopy srclib\apr\include\*.h "$(INSTDIR)\include" /d < .a
647 xcopy srclib\apr-util\include\*.h "$(INSTDIR)\include" /d < .a
648 xcopy include\*.h "$(INSTDIR)\include" /d < .a
649 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
650 copy srclib\apr\Lib$(SHORT)\apr_src.pdb "$(INSTDIR)\lib" <.y
651 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
652 copy srclib\apr-util\Lib$(SHORT)\aprutil_src.pdb "$(INSTDIR)\lib" <.y
653 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
654 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml_src.pdb "$(INSTDIR)\lib" <.y
655 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
656 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
657 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
658 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
659 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
660 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
661 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
662 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
663 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
664 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
666 for %f in ( charset.conv magic mime.types ) do ( \
667 copy docs\conf\%f "$(INSTDIR)\conf\%f.default" <.y && \
668 if not exist "$(INSTDIR)\conf\%f" \
669 copy "$(INSTDIR)\conf\%f.default" "$(INSTDIR)\conf\%f" \
671 copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.conf.default" <.y
672 -awk -f <<script.awk "docs/conf/httpd-win.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\httpd.conf.default"
674 serverroot = ARGV[2];
676 gsub( /\\/, "/", serverroot );
678 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
681 gsub( /@@ServerRoot@@/, serverroot );
682 gsub( /@@ServerName@@/, "$(SERVERNAME)" );
683 gsub( /@@Port@@/, "$(PORT)" );
687 if not exist "$(INSTDIR)\conf\httpd.conf" \
688 copy "$(INSTDIR)\conf\httpd.conf.default" "$(INSTDIR)\conf\httpd.conf"
689 for %f in ( docs\conf\extra\*.in ) do ( \
690 copy %f "$(INSTDIR)\conf\extra\%~nf.default" <.y && \
691 awk -f <<script.awk "docs/conf/extra/%~nf.in" "$(INSTDIR)" > "$(INSTDIR)\conf\extra\%~nf.default" )
693 serverroot = ARGV[2];
695 gsub( /\\/, "/", serverroot );
697 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
700 gsub( /SSLMutex file:@exp_runtimedir@\/ssl_mutex/, "SSLMutex default" );
701 gsub( /@@ServerRoot@@/, serverroot );
702 gsub( /@exp_cgidir@/, serverroot "/cgi-bin" );
703 gsub( /@exp_sysconfdir@/, serverroot "/conf" );
704 gsub( /@exp_errordir@/, serverroot "/error" );
705 gsub( /@exp_htdocsdir@/, serverroot "/htdocs" );
706 gsub( /@exp_iconsdir@/, serverroot "/icons" );
707 gsub( /@exp_logfiledir@/, serverroot "/logs" );
708 gsub( /@exp_runtimedir@/, serverroot "/logs" );
709 gsub( /@exp_manualdir@/, serverroot "/manual" );
710 gsub( /@rel_runtimedir@/, "logs" );
711 gsub( /@rel_logfiledir@/, "logs" );
712 gsub( /\/home\/\*\/public_html/, "\"C:/Documents and Settings/*/My Documents/My Website\"" );
713 gsub( /UserDir public_html/, "UserDir \"My Documents/My Website\"" );
714 gsub( /@@ServerName@@/, "$(SERVERNAME)" );
715 gsub( /@@Port@@/, "$(PORT)" );
716 gsub( /443/, "$(SSLPORT)" );
720 for %f in ( docs\conf\extra\*.in ) do ( \
721 if not exist "$(INSTDIR)\conf\extra\%~nf" \
722 copy "$(INSTDIR)\conf\extra\%~nf.default" "$(INSTDIR)\conf\extra\%~nf" \
724 copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl"
725 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
726 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
727 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
729 if ( $$0 !~ /^#!@perlbin@/ )