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