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 zlib does not need to be built, we compile the sources directly.
102 @echo Available from http://www.gzip.org/zlib/
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)
213 $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
214 $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
215 $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
216 $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
217 $(MAKE) $(MAKEOPT) -f mod_authn_default.mak CFG="mod_authn_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
218 $(MAKE) $(MAKEOPT) -f mod_authn_file.mak CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
219 $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
220 $(MAKE) $(MAKEOPT) -f mod_authz_default.mak CFG="mod_authz_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
221 $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
222 $(MAKE) $(MAKEOPT) -f mod_authz_host.mak CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
223 $(MAKE) $(MAKEOPT) -f mod_authz_user.mak CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
225 cd modules\arch\win32
226 $(MAKE) $(MAKEOPT) -f mod_isapi.mak CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
229 $(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
232 $(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
235 $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
237 cd modules\experimental
238 $(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
239 $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
240 $(MAKE) $(MAKEOPT) -f mod_mem_cache.mak CFG="mod_mem_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
241 $(MAKE) $(MAKEOPT) -f mod_disk_cache.mak CFG="mod_disk_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
242 $(MAKE) $(MAKEOPT) -f util_ldap.mak CFG="util_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
243 $(MAKE) $(MAKEOPT) -f mod_auth_ldap.mak CFG="mod_auth_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
246 !IF EXIST("srclib\zlib")
247 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
249 $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
250 $(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
252 cd modules\generators
253 $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
254 $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
255 $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
256 $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
257 $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
260 $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
263 $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
264 $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
265 $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
268 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
269 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
270 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
271 $(MAKE) $(MAKEOPT) -f mod_imap.mak CFG="mod_imap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
272 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
273 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
274 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
275 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
276 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
279 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
280 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
281 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
282 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
283 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
284 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
285 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
286 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
287 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
288 $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
291 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
292 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
293 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
294 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
296 !IF EXIST("srclib\openssl")
298 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) .\$(LONG)\mod_ssl.so
301 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
305 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
306 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
307 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
308 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
309 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
310 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
313 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
314 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
317 !ELSEIF EXIST("Apache.sln")
320 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
323 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
326 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
327 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildBin
328 !IF EXIST("srclib\openssl")
329 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
330 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
332 !IF EXIST("srclib\zlib")
333 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
339 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
342 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
345 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
346 @msdev Apache.dsw /USEENV /MAKE \
347 "BuildBin - Win32 $(LONG)" $(CTARGET)
348 !IF "$(CTARGET)" == "/CLEAN"
350 @$(MAKE) $(MAKEOPT) /f build\modules.mk.win clean \
351 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
354 !IF EXIST("srclib\openssl")
355 @msdev Apache.dsw /USEENV /MAKE \
356 "mod_ssl - Win32 $(LONG)" \
357 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
359 !IF EXIST("srclib\zlib")
360 @msdev Apache.dsw /USEENV /MAKE \
361 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
368 copy $(LONG)\Apache.$(src_exe) "$(inst_exe)" <.y
369 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
370 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
371 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
372 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
373 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
374 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
375 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
376 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
377 copy modules\aaa\$(LONG)\mod_authn_default.$(src_so) "$(inst_so)" <.y
378 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
379 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
380 copy modules\aaa\$(LONG)\mod_authz_default.$(src_so) "$(inst_so)" <.y
381 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
382 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
383 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
384 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
385 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
386 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
387 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
388 copy modules\experimental\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
389 copy modules\experimental\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
390 copy modules\experimental\$(LONG)\mod_mem_cache.$(src_so) "$(inst_so)" <.y
391 copy modules\experimental\$(LONG)\mod_disk_cache.$(src_so) "$(inst_so)" <.y
392 copy modules\experimental\$(LONG)\util_ldap.$(src_so) "$(inst_so)" <.y
393 copy modules\experimental\$(LONG)\mod_auth_ldap.$(src_so) "$(inst_so)" <.y
394 !IF EXIST("srclib\zlib")
395 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
397 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
398 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
399 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
400 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
401 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
402 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
403 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
404 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
405 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
406 copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
407 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
408 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
409 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
410 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
411 copy modules\mappers\$(LONG)\mod_imap.$(src_so) "$(inst_so)" <.y
412 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
413 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
414 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
415 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
416 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
417 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
418 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
419 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
420 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
421 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
422 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
423 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
424 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
425 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
426 copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y
427 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
428 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
429 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
430 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
431 !IF EXIST("srclib\openssl")
432 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
433 $(quiet)copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
434 $(quiet)copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
435 $(quiet)copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
436 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)\ab.$(src_exe)" <.y
438 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
440 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
441 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
442 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
443 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
444 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
445 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
446 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
448 # First we create the tree and populate the README so that
449 # whatever happens, all licensing has already propagated.
450 # Then repeatedly invoke the _copybin build to copy the
451 # real binaries, then pdb symbols, anf finally dbg syms.
452 # Then hit docs of various sorts, then includes and libs,
453 # and finally do the .conf magic.
459 -mkdir "$(INSTDIR)\bin"
460 -mkdir "$(INSTDIR)\bin\iconv"
461 -mkdir "$(INSTDIR)\cgi-bin"
462 -mkdir "$(INSTDIR)\conf"
463 -mkdir "$(INSTDIR)\error"
464 -mkdir "$(INSTDIR)\htdocs"
465 -mkdir "$(INSTDIR)\manual"
466 -mkdir "$(INSTDIR)\icons"
467 -mkdir "$(INSTDIR)\include"
468 -mkdir "$(INSTDIR)\lib"
469 -mkdir "$(INSTDIR)\logs"
470 -mkdir "$(INSTDIR)\modules"
471 -mkdir "$(INSTDIR)\proxy"
472 -mkdir "$(INSTDIR)\symbols"
473 -mkdir "$(INSTDIR)\symbols\exe"
474 -mkdir "$(INSTDIR)\symbols\dll"
475 -mkdir "$(INSTDIR)\symbols\so"
476 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
477 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
478 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
479 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
480 copy README "$(INSTDIR)\README.txt" <.y
481 !IF EXIST("srclib\openssl")
482 type << >> "$(INSTDIR)\README.txt"
484 This binary distribution includes cryptographic software written by
485 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
486 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
487 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
489 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
492 print "For the libeay32.dll, ssleay32.dll and certtool.exe components:";
494 while ( getline > 0 ) {
499 copy << + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
501 Apache HTTP Server 2.0 Limited OpenSSL Distribution
503 This binary distribution includes the minimal components of OpenSSL required
504 to support mod_ssl for Apache HTTP Server version 2.0 (details are listed
505 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
506 versions of OpenSSL, please refer to the definative source,
507 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
508 full binary or source distribution package from <http://www.openssl.org/>.
510 These OpenSSL binaries were built for distribution from the U.S. without
511 support for the patented encryption methods IDEA, MDC-2 or RC5.
513 --------------------------------------------------------------------------------
515 copy << + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt" <.y
517 Apache HTTP Server 2.0 Limited OpenSSL Distribution
519 This binary installation of OpenSSL is a limited distribution of the documents
520 OPENSSL-LICENSE.txt, OPENSSL-NEWS.txt and OPENSSL-README.txt, and the binaries
526 These are the minimal libraries and tools required to use mod_ssl as
527 distributed with Apache HTTP Server version 2.0. No library link files,
528 headers or sources are distributed with this binary distribution. Please
529 refer to the <http://www.openssl.org/> site for complete source or binary
532 These OpenSSL binaries were built for distribution from the U.S. without
533 support for the patented encryption methods IDEA, MDC-2 or RC5.
535 The Apache HTTP Project only supports the binary distribution of these files
536 and development of the mod_ssl module. We cannot provide support assistance
537 for using or configuring the OpenSSL package or these modules. Please refer
538 all installation and configuration questions to the appropriate forum,
539 such as the user supported lists, <http://httpd.apache.org/userslist.html>
540 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
541 OpenSSL support page.
543 --------------------------------------------------------------------------------
546 !IF EXIST("srclib\zlib")
547 type << >> "$(INSTDIR)\README.txt"
549 This binary distribution of mod_deflate.so includes zlib compression code
550 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
551 and Mark Adler (madler@alumni.caltech.edu) .
553 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
555 while ( getline > 0 ) {
556 if ( $$0 ~ /Copyright notice:/ ) {
558 print "For the mod_deflate zlib compression component:";
559 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
569 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
570 _copybin src_exe=exe src_dll=dll src_so=so \
571 inst_exe="$(INSTDIR)\bin" \
572 inst_dll="$(INSTDIR)\bin" \
573 inst_so="$(INSTDIR)\modules"
574 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
575 _copybin src_exe=pdb src_dll=pdb src_so=pdb quiet="-" \
576 inst_exe="$(INSTDIR)\bin" \
577 inst_dll="$(INSTDIR)\bin" \
578 inst_so="$(INSTDIR)\modules"
580 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
581 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
582 INSTALL_DIR="$(INSTDIR)\bin\iconv"
584 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
585 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
587 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
588 gsub( /\\/, "/", perlroot );
593 if ( $$0 !~ /^#!/ ) {
598 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
599 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
600 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
601 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
602 xcopy srclib\pcre\pcre*.h "$(INSTDIR)\include" /d < .a
603 xcopy srclib\apr-util\xml\expat\lib\expat.h "$(INSTDIR)\include" /d < .a
604 xcopy srclib\apr\include\*.h "$(INSTDIR)\include" /d < .a
605 xcopy srclib\apr-util\include\*.h "$(INSTDIR)\include" /d < .a
606 xcopy include\*.h "$(INSTDIR)\include" /d < .a
607 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
608 copy srclib\apr\Lib$(SHORT)\apr_src.pdb "$(INSTDIR)\lib" <.y
609 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
610 copy srclib\apr-util\Lib$(SHORT)\aprutil_src.pdb "$(INSTDIR)\lib" <.y
611 copy srclib\pcre\Lib$(SHORT)\pcre.lib "$(INSTDIR)\lib" <.y
612 copy srclib\pcre\Lib$(SHORT)\pcre_src.pdb "$(INSTDIR)\lib" <.y
613 copy srclib\pcre\Lib$(SHORT)\pcreposix.lib "$(INSTDIR)\lib" <.y
614 copy srclib\pcre\Lib$(SHORT)\pcreposix_src.pdb "$(INSTDIR)\lib" <.y
615 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
616 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml_src.pdb "$(INSTDIR)\lib" <.y
617 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
618 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
619 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
620 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
621 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
622 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
623 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
624 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
625 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
626 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
627 copy docs\conf\magic "$(INSTDIR)\conf\magic.default" <.y
628 if not exist "$(INSTDIR)\conf\magic" \
629 copy "$(INSTDIR)\conf\magic.default" "$(INSTDIR)\conf\magic"
630 copy docs\conf\mime.types "$(INSTDIR)\conf\mime.types.default" <.y
631 if not exist "$(INSTDIR)\conf\mime.types" \
632 copy "$(INSTDIR)\conf\mime.types.default" "$(INSTDIR)\conf\mime.types"
633 copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.default.conf" <.y
634 -awk -f <<script.awk "docs/conf/httpd-win.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\httpd.default.conf"
636 serverroot = ARGV[2];
638 gsub( /\\/, "/", serverroot );
640 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
643 gsub( /@@ServerRoot@@/, serverroot );
644 gsub( /@@ServerName@@/, "$(SERVERNAME)" );
645 gsub( /@@Port@@/, "$(PORT)" );
649 if not exist "$(INSTDIR)\conf\httpd.conf" \
650 copy "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)\conf\httpd.conf"
651 !IF EXIST("srclib\openssl")
652 copy docs\conf\ssl-std.conf.in "$(INSTDIR)\conf\ssl.default.conf" <.y
653 -awk -f <<script.awk "docs/conf/ssl-std.conf.in" "$(INSTDIR)" > "$(INSTDIR)\conf\ssl.default.conf"
655 serverroot = ARGV[2];
657 gsub( /\\/, "/", serverroot );
659 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
662 gsub( /@@ServerRoot@@/, serverroot );
663 gsub( /@exp_runtimedir@/, "logs" );
664 gsub( /@exp_htdocsdir@/, serverroot "/htdocs" );
665 gsub( /@exp_logfiledir@/, "logs" );
666 gsub( /@exp_sysconfdir@/, "conf" );
667 gsub( /@exp_cgidir@/, serverroot "/cgi" );
671 if not exist "$(INSTDIR)\conf\ssl.conf" \
672 copy "$(INSTDIR)\conf\ssl.default.conf" "$(INSTDIR)\conf\ssl.conf"
674 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
675 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
676 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
678 if ( $$0 !~ /^#!@perlbin@/ )