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_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
237 $(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
240 $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
242 cd modules\experimental
243 $(MAKE) $(MAKEOPT) -f mod_cache.mak CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
244 $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
245 $(MAKE) $(MAKEOPT) -f mod_mem_cache.mak CFG="mod_mem_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
246 $(MAKE) $(MAKEOPT) -f mod_disk_cache.mak CFG="mod_disk_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
249 !IF EXIST("srclib\zlib")
250 $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
252 $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
253 $(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
255 cd modules\generators
256 $(MAKE) $(MAKEOPT) -f mod_asis.mak CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
257 $(MAKE) $(MAKEOPT) -f mod_autoindex.mak CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
258 $(MAKE) $(MAKEOPT) -f mod_cgi.mak CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
259 $(MAKE) $(MAKEOPT) -f mod_info.mak CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
260 $(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
263 $(MAKE) $(MAKEOPT) -f mod_mime.mak CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
266 $(MAKE) $(MAKEOPT) -f mod_log_config.mak CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
267 $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
268 $(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
271 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
272 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
273 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
274 $(MAKE) $(MAKEOPT) -f mod_imap.mak CFG="mod_imap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
275 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
276 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
277 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
278 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
279 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
282 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
283 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
284 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
285 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
286 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
287 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
288 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
289 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
290 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
291 $(MAKE) $(MAKEOPT) -f mod_version.mak CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
294 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
295 $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
296 $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
297 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
298 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
299 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
301 !IF EXIST("srclib\openssl")
303 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) .\$(LONG)\mod_ssl.so
306 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
310 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
311 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
312 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
313 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
314 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
315 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
318 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
319 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
322 !ELSEIF EXIST("Apache.sln")
325 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
328 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
331 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
332 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildBin
333 !IF EXIST("srclib\openssl")
334 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
335 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
337 !IF EXIST("srclib\zlib")
338 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
344 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
347 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
350 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
351 @msdev Apache.dsw /USEENV /MAKE \
352 "BuildBin - Win32 $(LONG)" $(CTARGET)
353 !IF "$(CTARGET)" == "/CLEAN"
355 @$(MAKE) $(MAKEOPT) /f build\modules.mk.win clean \
356 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
359 !IF EXIST("srclib\openssl")
360 @msdev Apache.dsw /USEENV /MAKE \
361 "mod_ssl - Win32 $(LONG)" \
362 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
364 !IF EXIST("srclib\zlib")
365 @msdev Apache.dsw /USEENV /MAKE \
366 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
373 copy $(LONG)\Apache.$(src_exe) "$(inst_exe)" <.y
374 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
375 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
376 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
377 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
378 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
379 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
380 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
381 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
382 copy modules\aaa\$(LONG)\mod_authn_default.$(src_so) "$(inst_so)" <.y
383 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
384 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
385 copy modules\aaa\$(LONG)\mod_authz_default.$(src_so) "$(inst_so)" <.y
386 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
387 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
388 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
389 copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so) "$(inst_so)" <.y
390 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
391 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
392 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
393 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
394 copy modules\experimental\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
395 copy modules\experimental\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
396 copy modules\experimental\$(LONG)\mod_mem_cache.$(src_so) "$(inst_so)" <.y
397 copy modules\experimental\$(LONG)\mod_disk_cache.$(src_so) "$(inst_so)" <.y
398 !IF EXIST("srclib\zlib")
399 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
400 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
401 copy srclib\zlib\zlib1.$(src_dll) "$(inst_dll)" <.y
404 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
405 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
406 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
407 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
408 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
409 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
410 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
411 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
412 copy modules\ldap\$(LONG)\mod_ldap.$(src_so) "$(inst_so)" <.y
413 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
414 copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
415 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
416 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
417 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
418 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
419 copy modules\mappers\$(LONG)\mod_imap.$(src_so) "$(inst_so)" <.y
420 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
421 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
422 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
423 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
424 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
425 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
426 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
427 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
428 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
429 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
430 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
431 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
432 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
433 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
434 copy modules\metadata\$(LONG)\mod_version.$(src_so) "$(inst_so)" <.y
435 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
436 copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so) "$(inst_so)" <.y
437 copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
438 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
439 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
440 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
441 !IF EXIST("srclib\openssl")
442 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
443 $(quiet)copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
444 $(quiet)copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
445 $(quiet)copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
446 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)\ab.$(src_exe)" <.y
448 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
450 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
451 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
452 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
453 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
454 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
455 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
456 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
458 # First we create the tree and populate the README so that
459 # whatever happens, all licensing has already propagated.
460 # Then repeatedly invoke the _copybin build to copy the
461 # real binaries, then pdb symbols, anf finally dbg syms.
462 # Then hit docs of various sorts, then includes and libs,
463 # and finally do the .conf magic.
469 -mkdir "$(INSTDIR)\bin"
470 -mkdir "$(INSTDIR)\bin\iconv"
471 -mkdir "$(INSTDIR)\cgi-bin"
472 -mkdir "$(INSTDIR)\conf"
473 -mkdir "$(INSTDIR)\error"
474 -mkdir "$(INSTDIR)\htdocs"
475 -mkdir "$(INSTDIR)\manual"
476 -mkdir "$(INSTDIR)\icons"
477 -mkdir "$(INSTDIR)\include"
478 -mkdir "$(INSTDIR)\lib"
479 -mkdir "$(INSTDIR)\logs"
480 -mkdir "$(INSTDIR)\modules"
481 -mkdir "$(INSTDIR)\proxy"
482 -mkdir "$(INSTDIR)\symbols"
483 -mkdir "$(INSTDIR)\symbols\exe"
484 -mkdir "$(INSTDIR)\symbols\dll"
485 -mkdir "$(INSTDIR)\symbols\so"
486 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
487 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
488 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
489 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
490 copy README "$(INSTDIR)\README.txt" <.y
491 !IF EXIST("srclib\openssl")
492 type << >> "$(INSTDIR)\README.txt"
494 This binary distribution includes cryptographic software written by
495 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
496 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
497 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
499 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
502 print "For the libeay32.dll, ssleay32.dll and certtool.exe components:";
504 while ( getline > 0 ) {
509 copy << + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
511 Apache HTTP Server 2.0 Limited OpenSSL Distribution
513 This binary distribution includes the minimal components of OpenSSL required
514 to support mod_ssl for Apache HTTP Server version 2.0 (details are listed
515 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
516 versions of OpenSSL, please refer to the definative source,
517 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
518 full binary or source distribution package from <http://www.openssl.org/>.
520 These OpenSSL binaries were built for distribution from the U.S. without
521 support for the patented encryption methods IDEA, MDC-2 or RC5.
523 --------------------------------------------------------------------------------
525 copy << + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt" <.y
527 Apache HTTP Server 2.0 Limited OpenSSL Distribution
529 This binary installation of OpenSSL is a limited distribution of the documents
530 OPENSSL-LICENSE.txt, OPENSSL-NEWS.txt and OPENSSL-README.txt, and the binaries
536 These are the minimal libraries and tools required to use mod_ssl as
537 distributed with Apache HTTP Server version 2.0. No library link files,
538 headers or sources are distributed with this binary distribution. Please
539 refer to the <http://www.openssl.org/> site for complete source or binary
542 These OpenSSL binaries were built for distribution from the U.S. without
543 support for the patented encryption methods IDEA, MDC-2 or RC5.
545 The Apache HTTP Project only supports the binary distribution of these files
546 and development of the mod_ssl module. We cannot provide support assistance
547 for using or configuring the OpenSSL package or these modules. Please refer
548 all installation and configuration questions to the appropriate forum,
549 such as the user supported lists, <http://httpd.apache.org/userslist.html>
550 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
551 OpenSSL support page.
553 --------------------------------------------------------------------------------
556 !IF EXIST("srclib\zlib")
557 type << >> "$(INSTDIR)\README.txt"
559 This binary distribution of mod_deflate.so includes zlib compression code
560 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
561 and Mark Adler (madler@alumni.caltech.edu) .
563 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
565 while ( getline > 0 ) {
566 if ( $$0 ~ /Copyright notice:/ ) {
568 print "For the mod_deflate zlib compression component:";
569 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
579 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
580 _copybin src_exe=exe src_dll=dll src_so=so \
581 inst_exe="$(INSTDIR)\bin" \
582 inst_dll="$(INSTDIR)\bin" \
583 inst_so="$(INSTDIR)\modules"
584 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
585 _copybin src_exe=pdb src_dll=pdb src_so=pdb quiet="-" \
586 inst_exe="$(INSTDIR)\bin" \
587 inst_dll="$(INSTDIR)\bin" \
588 inst_so="$(INSTDIR)\modules"
590 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
591 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
592 INSTALL_DIR="$(INSTDIR)\bin\iconv"
594 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
595 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
597 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
598 gsub( /\\/, "/", perlroot );
603 if ( $$0 !~ /^#!/ ) {
608 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
609 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
610 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
611 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
612 xcopy srclib\pcre\pcre*.h "$(INSTDIR)\include" /d < .a
613 xcopy srclib\apr-util\xml\expat\lib\expat.h "$(INSTDIR)\include" /d < .a
614 xcopy srclib\apr\include\*.h "$(INSTDIR)\include" /d < .a
615 xcopy srclib\apr-util\include\*.h "$(INSTDIR)\include" /d < .a
616 xcopy include\*.h "$(INSTDIR)\include" /d < .a
617 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
618 copy srclib\apr\Lib$(SHORT)\apr_src.pdb "$(INSTDIR)\lib" <.y
619 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
620 copy srclib\apr-util\Lib$(SHORT)\aprutil_src.pdb "$(INSTDIR)\lib" <.y
621 copy srclib\pcre\Lib$(SHORT)\pcre.lib "$(INSTDIR)\lib" <.y
622 copy srclib\pcre\Lib$(SHORT)\pcre_src.pdb "$(INSTDIR)\lib" <.y
623 copy srclib\pcre\Lib$(SHORT)\pcreposix.lib "$(INSTDIR)\lib" <.y
624 copy srclib\pcre\Lib$(SHORT)\pcreposix_src.pdb "$(INSTDIR)\lib" <.y
625 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
626 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml_src.pdb "$(INSTDIR)\lib" <.y
627 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
628 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
629 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
630 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
631 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
632 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
633 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
634 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
635 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
636 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
637 copy docs\conf\magic "$(INSTDIR)\conf\magic.default" <.y
638 if not exist "$(INSTDIR)\conf\magic" \
639 copy "$(INSTDIR)\conf\magic.default" "$(INSTDIR)\conf\magic"
640 copy docs\conf\mime.types "$(INSTDIR)\conf\mime.types.default" <.y
641 if not exist "$(INSTDIR)\conf\mime.types" \
642 copy "$(INSTDIR)\conf\mime.types.default" "$(INSTDIR)\conf\mime.types"
643 copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.default.conf" <.y
644 -awk -f <<script.awk "docs/conf/httpd-win.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\httpd.default.conf"
646 serverroot = ARGV[2];
648 gsub( /\\/, "/", serverroot );
650 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
653 gsub( /@@ServerRoot@@/, serverroot );
654 gsub( /@@ServerName@@/, "$(SERVERNAME)" );
655 gsub( /@@Port@@/, "$(PORT)" );
659 if not exist "$(INSTDIR)\conf\httpd.conf" \
660 copy "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)\conf\httpd.conf"
661 !IF EXIST("srclib\openssl")
662 copy docs\conf\ssl-std.conf.in "$(INSTDIR)\conf\ssl.default.conf" <.y
663 -awk -f <<script.awk "docs/conf/ssl-std.conf.in" "$(INSTDIR)" > "$(INSTDIR)\conf\ssl.default.conf"
665 serverroot = ARGV[2];
667 gsub( /\\/, "/", serverroot );
669 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
672 gsub( /@@ServerRoot@@/, serverroot );
673 gsub( /@exp_runtimedir@/, "logs" );
674 gsub( /@exp_htdocsdir@/, serverroot "/htdocs" );
675 gsub( /@exp_logfiledir@/, "logs" );
676 gsub( /@exp_sysconfdir@/, "conf" );
677 gsub( /@exp_cgidir@/, serverroot "/cgi" );
681 if not exist "$(INSTDIR)\conf\ssl.conf" \
682 copy "$(INSTDIR)\conf\ssl.default.conf" "$(INSTDIR)\conf\ssl.conf"
684 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
685 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
686 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
688 if ( $$0 !~ /^#!@perlbin@/ )