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;
18 # SERVERNAME localhost
22 # nmake /f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
24 # Be aware that certain awk's will not accept backslahed names,
25 # so the server root should be given in forward slashes (quoted),
26 # preferably with the drive designation!
30 !IF ("$(CTARGET)" == "") && EXIST("Apache.sln")
34 !IF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
35 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
36 !MESSAGE sources (apr, apr-iconv and apr-util) into your $(INSTDIR)\srclib dir.
37 !MESSAGE Apache cannot build without these libraries!
39 !ERROR Need $(INSTDIR)\srclib\ apr, apr-iconv and apr-util
42 # Note; _tryssl: is only used by the msvc developer studio environment to 'fix up'
43 # the build, since conditional dependencies aren't supported.
45 !IF EXIST("srclib\openssl")
46 !IF "$(LONG)" == "Debug"
53 !IF EXIST("modules\ssl\mod_ssl.mak")
55 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 .\$(LONG)\mod_ssl.so
58 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 .\$(LONG)\abs.exe
60 !ELSEIF EXIST("Apache.sln")
61 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
62 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
64 @msdev Apache.dsw /USEENV /MAKE \
65 "mod_ssl - Win32 $(LONG)" \
66 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
70 # NOT EXIST("srclib\openssl")
74 @echo mod_ssl and ab/ssl will not build unless openssl is installed
75 @echo in srclib\openssl. They must be precompiled using the
76 @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32. The most
77 @echo recent version confirmed to build with mod_ssl and ab is 0.9.6h.
78 @echo Available from http://www.openssl.org/
81 !IF EXIST("srclib\zlib")
84 !IF EXIST("modules\filters\mod_deflate.mak")
86 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 .\$(LONG)\mod_deflate.so
88 !ELSEIF EXIST("Apache.sln")
89 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
91 @msdev Apache.dsw /USEENV /MAKE \
92 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
96 # NOT EXIST("srclib\zlib")
100 @echo mod_deflate will not build unless zlib is installed in srclib\zlib.
101 @echo Version 1.2.1 and later available from http://www.gzip.org/zlib/
102 @echo built w/ nmake -f win32/Makefile.msc will satisfy this requirement.
106 !IF "$(INSTDIR)" == ""
109 !IF "$(SERVERNAME)" == ""
118 !MESSAGE INSTDIR = $(INSTDIR)
119 !MESSAGE SERVERNAME = $(SERVERNAME)
120 !MESSAGE PORT = $(PORT)
122 !MESSAGE To change these options use 'nmake /f Makefile.win [option=value]'
123 !MESSAGE Example: nmake /f Makefile.win PORT=8080
129 # Only default the behavior if MAKEOPT= is omitted
130 !IF "$(MAKE)" == "NMAKE"
131 # Microsoft NMake options
133 !ELSEIF "($MAKE)" == "make"
134 # Borland make options? Not really supported (yet)
143 bscmake.exe -nologo -Iu -o Apache.bsc *.sbr
147 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
150 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build
153 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
156 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build _install
158 clean: _cleanr _cleand
159 -if exist Browse\. rd /s Browse < << > nul
163 !IF EXIST("Apache.mak")
166 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
169 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET=CLEAN _build
172 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
174 $(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
175 $(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
178 $(MAKE) $(MAKEOPT) -f apriconv.mak CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
179 $(MAKE) $(MAKEOPT) -f libapriconv.mak CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
180 !IF "$(CTARGET)" == "CLEAN"
181 $(MAKE) $(MAKEOPT) /f build\modules.mk.win clean \
182 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
185 $(MAKE) /nologo /f Makefile.win all \
186 BUILD_MODE=$(LONG) BIND_MODE=shared
188 $(MAKE) /nologo /f Makefile.win all \
189 BUILD_MODE=$(LONG) BIND_MODE=shared
193 cd srclib\apr-util\uri
194 $(MAKE) $(MAKEOPT) -f gen_uri_delims.mak CFG="gen_uri_delims - Win32 $(LONG)" RECURSE=0 $(CTARGET)
196 cd srclib\apr-util\xml\expat\lib
197 $(MAKE) $(MAKEOPT) -f xml.mak CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
199 $(MAKE) $(MAKEOPT) -f aprutil.mak CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
200 $(MAKE) $(MAKEOPT) -f libaprutil.mak CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
203 $(MAKE) $(MAKEOPT) -f dftables.mak CFG="dftables - Win32 $(LONG)" RECURSE=0 $(CTARGET)
204 $(MAKE) $(MAKEOPT) -f pcre.mak CFG="pcre - Win32 $(LONG)" RECURSE=0 $(CTARGET)
205 $(MAKE) $(MAKEOPT) -f pcreposix.mak CFG="pcreposix - Win32 $(LONG)" RECURSE=0 $(CTARGET)
208 $(MAKE) $(MAKEOPT) -f gen_test_char.mak CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
210 $(MAKE) $(MAKEOPT) -f libhttpd.mak CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
211 $(MAKE) $(MAKEOPT) -f Apache.mak CFG="Apache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
212 # build ldap prior to authnz_ldap
214 $(MAKE) $(MAKEOPT) -f mod_ldap.mak CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
217 $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
218 $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
219 $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
220 $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
221 $(MAKE) $(MAKEOPT) -f mod_authn_default.mak CFG="mod_authn_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
222 $(MAKE) $(MAKEOPT) -f mod_authn_file.mak CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
223 $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
224 $(MAKE) $(MAKEOPT) -f mod_authz_default.mak CFG="mod_authz_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
225 $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
226 $(MAKE) $(MAKEOPT) -f mod_authz_host.mak CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
227 $(MAKE) $(MAKEOPT) -f mod_authz_user.mak CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
228 $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
230 cd modules\arch\win32
231 $(MAKE) $(MAKEOPT) -f mod_isapi.mak CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
234 $(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
235 $(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
236 $(MAKE) $(MAKEOPT) -f mod_mem_cache.mak CFG="mod_mem_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
237 $(MAKE) $(MAKEOPT) -f mod_disk_cache.mak CFG="mod_disk_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
240 $(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
243 $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
246 $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
247 $(MAKE) $(MAKEOPT) -f mod_dumpio.mak CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
249 cd modules\experimental
250 $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
253 !IF EXIST("srclib\zlib")
254 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
256 $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
257 $(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
259 cd modules\generators
260 $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
261 $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
262 $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
263 $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
264 $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
267 $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
270 $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
271 $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
272 $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
275 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
276 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
277 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
278 $(MAKE) $(MAKEOPT) -f mod_imap.mak CFG="mod_imap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
279 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
280 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
281 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
282 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
283 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
286 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
287 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
288 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
289 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
290 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
291 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
292 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
293 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
294 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
295 $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
298 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
299 $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
300 $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
301 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
302 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
303 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
305 !IF EXIST("srclib\openssl")
307 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) .\$(LONG)\mod_ssl.so
310 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
314 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
315 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
316 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
317 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
318 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
319 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
322 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
323 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
326 !ELSEIF EXIST("Apache.sln")
329 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
332 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
335 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
336 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildBin
337 !IF EXIST("srclib\openssl")
338 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
339 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
341 !IF EXIST("srclib\zlib")
342 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
348 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
351 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
354 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
355 @msdev Apache.dsw /USEENV /MAKE \
356 "BuildBin - Win32 $(LONG)" $(CTARGET)
357 !IF "$(CTARGET)" == "/CLEAN"
359 @$(MAKE) $(MAKEOPT) /f build\modules.mk.win clean \
360 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
363 !IF EXIST("srclib\openssl")
364 @msdev Apache.dsw /USEENV /MAKE \
365 "mod_ssl - Win32 $(LONG)" \
366 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
368 !IF EXIST("srclib\zlib")
369 @msdev Apache.dsw /USEENV /MAKE \
370 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
377 copy $(LONG)\Apache.$(src_exe) "$(inst_exe)" <.y
378 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
379 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
380 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
381 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
382 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
383 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
384 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
385 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
386 copy modules\aaa\$(LONG)\mod_authn_default.$(src_so) "$(inst_so)" <.y
387 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
388 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
389 copy modules\aaa\$(LONG)\mod_authz_default.$(src_so) "$(inst_so)" <.y
390 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
391 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
392 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
393 copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so) "$(inst_so)" <.y
394 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
395 copy modules\cache\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
396 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
397 copy modules\cache\$(LONG)\mod_mem_cache.$(src_so) "$(inst_so)" <.y
398 copy modules\cache\$(LONG)\mod_disk_cache.$(src_so) "$(inst_so)" <.y
399 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
400 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
401 copy modules\debug\$(LONG)\mod_bucketeer.$(src_so) "$(inst_so)" <.y
402 copy modules\debug\$(LONG)\mod_dumpio.$(src_so) "$(inst_so)" <.y
403 copy modules\experimental\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
404 !IF EXIST("srclib\zlib")
405 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
406 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
407 copy srclib\zlib\zlib1.$(src_dll) "$(inst_dll)" <.y
410 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
411 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
412 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
413 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
414 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
415 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
416 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
417 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
418 copy modules\ldap\$(LONG)\mod_ldap.$(src_so) "$(inst_so)" <.y
419 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
420 copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
421 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
422 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
423 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
424 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
425 copy modules\mappers\$(LONG)\mod_imap.$(src_so) "$(inst_so)" <.y
426 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
427 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
428 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
429 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
430 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
431 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
432 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
433 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
434 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
435 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
436 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
437 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
438 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
439 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
440 copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y
441 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
442 copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so) "$(inst_so)" <.y
443 copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
444 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
445 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
446 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
447 !IF EXIST("srclib\openssl")
448 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
449 $(quiet)copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
450 $(quiet)copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
451 $(quiet)copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
452 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)\ab.$(src_exe)" <.y
454 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
456 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
457 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
458 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
459 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
460 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
461 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
462 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
464 # First we create the tree and populate the README so that
465 # whatever happens, all licensing has already propagated.
466 # Then repeatedly invoke the _copybin build to copy the
467 # real binaries, then pdb symbols, anf finally dbg syms.
468 # Then hit docs of various sorts, then includes and libs,
469 # and finally do the .conf magic.
475 -mkdir "$(INSTDIR)\bin"
476 -mkdir "$(INSTDIR)\bin\iconv"
477 -mkdir "$(INSTDIR)\cgi-bin"
478 -mkdir "$(INSTDIR)\conf"
479 -mkdir "$(INSTDIR)\error"
480 -mkdir "$(INSTDIR)\htdocs"
481 -mkdir "$(INSTDIR)\manual"
482 -mkdir "$(INSTDIR)\icons"
483 -mkdir "$(INSTDIR)\include"
484 -mkdir "$(INSTDIR)\lib"
485 -mkdir "$(INSTDIR)\logs"
486 -mkdir "$(INSTDIR)\modules"
487 -mkdir "$(INSTDIR)\proxy"
488 -mkdir "$(INSTDIR)\symbols"
489 -mkdir "$(INSTDIR)\symbols\exe"
490 -mkdir "$(INSTDIR)\symbols\dll"
491 -mkdir "$(INSTDIR)\symbols\so"
492 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
493 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
494 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
495 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
496 copy README "$(INSTDIR)\README.txt" <.y
497 !IF EXIST("srclib\openssl")
498 type << >> "$(INSTDIR)\README.txt"
500 This binary distribution includes cryptographic software written by
501 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
502 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
503 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
505 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
508 print "For the libeay32.dll, ssleay32.dll and certtool.exe components:";
510 while ( getline > 0 ) {
515 copy << + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
517 Apache HTTP Server 2.0 Limited OpenSSL Distribution
519 This binary distribution includes the minimal components of OpenSSL required
520 to support mod_ssl for Apache HTTP Server version 2.0 (details are listed
521 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
522 versions of OpenSSL, please refer to the definative source,
523 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
524 full binary or source distribution package from <http://www.openssl.org/>.
526 These OpenSSL binaries were built for distribution from the U.S. without
527 support for the patented encryption methods IDEA, MDC-2 or RC5.
529 --------------------------------------------------------------------------------
531 copy << + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt" <.y
533 Apache HTTP Server 2.0 Limited OpenSSL Distribution
535 This binary installation of OpenSSL is a limited distribution of the documents
536 OPENSSL-LICENSE.txt, OPENSSL-NEWS.txt and OPENSSL-README.txt, and the binaries
542 These are the minimal libraries and tools required to use mod_ssl as
543 distributed with Apache HTTP Server version 2.0. No library link files,
544 headers or sources are distributed with this binary distribution. Please
545 refer to the <http://www.openssl.org/> site for complete source or binary
548 These OpenSSL binaries were built for distribution from the U.S. without
549 support for the patented encryption methods IDEA, MDC-2 or RC5.
551 The Apache HTTP Project only supports the binary distribution of these files
552 and development of the mod_ssl module. We cannot provide support assistance
553 for using or configuring the OpenSSL package or these modules. Please refer
554 all installation and configuration questions to the appropriate forum,
555 such as the user supported lists, <http://httpd.apache.org/userslist.html>
556 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
557 OpenSSL support page.
559 --------------------------------------------------------------------------------
562 !IF EXIST("srclib\zlib")
563 type << >> "$(INSTDIR)\README.txt"
565 This binary distribution of mod_deflate.so includes zlib compression code
566 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
567 and Mark Adler (madler@alumni.caltech.edu) .
569 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
571 while ( getline > 0 ) {
572 if ( $$0 ~ /Copyright notice:/ ) {
574 print "For the mod_deflate zlib compression component:";
575 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
585 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
586 _copybin src_exe=exe src_dll=dll src_so=so \
587 inst_exe="$(INSTDIR)\bin" \
588 inst_dll="$(INSTDIR)\bin" \
589 inst_so="$(INSTDIR)\modules"
590 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
591 _copybin src_exe=pdb src_dll=pdb src_so=pdb quiet="-" \
592 inst_exe="$(INSTDIR)\bin" \
593 inst_dll="$(INSTDIR)\bin" \
594 inst_so="$(INSTDIR)\modules"
596 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
597 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
598 INSTALL_DIR="$(INSTDIR)\bin\iconv"
600 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
601 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
603 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
604 gsub( /\\/, "/", perlroot );
609 if ( $$0 !~ /^#!/ ) {
614 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
615 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
616 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
617 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
618 xcopy srclib\pcre\pcre*.h "$(INSTDIR)\include" /d < .a
619 xcopy srclib\apr-util\xml\expat\lib\expat.h "$(INSTDIR)\include" /d < .a
620 xcopy srclib\apr\include\*.h "$(INSTDIR)\include" /d < .a
621 xcopy srclib\apr-util\include\*.h "$(INSTDIR)\include" /d < .a
622 xcopy include\*.h "$(INSTDIR)\include" /d < .a
623 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
624 copy srclib\apr\Lib$(SHORT)\apr_src.pdb "$(INSTDIR)\lib" <.y
625 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
626 copy srclib\apr-util\Lib$(SHORT)\aprutil_src.pdb "$(INSTDIR)\lib" <.y
627 copy srclib\pcre\Lib$(SHORT)\pcre.lib "$(INSTDIR)\lib" <.y
628 copy srclib\pcre\Lib$(SHORT)\pcre_src.pdb "$(INSTDIR)\lib" <.y
629 copy srclib\pcre\Lib$(SHORT)\pcreposix.lib "$(INSTDIR)\lib" <.y
630 copy srclib\pcre\Lib$(SHORT)\pcreposix_src.pdb "$(INSTDIR)\lib" <.y
631 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
632 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml_src.pdb "$(INSTDIR)\lib" <.y
633 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
634 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
635 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
636 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
637 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
638 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
639 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
640 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
641 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
642 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
643 copy docs\conf\magic "$(INSTDIR)\conf\magic.default" <.y
644 if not exist "$(INSTDIR)\conf\magic" \
645 copy "$(INSTDIR)\conf\magic.default" "$(INSTDIR)\conf\magic"
646 copy docs\conf\mime.types "$(INSTDIR)\conf\mime.types.default" <.y
647 if not exist "$(INSTDIR)\conf\mime.types" \
648 copy "$(INSTDIR)\conf\mime.types.default" "$(INSTDIR)\conf\mime.types"
649 copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.default.conf" <.y
650 -awk -f <<script.awk "docs/conf/httpd-win.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\httpd.default.conf"
652 serverroot = ARGV[2];
654 gsub( /\\/, "/", serverroot );
656 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
659 gsub( /@@ServerRoot@@/, serverroot );
660 gsub( /@@ServerName@@/, "$(SERVERNAME)" );
661 gsub( /@@Port@@/, "$(PORT)" );
665 if not exist "$(INSTDIR)\conf\httpd.conf" \
666 copy "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)\conf\httpd.conf"
667 !IF EXIST("srclib\openssl")
668 copy docs\conf\ssl-std.conf.in "$(INSTDIR)\conf\ssl.default.conf" <.y
669 -awk -f <<script.awk "docs/conf/ssl-std.conf.in" "$(INSTDIR)" > "$(INSTDIR)\conf\ssl.default.conf"
671 serverroot = ARGV[2];
673 gsub( /\\/, "/", serverroot );
675 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
678 gsub( /@@ServerRoot@@/, serverroot );
679 gsub( /@exp_runtimedir@/, "logs" );
680 gsub( /@exp_htdocsdir@/, serverroot "/htdocs" );
681 gsub( /@exp_logfiledir@/, "logs" );
682 gsub( /@exp_sysconfdir@/, "conf" );
683 gsub( /@exp_cgidir@/, serverroot "/cgi" );
687 if not exist "$(INSTDIR)\conf\ssl.conf" \
688 copy "$(INSTDIR)\conf\ssl.default.conf" "$(INSTDIR)\conf\ssl.conf"
690 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
691 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
692 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
694 if ( $$0 !~ /^#!@perlbin@/ )