]> granicus.if.org Git - apache/blob - Makefile.win
Avoid use of deprecated functions for OpenSSL version >= 1.0
[apache] / Makefile.win
1 # Makefile for Windows NT and Windows 95/98/2000
2
3 # Targets are:
4 #   _buildr   - build Apache in Release mode
5 #   _buildd   - 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 # Provide a DBM_LIST argument after configuring LIB and INCLUDE with
32 # the SDK paths of the corresponding client support libraries.
33 # The sdbm driver is always built in.
34 #
35 #     DBM_LIST="db gdbm"
36 #
37 # For example;
38 #
39 #   nmake -f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
40 #
41 # Be aware that certain awk's will not accept backslashed names,
42 # so the server root should be given in forward slashes (quoted),
43 # preferably with the drive designation!
44
45 !IF EXIST("httpd.vcproj") && ([devenv /help > NUL 2>&1] == 0) \
46     && !defined(USEMAK) && !defined(USEDSW)
47 USESLN=1
48 USEMAK=0
49 USEDSW=0
50 !ELSEIF EXIST("httpd.mak") && !defined(USEDSW)
51 USESLN=0
52 USEMAK=1
53 USEDSW=0
54 !ELSE
55 USESLN=0
56 USEMAK=0
57 USEDSW=1
58 !ENDIF
59
60 default: _buildr
61
62 !IF ("$(CTARGET)" == "") && ($(USESLN) == 1)
63 CTARGET=/build
64 !ENDIF
65
66 !IF EXIST("srclib\apr\include\apu.h")
67 TLP=Apache-apr2
68 UTILDIR=apr
69 !ELSEIF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
70 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
71 !MESSAGE sources (apr, apr-iconv and apr-util) into your srclib dir.
72 !MESSAGE Apache cannot build without these libraries!
73 !MESSAGE 
74 !ERROR Need srclib\  apr, apr-iconv and apr-util
75 !ELSE
76 TLP=Apache
77 UTILDIR=apr-util
78 !ENDIF
79
80 !IF !EXIST("srclib\expat") && !EXIST("srclib\apr-util\xml\expat")
81 !MESSAGE Please check out or download and unpack the current expat library source
82 !MESSAGE under your srclib dir for apr 2.x, or srclib\apr-util\xml\expat for apr 1.x
83 !MESSAGE Apache cannot build without this library!
84 !MESSAGE 
85 !ERROR Need srclib\expat or srclib\apr-util\xml\expat
86 !ENDIF
87
88 !IF !EXIST("srclib\pcre")
89 !MESSAGE Please check out or download and unpack the current PCRE library source
90 !MESSAGE under your srclib dir, and compile the pcre.dll with CMake options
91 !MESSAGE BUILD_SHARED_LIBS and CMAKE_BUILD_TYPE RelWithDebInfo.
92 !MESSAGE Apache cannot build without this library!
93 !MESSAGE 
94 !ERROR Need srclib\pcre
95 !ENDIF
96
97
98 # Note; _tryfoo: blocks are used only by the msvc developer studio environment 
99 #       to 'fix up' the build, since conditional dependencies aren't supported.
100 #
101
102 !IF EXIST("srclib\openssl")
103 !IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe")
104 SSLBIN=out32dll.dbg
105 !ELSE
106 SSLBIN=out32dll
107 !ENDIF
108
109 _tryssl:
110 !IF $(USEMAK) == 1
111         cd modules\ssl
112         $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
113         cd ..\..
114         cd support
115         $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
116         cd ..
117 !ELSEIF $(USESLN) == 1
118         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl
119         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs
120 !ELSE
121         @msdev $(TLP).dsw /USEENV /MAKE \
122                 "mod_ssl - Win32 $(LONG)" \
123                 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
124 !ENDIF
125
126 !ELSE
127 #     NOT EXIST("srclib\openssl")
128
129 _tryssl:
130         @echo -----
131         @echo mod_ssl and ab/ssl will not build unless openssl is installed
132         @echo in srclib\openssl.  They must be precompiled using the 
133         @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32.  The most
134         @echo recent version confirmed to build with mod_ssl and ab is 0.9.8d.
135         @echo Available from http://www.openssl.org/
136 !ENDIF
137 #     NOT EXIST("srclib\openssl")
138
139 !IF EXIST("srclib\serf")
140
141 _tryserf:
142 !IF $(USEMAK) == 1
143         cd modules\proxy
144         $(MAKE) $(MAKEOPT) -f mod_serf.mak CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
145         cd ..\..
146 !ELSEIF $(USESLN) == 1
147         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_serf
148 !ELSE
149         @msdev $(TLP).dsw /USEENV /MAKE \
150                 "mod_serf - Win32 $(LONG)" /NORECURSE $(CTARGET)
151 !ENDIF
152
153 !ELSE
154 #     NOT EXIST("srclib\serf")
155
156 _tryserf:
157         @echo -----
158         @echo mod_serf will not build unless libserf.dll is built in srclib\serf
159         @echo For purposes of alpha, libserf release 0.3.0 works, but only with
160         @echo http://people.apache.org/~wrowe/fixserf-win32-0.3.0.patch
161
162 !ENDIF
163 #     NOT EXIST("srclib\serf")
164
165 !IF EXIST("srclib\zlib")
166
167 _tryzlib:
168 !IF $(USEMAK) == 1
169         cd modules\filters
170         $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
171         cd ..\..
172 !ELSEIF $(USESLN) == 1
173         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate
174 !ELSE
175         @msdev $(TLP).dsw /USEENV /MAKE \
176                 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
177 !ENDIF
178
179 !ELSE
180 #     NOT EXIST("srclib\zlib")
181
182 _tryzlib:
183         @echo -----
184         @echo mod_deflate will not build unless zlib is built in srclib\zlib.  
185         @echo Version 1.2.1 and later available from http://www.gzip.org/zlib/
186         @echo built w/ nmake -f win32/Makefile.msc will satisfy this requirement.
187
188 !ENDIF
189
190 !IF EXIST("srclib\libxml2")
191
192 _tryxml:
193 !IF $(USEMAK) == 1
194         cd modules\filters
195         $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET)
196         $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
197         cd ..\..
198 !ELSEIF $(USESLN) == 1
199         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html
200         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc
201 !ELSE
202         @msdev $(TLP).dsw /USEENV /MAKE \
203                 "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET)
204         @msdev $(TLP).dsw /USEENV /MAKE \
205                 "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET)
206 !ENDIF
207
208 !ELSE
209 #     NOT EXIST("srclib\libxml2")
210
211 _tryxml:
212         @echo -----
213         @echo mod_proxy_html and mod_xml2enc will not build unless libxml2 is 
214         @echo built in srclib\libxml2. Version 2.7.7 and later available from
215         @echo http://xmlsoft.org/ will satisfy this requirement.
216
217 !ENDIF
218
219
220 !IF EXIST("srclib\lua")
221
222 _trylua:
223 !IF $(USEMAK) == 1
224         cd modules\lua
225         $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
226         cd ..\..
227 !ELSEIF $(USESLN) == 1
228         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua
229 !ELSE
230         @msdev $(TLP).dsw /USEENV /MAKE \
231                 "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
232 !ENDIF
233
234 !ELSE
235 #     NOT EXIST("srclib\lua")
236
237 _trylua:
238         @echo -----
239         @echo mod_lua will not build unless lua is installed in srclib\lua.
240         @echo Version 5.1 includes an etc\luavs.bat that will satisfy this requirement.
241
242 !ENDIF
243
244
245 _trydb:
246 !IF $(USEMAK) == 1
247         cd srclib\$(UTILDIR)\dbd
248         for %d in (odbc $(DBD_LIST)) do \
249           $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
250         cd ..\dbm
251         for %d in ($(DBM_LIST) x) do if not %d == x \
252           $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
253         cd ..\..\..
254 !ELSEIF $(USESLN) == 1
255         for %d in (odbc $(DBD_LIST)) do \
256           devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbd_%d
257         for %d in ($(DBM_LIST) x) do if not %d == x \
258           devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project apr_dbm_%d
259 !ELSE
260         @for %d in (odbc $(DBD_LIST)) do \
261           msdev $(TLP).dsw /USEENV /MAKE \
262                 "apr_dbd_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
263         @for %d in ($(DBM_LIST) x) do if not %d == x \
264           msdev $(TLP).dsw /USEENV /MAKE \
265                 "apr_dbm_%d - Win32 $(LONG)" /NORECURSE $(CTARGET)
266 !ENDIF
267
268
269 !IF "$(INSTDIR)" == ""
270 INSTDIR=\Apache2x
271 !ENDIF
272 !IF "$(DOMAINNAME)" == ""
273 DOMAINNAME=example.com
274 !ENDIF 
275 !IF "$(SERVERNAME)" == ""
276 SERVERNAME=www.$(DOMAINNAME)
277 !ENDIF
278 !IF "$(SERVERADMIN)" == ""
279 SERVERADMIN=admin@$(DOMAINNAME)
280 !ENDIF
281 !IF "$(PORT)" == ""
282 PORT=80
283 !ENDIF 
284 !IF "$(SSLPORT)" == ""
285 SSLPORT=443
286 !ENDIF 
287
288 !IF "$(LONG)" == ""
289 !MESSAGE
290 !MESSAGE INSTDIR     = $(INSTDIR)
291 !MESSAGE DOMAINNAME  = $(DOMAINNAME)
292 !MESSAGE SERVERNAME  = $(SERVERNAME)
293 !MESSAGE SERVERADMIN = $(SERVERADMIN)
294 !MESSAGE PORT        = $(PORT)
295 !IF EXIST("srclib\openssl")
296 !MESSAGE SSLPORT     = $(SSLPORT)
297 !ENDIF
298 !MESSAGE
299 !MESSAGE To change these options use 'nmake -f Makefile.win [option=value]'
300 !MESSAGE Example: nmake -f Makefile.win PORT=8080
301 !MESSAGE
302 !MESSAGE
303 !ENDIF
304
305 !IFNDEF MAKEOPT
306 # Only default the behavior if MAKEOPT= is omitted
307 !IFDEF _NMAKE_VER
308 # Microsoft NMake options
309 MAKEOPT=-nologo
310 !ELSEIF "$(MAKE)" == "make"
311 # Borland make options?  Not really supported (yet)
312 MAKEOPT=-s -N
313 !ENDIF
314 !ENDIF
315
316 _dummy:
317
318 _browse:
319         cd Browse
320           bscmake.exe -nologo -Iu -o Apache.bsc *.sbr
321         cd ..
322
323 _buildr: 
324         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
325
326 _buildd: 
327         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   _build
328
329 installr: 
330         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
331
332 installd: 
333         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   _build _install
334
335 clean:  _cleanr _cleand
336         -if exist Browse\. rd /s Browse < << > nul
337 y
338 <<
339
340 !IF $(USEMAK) == 1
341
342 _cleanr:
343         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
344
345 _cleand:  
346         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET=CLEAN _build
347
348 _build:
349         echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
350 !IF !EXIST("srclib\apr-util")
351         cd srclib\expat\lib
352          $(MAKE) $(MAKEOPT) -f expat.mak             CFG="expat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
353         cd ..\..\..
354 !ENDIF
355         cd srclib\apr
356          $(MAKE) $(MAKEOPT) -f apr.mak             CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
357          $(MAKE) $(MAKEOPT) -f libapr.mak          CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
358         cd ..\..
359 !IF EXIST("srclib\apr-util")
360         cd srclib\apr-iconv
361          $(MAKE) $(MAKEOPT) -f apriconv.mak  CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
362          $(MAKE) $(MAKEOPT) -f libapriconv.mak  CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
363 !IF "$(CTARGET)" == "CLEAN"
364         $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
365                 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
366 !ELSE
367         cd ccs
368         $(MAKE) $(MAKEOPT) -f Makefile.win all \
369                 BUILD_MODE=$(LONG) BIND_MODE=shared
370         cd ..\ces
371         $(MAKE) $(MAKEOPT) -f Makefile.win all \
372                 BUILD_MODE=$(LONG) BIND_MODE=shared
373         cd ..
374 !ENDIF
375         cd ..\..
376         cd srclib\apr-util\xml\expat\lib
377          $(MAKE) $(MAKEOPT) -f xml.mak             CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
378         cd ..\..\..
379          $(MAKE) $(MAKEOPT) -f aprutil.mak         CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
380          $(MAKE) $(MAKEOPT) -f libaprutil.mak      CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
381         cd ldap
382          $(MAKE) $(MAKEOPT) -f apr_ldap.mak        CFG="apr_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
383         cd ..
384 !ELSE
385         # DBD, DBM components live now in apr
386         cd srclib\apr
387 !ENDIF
388         cd dbd
389           for %d in (odbc $(DBD_LIST)) do \
390             $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak   CFG="apr_dbd_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
391         cd ..
392         cd dbm
393           for %d in ($(DBM_LIST) x) do if not %d == x \
394             $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak   CFG="apr_dbm_%d - Win32 $(LONG)" RECURSE=0 $(CTARGET)
395         cd ..
396         cd ..\..
397         cd server
398          $(MAKE) $(MAKEOPT) -f gen_test_char.mak   CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
399         cd ..
400          $(MAKE) $(MAKEOPT) -f libhttpd.mak        CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
401          $(MAKE) $(MAKEOPT) -f httpd.mak           CFG="httpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
402 # build ldap prior to authnz_ldap
403         cd modules\ldap
404          $(MAKE) $(MAKEOPT) -f mod_ldap.mak        CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
405         cd ..\..
406         cd modules\database
407          $(MAKE) $(MAKEOPT) -f mod_dbd.mak         CFG="mod_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
408         cd ..\..
409         cd modules\aaa
410          $(MAKE) $(MAKEOPT) -f mod_access_compat.mak CFG="mod_access_compat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
411          $(MAKE) $(MAKEOPT) -f mod_allowhandlers.mak CFG="mod_allowhandlers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
412          $(MAKE) $(MAKEOPT) -f mod_allowmethods.mak CFG="mod_allowmethods - Win32 $(LONG)" RECURSE=0 $(CTARGET)
413          $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak  CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
414          $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
415          $(MAKE) $(MAKEOPT) -f mod_auth_form.mak   CFG="mod_auth_form - Win32 $(LONG)" RECURSE=0 $(CTARGET)
416          $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak  CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
417          $(MAKE) $(MAKEOPT) -f mod_authn_core.mak  CFG="mod_authn_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
418          $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak   CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
419          $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak   CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
420          $(MAKE) $(MAKEOPT) -f mod_authn_file.mak  CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
421          $(MAKE) $(MAKEOPT) -f mod_authn_socache.mak  CFG="mod_authn_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
422          $(MAKE) $(MAKEOPT) -f mod_authnz_ldap.mak CFG="mod_authnz_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
423          $(MAKE) $(MAKEOPT) -f mod_authz_core.mak  CFG="mod_authz_core - Win32 $(LONG)" RECURSE=0 $(CTARGET)
424          $(MAKE) $(MAKEOPT) -f mod_authz_dbd.mak   CFG="mod_authz_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
425          $(MAKE) $(MAKEOPT) -f mod_authz_dbm.mak   CFG="mod_authz_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
426          $(MAKE) $(MAKEOPT) -f mod_authz_groupfile.mak CFG="mod_authz_groupfile - Win32 $(LONG)" RECURSE=0 $(CTARGET)
427          $(MAKE) $(MAKEOPT) -f mod_authz_host.mak  CFG="mod_authz_host - Win32 $(LONG)" RECURSE=0 $(CTARGET)
428          $(MAKE) $(MAKEOPT) -f mod_authz_owner.mak CFG="mod_authz_owner - Win32 $(LONG)" RECURSE=0 $(CTARGET)
429          $(MAKE) $(MAKEOPT) -f mod_authz_user.mak  CFG="mod_authz_user - Win32 $(LONG)" RECURSE=0 $(CTARGET)
430         cd ..\..
431         cd modules\arch\win32
432          $(MAKE) $(MAKEOPT) -f mod_isapi.mak       CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
433         cd ..\..\..
434         cd modules\cache
435          $(MAKE) $(MAKEOPT) -f mod_cache.mak       CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
436          $(MAKE) $(MAKEOPT) -f mod_cache_disk.mak  CFG="mod_cache_disk - Win32 $(LONG)" RECURSE=0 $(CTARGET)
437          $(MAKE) $(MAKEOPT) -f mod_cache_socache.mak  CFG="mod_cache_socache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
438          $(MAKE) $(MAKEOPT) -f mod_file_cache.mak  CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
439          $(MAKE) $(MAKEOPT) -f mod_socache_dbm.mak CFG="mod_socache_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
440 #        $(MAKE) $(MAKEOPT) -f mod_socache_dc.mak  CFG="mod_socache_dc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
441          $(MAKE) $(MAKEOPT) -f mod_socache_memcache.mak CFG="mod_socache_memcache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
442          $(MAKE) $(MAKEOPT) -f mod_socache_shmcb.mak CFG="mod_socache_shmcb - Win32 $(LONG)" RECURSE=0 $(CTARGET)
443         cd ..\..
444         cd modules\core
445          $(MAKE) $(MAKEOPT) -f mod_watchdog.mak    CFG="mod_watchdog - Win32 $(LONG)" RECURSE=0 $(CTARGET)
446         cd ..\..
447         cd modules\cluster
448          $(MAKE) $(MAKEOPT) -f mod_heartbeat.mak   CFG="mod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
449          $(MAKE) $(MAKEOPT) -f mod_heartmonitor.mak CFG="mod_heartmonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
450         cd ..\..
451         cd modules\dav\main
452          $(MAKE) $(MAKEOPT) -f mod_dav.mak         CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
453         cd ..\..\..
454         cd modules\dav\fs
455          $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak      CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
456         cd ..\..\..
457         cd modules\dav\lock
458          $(MAKE) $(MAKEOPT) -f mod_dav_lock.mak    CFG="mod_dav_lock - Win32 $(LONG)" RECURSE=0 $(CTARGET)
459         cd ..\..\..
460         cd modules\debugging
461 !IFDEF ALL
462          $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak   CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
463 !ENDIF
464          $(MAKE) $(MAKEOPT) -f mod_dumpio.mak      CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
465         cd ..\..
466         cd modules\echo
467 !IFDEF ALL
468          $(MAKE) $(MAKEOPT) -f mod_echo.mak        CFG="mod_echo - Win32 $(LONG)" RECURSE=0 $(CTARGET)
469 !ENDIF
470         cd ..\..
471 !IFDEF ALL
472         cd modules\examples
473          $(MAKE) $(MAKEOPT) -f mod_case_filter.mak    CFG="mod_case_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
474          $(MAKE) $(MAKEOPT) -f mod_case_filter_in.mak CFG="mod_case_filter_in - Win32 $(LONG)" RECURSE=0 $(CTARGET)
475          $(MAKE) $(MAKEOPT) -f mod_example_hooks.mak  CFG="mod_example_hooks - Win32 $(LONG)" RECURSE=0 $(CTARGET)
476          $(MAKE) $(MAKEOPT) -f mod_example_ipc.mak    CFG="mod_example_ipc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
477         cd ..\..
478 !ENDIF
479         cd modules\filters
480          $(MAKE) $(MAKEOPT) -f mod_buffer.mak      CFG="mod_buffer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
481          $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
482          $(MAKE) $(MAKEOPT) -f mod_data.mak        CFG="mod_data - Win32 $(LONG)" RECURSE=0 $(CTARGET)
483 !IF EXIST("srclib\zlib")
484          $(MAKE) $(MAKEOPT) -f mod_deflate.mak     CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
485 !ENDIF
486          $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak  CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
487          $(MAKE) $(MAKEOPT) -f mod_filter.mak      CFG="mod_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
488          $(MAKE) $(MAKEOPT) -f mod_include.mak     CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
489 !IF EXIST("srclib\libxml2")
490          $(MAKE) $(MAKEOPT) -f mod_proxy_html.mak     CFG="mod_proxy_html - Win32 $(LONG)" RECURSE=0 $(CTARGET)
491          $(MAKE) $(MAKEOPT) -f mod_xml2enc.mak     CFG="mod_xml2enc - Win32 $(LONG)" RECURSE=0 $(CTARGET)
492 !ENDIF
493          $(MAKE) $(MAKEOPT) -f mod_ratelimit.mak   CFG="mod_ratelimit - Win32 $(LONG)" RECURSE=0 $(CTARGET)
494          $(MAKE) $(MAKEOPT) -f mod_reflector.mak   CFG="mod_reflector - Win32 $(LONG)" RECURSE=0 $(CTARGET)
495          $(MAKE) $(MAKEOPT) -f mod_reqtimeout.mak  CFG="mod_reqtimeout - Win32 $(LONG)" RECURSE=0 $(CTARGET)
496          $(MAKE) $(MAKEOPT) -f mod_request.mak     CFG="mod_request - Win32 $(LONG)" RECURSE=0 $(CTARGET)
497          $(MAKE) $(MAKEOPT) -f mod_sed.mak         CFG="mod_sed - Win32 $(LONG)" RECURSE=0 $(CTARGET)
498          $(MAKE) $(MAKEOPT) -f mod_substitute.mak  CFG="mod_substitute - Win32 $(LONG)" RECURSE=0 $(CTARGET)
499         cd ..\..
500         cd modules\generators
501          $(MAKE) $(MAKEOPT) -f mod_asis.mak        CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
502          $(MAKE) $(MAKEOPT) -f mod_autoindex.mak   CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
503          $(MAKE) $(MAKEOPT) -f mod_cgi.mak         CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
504          $(MAKE) $(MAKEOPT) -f mod_info.mak        CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
505          $(MAKE) $(MAKEOPT) -f mod_status.mak      CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
506         cd ..\..
507         cd modules\http
508          $(MAKE) $(MAKEOPT) -f mod_mime.mak        CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
509         cd ..\..
510         cd modules\loggers
511          $(MAKE) $(MAKEOPT) -f mod_log_config.mak  CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
512          $(MAKE) $(MAKEOPT) -f mod_log_debug.mak  CFG="mod_log_debug - Win32 $(LONG)" RECURSE=0 $(CTARGET)
513          $(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
514          $(MAKE) $(MAKEOPT) -f mod_logio.mak       CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
515         cd ..\..
516 !IF EXIST("srclib\lua")
517         cd modules\lua
518          $(MAKE) $(MAKEOPT) -f mod_lua.mak         CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
519         cd ..\..
520 !ENDIF
521         cd modules\mappers
522          $(MAKE) $(MAKEOPT) -f mod_actions.mak     CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
523          $(MAKE) $(MAKEOPT) -f mod_alias.mak       CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
524          $(MAKE) $(MAKEOPT) -f mod_dir.mak         CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
525          $(MAKE) $(MAKEOPT) -f mod_imagemap.mak    CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
526          $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
527          $(MAKE) $(MAKEOPT) -f mod_rewrite.mak     CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
528          $(MAKE) $(MAKEOPT) -f mod_speling.mak     CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
529          $(MAKE) $(MAKEOPT) -f mod_userdir.mak     CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
530          $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
531         cd ..\..
532         cd modules\metadata
533          $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak   CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
534          $(MAKE) $(MAKEOPT) -f mod_env.mak         CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
535          $(MAKE) $(MAKEOPT) -f mod_expires.mak     CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
536          $(MAKE) $(MAKEOPT) -f mod_headers.mak     CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
537          $(MAKE) $(MAKEOPT) -f mod_ident.mak       CFG="mod_ident - Win32 $(LONG)" RECURSE=0 $(CTARGET)
538          $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak  CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
539          $(MAKE) $(MAKEOPT) -f mod_remoteip.mak    CFG="mod_remoteip - Win32 $(LONG)" RECURSE=0 $(CTARGET)
540          $(MAKE) $(MAKEOPT) -f mod_setenvif.mak    CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
541          $(MAKE) $(MAKEOPT) -f mod_unique_id.mak   CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
542          $(MAKE) $(MAKEOPT) -f mod_usertrack.mak   CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
543          $(MAKE) $(MAKEOPT) -f mod_version.mak     CFG="mod_version - Win32 $(LONG)" RECURSE=0 $(CTARGET)
544         cd ..\..
545         cd modules\proxy
546          $(MAKE) $(MAKEOPT) -f mod_proxy.mak       CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
547          $(MAKE) $(MAKEOPT) -f mod_proxy_ajp.mak   CFG="mod_proxy_ajp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
548          $(MAKE) $(MAKEOPT) -f mod_proxy_balancer.mak  CFG="mod_proxy_balancer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
549          $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
550          $(MAKE) $(MAKEOPT) -f mod_proxy_express.mak CFG="mod_proxy_express - Win32 $(LONG)" RECURSE=0 $(CTARGET)
551          $(MAKE) $(MAKEOPT) -f mod_proxy_fcgi.mak  CFG="mod_proxy_fcgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
552          $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak   CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
553          $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak  CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
554          $(MAKE) $(MAKEOPT) -f mod_proxy_scgi.mak  CFG="mod_proxy_scgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
555 !IF EXIST("srclib\serf")
556          $(MAKE) $(MAKEOPT) -f mod_serf.mak        CFG="mod_serf - Win32 $(LONG)" RECURSE=0 $(CTARGET)
557 !ENDIF
558         cd ..\..
559         cd modules\proxy\balancers
560          $(MAKE) $(MAKEOPT) -f mod_lbmethod_bybusyness.mak CFG="mod_lbmethod_bybusyness - Win32 $(LONG)" RECURSE=0 $(CTARGET)
561          $(MAKE) $(MAKEOPT) -f mod_lbmethod_byrequests.mak CFG="mod_lbmethod_byrequests - Win32 $(LONG)" RECURSE=0 $(CTARGET)
562          $(MAKE) $(MAKEOPT) -f mod_lbmethod_bytraffic.mak  CFG="mod_lbmethod_bytraffic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
563          $(MAKE) $(MAKEOPT) -f mod_lbmethod_heartbeat.mak  CFG="mod_lbmethod_heartbeat - Win32 $(LONG)" RECURSE=0 $(CTARGET)
564         cd ..\..\..
565 !IFDEF ALL
566         cd modules\proxy\examples
567          $(MAKE) $(MAKEOPT) -f mod_lbmethod_rr.mak CFG="mod_lbmethod_rr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
568         cd ..\..\..
569 !ENDIF
570         cd modules\session
571          $(MAKE) $(MAKEOPT) -f mod_session.mak        CFG="mod_session - Win32 $(LONG)" RECURSE=0 $(CTARGET)
572          $(MAKE) $(MAKEOPT) -f mod_session_cookie.mak CFG="mod_session_cookie - Win32 $(LONG)" RECURSE=0 $(CTARGET)
573          $(MAKE) $(MAKEOPT) -f mod_session_dbd.mak    CFG="mod_session_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
574         cd ..\..
575         cd modules\slotmem
576          $(MAKE) $(MAKEOPT) -f mod_slotmem_plain.mak  CFG="mod_slotmem_plain - Win32 $(LONG)" RECURSE=0 $(CTARGET)
577          $(MAKE) $(MAKEOPT) -f mod_slotmem_shm.mak    CFG="mod_slotmem_shm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
578         cd ..\..
579 !IF EXIST("srclib\openssl")
580 #       cd modules\session
581 #        $(MAKE) $(MAKEOPT) -f mod_session_crypto.mak CFG="mod_session_crypto - Win32 $(LONG)" RECURSE=0 $(CTARGET)
582 #       cd ..\..
583         cd modules\ssl
584          $(MAKE) $(MAKEOPT) -f mod_ssl.mak         CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
585         cd ..\..
586         cd support
587          $(MAKE) $(MAKEOPT) -f abs.mak             CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
588         cd ..
589 !ENDIF
590         cd support
591          $(MAKE) $(MAKEOPT) -f ab.mak              CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
592 #        $(MAKE) $(MAKEOPT) -f fcgistarter.mak     CFG="fcgistarter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
593          $(MAKE) $(MAKEOPT) -f htcacheclean.mak    CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET)
594          $(MAKE) $(MAKEOPT) -f htdbm.mak           CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
595          $(MAKE) $(MAKEOPT) -f htdigest.mak        CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
596          $(MAKE) $(MAKEOPT) -f htpasswd.mak        CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
597          $(MAKE) $(MAKEOPT) -f httxt2dbm.mak       CFG="httxt2dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
598          $(MAKE) $(MAKEOPT) -f logresolve.mak      CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
599          $(MAKE) $(MAKEOPT) -f rotatelogs.mak      CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
600         cd ..
601         cd support\win32
602          $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak   CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
603          $(MAKE) $(MAKEOPT) -f wintty.mak          CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
604         cd ..\..
605
606 !ELSEIF $(USESLN) == 1
607
608 _cleanr:  
609         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
610
611 _cleand:  
612         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET="/clean" _build
613
614 _build:
615         echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
616 !IFDEF ALL
617         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildAll
618 !ELSE
619         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project BuildBin
620 !ENDIF
621 !IF EXIST("srclib\openssl")
622         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_ssl
623         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project abs
624 !ENDIF
625 !IF EXIST("srclib\zlib")
626         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_deflate
627 !ENDIF
628 !IF EXIST("srclib\lua")
629         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_lua
630 !ENDIF
631 !IF EXIST("srclib\libxml2")
632         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_proxy_html
633         devenv $(TLP).sln /useenv $(CTARGET) $(LONG) /project mod_xml2enc
634 !ENDIF
635
636 !ELSE
637
638 _cleanr:  
639         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
640
641 _cleand:  
642         @$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET="/CLEAN" _build
643
644 _build:
645         @echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
646 !IFDEF ALL
647         @msdev $(TLP).dsw /USEENV /MAKE \
648                 "BuildAll - Win32 $(LONG)" $(CTARGET)
649 !ELSE
650         @msdev $(TLP).dsw /USEENV /MAKE \
651                 "BuildBin - Win32 $(LONG)" $(CTARGET)
652 !ENDIF
653 !IF "$(CTARGET)" == "/CLEAN"
654 !IF EXIST("srclib\apr-iconv")
655         @cd srclib\apr-iconv
656         @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
657                 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
658         @cd ..\..
659 !ENDIF
660 !ENDIF
661 !IF EXIST("srclib\openssl")
662         @msdev $(TLP).dsw /USEENV /MAKE \
663                 "mod_ssl - Win32 $(LONG)" \
664                 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
665 !ENDIF
666 !IF EXIST("srclib\zlib")
667         @msdev $(TLP).dsw /USEENV /MAKE \
668                 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
669 !ENDIF
670 !IF EXIST("srclib\lua")
671         @msdev $(TLP).dsw /USEENV /MAKE \
672                 "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
673 !ENDIF
674 !IF EXIST("srclib\libxml2")
675         @msdev $(TLP).dsw /USEENV /MAKE \
676                 "mod_proxy_html - Win32 $(LONG)" /NORECURSE $(CTARGET)
677         @msdev $(TLP).dsw /USEENV /MAKE \
678                 "mod_xml2enc - Win32 $(LONG)" /NORECURSE $(CTARGET)
679 !ENDIF
680
681 !ENDIF
682
683
684 _copybin:
685         copy $(LONG)\httpd.$(src_exe)                           "$(inst_exe)" <.y
686         copy $(LONG)\libhttpd.$(src_dll)                        "$(inst_dll)" <.y
687         copy srclib\apr\$(LONG)\libapr-1.$(src_dll)             "$(inst_dll)" <.y
688 !IF EXIST("srclib\apr-util")
689         copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll)  "$(inst_dll)" <.y
690         copy srclib\apr-util\$(LONG)\libaprutil-1.$(src_dll)    "$(inst_dll)" <.y
691         copy srclib\apr-util\ldap\$(LONG)\apr_ldap-1.$(src_dll) "$(inst_dll)" <.y
692 !ENDIF
693         for %d in (odbc $(DBD_LIST)) do ( \
694           copy srclib\$(UTILDIR)\dbd\$(LONG)\apr_dbd_%d-1.$(src_dll) "$(inst_dll)" <.y \
695         )
696         for %d in ($(DBM_LIST) x) do if not %d == x ( \
697           copy srclib\$(UTILDIR)\dbm\$(LONG)\apr_dbm_%d-1.$(src_dll) "$(inst_dll)" <.y \
698         )
699 !IF EXIST("srclib\serf")
700         copy srclib\serf\$(LONG)\libserf.$(src_dll)             "$(inst_dll)" <.y
701 !ENDIF
702         copy srclib\pcre\pcre.$(src_dll)                        "$(inst_dll)" <.y
703         copy modules\aaa\$(LONG)\mod_access_compat.$(src_so)    "$(inst_so)" <.y
704         copy modules\aaa\$(LONG)\mod_allowhandlers.$(src_so)    "$(inst_so)" <.y
705         copy modules\aaa\$(LONG)\mod_allowmethods.$(src_so)     "$(inst_so)" <.y
706         copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so)       "$(inst_so)" <.y
707         copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so)      "$(inst_so)" <.y
708         copy modules\aaa\$(LONG)\mod_auth_form.$(src_so)        "$(inst_so)" <.y
709         copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so)       "$(inst_so)" <.y
710         copy modules\aaa\$(LONG)\mod_authn_core.$(src_so)       "$(inst_so)" <.y
711         copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so)        "$(inst_so)" <.y
712         copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so)        "$(inst_so)" <.y
713         copy modules\aaa\$(LONG)\mod_authn_file.$(src_so)       "$(inst_so)" <.y
714         copy modules\aaa\$(LONG)\mod_authn_socache.$(src_so)    "$(inst_so)" <.y
715         copy modules\aaa\$(LONG)\mod_authnz_ldap.$(src_so)      "$(inst_so)" <.y
716         copy modules\aaa\$(LONG)\mod_authz_core.$(src_so)       "$(inst_so)" <.y
717         copy modules\aaa\$(LONG)\mod_authz_dbd.$(src_so)        "$(inst_so)" <.y
718         copy modules\aaa\$(LONG)\mod_authz_dbm.$(src_so)        "$(inst_so)" <.y
719         copy modules\aaa\$(LONG)\mod_authz_core.$(src_so)       "$(inst_so)" <.y
720         copy modules\aaa\$(LONG)\mod_authz_groupfile.$(src_so)  "$(inst_so)" <.y
721         copy modules\aaa\$(LONG)\mod_authz_host.$(src_so)       "$(inst_so)" <.y
722         copy modules\aaa\$(LONG)\mod_authz_owner.$(src_so)      "$(inst_so)" <.y
723         copy modules\aaa\$(LONG)\mod_authz_user.$(src_so)       "$(inst_so)" <.y
724         copy modules\arch\win32\$(LONG)\mod_isapi.$(src_so)     "$(inst_so)" <.y
725         copy modules\cache\$(LONG)\mod_cache.$(src_so)          "$(inst_so)" <.y
726         copy modules\cache\$(LONG)\mod_cache_disk.$(src_so)     "$(inst_so)" <.y
727         copy modules\cache\$(LONG)\mod_cache_socache.$(src_so)  "$(inst_so)" <.y
728         copy modules\cache\$(LONG)\mod_file_cache.$(src_so)     "$(inst_so)" <.y
729         copy modules\cache\$(LONG)\mod_socache_dbm.$(src_so)    "$(inst_so)" <.y
730 #       copy modules\cache\$(LONG)\mod_socache_dc.$(src_so)     "$(inst_so)" <.y
731         copy modules\cache\$(LONG)\mod_socache_memcache.$(src_so) "$(inst_so)" <.y
732         copy modules\cache\$(LONG)\mod_socache_shmcb.$(src_so)  "$(inst_so)" <.y
733         copy modules\core\$(LONG)\mod_watchdog.$(src_so)        "$(inst_so)" <.y
734         copy modules\cluster\$(LONG)\mod_heartbeat.$(src_so)    "$(inst_so)" <.y
735         copy modules\cluster\$(LONG)\mod_heartmonitor.$(src_so) "$(inst_so)" <.y
736         copy modules\database\$(LONG)\mod_dbd.$(src_so)         "$(inst_so)" <.y
737         copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so)        "$(inst_so)" <.y
738         copy modules\dav\lock\$(LONG)\mod_dav_lock.$(src_so)    "$(inst_so)" <.y
739         copy modules\dav\main\$(LONG)\mod_dav.$(src_so)         "$(inst_so)" <.y
740 !IFDEF ALL
741         copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so)  "$(inst_so)" <.y
742 !ENDIF
743         copy modules\debugging\$(LONG)\mod_dumpio.$(src_so)     "$(inst_so)" <.y
744 !IFDEF ALL
745         copy modules\echo\$(LONG)\mod_echo.$(src_so)            "$(inst_so)" <.y
746         copy modules\examples\$(LONG)\mod_case_filter.$(src_so)    "$(inst_so)" <.y
747         copy modules\examples\$(LONG)\mod_case_filter_in.$(src_so) "$(inst_so)" <.y
748         copy modules\examples\$(LONG)\mod_example_hooks.$(src_so)  "$(inst_so)" <.y
749         copy modules\examples\$(LONG)\mod_example_ipc.$(src_so)    "$(inst_so)" <.y
750 !ENDIF
751         copy modules\filters\$(LONG)\mod_buffer.$(src_so)       "$(inst_so)" <.y
752         copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
753         copy modules\filters\$(LONG)\mod_data.$(src_so) "$(inst_so)" <.y
754 !IF EXIST("srclib\zlib")
755         copy modules\filters\$(LONG)\mod_deflate.$(src_so)      "$(inst_so)" <.y
756 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
757         copy srclib\zlib\zlib1.$(src_dll)                       "$(inst_dll)" <.y
758 !ENDIF
759 !ENDIF
760         copy modules\filters\$(LONG)\mod_ext_filter.$(src_so)   "$(inst_so)" <.y
761         copy modules\filters\$(LONG)\mod_filter.$(src_so)       "$(inst_so)" <.y
762         copy modules\filters\$(LONG)\mod_include.$(src_so)      "$(inst_so)" <.y
763 !IF EXIST("srclib\libxml2")
764         copy modules\filters\$(LONG)\mod_proxy_html.$(src_so)   "$(inst_so)" <.y
765         copy modules\filters\$(LONG)\mod_xml2enc.$(src_so)      "$(inst_so)" <.y
766 !IF EXIST("srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll)")
767         copy srclib\libxml2\win32\bin.msvc\libxml2.$(src_dll)                   "$(inst_dll)" <.y
768 !ENDIF
769 !ENDIF
770         copy modules\filters\$(LONG)\mod_ratelimit.$(src_so)    "$(inst_so)" <.y
771         copy modules\filters\$(LONG)\mod_reflector.$(src_so)    "$(inst_so)" <.y
772         copy modules\filters\$(LONG)\mod_reqtimeout.$(src_so)   "$(inst_so)" <.y
773         copy modules\filters\$(LONG)\mod_request.$(src_so)      "$(inst_so)" <.y
774         copy modules\filters\$(LONG)\mod_sed.$(src_so)          "$(inst_so)" <.y
775         copy modules\filters\$(LONG)\mod_substitute.$(src_so)   "$(inst_so)" <.y
776         copy modules\generators\$(LONG)\mod_asis.$(src_so)      "$(inst_so)" <.y
777         copy modules\generators\$(LONG)\mod_autoindex.$(src_so) "$(inst_so)" <.y
778         copy modules\generators\$(LONG)\mod_cgi.$(src_so)       "$(inst_so)" <.y
779         copy modules\generators\$(LONG)\mod_info.$(src_so)      "$(inst_so)" <.y
780         copy modules\generators\$(LONG)\mod_status.$(src_so)    "$(inst_so)" <.y
781         copy modules\http\$(LONG)\mod_mime.$(src_so)            "$(inst_so)" <.y
782         copy modules\ldap\$(LONG)\mod_ldap.$(src_so)            "$(inst_so)" <.y
783         copy modules\loggers\$(LONG)\mod_log_config.$(src_so)   "$(inst_so)" <.y
784         copy modules\loggers\$(LONG)\mod_log_debug.$(src_so)    "$(inst_so)" <.y
785         copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
786         copy modules\loggers\$(LONG)\mod_logio.$(src_so)        "$(inst_so)" <.y
787 !IF EXIST("srclib\lua")
788         copy modules\lua\$(LONG)\mod_lua.$(src_so)              "$(inst_so)" <.y
789 !IF EXIST("srclib\lua\src\lua51.$(src_dll)")
790         copy srclib\lua\src\lua51.$(src_dll)                    "$(inst_dll)" <.y
791 !ENDIF
792 !ENDIF
793         copy modules\mappers\$(LONG)\mod_actions.$(src_so)      "$(inst_so)" <.y
794         copy modules\mappers\$(LONG)\mod_alias.$(src_so)        "$(inst_so)" <.y
795         copy modules\mappers\$(LONG)\mod_dir.$(src_so)          "$(inst_so)" <.y
796         copy modules\mappers\$(LONG)\mod_imagemap.$(src_so)     "$(inst_so)" <.y
797         copy modules\mappers\$(LONG)\mod_negotiation.$(src_so)  "$(inst_so)" <.y
798         copy modules\mappers\$(LONG)\mod_rewrite.$(src_so)      "$(inst_so)" <.y
799         copy modules\mappers\$(LONG)\mod_speling.$(src_so)      "$(inst_so)" <.y
800         copy modules\mappers\$(LONG)\mod_userdir.$(src_so)      "$(inst_so)" <.y
801         copy modules\mappers\$(LONG)\mod_vhost_alias.$(src_so)  "$(inst_so)" <.y
802         copy modules\metadata\$(LONG)\mod_cern_meta.$(src_so)   "$(inst_so)" <.y
803         copy modules\metadata\$(LONG)\mod_env.$(src_so)         "$(inst_so)" <.y
804         copy modules\metadata\$(LONG)\mod_expires.$(src_so)     "$(inst_so)" <.y
805         copy modules\metadata\$(LONG)\mod_headers.$(src_so)     "$(inst_so)" <.y
806         copy modules\metadata\$(LONG)\mod_ident.$(src_so)       "$(inst_so)" <.y
807         copy modules\metadata\$(LONG)\mod_mime_magic.$(src_so)  "$(inst_so)" <.y
808         copy modules\metadata\$(LONG)\mod_remoteip.$(src_so)    "$(inst_so)" <.y
809         copy modules\metadata\$(LONG)\mod_setenvif.$(src_so)    "$(inst_so)" <.y
810         copy modules\metadata\$(LONG)\mod_unique_id.$(src_so)   "$(inst_so)" <.y
811         copy modules\metadata\$(LONG)\mod_usertrack.$(src_so)   "$(inst_so)" <.y
812         copy modules\metadata\$(LONG)\mod_version.$(src_so)     "$(inst_so)" <.y
813         copy modules\proxy\$(LONG)\mod_proxy.$(src_so)          "$(inst_so)" <.y
814         copy modules\proxy\$(LONG)\mod_proxy_ajp.$(src_so)      "$(inst_so)" <.y
815         copy modules\proxy\$(LONG)\mod_proxy_balancer.$(src_so) "$(inst_so)" <.y
816         copy modules\proxy\$(LONG)\mod_proxy_connect.$(src_so)  "$(inst_so)" <.y
817         copy modules\proxy\$(LONG)\mod_proxy_express.$(src_so)  "$(inst_so)" <.y
818         copy modules\proxy\$(LONG)\mod_proxy_fcgi.$(src_so)     "$(inst_so)" <.y
819         copy modules\proxy\$(LONG)\mod_proxy_ftp.$(src_so)      "$(inst_so)" <.y
820         copy modules\proxy\$(LONG)\mod_proxy_http.$(src_so)     "$(inst_so)" <.y
821         copy modules\proxy\$(LONG)\mod_proxy_scgi.$(src_so)     "$(inst_so)" <.y
822 !IF EXIST("srclib\serf")
823         copy modules\proxy\$(LONG)\mod_serf.$(src_so)           "$(inst_so)" <.y
824 !ENDIF
825         copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bybusyness.$(src_so) "$(inst_so)" <.y
826         copy modules\proxy\balancers\$(LONG)\mod_lbmethod_byrequests.$(src_so) "$(inst_so)" <.y
827         copy modules\proxy\balancers\$(LONG)\mod_lbmethod_bytraffic.$(src_so)  "$(inst_so)" <.y
828         copy modules\proxy\balancers\$(LONG)\mod_lbmethod_heartbeat.$(src_so)  "$(inst_so)" <.y
829 !IFDEF ALL
830         copy modules\proxy\examples\$(LONG)\mod_lbmethod_rr.$(src_so) "$(inst_so)" <.y
831 !ENDIF
832         copy modules\session\$(LONG)\mod_session.$(src_so)        "$(inst_so)" <.y
833         copy modules\session\$(LONG)\mod_session_cookie.$(src_so) "$(inst_so)" <.y
834         copy modules\session\$(LONG)\mod_session_dbd.$(src_so)    "$(inst_so)" <.y
835         copy modules\slotmem\$(LONG)\mod_slotmem_plain.$(src_so)    "$(inst_so)" <.y
836         copy modules\slotmem\$(LONG)\mod_slotmem_shm.$(src_so)    "$(inst_so)" <.y
837 !IF EXIST("srclib\openssl")
838 #       copy modules\session\$(LONG)\mod_session_crypto.$(src_so) "$(inst_so)" <.y
839         copy modules\ssl\$(LONG)\mod_ssl.$(src_so)              "$(inst_so)" <.y
840         -copy srclib\openssl\$(SSLBIN)\libeay32.$(src_dll)      "$(inst_dll)" <.y
841         -copy srclib\openssl\$(SSLBIN)\ssleay32.$(src_dll)      "$(inst_dll)" <.y
842         -copy srclib\openssl\$(SSLBIN)\openssl.$(src_exe)       "$(inst_exe)" <.y
843         copy support\$(LONG)\abs.$(src_exe)                     "$(inst_exe)" <.y
844 !ENDIF
845         copy support\$(LONG)\ab.$(src_exe)                      "$(inst_exe)" <.y
846 #       copy support\$(LONG)\fcgistarter.$(src_exe)             "$(inst_exe)" <.y
847         copy support\$(LONG)\htcacheclean.$(src_exe)            "$(inst_exe)" <.y
848         copy support\$(LONG)\htdbm.$(src_exe)                   "$(inst_exe)" <.y
849         copy support\$(LONG)\htdigest.$(src_exe)                "$(inst_exe)" <.y
850         copy support\$(LONG)\htpasswd.$(src_exe)                "$(inst_exe)" <.y
851         copy support\$(LONG)\httxt2dbm.$(src_exe)               "$(inst_exe)" <.y
852         copy support\$(LONG)\logresolve.$(src_exe)              "$(inst_exe)" <.y
853         copy support\$(LONG)\rotatelogs.$(src_exe)              "$(inst_exe)" <.y
854         copy support\win32\$(LONG)\ApacheMonitor.$(src_exe)     "$(inst_exe)" <.y
855         copy support\win32\$(LONG)\wintty.$(src_exe)            "$(inst_exe)" <.y
856
857
858 # First we create the tree and populate the README so that 
859 # whatever happens, all licensing has already propagated.  
860 # Then repeatedly invoke the _copybin build to copy the
861 # real binaries, then pdb symbols, anf finally dbg syms.
862 # Then hit docs of various sorts, then includes and libs,
863 # and finally do the .conf magic.
864 #
865 _install:
866         echo Y >.y
867         echo A >.A
868         -mkdir "$(INSTDIR)"
869         -mkdir "$(INSTDIR)\bin"
870 !IF EXIST("srclib\apr-util")
871         -mkdir "$(INSTDIR)\bin\iconv"
872 !ENDIF
873         -mkdir "$(INSTDIR)\cgi-bin"
874         -mkdir "$(INSTDIR)\conf"
875         -mkdir "$(INSTDIR)\conf\extra"
876         -mkdir "$(INSTDIR)\conf\original"
877         -mkdir "$(INSTDIR)\conf\original\extra"
878         -mkdir "$(INSTDIR)\error"
879         -mkdir "$(INSTDIR)\htdocs"
880         -mkdir "$(INSTDIR)\manual"
881         -mkdir "$(INSTDIR)\icons"
882         -mkdir "$(INSTDIR)\include"
883         -mkdir "$(INSTDIR)\lib"
884         -mkdir "$(INSTDIR)\logs"
885         -mkdir "$(INSTDIR)\modules"
886         copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
887         copy CHANGES      "$(INSTDIR)\CHANGES.txt" <.y
888         copy INSTALL      "$(INSTDIR)\INSTALL.txt" <.y
889         copy LICENSE      "$(INSTDIR)\LICENSE.txt" <.y
890         copy NOTICE       "$(INSTDIR)\NOTICE.txt" <.y
891         copy README       "$(INSTDIR)\README.txt" <.y
892         type << >> "$(INSTDIR)\NOTICE.txt"
893
894 Regular expression support is provided by the PCRE library package,
895 which is open source software, written by Philip Hazel, and copyright
896 by the University of Cambridge, England. The original software is
897 available from
898   ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
899 <<
900         -awk -f <<script1.awk < "srclib\pcre\LICENCE" >> "$(INSTDIR)\LICENSE.txt"
901 BEGIN {
902     print "";
903     print "For the pcre.dll component:";
904     print "";
905     while ( getline > 0 ) {
906         if ( $$0 ~ /^End$$/ ) $$0 = "END OF PCRE LICENSE";
907         print $$0;
908    }
909 }
910 <<
911 !IF EXIST("srclib\openssl")
912         -copy srclib\openssl\apps\openssl.cnf "$(INSTDIR)\conf\openssl.cnf" <.y
913         type << >> "$(INSTDIR)\NOTICE.txt"
914
915 This binary distribution includes cryptographic software written by
916 Eric Young (eay@cryptsoft.com), software written by Tim Hudson 
917 (tjh@cryptsoft.com), and software developed by the OpenSSL Project 
918 for use in the OpenSSL Toolkit <http://www.openssl.org/>.
919 <<
920         -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
921 BEGIN {
922     print "";
923     print "For the libeay32.dll, ssleay32.dll and openssl.exe components:";
924     print "";
925     while ( getline > 0 ) {
926         print $$0;
927    }
928 }
929 <<
930         copy << "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
931
932  Apache HTTP Server 2.5 Limited OpenSSL Distribution
933
934  This binary distribution includes the minimal components of OpenSSL required
935  to support mod_ssl for Apache HTTP Server version 2.5 (details are listed 
936  in OPENSSL-README.txt.)  For the complete list of CHANGES to this and later 
937  versions of OpenSSL, please refer to the definative source,
938  <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
939  full binary or source distribution package from <http://www.openssl.org/>.
940
941  These OpenSSL binaries were built for distribution from the U.S. without 
942  support for the patented encryption methods IDEA, MDC-2 or RC5.
943
944 --------------------------------------------------------------------------------
945
946 <<
947         -copy "$(INSTDIR)\OPENSSL-NEWS.txt" \
948             + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt"
949         copy << "$(INSTDIR)\OPENSSL-README.txt" <.y
950
951  Apache HTTP Server 2.5 Limited OpenSSL Distribution
952
953  This binary installation of OpenSSL is a limited distribution of the
954  files derived from the OpenSSL project:
955
956    LICENSE.txt (includes openssl LICENSE)
957    OPENSSL-NEWS.txt
958    OPENSSL-README.txt
959    conf\openssl.cnf
960    bin\libeay32.dll
961    bin\ssleay32.dll
962    bin\openssl.exe
963
964  These are the minimal libraries and tools required to use mod_ssl as 
965  distributed with Apache HTTP Server version 2.5.  No library link files, 
966  headers or sources are distributed with this binary distribution.  Please 
967  refer to the <http://www.openssl.org/> site for complete source or binary 
968  distributions.
969
970  These OpenSSL binaries were built for distribution from the U.S. without 
971  support for the patented encryption methods IDEA, MDC-2 or RC5.
972
973  The Apache HTTP Project only supports the binary distribution of these files
974  and development of the mod_ssl module.  We cannot provide support assistance
975  for using or configuring the OpenSSL package or these modules.  Please refer
976  all installation and configuration questions to the appropriate forum,
977  such as the user supported lists, <http://httpd.apache.org/userslist.html> 
978  the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
979  OpenSSL support page.
980
981 --------------------------------------------------------------------------------
982
983 <<
984         -copy "$(INSTDIR)\OPENSSL-README.txt" \
985             + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt"
986 !ENDIF
987 !IF EXIST("srclib\zlib")
988         type << >> "$(INSTDIR)\NOTICE.txt"
989
990 This binary distribution of mod_deflate.so includes zlib compression code
991 <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
992 and Mark Adler (madler@alumni.caltech.edu) .
993 <<
994         -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
995 BEGIN {
996     while ( getline > 0 ) {
997         if ( $$0 ~ /Copyright notice:/ ) {
998             print "";
999             print "For the mod_deflate zlib compression component:";
1000             while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
1001                 print $$0;
1002             }
1003             exit 0;
1004         }
1005     }
1006     exit 1;
1007 }
1008 <<
1009 !ENDIF
1010 !IF EXIST("srclib\lua")
1011         type << >> "$(INSTDIR)\NOTICE.txt"
1012
1013 This binary distribution of mod_lua.so includes the Lua language, 
1014 developed at Lua.org, a laboratory of the Department of Computer Science 
1015 of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro in Brazil).
1016 For complete information, visit Lua's web site at http://www.lua.org/
1017 <<
1018         -awk -f <<script.awk < "srclib\lua\COPYRIGHT" >> "$(INSTDIR)\LICENSE.txt"
1019 BEGIN {
1020     print "";
1021     print "For the mod_lua language component:";
1022     print "";
1023     while ( getline > 0 && $$0 !~ /end of COPYRIGHT/ ) {
1024         print $$0;
1025     }
1026     exit 0;
1027 }
1028 <<
1029 !ENDIF
1030         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1031                 _copybin src_exe=exe src_dll=dll src_so=so             \
1032                 inst_exe="$(INSTDIR)\bin"                              \
1033                 inst_dll="$(INSTDIR)\bin"                              \
1034                 inst_so="$(INSTDIR)\modules"
1035         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
1036                 _copybin src_exe=pdb src_dll=pdb src_so=pdb            \
1037                 inst_exe="$(INSTDIR)\bin"                              \
1038                 inst_dll="$(INSTDIR)\bin"                              \
1039                 inst_so="$(INSTDIR)\modules"
1040 !IF EXIST("srclib\apr-util")
1041         cd srclib\apr-iconv
1042         $(MAKE) $(MAKEOPT) -f build\modules.mk.win install \
1043                 BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=. \
1044                 INSTALL_DIR="$(INSTDIR)\bin\iconv"
1045         cd ..\..
1046 !ENDIF
1047         copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
1048         copy docs\cgi-examples\printenv.vbs "$(INSTDIR)\cgi-bin\printenv.vbs" <.y
1049         copy docs\cgi-examples\printenv.wsf "$(INSTDIR)\cgi-bin\printenv.wsf" <.y
1050         xcopy docs\error        "$(INSTDIR)\error" /s /d < .a
1051         xcopy docs\docroot      "$(INSTDIR)\htdocs" /d < .a
1052         xcopy docs\icons        "$(INSTDIR)\icons" /s /d < .a
1053         xcopy docs\manual       "$(INSTDIR)\manual" /s /d < .a
1054         for %f in ( \
1055                 srclib\expat\lib\expat.h \
1056                 srclib\apr-util\xml\expat\lib\expat.h \
1057                 srclib\apr\include\*.h \
1058                 srclib\apr-util\include\*.h \
1059 !IF EXIST("srclib\serf")
1060                 srclib\serf\*.h \
1061 !ENDIF
1062                 include\*.h \
1063                 os\win32\os.h \
1064                 modules\cache\mod_cache.h \
1065                 modules\core\mod_so.h \
1066                 modules\core\mod_watchdog.h \
1067                 modules\database\mod_dbd.h \
1068                 modules\dav\main\mod_dav.h \
1069                 modules\filters\mod_include.h \
1070                 modules\generators\mod_cgi.h \
1071                 modules\generators\mod_status.h \
1072                 modules\loggers\mod_log_config.h \
1073                 modules\mappers\mod_rewrite.h \
1074                 modules\proxy\mod_proxy.h \
1075                 modules\proxy\mod_serf.h \
1076                 modules\ssl\mod_ssl.h \
1077           ) do \
1078             @copy %f "$(INSTDIR)\include" < .y > nul
1079         copy srclib\apr\Lib$(SHORT)\apr-1.lib           "$(INSTDIR)\lib" <.y
1080         copy srclib\apr\Lib$(SHORT)\apr-1.pdb           "$(INSTDIR)\lib" <.y
1081         copy srclib\apr\$(LONG)\libapr-1.lib            "$(INSTDIR)\lib" <.y
1082         copy srclib\apr\$(LONG)\libapr-1.exp            "$(INSTDIR)\lib" <.y
1083 !IF EXIST("srclib\apr-util")
1084         copy srclib\apr-util\Lib$(SHORT)\aprutil-1.lib  "$(INSTDIR)\lib" <.y
1085         copy srclib\apr-util\Lib$(SHORT)\aprutil-1.pdb  "$(INSTDIR)\lib" <.y
1086         copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib" <.y
1087         copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.pdb "$(INSTDIR)\lib" <.y
1088         copy srclib\apr-util\$(LONG)\libaprutil-1.lib   "$(INSTDIR)\lib" <.y
1089         copy srclib\apr-util\$(LONG)\libaprutil-1.exp   "$(INSTDIR)\lib" <.y
1090         copy srclib\apr-iconv\$(LONG)\libapriconv-1.lib "$(INSTDIR)\lib" <.y
1091         copy srclib\apr-iconv\$(LONG)\libapriconv-1.exp "$(INSTDIR)\lib" <.y
1092 !ELSE
1093         copy srclib\expat\win32\$(LONG)\libexpatMT.lib  "$(INSTDIR)\lib" <.y
1094         copy srclib\expat\win32\$(LONG)\libexpatMT.exp  "$(INSTDIR)\lib" <.y
1095         copy srclib\expat\win32\$(LONG)\libexpat.lib    "$(INSTDIR)\lib" <.y
1096         copy srclib\expat\win32\$(LONG)\libexpat.exp    "$(INSTDIR)\lib" <.y
1097         copy srclib\expat\win32\$(LONG)\libexpat.dll    "$(INSTDIR)\bin" <.y
1098 !ENDIF
1099 !IF EXIST("srclib\serf")
1100         copy srclib\serf\$(LONG)\libserf.lib            "$(INSTDIR)\lib" <.y
1101         copy srclib\serf\$(LONG)\libserf.exp            "$(INSTDIR)\lib" <.y
1102 !ENDIF
1103         copy $(LONG)\libhttpd.exp                       "$(INSTDIR)\lib" <.y
1104         copy $(LONG)\libhttpd.lib                       "$(INSTDIR)\lib" <.y
1105         copy modules\dav\main\$(LONG)\mod_dav.exp       "$(INSTDIR)\lib" <.y
1106         copy modules\dav\main\$(LONG)\mod_dav.lib       "$(INSTDIR)\lib" <.y
1107         for %f in ( charset.conv magic mime.types ) do ( \
1108           copy docs\conf\%f "$(INSTDIR)\conf\original\%f" <.y )
1109         awk -f build\installwinconf.awk $(DOMAINNAME) $(SERVERNAME) \
1110             $(SERVERADMIN) $(PORT) $(SSLPORT) "$(INSTDIR) " docs/conf/ 
1111         copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl"
1112         -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
1113     { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
1114           sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" ); 
1115       }
1116       if ( $$0 !~ /^#!@perlbin@/ )
1117           print $$0;
1118     }
1119 <<
1120         del .y
1121         del .a
1122
1123 _fixshebang: _install
1124         -awk -f <<script.awk "docs/cgi-examples/printenv" > "$(INSTDIR)\cgi-bin\printenv.pl"
1125     BEGIN { 
1126         if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
1127             gsub( /\\/, "/", perlroot );
1128             print "#!" perlroot;
1129         }
1130     }
1131     {
1132         if ( $$0 !~ /^#!/ ) {
1133             print $$0;
1134         }
1135     }
1136 <<
1137         -cscript -nologo <<script.vbs "docs/cgi-examples/printenv.vbs" "$(INSTDIR)\cgi-bin\printenv.vbs"
1138     Dim fso, f, c
1139     Set fso = CreateObject("Scripting.FileSystemObject")
1140     Set f = fso.OpenTextFile(WScript.Arguments(0), 1)
1141     f.SkipLine
1142     c = f.ReadAll
1143     f.Close
1144     Set f = fso.OpenTextFile(WScript.Arguments(1), 2, TRUE)
1145     f.WriteLine "'!" & Replace(WScript.FullName, "\", "/") & " -nologo"
1146     f.Write c
1147     f.Close
1148 <<
1149         -cscript -nologo <<script.vbs "docs/cgi-examples/printenv.wsf" "$(INSTDIR)\cgi-bin\printenv.wsf"
1150     Dim fso, f, c
1151     Set fso = CreateObject("Scripting.FileSystemObject")
1152     Set f = fso.OpenTextFile(WScript.Arguments(0), 1)
1153     f.SkipLine
1154     c = f.ReadAll
1155     f.Close
1156     Set f = fso.OpenTextFile(WScript.Arguments(1), 2, TRUE)
1157     f.WriteLine "'!" & Replace(WScript.FullName, "\", "/") & " -nologo"
1158     f.Write c
1159     f.Close
1160 <<
1161
1162