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