]> granicus.if.org Git - apache/blob - Makefile.win
Fix the io buffersize code. Have the docs match the code
[apache] / Makefile.win
1 # Makefile for Windows NT and Windows 95/98/2000
2
3 # Targets are:
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
12 #
13 # The following install defaults may be customized;
14 #
15 #   Option      Default
16 #   INSTDIR     /Apache2x
17 #   PORT        80
18 #   SSLPORT     443
19 #   DOMAINNAME  example.com
20 #   SERVERNAME  www.example.com
21 #   SERVERNAME  admin@example.com
22 #
23 #   ALL         (unset)     Includes additional modules for build testing
24 #
25 # Provide a DBD_LIST argument after configuring LIB and INCLUDE with
26 # the SDK paths of the corresponding client support libraries.
27 # The ODBC driver is always built on Windows
28 #
29 #     DBD_LIST="sqlite3 pgsql oracle mysql freetds"
30 #
31 # For example;
32 #
33 #   nmake -f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
34 #
35 # Be aware that certain awk's will not accept backslashed names,
36 # so the server root should be given in forward slashes (quoted),
37 # preferably with the drive designation!
38
39 !IF EXIST("httpd.vcproj") && ([devenv /help > NUL 2>&1] == 0) \
40     && !defined(USEMAK) && !defined(USEDSW)
41 USESLN=1
42 USEMAK=0
43 USEDSW=0
44 !ELSEIF EXIST("httpd.mak") && !defined(USEDSW)
45 USESLN=0
46 USEMAK=1
47 USEDSW=0
48 !ELSE
49 USESLN=0
50 USEMAK=0
51 USEDSW=1
52 !ENDIF
53
54 default: _apacher
55
56 !IF ("$(CTARGET)" == "") && ($(USESLN) == 1)
57 CTARGET=/build
58 !ENDIF
59
60 !IF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
61 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
62 !MESSAGE sources (apr, apr-iconv and apr-util) into your srclib dir.
63 !MESSAGE Apache cannot build without these libraries!
64 !MESSAGE 
65 !ERROR Need srclib\  apr, apr-iconv and apr-util
66 !ENDIF
67
68 # Note; _tryssl: is only used by the msvc developer studio environment to 'fix up'
69 #       the build, since conditional dependencies aren't supported.
70 #
71 !IF EXIST("srclib\openssl")
72 !IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe")
73 SSLBIN=out32dll.dbg
74 !ELSE
75 SSLBIN=out32dll
76 !ENDIF
77
78 _tryssl:
79 !IF $(USEMAK) == 1
80         cd modules\ssl
81         $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
82         cd ..\..
83         cd support
84         $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
85         cd ..
86 !ELSEIF $(USESLN) == 1
87         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
88         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
89 !ELSE
90         @msdev Apache.dsw /USEENV /MAKE \
91                 "mod_ssl - Win32 $(LONG)" \
92                 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
93 !ENDIF
94
95 !ELSE
96 #     NOT EXIST("srclib\openssl")
97
98 _tryssl:
99         @echo -----
100         @echo mod_ssl and ab/ssl will not build unless openssl is installed
101         @echo in srclib\openssl.  They must be precompiled using the 
102         @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32.  The most
103         @echo recent version confirmed to build with mod_ssl and ab is 0.9.8d.
104         @echo Available from http://www.openssl.org/
105 !ENDIF
106
107 !IF EXIST("srclib\zlib")
108
109 _tryzlib:
110 !IF $(USEMAK) == 1
111         cd modules\filters
112         $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
113         cd ..\..
114 !ELSEIF $(USESLN) == 1
115         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
116 !ELSE
117         @msdev Apache.dsw /USEENV /MAKE \
118                 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
119 !ENDIF
120
121 !ELSE
122 #     NOT EXIST("srclib\zlib")
123
124 _tryzlib:
125         @echo -----
126         @echo mod_deflate will not build unless zlib is installed in srclib\zlib.  
127         @echo Version 1.2.1 and later available from http://www.gzip.org/zlib/
128         @echo built w/ nmake -f win32/Makefile.msc will satisfy this requirement.
129
130 !ENDIF
131
132
133
134 _trydbd:
135 !IF $(USEMAK) == 1
136         cd srclib\apr-util\dbd
137         for %d in (odbc $(DBD_LIST)) do \
138           $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
139         cd ..\..\..
140 !ELSEIF $(USESLN) == 1
141         for %d in (odbc $(DBD_LIST)) do \
142           devenv Apache.sln /useenv $(CTARGET) $(LONG) /project apr_dbd_%d
143 !ELSE
144         @for %d in (odbc $(DBD_LIST)) do \
145           msdev Apache.dsw /USEENV /MAKE \
146                 "apr_dbd_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
147 !ENDIF
148
149
150 !IF "$(INSTDIR)" == ""
151 INSTDIR=\Apache2x
152 !ENDIF
153 !IF "$(DOMAINNAME)" == ""
154 DOMAINNAME=example.com
155 !ENDIF 
156 !IF "$(SERVERNAME)" == ""
157 SERVERNAME=www.$(DOMAINNAME)
158 !ENDIF
159 !IF "$(SERVERADMIN)" == ""
160 SERVERADMIN=admin@$(DOMAINNAME)
161 !ENDIF
162 !IF "$(PORT)" == ""
163 PORT=80
164 !ENDIF 
165 !IF "$(SSLPORT)" == ""
166 SSLPORT=443
167 !ENDIF 
168
169 !IF "$(LONG)" == ""
170 !MESSAGE
171 !MESSAGE INSTDIR     = $(INSTDIR)
172 !MESSAGE DOMAINNAME  = $(DOMAINNAME)
173 !MESSAGE SERVERNAME  = $(SERVERNAME)
174 !MESSAGE SERVERADMIN = $(SERVERADMIN)
175 !MESSAGE PORT        = $(PORT)
176 !IF EXIST("srclib\openssl")
177 !MESSAGE SSLPORT     = $(SSLPORT)
178 !ENDIF
179 !MESSAGE
180 !MESSAGE To change these options use 'nmake -f Makefile.win [option=value]'
181 !MESSAGE Example: nmake -f Makefile.win PORT=8080
182 !MESSAGE
183 !MESSAGE
184 !ENDIF
185
186 !IFNDEF MAKEOPT
187 # Only default the behavior if MAKEOPT= is omitted
188 !IFDEF _NMAKE_VER
189 # Microsoft NMake options
190 MAKEOPT=-nologo
191 !ELSEIF "$(MAKE)" == "make"
192 # Borland make options?  Not really supported (yet)
193 MAKEOPT=-s -N
194 !ENDIF
195 !ENDIF
196
197 _dummy:
198
199 _browse:
200         cd Browse
201           bscmake.exe -nologo -Iu -o Apache.bsc *.sbr
202         cd ..
203
204 _apacher: 
205         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
206
207 _apached: 
208         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   _build
209
210 installr: 
211         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
212
213 installd: 
214         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   _build _install
215
216 clean:  _cleanr _cleand
217         -if exist Browse\. rd /s Browse < << > nul
218 y
219 <<
220
221 !IF $(USEMAK) == 1
222
223 _cleanr:
224         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
225
226 _cleand:  
227         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET=CLEAN _build
228
229 _build:
230         echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
231         cd srclib\apr
232          $(MAKE) $(MAKEOPT) -f apr.mak             CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
233          $(MAKE) $(MAKEOPT) -f libapr.mak          CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
234         cd ..\..
235         cd srclib\apr-iconv
236          $(MAKE) $(MAKEOPT) -f apriconv.mak  CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
237          $(MAKE) $(MAKEOPT) -f libapriconv.mak  CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
238 !IF "$(CTARGET)" == "CLEAN"
239         $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
240                 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
241 !ELSE
242         cd ccs
243         $(MAKE) $(MAKEOPT) -f Makefile.win all \
244                 BUILD_MODE=$(LONG) BIND_MODE=shared
245         cd ..\ces
246         $(MAKE) $(MAKEOPT) -f Makefile.win all \
247                 BUILD_MODE=$(LONG) BIND_MODE=shared
248         cd ..
249 !ENDIF
250         cd ..\..
251         cd srclib\apr-util\xml\expat\lib
252          $(MAKE) $(MAKEOPT) -f xml.mak             CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
253         cd ..\..\..
254          $(MAKE) $(MAKEOPT) -f aprutil.mak         CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
255          $(MAKE) $(MAKEOPT) -f libaprutil.mak      CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
256         cd ldap
257          $(MAKE) $(MAKEOPT) -f apr_ldap.mak        CFG="apr_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
258         cd ..
259         cd dbd
260           for %d in (odbc $(DBD_LIST)) do \
261             $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak   CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
262         cd ..
263         cd ..\..
264         cd srclib\pcre
265          $(MAKE) $(MAKEOPT) -f dftables.mak        CFG="dftables - Win32 $(LONG)" RECURSE=0 $(CTARGET)
266          $(MAKE) $(MAKEOPT) -f pcre.mak            CFG="pcre - Win32 $(LONG)" RECURSE=0 $(CTARGET)
267         cd ..\..
268         cd server
269          $(MAKE) $(MAKEOPT) -f gen_test_char.mak   CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
270         cd ..
271          $(MAKE) $(MAKEOPT) -f libhttpd.mak        CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
272          $(MAKE) $(MAKEOPT) -f httpd.mak           CFG="httpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
273 # build ldap prior to authnz_ldap
274         cd modules\ldap
275          $(MAKE) $(MAKEOPT) -f mod_ldap.mak        CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
276         cd ..\..
277         cd modules\database
278          $(MAKE) $(MAKEOPT) -f mod_dbd.mak         CFG="mod_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
279         cd ..\..
280         cd modules\aaa
281          $(MAKE) $(MAKEOPT) -f mod_access_compat.mak CFG="mod_access_compat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
282          $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak  CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
283          $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
284          $(MAKE) $(MAKEOPT) -f mod_auth_form.mak   CFG="mod_auth_form - Win32 $(LONG)" RECURSE=0 $(CTARGET)
285          $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak  CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
286          $(MAKE) $(MAKEOPT) -f mod_authn_core.mak  CFG="mod_authn_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
287          $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak   CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
288          $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak   CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
289          $(MAKE) $(MAKEOPT) -f mod_authn_default.mak CFG="mod_authn_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
290          $(MAKE) $(MAKEOPT) -f mod_authn_file.mak  CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
291          $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
292          $(MAKE) $(MAKEOPT) -f mod_authz_core.mak  CFG="mod_authz_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
293          $(MAKE) $(MAKEOPT) -f mod_authz_dbd.mak   CFG="mod_authz_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
294          $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak   CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
295          $(MAKE) $(MAKEOPT) -f mod_authz_default.mak CFG="mod_authz_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
296          $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
297          $(MAKE) $(MAKEOPT) -f mod_authz_host.mak  CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
298          $(MAKE) $(MAKEOPT) -f mod_authz_owner.mak CFG="mod_authz_owner - Win32 $(LONG)" RECURSE=0 $(CTARGET)
299          $(MAKE) $(MAKEOPT) -f mod_authz_user.mak  CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
300         cd ..\..
301         cd modules\arch\win32
302          $(MAKE) $(MAKEOPT) -f mod_isapi.mak       CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
303         cd ..\..\..
304         cd modules\cache
305          $(MAKE) $(MAKEOPT) -f mod_cache.mak       CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
306          $(MAKE) $(MAKEOPT) -f mod_file_cache.mak  CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
307          $(MAKE) $(MAKEOPT) -f mod_mem_cache.mak   CFG="mod_mem_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
308          $(MAKE) $(MAKEOPT) -f mod_disk_cache.mak  CFG="mod_disk_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
309          $(MAKE) $(MAKEOPT) -f mod_socache_dbm.mak CFG="mod_socache_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
310 !IFDEF ALL
311          $(MAKE) $(MAKEOPT) -f mod_socache_dc.mak  CFG="mod_socache_dc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
312 !ENDIF
313          $(MAKE) $(MAKEOPT) -f mod_socache_memcache.mak CFG="mod_socache_memcache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
314          $(MAKE) $(MAKEOPT) -f mod_socache_shmcb.mak CFG="mod_socache_shmcb - Win32 $(LONG)" RECURSE=0 $(CTARGET)
315         cd ..\..
316         cd modules\dav\main
317          $(MAKE) $(MAKEOPT) -f mod_dav.mak         CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
318         cd ..\..\..
319         cd modules\dav\fs
320          $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak      CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
321         cd ..\..\..
322         cd modules\dav\lock
323          $(MAKE) $(MAKEOPT) -f mod_dav_lock.mak    CFG="mod_dav_lock - Win32 $(LONG)" RECURSE=0 $(CTARGET)
324         cd ..\..\..
325         cd modules\debugging
326 !IFDEF ALL
327          $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak   CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
328 !ENDIF
329          $(MAKE) $(MAKEOPT) -f mod_dumpio.mak      CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
330         cd ..\..
331         cd modules\echo
332 !IFDEF ALL
333          $(MAKE) $(MAKEOPT) -f mod_echo.mak        CFG="mod_echo - Win32 $(LONG)" RECURSE=0 $(CTARGET)
334 !ENDIF
335         cd ..\..
336 !IFDEF ALL
337         cd modules\examples
338          $(MAKE) $(MAKEOPT) -f mod_case_filter.mak    CFG="mod_case_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
339          $(MAKE) $(MAKEOPT) -f mod_case_filter_in.mak CFG="mod_case_filter_in - Win32 $(LONG)" RECURSE=0 $(CTARGET)
340          $(MAKE) $(MAKEOPT) -f mod_example_hooks.mak  CFG="mod_example_hooks - Win32 $(LONG)" RECURSE=0 $(CTARGET)
341          $(MAKE) $(MAKEOPT) -f mod_example_ipc.mak    CFG="mod_example_ipc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
342         cd ..\..
343 !ENDIF
344         cd modules\filters
345          $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
346 !IF EXIST("srclib\zlib")
347          $(MAKE) $(MAKEOPT) -f mod_deflate.mak     CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
348 !ENDIF
349          $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak  CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
350          $(MAKE) $(MAKEOPT) -f mod_filter.mak      CFG="mod_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
351          $(MAKE) $(MAKEOPT) -f mod_include.mak     CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
352          $(MAKE) $(MAKEOPT) -f mod_request.mak     CFG="mod_request - Win32 $(LONG)" RECURSE=0 $(CTARGET)
353          $(MAKE) $(MAKEOPT) -f mod_substitute.mak  CFG="mod_substitute - Win32 $(LONG)" RECURSE=0 $(CTARGET)
354         cd ..\..
355         cd modules\generators
356          $(MAKE) $(MAKEOPT) -f mod_asis.mak        CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
357          $(MAKE) $(MAKEOPT) -f mod_autoindex.mak   CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
358          $(MAKE) $(MAKEOPT) -f mod_cgi.mak         CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
359          $(MAKE) $(MAKEOPT) -f mod_info.mak        CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
360          $(MAKE) $(MAKEOPT) -f mod_status.mak      CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
361         cd ..\..
362         cd modules\http
363          $(MAKE) $(MAKEOPT) -f mod_mime.mak        CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
364         cd ..\..
365         cd modules\loggers
366          $(MAKE) $(MAKEOPT) -f mod_log_config.mak  CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
367          $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
368          $(MAKE) $(MAKEOPT) -f mod_logio.mak       CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
369         cd ..\..
370         cd modules\mappers
371          $(MAKE) $(MAKEOPT) -f mod_actions.mak     CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
372          $(MAKE) $(MAKEOPT) -f mod_alias.mak       CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
373          $(MAKE) $(MAKEOPT) -f mod_dir.mak         CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
374          $(MAKE) $(MAKEOPT) -f mod_imagemap.mak    CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
375          $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
376          $(MAKE) $(MAKEOPT) -f mod_rewrite.mak     CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
377          $(MAKE) $(MAKEOPT) -f mod_speling.mak     CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
378          $(MAKE) $(MAKEOPT) -f mod_userdir.mak     CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
379          $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
380         cd ..\..
381         cd modules\metadata
382          $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak   CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
383          $(MAKE) $(MAKEOPT) -f mod_env.mak         CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
384          $(MAKE) $(MAKEOPT) -f mod_expires.mak     CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
385          $(MAKE) $(MAKEOPT) -f mod_headers.mak     CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
386          $(MAKE) $(MAKEOPT) -f mod_ident.mak       CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
387          $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak  CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
388          $(MAKE) $(MAKEOPT) -f mod_setenvif.mak    CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
389          $(MAKE) $(MAKEOPT) -f mod_unique_id.mak   CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
390          $(MAKE) $(MAKEOPT) -f mod_usertrack.mak   CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
391          $(MAKE) $(MAKEOPT) -f mod_version.mak     CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
392         cd ..\..
393         cd modules\proxy
394          $(MAKE) $(MAKEOPT) -f mod_proxy.mak       CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
395          $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak   CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
396          $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak  CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
397          $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
398          $(MAKE) $(MAKEOPT) -f mod_proxy_fcgi.mak  CFG="mod_proxy_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
399          $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak   CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
400          $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak  CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
401         cd ..\..
402 !IFDEF ALL
403         cd modules\proxy\examples
404          $(MAKE) $(MAKEOPT) -f mod_lbmethod_rr.mak CFG="mod_lbmethod_rr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
405         cd ..\..\..
406 !ENDIF
407         cd modules\session
408          $(MAKE) $(MAKEOPT) -f mod_session.mak        CFG="mod_session - Win32 $(LONG)" RECURSE=0 $(CTARGET)
409          $(MAKE) $(MAKEOPT) -f mod_session_cookie.mak CFG="mod_session_cookie - Win32 $(LONG)" RECURSE=0 $(CTARGET)
410          $(MAKE) $(MAKEOPT) -f mod_session_dbd.mak    CFG="mod_session_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
411         cd ..\..
412 !IF EXIST("srclib\openssl")
413         #cd modules\session
414         # $(MAKE) $(MAKEOPT) -f mod_session_crypto.mak CFG="mod_session_crypto - Win32 $(LONG)" RECURSE=0 $(CTARGET)
415         #cd ..\..
416         cd modules\ssl
417          $(MAKE) $(MAKEOPT) -f mod_ssl.mak         CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
418         cd ..\..
419         cd support
420          $(MAKE) $(MAKEOPT) -f abs.mak             CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
421         cd ..
422 !ENDIF
423         cd support
424          $(MAKE) $(MAKEOPT) -f ab.mak              CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
425 #        $(MAKE) $(MAKEOPT) -f fcgistarter.mak     CFG="fcgistarter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
426          $(MAKE) $(MAKEOPT) -f htcacheclean.mak    CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET)
427          $(MAKE) $(MAKEOPT) -f htdbm.mak           CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
428          $(MAKE) $(MAKEOPT) -f htdigest.mak        CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
429          $(MAKE) $(MAKEOPT) -f htpasswd.mak        CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
430          $(MAKE) $(MAKEOPT) -f httxt2dbm.mak       CFG="httxt2dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
431          $(MAKE) $(MAKEOPT) -f logresolve.mak      CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
432          $(MAKE) $(MAKEOPT) -f rotatelogs.mak      CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
433         cd ..
434         cd support\win32
435          $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak   CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
436          $(MAKE) $(MAKEOPT) -f wintty.mak          CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
437         cd ..\..
438
439 !ELSEIF $(USESLN) == 1
440
441 _cleanr:  
442         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
443
444 _cleand:  
445         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET="/clean" _build
446
447 _build:
448         echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
449 !IFDEF ALL
450         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildAll
451 !ELSE
452         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildBin
453 !ENDIF
454 !IF EXIST("srclib\openssl")
455         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
456         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
457 !ENDIF
458 !IF EXIST("srclib\zlib")
459         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
460 !ENDIF
461
462 !ELSE
463
464 _cleanr:  
465         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
466
467 _cleand:  
468         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET="/CLEAN" _build
469
470 _build:
471         @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
472 !IFDEF ALL
473         @msdev Apache.dsw /USEENV /MAKE \
474                 "BuildAll - Win32 $(LONG)" $(CTARGET)
475 !ELSE
476         @msdev Apache.dsw /USEENV /MAKE \
477                 "BuildBin - Win32 $(LONG)" $(CTARGET)
478 !ENDIF
479 !IF "$(CTARGET)" == "/CLEAN"
480         @cd srclib\apr-iconv
481         @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
482                 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
483         @cd ..\..
484 !ENDIF
485 !IF EXIST("srclib\openssl")
486         @msdev Apache.dsw /USEENV /MAKE \
487                 "mod_ssl - Win32 $(LONG)" \
488                 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
489 !ENDIF
490 !IF EXIST("srclib\zlib")
491         @msdev Apache.dsw /USEENV /MAKE \
492                 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
493 !ENDIF
494
495 !ENDIF
496
497
498 _copybin:
499         copy $(LONG)\httpd.$(src_exe)                           "$(inst_exe)" <.y
500         copy $(LONG)\libhttpd.$(src_dll)                        "$(inst_dll)" <.y
501         copy srclib\apr\$(LONG)\libapr-1.$(src_dll)             "$(inst_dll)" <.y
502         copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll)  "$(inst_dll)" <.y
503         copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll)    "$(inst_dll)" <.y
504         copy srclib\apr-util\ldap\$(LONG)\apr_ldap-1.$(src_dll) "$(inst_dll)" <.y
505         for %d in (odbc $(DBD_LIST)) do ( \
506           copy srclib\apr-util\dbd\$(LONG)\apr_dbd_%d-1.$(src_dll) "$(inst_dll)" <.y \
507         )
508         copy modules\aaa\$(LONG)\mod_access_compat.$(src_so)    "$(inst_so)" <.y
509         copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so)       "$(inst_so)" <.y
510         copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so)      "$(inst_so)" <.y
511         copy modules\aaa\$(LONG)\mod_auth_form.$(src_so)        "$(inst_so)" <.y
512         copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so)       "$(inst_so)" <.y
513         copy modules\aaa\$(LONG)\mod_authn_core.$(src_so)       "$(inst_so)" <.y
514         copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so)        "$(inst_so)" <.y
515         copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so)        "$(inst_so)" <.y
516         copy modules\aaa\$(LONG)\mod_authn_default.$(src_so)    "$(inst_so)" <.y
517         copy modules\aaa\$(LONG)\mod_authn_file.$(src_so)       "$(inst_so)" <.y
518         copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so)      "$(inst_so)" <.y
519         copy modules\aaa\$(LONG)\mod_authz_core.$(src_so)       "$(inst_so)" <.y
520         copy modules\aaa\$(LONG)\mod_authz_dbd.$(src_so)        "$(inst_so)" <.y
521         copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so)        "$(inst_so)" <.y
522         copy modules\aaa\$(LONG)\mod_authz_core.$(src_so)       "$(inst_so)" <.y
523         copy modules\aaa\$(LONG)\mod_authz_default.$(src_so)    "$(inst_so)" <.y
524         copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so)  "$(inst_so)" <.y
525         copy modules\aaa\$(LONG)\mod_authz_host.$(src_so)       "$(inst_so)" <.y
526         copy modules\aaa\$(LONG)\mod_authz_owner.$(src_so)      "$(inst_so)" <.y
527         copy modules\aaa\$(LONG)\mod_authz_user.$(src_so)       "$(inst_so)" <.y
528         copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so)     "$(inst_so)" <.y
529         copy modules\cache\$(LONG)\mod_cache.$(src_so)          "$(inst_so)" <.y
530         copy modules\cache\$(LONG)\mod_file_cache.$(src_so)     "$(inst_so)" <.y
531         copy modules\cache\$(LONG)\mod_mem_cache.$(src_so)      "$(inst_so)" <.y
532         copy modules\cache\$(LONG)\mod_disk_cache.$(src_so)     "$(inst_so)" <.y
533         copy modules\cache\$(LONG)\mod_socache_dbm.$(src_so)    "$(inst_so)" <.y
534         -copy modules\cache\$(LONG)\mod_socache_dc.$(src_so)    "$(inst_so)" <.y
535         copy modules\cache\$(LONG)\mod_socache_memcache.$(src_so) "$(inst_so)" <.y
536         copy modules\cache\$(LONG)\mod_socache_shmcb.$(src_so)  "$(inst_so)" <.y
537         copy modules\database\$(LONG)\mod_dbd.$(src_so)         "$(inst_so)" <.y
538         copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so)        "$(inst_so)" <.y
539         copy modules\dav\lock\$(LONG)\mod_dav_lock.$(src_so)    "$(inst_so)" <.y
540         copy modules\dav\main\$(LONG)\mod_dav.$(src_so)         "$(inst_so)" <.y
541 !IFDEF ALL
542         copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so)  "$(inst_so)" <.y
543 !ENDIF
544         copy modules\debugging\$(LONG)\mod_dumpio.$(src_so)     "$(inst_so)" <.y
545 !IFDEF ALL
546         copy modules\echo\$(LONG)\mod_echo.$(src_so)            "$(inst_so)" <.y
547         copy modules\examples\$(LONG)\mod_case_filter.$(src_so)    "$(inst_so)" <.y
548         copy modules\examples\$(LONG)\mod_case_filter_in.$(src_so) "$(inst_so)" <.y
549         copy modules\examples\$(LONG)\mod_example_hooks.$(src_so)  "$(inst_so)" <.y
550         copy modules\examples\$(LONG)\mod_example_ipc.$(src_so)    "$(inst_so)" <.y
551 !ENDIF
552         copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
553 !IF EXIST("srclib\zlib")
554         copy modules\filters\$(LONG)\mod_deflate.$(src_so)      "$(inst_so)" <.y
555 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
556         copy srclib\zlib\zlib1.$(src_dll)                       "$(inst_dll)" <.y
557 !ENDIF
558 !ENDIF
559         copy modules\filters\$(LONG)\mod_ext_filter.$(src_so)   "$(inst_so)" <.y
560         copy modules\filters\$(LONG)\mod_filter.$(src_so)       "$(inst_so)" <.y
561         copy modules\filters\$(LONG)\mod_include.$(src_so)      "$(inst_so)" <.y
562         copy modules\filters\$(LONG)\mod_request.$(src_so)      "$(inst_so)" <.y
563         copy modules\filters\$(LONG)\mod_substitute.$(src_so)   "$(inst_so)" <.y
564         copy modules\generators\$(LONG)\mod_asis.$(src_so)      "$(inst_so)" <.y
565         copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
566         copy modules\generators\$(LONG)\mod_cgi.$(src_so)       "$(inst_so)" <.y
567         copy modules\generators\$(LONG)\mod_info.$(src_so)      "$(inst_so)" <.y
568         copy modules\generators\$(LONG)\mod_status.$(src_so)    "$(inst_so)" <.y
569         copy modules\http\$(LONG)\mod_mime.$(src_so)            "$(inst_so)" <.y
570         copy modules\ldap\$(LONG)\mod_ldap.$(src_so)            "$(inst_so)" <.y
571         copy modules\loggers\$(LONG)\mod_log_config.$(src_so)   "$(inst_so)" <.y
572         copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
573         copy modules\loggers\$(LONG)\mod_logio.$(src_so)        "$(inst_so)" <.y
574         copy modules\mappers\$(LONG)\mod_actions.$(src_so)      "$(inst_so)" <.y
575         copy modules\mappers\$(LONG)\mod_alias.$(src_so)        "$(inst_so)" <.y
576         copy modules\mappers\$(LONG)\mod_dir.$(src_so)          "$(inst_so)" <.y
577         copy modules\mappers\$(LONG)\mod_imagemap.$(src_so)     "$(inst_so)" <.y
578         copy modules\mappers\$(LONG)\mod_negotiation.$(src_so)  "$(inst_so)" <.y
579         copy modules\mappers\$(LONG)\mod_rewrite.$(src_so)      "$(inst_so)" <.y
580         copy modules\mappers\$(LONG)\mod_speling.$(src_so)      "$(inst_so)" <.y
581         copy modules\mappers\$(LONG)\mod_userdir.$(src_so)      "$(inst_so)" <.y
582         copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so)  "$(inst_so)" <.y
583         copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so)   "$(inst_so)" <.y
584         copy modules\metadata\$(LONG)\mod_env.$(src_so)         "$(inst_so)" <.y
585         copy modules\metadata\$(LONG)\mod_expires.$(src_so)     "$(inst_so)" <.y
586         copy modules\metadata\$(LONG)\mod_headers.$(src_so)     "$(inst_so)" <.y
587         copy modules\metadata\$(LONG)\mod_ident.$(src_so)       "$(inst_so)" <.y
588         copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so)  "$(inst_so)" <.y
589         copy modules\metadata\$(LONG)\mod_setenvif.$(src_so)    "$(inst_so)" <.y
590         copy modules\metadata\$(LONG)\mod_unique_id.$(src_so)   "$(inst_so)" <.y
591         copy modules\metadata\$(LONG)\mod_usertrack.$(src_so)   "$(inst_so)" <.y
592         copy modules\metadata\$(LONG)\mod_version.$(src_so)     "$(inst_so)" <.y
593         copy modules\proxy\$(LONG)\mod_proxy.$(src_so)          "$(inst_so)" <.y
594         copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so)      "$(inst_so)" <.y
595         copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
596         copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so)  "$(inst_so)" <.y
597         copy modules\proxy\$(LONG)\mod_proxy_fcgi.$(src_so)     "$(inst_so)" <.y
598         copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so)      "$(inst_so)" <.y
599         copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so)     "$(inst_so)" <.y
600 !IFDEF ALL
601         -copy modules\proxy\examples\$(LONG)\mod_lbmethod_rr.$(src_so) "$(inst_so)" <.y
602 !ENDIF
603         copy modules\session\$(LONG)\mod_session.$(src_so)        "$(inst_so)" <.y
604         copy modules\session\$(LONG)\mod_session_cookie.$(src_so) "$(inst_so)" <.y
605         copy modules\session\$(LONG)\mod_session_dbd.$(src_so)    "$(inst_so)" <.y
606 !IF EXIST("srclib\openssl")
607 !IFDEF ALL
608         -copy modules\session\$(LONG)\mod_session_crypto.$(src_so) "$(inst_so)" <.y
609 !ENDIF
610         copy modules\ssl\$(LONG)\mod_ssl.$(src_so)              "$(inst_so)" <.y
611         -copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll)      "$(inst_dll)" <.y
612         -copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll)      "$(inst_dll)" <.y
613         -copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe)       "$(inst_exe)" <.y
614         copy support\$(LONG)\abs.$(src_exe)                     "$(inst_exe)" <.y
615 !ENDIF
616         copy support\$(LONG)\ab.$(src_exe)                      "$(inst_exe)" <.y
617 #       copy support\$(LONG)\fcgistarter.$(src_exe)             "$(inst_exe)" <.y
618         copy support\$(LONG)\htcacheclean.$(src_exe)            "$(inst_exe)" <.y
619         copy support\$(LONG)\htdbm.$(src_exe)                   "$(inst_exe)" <.y
620         copy support\$(LONG)\htdigest.$(src_exe)                "$(inst_exe)" <.y
621         copy support\$(LONG)\htpasswd.$(src_exe)                "$(inst_exe)" <.y
622         copy support\$(LONG)\httxt2dbm.$(src_exe)               "$(inst_exe)" <.y
623         copy support\$(LONG)\logresolve.$(src_exe)              "$(inst_exe)" <.y
624         copy support\$(LONG)\rotatelogs.$(src_exe)              "$(inst_exe)" <.y
625         copy support\win32\$(LONG)\ApacheMonitor.$(src_exe)     "$(inst_exe)" <.y
626         copy support\win32\$(LONG)\wintty.$(src_exe)            "$(inst_exe)" <.y
627
628
629 # First we create the tree and populate the README so that 
630 # whatever happens, all licensing has already propagated.  
631 # Then repeatedly invoke the _copybin build to copy the
632 # real binaries, then pdb symbols, anf finally dbg syms.
633 # Then hit docs of various sorts, then includes and libs,
634 # and finally do the .conf magic.
635 #
636 _install:
637         echo Y >.y
638         echo A >.A
639         -mkdir "$(INSTDIR)"
640         -mkdir "$(INSTDIR)\bin"
641         -mkdir "$(INSTDIR)\bin\iconv"
642         -mkdir "$(INSTDIR)\cgi-bin"
643         -mkdir "$(INSTDIR)\conf"
644         -mkdir "$(INSTDIR)\conf\extra"
645         -mkdir "$(INSTDIR)\conf\original"
646         -mkdir "$(INSTDIR)\conf\original\extra"
647         -mkdir "$(INSTDIR)\error"
648         -mkdir "$(INSTDIR)\htdocs"
649         -mkdir "$(INSTDIR)\manual"
650         -mkdir "$(INSTDIR)\icons"
651         -mkdir "$(INSTDIR)\include"
652         -mkdir "$(INSTDIR)\lib"
653         -mkdir "$(INSTDIR)\logs"
654         -mkdir "$(INSTDIR)\modules"
655         -mkdir "$(INSTDIR)\symbols"
656         -mkdir "$(INSTDIR)\symbols\exe"
657         -mkdir "$(INSTDIR)\symbols\dll"
658         -mkdir "$(INSTDIR)\symbols\so"
659         copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
660         copy CHANGES      "$(INSTDIR)\CHANGES.txt" <.y
661         copy INSTALL      "$(INSTDIR)\INSTALL.txt" <.y
662         copy LICENSE      "$(INSTDIR)\LICENSE.txt" <.y
663         copy NOTICE       "$(INSTDIR)\NOTICE.txt" <.y
664         copy README       "$(INSTDIR)\README.txt" <.y
665 !IF EXIST("srclib\openssl")
666         -copy srclib\openssl\apps\openssl.cnf "$(INSTDIR)\conf\openssl.cnf" <.y
667         type << >> "$(INSTDIR)\NOTICE.txt"
668
669   This binary distribution includes cryptographic software written by
670   Eric Young (eay@cryptsoft.com), software written by Tim Hudson 
671   (tjh@cryptsoft.com), and software developed by the OpenSSL Project 
672   for use in the OpenSSL Toolkit <http://www.openssl.org/>.
673 <<
674         -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
675 BEGIN {
676     print "";
677     print "For the libeay32.dll, ssleay32.dll and openssl.exe components:";
678     print "";
679     while ( getline > 0 ) {
680         print $$0;
681    }
682 }
683 <<
684         copy << "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
685
686  Apache HTTP Server 2.3 Limited OpenSSL Distribution
687
688  This binary distribution includes the minimal components of OpenSSL required
689  to support mod_ssl for Apache HTTP Server version 2.3 (details are listed 
690  in OPENSSL-README.txt.)  For the complete list of CHANGES to this and later 
691  versions of OpenSSL, please refer to the definative source,
692  <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
693  full binary or source distribution package from <http://www.openssl.org/>.
694
695  These OpenSSL binaries were built for distribution from the U.S. without 
696  support for the patented encryption methods IDEA, MDC-2 or RC5.
697
698 --------------------------------------------------------------------------------
699
700 <<
701         -copy "$(INSTDIR)\OPENSSL-NEWS.txt" \
702             + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt"
703         copy << "$(INSTDIR)\OPENSSL-README.txt" <.y
704
705  Apache HTTP Server 2.3 Limited OpenSSL Distribution
706
707  This binary installation of OpenSSL is a limited distribution of the
708  files derived from the OpenSSL project:
709
710    LICENSE.txt (includes openssl LICENSE)
711    OPENSSL-NEWS.txt
712    OPENSSL-README.txt
713    conf\openssl.cnf
714    bin\libeay32.dll
715    bin\ssleay32.dll
716    bin\openssl.exe
717
718  These are the minimal libraries and tools required to use mod_ssl as 
719  distributed with Apache HTTP Server version 2.3.  No library link files, 
720  headers or sources are distributed with this binary distribution.  Please 
721  refer to the <http://www.openssl.org/> site for complete source or binary 
722  distributions.
723
724  These OpenSSL binaries were built for distribution from the U.S. without 
725  support for the patented encryption methods IDEA, MDC-2 or RC5.
726
727  The Apache HTTP Project only supports the binary distribution of these files
728  and development of the mod_ssl module.  We cannot provide support assistance
729  for using or configuring the OpenSSL package or these modules.  Please refer
730  all installation and configuration questions to the appropriate forum,
731  such as the user supported lists, <http://httpd.apache.org/userslist.html> 
732  the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
733  OpenSSL support page.
734
735 --------------------------------------------------------------------------------
736
737 <<
738         -copy "$(INSTDIR)\OPENSSL-README.txt" \
739             + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt"
740 !ENDIF
741 !IF EXIST("srclib\zlib")
742         type << >> "$(INSTDIR)\NOTICE.txt"
743
744   This binary distribution of mod_deflate.so includes zlib compression code
745   <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
746   and Mark Adler (madler@alumni.caltech.edu) .
747 <<
748         -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
749 BEGIN {
750     while ( getline > 0 ) {
751         if ( $$0 ~ /Copyright notice:/ ) {
752             print "";
753             print "For the mod_deflate zlib compression component:";
754             while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
755                 print $$0;
756             }
757             exit 0;
758         }
759     }
760     exit 1;
761 }
762 <<
763 !ENDIF
764         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
765                 _copybin src_exe=exe src_dll=dll src_so=so             \
766                 inst_exe="$(INSTDIR)\bin"                              \
767                 inst_dll="$(INSTDIR)\bin"                              \
768                 inst_so="$(INSTDIR)\modules"
769         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
770                 _copybin src_exe=pdb src_dll=pdb src_so=pdb            \
771                 inst_exe="$(INSTDIR)\bin"                              \
772                 inst_dll="$(INSTDIR)\bin"                              \
773                 inst_so="$(INSTDIR)\modules"
774         cd srclib\apr-iconv
775         $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
776                 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
777                 INSTALL_DIR="$(INSTDIR)\bin\iconv"
778         cd ..\..
779         copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
780         -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
781     BEGIN { 
782         if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
783             gsub( /\\/, "/", perlroot );
784             print "#!" perlroot;
785         }
786     }
787     {
788         if ( $$0 !~ /^#!/ ) {
789             print $$0;
790         }
791     }
792 <<
793         xcopy docs\error        "$(INSTDIR)\error" /s /d < .a
794         xcopy docs\docroot      "$(INSTDIR)\htdocs" /d < .a
795         xcopy docs\icons        "$(INSTDIR)\icons" /s /d < .a
796         xcopy docs\manual       "$(INSTDIR)\manual" /s /d < .a
797         for %f in ( \
798                 srclib\apr-util\xml\expat\lib\expat.h \
799                 srclib\apr\include\*.h \
800                 srclib\apr-util\include\*.h \
801                 include\*.h \
802                 os\win32\os.h \
803                 server\mpm\winnt\mpm*.h \
804                 modules\database\mod_dbd.h \
805                 modules\dav\main\mod_dav.h \
806                 modules\filters\mod_include.h \
807                 modules\generators\mod_cgi.h \
808                 modules\generators\mod_status.h \
809                 modules\loggers\mod_log_config.h \
810                 modules\proxy\mod_proxy.h \
811                 modules\ssl\mod_ssl.h \
812                 modules\mappers\mod_so.h \
813                 modules\mappers\mod_rewrite.h \
814                 modules\cache\mod_cache.h ) do \
815             @copy %f "$(INSTDIR)\include" < .y > nul
816         copy srclib\apr\Lib$(SHORT)\apr-1.lib           "$(INSTDIR)\lib" <.y
817         copy srclib\apr\Lib$(SHORT)\apr-1.pdb           "$(INSTDIR)\lib" <.y
818         copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib  "$(INSTDIR)\lib" <.y
819         copy srclib\apr-util\Lib$(SHORT)\aprutil-1.pdb  "$(INSTDIR)\lib" <.y
820         copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
821         copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.pdb "$(INSTDIR)\lib" <.y
822         copy srclib\apr\$(LONG)\libapr-1.lib            "$(INSTDIR)\lib" <.y
823         copy srclib\apr\$(LONG)\libapr-1.exp            "$(INSTDIR)\lib" <.y
824         copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
825         copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
826         copy srclib\apr-util\$(LONG)\libaprutil-1.lib   "$(INSTDIR)\lib" <.y
827         copy srclib\apr-util\$(LONG)\libaprutil-1.exp   "$(INSTDIR)\lib" <.y
828         copy $(LONG)\libhttpd.exp                       "$(INSTDIR)\lib" <.y
829         copy $(LONG)\libhttpd.lib                       "$(INSTDIR)\lib" <.y
830         copy modules\dav\main\$(LONG)\mod_dav.exp       "$(INSTDIR)\lib" <.y
831         copy modules\dav\main\$(LONG)\mod_dav.lib       "$(INSTDIR)\lib" <.y
832         for %f in ( charset.conv magic mime.types ) do ( \
833           copy docs\conf\%f "$(INSTDIR)\conf\original\%f" <.y )
834         awk -f build\installwinconf.awk $(DOMAINNAME) $(SERVERNAME) \
835             $(SERVERADMIN) $(PORT) $(SSLPORT) "$(INSTDIR) " docs/conf/ 
836         copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl"
837         -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
838     { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
839           sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" ); 
840       }
841       if ( $$0 !~ /^#!@perlbin@/ )
842           print $$0;
843     }
844 <<
845         del .y
846         del .a