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_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
267 $(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
268 $(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
269 $(MAKE) $(MAKEOPT) -f mod_dir.mak CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
270 $(MAKE) $(MAKEOPT) -f mod_imap.mak CFG="mod_imap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
271 $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
272 $(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
273 $(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
274 $(MAKE) $(MAKEOPT) -f mod_userdir.mak CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
275 $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
278 $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
279 $(MAKE) $(MAKEOPT) -f mod_env.mak CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
280 $(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
281 $(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
282 $(MAKE) $(MAKEOPT) -f mod_ident.mak CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
283 $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
284 $(MAKE) $(MAKEOPT) -f mod_setenvif.mak CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
285 $(MAKE) $(MAKEOPT) -f mod_unique_id.mak CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
286 $(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
289 $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
290 $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
291 $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
292 $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
294 !IF EXIST("srclib\openssl")
296 $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) .\$(LONG)\mod_ssl.so
299 $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
303 $(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
304 $(MAKE) $(MAKEOPT) -f htdbm.mak CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
305 $(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
306 $(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
307 $(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
308 $(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
311 $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
312 $(MAKE) $(MAKEOPT) -f wintty.mak CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
315 !ELSEIF EXIST("Apache.sln")
318 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
321 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/clean" _build
324 echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
325 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildBin
326 !IF EXIST("srclib\openssl")
327 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
328 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
330 !IF EXIST("srclib\zlib")
331 devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
337 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
340 @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET="/CLEAN" _build
343 @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
344 @msdev Apache.dsw /USEENV /MAKE \
345 "BuildBin - Win32 $(LONG)" $(CTARGET)
346 !IF "$(CTARGET)" == "/CLEAN"
348 @$(MAKE) $(MAKEOPT) /f build\modules.mk.win clean \
349 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
352 !IF EXIST("srclib\openssl")
353 @msdev Apache.dsw /USEENV /MAKE \
354 "mod_ssl - Win32 $(LONG)" \
355 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
357 !IF EXIST("srclib\zlib")
358 @msdev Apache.dsw /USEENV /MAKE \
359 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
366 copy $(LONG)\Apache.$(src_exe) "$(inst_exe)" <.y
367 copy $(LONG)\libhttpd.$(src_dll) "$(inst_dll)" <.y
368 copy srclib\apr\$(LONG)\libapr-1.$(src_dll) "$(inst_dll)" <.y
369 copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll) "$(inst_dll)" <.y
370 copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll) "$(inst_dll)" <.y
371 copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so) "$(inst_so)" <.y
372 copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so) "$(inst_so)" <.y
373 copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so) "$(inst_so)" <.y
374 copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so) "$(inst_so)" <.y
375 copy modules\aaa\$(LONG)\mod_authn_default.$(src_so) "$(inst_so)" <.y
376 copy modules\aaa\$(LONG)\mod_authn_file.$(src_so) "$(inst_so)" <.y
377 copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so) "$(inst_so)" <.y
378 copy modules\aaa\$(LONG)\mod_authz_default.$(src_so) "$(inst_so)" <.y
379 copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so) "$(inst_so)" <.y
380 copy modules\aaa\$(LONG)\mod_authz_host.$(src_so) "$(inst_so)" <.y
381 copy modules\aaa\$(LONG)\mod_authz_user.$(src_so) "$(inst_so)" <.y
382 copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so) "$(inst_so)" <.y
383 copy modules\cache\$(LONG)\mod_file_cache.$(src_so) "$(inst_so)" <.y
384 copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so) "$(inst_so)" <.y
385 copy modules\dav\main\$(LONG)\mod_dav.$(src_so) "$(inst_so)" <.y
386 copy modules\experimental\$(LONG)\mod_cache.$(src_so) "$(inst_so)" <.y
387 copy modules\experimental\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
388 copy modules\experimental\$(LONG)\mod_mem_cache.$(src_so) "$(inst_so)" <.y
389 copy modules\experimental\$(LONG)\mod_disk_cache.$(src_so) "$(inst_so)" <.y
390 copy modules\experimental\$(LONG)\util_ldap.$(src_so) "$(inst_so)" <.y
391 copy modules\experimental\$(LONG)\mod_auth_ldap.$(src_so) "$(inst_so)" <.y
392 !IF EXIST("srclib\zlib")
393 copy modules\filters\$(LONG)\mod_deflate.$(src_so) "$(inst_so)" <.y
395 copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
396 copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
397 copy modules\generators\$(LONG)\mod_asis.$(src_so) "$(inst_so)" <.y
398 copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
399 copy modules\generators\$(LONG)\mod_cgi.$(src_so) "$(inst_so)" <.y
400 copy modules\generators\$(LONG)\mod_info.$(src_so) "$(inst_so)" <.y
401 copy modules\generators\$(LONG)\mod_status.$(src_so) "$(inst_so)" <.y
402 copy modules\http\$(LONG)\mod_mime.$(src_so) "$(inst_so)" <.y
403 copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
404 copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
405 copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
406 copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
407 copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
408 copy modules\mappers\$(LONG)\mod_imap.$(src_so) "$(inst_so)" <.y
409 copy modules\mappers\$(LONG)\mod_negotiation.$(src_so) "$(inst_so)" <.y
410 copy modules\mappers\$(LONG)\mod_rewrite.$(src_so) "$(inst_so)" <.y
411 copy modules\mappers\$(LONG)\mod_speling.$(src_so) "$(inst_so)" <.y
412 copy modules\mappers\$(LONG)\mod_userdir.$(src_so) "$(inst_so)" <.y
413 copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so) "$(inst_so)" <.y
414 copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so) "$(inst_so)" <.y
415 copy modules\metadata\$(LONG)\mod_env.$(src_so) "$(inst_so)" <.y
416 copy modules\metadata\$(LONG)\mod_expires.$(src_so) "$(inst_so)" <.y
417 copy modules\metadata\$(LONG)\mod_headers.$(src_so) "$(inst_so)" <.y
418 copy modules\metadata\$(LONG)\mod_ident.$(src_so) "$(inst_so)" <.y
419 copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so) "$(inst_so)" <.y
420 copy modules\metadata\$(LONG)\mod_setenvif.$(src_so) "$(inst_so)" <.y
421 copy modules\metadata\$(LONG)\mod_unique_id.$(src_so) "$(inst_so)" <.y
422 copy modules\metadata\$(LONG)\mod_usertrack.$(src_so) "$(inst_so)" <.y
423 copy modules\proxy\$(LONG)\mod_proxy.$(src_so) "$(inst_so)" <.y
424 copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so) "$(inst_so)" <.y
425 copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so) "$(inst_so)" <.y
426 copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so) "$(inst_so)" <.y
427 !IF EXIST("srclib\openssl")
428 copy modules\ssl\$(LONG)\mod_ssl.$(src_so) "$(inst_so)" <.y
429 $(quiet)copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe) "$(inst_exe)" <.y
430 $(quiet)copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll) "$(inst_dll)" <.y
431 $(quiet)copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll) "$(inst_dll)" <.y
432 copy support\$(LONG)\abs.$(src_exe) "$(inst_exe)\ab.$(src_exe)" <.y
434 copy support\$(LONG)\ab.$(src_exe) "$(inst_exe)" <.y
436 copy support\$(LONG)\htdbm.$(src_exe) "$(inst_exe)" <.y
437 copy support\$(LONG)\htdigest.$(src_exe) "$(inst_exe)" <.y
438 copy support\$(LONG)\htpasswd.$(src_exe) "$(inst_exe)" <.y
439 copy support\$(LONG)\logresolve.$(src_exe) "$(inst_exe)" <.y
440 copy support\$(LONG)\rotatelogs.$(src_exe) "$(inst_exe)" <.y
441 copy support\win32\$(LONG)\ApacheMonitor.$(src_exe) "$(inst_exe)" <.y
442 copy support\win32\$(LONG)\wintty.$(src_exe) "$(inst_exe)" <.y
444 # First we create the tree and populate the README so that
445 # whatever happens, all licensing has already propagated.
446 # Then repeatedly invoke the _copybin build to copy the
447 # real binaries, then pdb symbols, anf finally dbg syms.
448 # Then hit docs of various sorts, then includes and libs,
449 # and finally do the .conf magic.
455 -mkdir "$(INSTDIR)\bin"
456 -mkdir "$(INSTDIR)\bin\iconv"
457 -mkdir "$(INSTDIR)\cgi-bin"
458 -mkdir "$(INSTDIR)\conf"
459 -mkdir "$(INSTDIR)\error"
460 -mkdir "$(INSTDIR)\htdocs"
461 -mkdir "$(INSTDIR)\manual"
462 -mkdir "$(INSTDIR)\icons"
463 -mkdir "$(INSTDIR)\include"
464 -mkdir "$(INSTDIR)\lib"
465 -mkdir "$(INSTDIR)\logs"
466 -mkdir "$(INSTDIR)\modules"
467 -mkdir "$(INSTDIR)\proxy"
468 -mkdir "$(INSTDIR)\symbols"
469 -mkdir "$(INSTDIR)\symbols\exe"
470 -mkdir "$(INSTDIR)\symbols\dll"
471 -mkdir "$(INSTDIR)\symbols\so"
472 copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
473 copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
474 copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
475 copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
476 copy README "$(INSTDIR)\README.txt" <.y
477 !IF EXIST("srclib\openssl")
478 type << >> "$(INSTDIR)\README.txt"
480 This binary distribution includes cryptographic software written by
481 Eric Young (eay@cryptsoft.com), software written by Tim Hudson
482 (tjh@cryptsoft.com), and software developed by the OpenSSL Project
483 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
485 -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
488 print "For the libeay32.dll, ssleay32.dll and certtool.exe components:";
490 while ( getline > 0 ) {
495 copy << + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
497 Apache HTTP Server 2.0 Limited OpenSSL Distribution
499 This binary distribution includes the minimal components of OpenSSL required
500 to support mod_ssl for Apache HTTP Server version 2.0 (details are listed
501 in OPENSSL-README.txt.) For the complete list of CHANGES to this and later
502 versions of OpenSSL, please refer to the definative source,
503 <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
504 full binary or source distribution package from <http://www.openssl.org/>.
506 These OpenSSL binaries were built for distribution from the U.S. without
507 support for the patented encryption methods IDEA, MDC-2 or RC5.
509 --------------------------------------------------------------------------------
511 copy << + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt" <.y
513 Apache HTTP Server 2.0 Limited OpenSSL Distribution
515 This binary installation of OpenSSL is a limited distribution of the documents
516 OPENSSL-LICENSE.txt, OPENSSL-NEWS.txt and OPENSSL-README.txt, and the binaries
522 These are the minimal libraries and tools required to use mod_ssl as
523 distributed with Apache HTTP Server version 2.0. No library link files,
524 headers or sources are distributed with this binary distribution. Please
525 refer to the <http://www.openssl.org/> site for complete source or binary
528 These OpenSSL binaries were built for distribution from the U.S. without
529 support for the patented encryption methods IDEA, MDC-2 or RC5.
531 The Apache HTTP Project only supports the binary distribution of these files
532 and development of the mod_ssl module. We cannot provide support assistance
533 for using or configuring the OpenSSL package or these modules. Please refer
534 all installation and configuration questions to the appropriate forum,
535 such as the user supported lists, <http://httpd.apache.org/userslist.html>
536 the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
537 OpenSSL support page.
539 --------------------------------------------------------------------------------
542 !IF EXIST("srclib\zlib")
543 type << >> "$(INSTDIR)\README.txt"
545 This binary distribution of mod_deflate.so includes zlib compression code
546 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
547 and Mark Adler (madler@alumni.caltech.edu) .
549 -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
551 while ( getline > 0 ) {
552 if ( $$0 ~ /Copyright notice:/ ) {
554 print "For the mod_deflate zlib compression component:";
555 while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
565 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
566 _copybin src_exe=exe src_dll=dll src_so=so \
567 inst_exe="$(INSTDIR)\bin" \
568 inst_dll="$(INSTDIR)\bin" \
569 inst_so="$(INSTDIR)\modules"
570 $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
571 _copybin src_exe=pdb src_dll=pdb src_so=pdb quiet="-" \
572 inst_exe="$(INSTDIR)\bin" \
573 inst_dll="$(INSTDIR)\bin" \
574 inst_so="$(INSTDIR)\modules"
576 $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
577 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
578 INSTALL_DIR="$(INSTDIR)\bin\iconv"
580 copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
581 -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
583 if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
584 gsub( /\\/, "/", perlroot );
589 if ( $$0 !~ /^#!/ ) {
594 xcopy docs\error "$(INSTDIR)\error" /s /d < .a
595 xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
596 xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
597 xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
598 xcopy srclib\pcre\pcre*.h "$(INSTDIR)\include" /d < .a
599 xcopy srclib\apr-util\xml\expat\lib\expat.h "$(INSTDIR)\include" /d < .a
600 xcopy srclib\apr\include\*.h "$(INSTDIR)\include" /d < .a
601 xcopy srclib\apr-util\include\*.h "$(INSTDIR)\include" /d < .a
602 xcopy include\*.h "$(INSTDIR)\include" /d < .a
603 copy srclib\apr\Lib$(SHORT)\apr-1.lib "$(INSTDIR)\lib" <.y
604 copy srclib\apr\Lib$(SHORT)\apr_src.pdb "$(INSTDIR)\lib" <.y
605 copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib "$(INSTDIR)\lib" <.y
606 copy srclib\apr-util\Lib$(SHORT)\aprutil_src.pdb "$(INSTDIR)\lib" <.y
607 copy srclib\pcre\Lib$(SHORT)\pcre.lib "$(INSTDIR)\lib" <.y
608 copy srclib\pcre\Lib$(SHORT)\pcre_src.pdb "$(INSTDIR)\lib" <.y
609 copy srclib\pcre\Lib$(SHORT)\pcreposix.lib "$(INSTDIR)\lib" <.y
610 copy srclib\pcre\Lib$(SHORT)\pcreposix_src.pdb "$(INSTDIR)\lib" <.y
611 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
612 copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml_src.pdb "$(INSTDIR)\lib" <.y
613 copy srclib\apr\$(LONG)\libapr-1.lib "$(INSTDIR)\lib" <.y
614 copy srclib\apr\$(LONG)\libapr-1.exp "$(INSTDIR)\lib" <.y
615 copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
616 copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
617 copy srclib\apr-util\$(LONG)\libaprutil-1.lib "$(INSTDIR)\lib" <.y
618 copy srclib\apr-util\$(LONG)\libaprutil-1.exp "$(INSTDIR)\lib" <.y
619 copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
620 copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
621 copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
622 copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
623 copy docs\conf\magic "$(INSTDIR)\conf\magic.default" <.y
624 if not exist "$(INSTDIR)\conf\magic" \
625 copy "$(INSTDIR)\conf\magic.default" "$(INSTDIR)\conf\magic"
626 copy docs\conf\mime.types "$(INSTDIR)\conf\mime.types.default" <.y
627 if not exist "$(INSTDIR)\conf\mime.types" \
628 copy "$(INSTDIR)\conf\mime.types.default" "$(INSTDIR)\conf\mime.types"
629 copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.default.conf" <.y
630 -awk -f <<script.awk "docs/conf/httpd-win.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\httpd.default.conf"
632 serverroot = ARGV[2];
634 gsub( /\\/, "/", serverroot );
636 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
639 gsub( /@@ServerRoot@@/, serverroot );
640 gsub( /@@ServerName@@/, "$(SERVERNAME)" );
641 gsub( /@@Port@@/, "$(PORT)" );
645 if not exist "$(INSTDIR)\conf\httpd.conf" \
646 copy "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)\conf\httpd.conf"
647 copy docs\conf\ssl-std.conf.in "$(INSTDIR)\conf\ssl.default.conf" <.y
648 -awk -f <<script.awk "docs/conf/ssl-std.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\ssl.default.conf"
650 serverroot = ARGV[2];
652 gsub( /\\/, "/", serverroot );
654 gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
657 gsub( /@@ServerRoot@@/, serverroot );
661 if not exist "$(INSTDIR)\conf\ssl.conf" \
662 copy "$(INSTDIR)\conf\ssl.default.conf" "$(INSTDIR)\conf\ssl.conf"
663 -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
664 { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
665 sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
667 if ( $$0 !~ /^#!@perlbin@/ )