]> granicus.if.org Git - apache/blob - Makefile.win
ffbfbb36ab4c675087501b7a4c2637021be5cc9a
[apache] / Makefile.win
1 # Makefile for Windows NT and Windows 95/98/2000
2
3 # Targets are:
4 #   _apacher   - build Apache in Release mode
5 #   _apached   - build Apache in Debug mode
6 #   installr   - build and install a Release build
7 #   installd   - build and install a Debug build
8 #   clean      - remove (most) generated files
9 #   _cleanr    - remove (most) files generated by a Release build
10 #   _cleand    - remove (most) files generated by a Debug build
11 #   _browse    - build the browse info file
12 #
13 # The following install defaults may be customized;
14 #
15 #   Option      Default
16 #   INSTDIR     \Apache2
17 #   PORT        80
18 #   SERVERNAME  localhost
19 #
20 # For example;
21 #
22 #   nmake /f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
23 #
24 # Be aware that certain awk's will not accept backslahed names,
25 # so the server root should be given in forward slashes (quoted),
26 # preferably with the drive designation!
27
28 default:        _apacher
29
30 !IF ("$(CTARGET)" == "") && EXIST("Apache.sln")
31 CTARGET=/build
32 !ENDIF
33
34 !IF !EXIST("srclib\apr")
35 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
36 !MESSAGE sources (apr and apr-util) into your $(INSTDIR)\srclib directory.
37 !MESSAGE Apache cannot build without these libraries!
38 !MESSAGE 
39 !ERROR Need $(INSTDIR)\srclib\apr
40 !ENDIF
41
42 !IF !EXIST("srclib\apr-util")
43 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
44 !MESSAGE sources (apr and apr-util) into your $(INSTDIR)\srclib directory.
45 !MESSAGE Apache cannot build without these libraries!
46 !MESSAGE 
47 !ERROR Need $(INSTDIR)\srclib\apr-util
48 !ENDIF
49
50 # Note; _tryssl: is only used by the msvc developer studio environment to 'fix up'
51 #       the build, since conditional dependencies aren't supported.
52 #
53 !IF EXIST("srclib\openssl")
54 !IF "$(LONG)" == "Debug"
55 SSLBIN=out32dll.dbg
56 !ELSE
57 SSLBIN=out32dll
58 !ENDIF
59
60 _tryssl:
61 !IF EXIST("modules\ssl\mod_ssl.mak")
62         cd modules\ssl
63         $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 .\$(LONG)\mod_ssl.so
64         cd ..\..
65         cd support
66         $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 .\$(LONG)\abs.exe
67         cd ..
68 !ELSEIF EXIST("Apache.sln")
69         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
70         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
71 !ELSE
72         msdev Apache.dsw /USEENV /MAKE \
73                 "mod_ssl - Win32 $(LONG)" \
74                 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
75 !ENDIF
76
77 !ELSE
78 #     NOT EXIST("srclib\openssl")
79
80 _tryssl:
81         echo mod_ssl and ab/ssl will not build without openssl 
82         echo installed in $(INSTDIR)\srclib\openssl.  They must be precompiled 
83         echo using the ms/ntdll.mak file, see srclib\openssl\INSTALL.W32.  
84         echo The most recent version confirmed to build with mod_ssl and ab
85         echo was 0.9.6c available from http://www.openssl.org/
86 !ENDIF
87
88 !IF EXIST("srclib\zlib")
89
90 _tryzlib:
91 !IF EXIST("modules\filters\mod_deflate.mak")
92         cd modules\filters
93         $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 .\$(LONG)\mod_deflate.so
94         cd ..\..
95 !ELSEIF EXIST("Apache.sln")
96         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
97 !ELSE
98         msdev Apache.dsw /USEENV /MAKE \
99                 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
100 !ENDIF
101
102 !ELSE
103 #     NOT EXIST("srclib\zlib")
104
105 _tryzlib:
106         echo mod_deflate will not build without zlib installed in 
107         echo $(INSTDIR)\srclib\zlib.  
108         echo Zlib needs not be built, we compile the sources directly.
109
110 !ENDIF
111
112 !IF "$(INSTDIR)" == ""
113 INSTDIR=\Apache2
114 !MESSAGE INSTDIR not specified, installing to default $(INSTDIR)
115 !ENDIF 
116 !IF "$(PORT)" == ""
117 PORT=80
118 !MESSAGE PORT not specified, using default $(PORT)
119 !MESSAGE To change this use $(MAKE) -f makefile.win PORT=8080 installr
120 !ENDIF 
121 !IF "$(SERVERNAME)" == ""
122 SERVERNAME=localhost
123 !MESSAGE SERVERNAME not specified, using default $(SERVERNAME)
124 !MESSAGE To change this use $(MAKE) -f makefile.win PORT=www.example.com installr
125 !ENDIF
126
127 !IFNDEF MAKEOPT
128 # Only default the behavior if MAKEOPT= is omitted
129 !IF "$(MAKE)" == "NMAKE"
130 # Microsoft NMake options
131 MAKEOPT=-nologo
132 !ELSEIF "($MAKE)" == "make"
133 # Borland make options?  Not really supported (yet)
134 MAKEOPT=-s -N
135 !ENDIF
136 !ENDIF
137
138 _dummy:
139
140 _browse:
141         cd Browse
142           bscmake.exe -nologo -Iu -o Apache.bsc *.sbr
143         cd ..
144
145 _apacher: 
146         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
147
148 _apached: 
149         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   _build
150
151 installr: 
152         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
153
154 installd: 
155         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   _build _install
156
157 clean:  _cleanr _cleand
158         rd /s Browse < << 
159 y
160 <<
161
162 !IF EXIST("Apache.mak")
163
164 _cleanr:
165         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
166
167 _cleand:  
168         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET=CLEAN _build
169
170 _build:
171         echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
172         cd srclib\apr
173          $(MAKE) $(MAKEOPT) -f apr.mak             CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
174          $(MAKE) $(MAKEOPT) -f libapr.mak          CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
175         cd ..\..
176         cd srclib\apr-util\uri
177          $(MAKE) $(MAKEOPT) -f gen_uri_delims.mak  CFG="gen_uri_delims - Win32 $(LONG)" RECURSE=0 $(CTARGET)
178         cd ..\..\..
179         cd srclib\apr-util\xml\expat\lib
180          $(MAKE) $(MAKEOPT) -f xml.mak             CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
181         cd ..\..\..
182          $(MAKE) $(MAKEOPT) -f aprutil.mak         CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
183          $(MAKE) $(MAKEOPT) -f libaprutil.mak      CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
184         cd ..\..
185         cd srclib\pcre
186          $(MAKE) $(MAKEOPT) -f dftables.mak        CFG="dftables - Win32 $(LONG)" RECURSE=0 $(CTARGET)
187          $(MAKE) $(MAKEOPT) -f pcre.mak            CFG="pcre - Win32 $(LONG)" RECURSE=0 $(CTARGET)
188          $(MAKE) $(MAKEOPT) -f pcreposix.mak       CFG="pcreposix - Win32 $(LONG)" RECURSE=0 $(CTARGET)
189         cd ..\..
190         cd server
191          $(MAKE) $(MAKEOPT) -f gen_test_char.mak   CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
192         cd ..
193          -del $(LONG)\buildmark.obj
194          $(MAKE) $(MAKEOPT) -f libhttpd.mak        CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
195          $(MAKE) $(MAKEOPT) -f Apache.mak          CFG="Apache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
196         cd modules\aaa
197          $(MAKE) $(MAKEOPT) -f mod_access.mak      CFG="mod_access - Win32 $(LONG)" RECURSE=0 $(CTARGET)
198          $(MAKE) $(MAKEOPT) -f mod_auth.mak        CFG="mod_auth - Win32 $(LONG)" RECURSE=0 $(CTARGET)
199          $(MAKE) $(MAKEOPT) -f mod_auth_anon.mak   CFG="mod_auth_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
200          $(MAKE) $(MAKEOPT) -f mod_auth_dbm.mak    CFG="mod_auth_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
201          $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
202         cd ..\..
203         cd modules\arch\win32
204          $(MAKE) $(MAKEOPT) -f mod_isapi.mak       CFG="mod_isapi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
205         cd ..\..\..
206         cd modules\cache
207          $(MAKE) $(MAKEOPT) -f mod_file_cache.mak  CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
208         cd ..\..
209         cd modules\dav\main
210          $(MAKE) $(MAKEOPT) -f mod_dav.mak         CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
211         cd ..\..\..
212         cd modules\dav\fs
213          $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak      CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
214         cd ..\..\..
215         cd modules\experimental
216          $(MAKE) $(MAKEOPT) -f mod_cache.mak       CFG="mod_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
217          $(MAKE) $(MAKEOPT) -f mod_mem_cache.mak   CFG="mod_mem_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
218          $(MAKE) $(MAKEOPT) -f mod_disk_cache.mak  CFG="mod_disk_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
219          $(MAKE) $(MAKEOPT) -f mod_ext_filter.mak  CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
220         cd ..\..
221         cd modules\filters
222 !IF EXIST("srclib\zlib")
223          $(MAKE) $(MAKEOPT) -f mod_deflate.mak     CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
224 !ENDIF
225          $(MAKE) $(MAKEOPT) -f mod_include.mak     CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
226         cd ..\..
227         cd modules\generators
228          $(MAKE) $(MAKEOPT) -f mod_asis.mak        CFG="mod_asis - Win32 $(LONG)" RECURSE=0 $(CTARGET)
229          $(MAKE) $(MAKEOPT) -f mod_autoindex.mak   CFG="mod_autoindex - Win32 $(LONG)" RECURSE=0 $(CTARGET)
230          $(MAKE) $(MAKEOPT) -f mod_cgi.mak         CFG="mod_cgi - Win32 $(LONG)" RECURSE=0 $(CTARGET)
231          $(MAKE) $(MAKEOPT) -f mod_info.mak        CFG="mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
232          $(MAKE) $(MAKEOPT) -f mod_status.mak      CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
233         cd ..\..
234         cd modules\http
235          $(MAKE) $(MAKEOPT) -f mod_mime.mak        CFG="mod_mime - Win32 $(LONG)" RECURSE=0 $(CTARGET)
236         cd ..\..
237         cd modules\loggers
238          $(MAKE) $(MAKEOPT) -f mod_log_config.mak  CFG="mod_log_config - Win32 $(LONG)" RECURSE=0 $(CTARGET)
239         cd ..\..
240         cd modules\mappers
241          $(MAKE) $(MAKEOPT) -f mod_actions.mak     CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
242          $(MAKE) $(MAKEOPT) -f mod_alias.mak       CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
243          $(MAKE) $(MAKEOPT) -f mod_dir.mak         CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
244          $(MAKE) $(MAKEOPT) -f mod_imap.mak        CFG="mod_imap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
245          $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
246          $(MAKE) $(MAKEOPT) -f mod_rewrite.mak     CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
247          $(MAKE) $(MAKEOPT) -f mod_speling.mak     CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
248          $(MAKE) $(MAKEOPT) -f mod_userdir.mak     CFG="mod_userdir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
249          $(MAKE) $(MAKEOPT) -f mod_vhost_alias.mak CFG="mod_vhost_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
250         cd ..\..
251         cd modules\metadata
252          $(MAKE) $(MAKEOPT) -f mod_cern_meta.mak   CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
253          $(MAKE) $(MAKEOPT) -f mod_env.mak         CFG="mod_env - Win32 $(LONG)" RECURSE=0 $(CTARGET)
254          $(MAKE) $(MAKEOPT) -f mod_expires.mak     CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
255          $(MAKE) $(MAKEOPT) -f mod_headers.mak     CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
256          $(MAKE) $(MAKEOPT) -f mod_mime_magic.mak  CFG="mod_mime_magic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
257          $(MAKE) $(MAKEOPT) -f mod_setenvif.mak    CFG="mod_setenvif - Win32 $(LONG)" RECURSE=0 $(CTARGET)
258          $(MAKE) $(MAKEOPT) -f mod_unique_id.mak   CFG="mod_unique_id - Win32 $(LONG)" RECURSE=0 $(CTARGET)
259          $(MAKE) $(MAKEOPT) -f mod_usertrack.mak   CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
260         cd ..\..
261         cd modules\proxy
262          $(MAKE) $(MAKEOPT) -f mod_proxy.mak       CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
263          $(MAKE) $(MAKEOPT) -f mod_proxy_connect.mak CFG="mod_proxy_connect - Win32 $(LONG)" RECURSE=0 $(CTARGET)
264          $(MAKE) $(MAKEOPT) -f mod_proxy_ftp.mak   CFG="mod_proxy_ftp - Win32 $(LONG)" RECURSE=0 $(CTARGET)
265          $(MAKE) $(MAKEOPT) -f mod_proxy_http.mak  CFG="mod_proxy_http - Win32 $(LONG)" RECURSE=0 $(CTARGET)
266         cd ..\..
267 !IF EXIST("srclib\openssl")
268         cd modules\ssl
269          $(MAKE) $(MAKEOPT) -f mod_ssl.mak         CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) .\$(LONG)\mod_ssl.so
270         cd ..\..
271         cd support
272          $(MAKE) $(MAKEOPT) -f abs.mak             CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
273         cd ..
274 !ENDIF
275         cd support
276          $(MAKE) $(MAKEOPT) -f ab.mak              CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
277          $(MAKE) $(MAKEOPT) -f htdbm.mak           CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
278          $(MAKE) $(MAKEOPT) -f htdigest.mak        CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
279          $(MAKE) $(MAKEOPT) -f htpasswd.mak        CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
280          $(MAKE) $(MAKEOPT) -f logresolve.mak      CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
281          $(MAKE) $(MAKEOPT) -f rotatelogs.mak      CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
282         cd ..
283         cd support\win32
284          $(MAKE) $(MAKEOPT) -f ApacheMonitor.mak   CFG="ApacheMonitor - Win32 $(LONG)" RECURSE=0 $(CTARGET)
285          $(MAKE) $(MAKEOPT) -f wintty.mak          CFG="wintty - Win32 $(LONG)" RECURSE=0 $(CTARGET)
286         cd ..\..
287
288 !ELSEIF EXIST("Apache.sln")
289
290 _cleanr:  
291         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/clean" _build
292
293 _cleand:  
294         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET="/clean" _build
295
296 _build:
297         echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
298         -del $(LONG)\buildmark.obj
299         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project BuildBin
300 !IF EXIST("srclib\openssl")
301         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
302         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project abs
303 !ENDIF
304 !IF EXIST("srclib\zlib")
305         devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
306 !ENDIF
307
308 !ELSE
309
310 _cleanr:  
311         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET="/CLEAN" _build
312
313 _cleand:  
314         $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug   CTARGET="/CLEAN" _build
315
316 _build:
317         echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
318         -del $(LONG)\buildmark.obj
319         msdev Apache.dsw /USEENV /MAKE \
320                 "BuildBin - Win32 $(LONG)" $(CTARGET)
321 !IF EXIST("srclib\openssl")
322         msdev Apache.dsw /USEENV /MAKE \
323                 "mod_ssl - Win32 $(LONG)" \
324                 "abs - Win32 $(LONG)" /NORECURSE $(CTARGET)
325 !ENDIF
326 !IF EXIST("srclib\zlib")
327         msdev Apache.dsw /USEENV /MAKE \
328                 "mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
329 !ENDIF
330
331 !ENDIF
332
333 _install:
334         echo Y >.y
335         echo A >.A
336         -mkdir "$(INSTDIR)"
337         -mkdir "$(INSTDIR)\bin"
338         -mkdir "$(INSTDIR)\cgi-bin"
339         -mkdir "$(INSTDIR)\conf"
340         -mkdir "$(INSTDIR)\error"
341         -mkdir "$(INSTDIR)\htdocs"
342         -mkdir "$(INSTDIR)\manual"
343         -mkdir "$(INSTDIR)\icons"
344         -mkdir "$(INSTDIR)\include"
345         -mkdir "$(INSTDIR)\lib"
346         -mkdir "$(INSTDIR)\logs"
347         -mkdir "$(INSTDIR)\modules"
348         -mkdir "$(INSTDIR)\proxy"
349         copy ABOUT_APACHE "$(INSTDIR)\ABOUT_APACHE.txt" <.y
350         copy CHANGES "$(INSTDIR)\CHANGES.txt" <.y
351         copy INSTALL "$(INSTDIR)\INSTALL.txt" <.y
352         copy LICENSE "$(INSTDIR)\LICENSE.txt" <.y
353         copy README "$(INSTDIR)\README.txt" <.y
354         copy $(LONG)\Apache.exe "$(INSTDIR)\bin" <.y
355         copy $(LONG)\libhttpd.dll "$(INSTDIR)\bin" <.y
356         copy srclib\apr\$(LONG)\libapr.dll "$(INSTDIR)\bin" <.y
357         copy srclib\apr-util\$(LONG)\libaprutil.dll "$(INSTDIR)\bin" <.y
358         copy modules\aaa\$(LONG)\mod_access.so "$(INSTDIR)\modules" <.y
359         copy modules\aaa\$(LONG)\mod_auth.so "$(INSTDIR)\modules" <.y
360         copy modules\aaa\$(LONG)\mod_auth_anon.so "$(INSTDIR)\modules" <.y
361         copy modules\aaa\$(LONG)\mod_auth_dbm.so "$(INSTDIR)\modules" <.y
362         copy modules\aaa\$(LONG)\mod_auth_digest.so "$(INSTDIR)\modules" <.y
363         copy modules\arch\win32\$(LONG)\mod_isapi.so "$(INSTDIR)\modules" <.y
364         copy modules\cache\$(LONG)\mod_file_cache.so "$(INSTDIR)\modules" <.y
365         copy modules\dav\fs\$(LONG)\mod_dav_fs.so "$(INSTDIR)\modules" <.y
366         copy modules\dav\main\$(LONG)\mod_dav.so "$(INSTDIR)\modules" <.y
367         copy modules\experimental\$(LONG)\mod_cache.so "$(INSTDIR)\modules" <.y
368         copy modules\experimental\$(LONG)\mod_mem_cache.so "$(INSTDIR)\modules" <.y
369         copy modules\experimental\$(LONG)\mod_disk_cache.so "$(INSTDIR)\modules" <.y
370         copy modules\experimental\$(LONG)\mod_ext_filter.so "$(INSTDIR)\modules" <.y
371         copy modules\filters\$(LONG)\mod_include.so "$(INSTDIR)\modules" <.y
372         copy modules\generators\$(LONG)\mod_asis.so "$(INSTDIR)\modules" <.y
373         copy modules\generators\$(LONG)\mod_autoindex.so "$(INSTDIR)\modules" <.y
374         copy modules\generators\$(LONG)\mod_cgi.so "$(INSTDIR)\modules" <.y
375         copy modules\generators\$(LONG)\mod_info.so "$(INSTDIR)\modules" <.y
376         copy modules\generators\$(LONG)\mod_status.so "$(INSTDIR)\modules" <.y
377         copy modules\http\$(LONG)\mod_mime.so "$(INSTDIR)\modules" <.y
378         copy modules\loggers\$(LONG)\mod_log_config.so "$(INSTDIR)\modules" <.y
379         copy modules\mappers\$(LONG)\mod_actions.so "$(INSTDIR)\modules" <.y
380         copy modules\mappers\$(LONG)\mod_alias.so "$(INSTDIR)\modules" <.y
381         copy modules\mappers\$(LONG)\mod_dir.so "$(INSTDIR)\modules" <.y
382         copy modules\mappers\$(LONG)\mod_imap.so "$(INSTDIR)\modules" <.y
383         copy modules\mappers\$(LONG)\mod_negotiation.so "$(INSTDIR)\modules" <.y
384         copy modules\mappers\$(LONG)\mod_rewrite.so "$(INSTDIR)\modules" <.y
385         copy modules\mappers\$(LONG)\mod_speling.so "$(INSTDIR)\modules" <.y
386         copy modules\mappers\$(LONG)\mod_userdir.so "$(INSTDIR)\modules" <.y
387         copy modules\mappers\$(LONG)\mod_vhost_alias.so "$(INSTDIR)\modules" <.y
388         copy modules\metadata\$(LONG)\mod_cern_meta.so "$(INSTDIR)\modules" <.y
389         copy modules\metadata\$(LONG)\mod_env.so "$(INSTDIR)\modules" <.y
390         copy modules\metadata\$(LONG)\mod_expires.so "$(INSTDIR)\modules" <.y
391         copy modules\metadata\$(LONG)\mod_headers.so "$(INSTDIR)\modules" <.y
392         copy modules\metadata\$(LONG)\mod_mime_magic.so "$(INSTDIR)\modules" <.y
393         copy modules\metadata\$(LONG)\mod_setenvif.so "$(INSTDIR)\modules" <.y
394         copy modules\metadata\$(LONG)\mod_unique_id.so "$(INSTDIR)\modules" <.y
395         copy modules\metadata\$(LONG)\mod_usertrack.so "$(INSTDIR)\modules" <.y
396         copy modules\proxy\$(LONG)\mod_proxy.so "$(INSTDIR)\modules" <.y
397         copy modules\proxy\$(LONG)\mod_proxy_connect.so "$(INSTDIR)\modules" <.y
398         copy modules\proxy\$(LONG)\mod_proxy_ftp.so "$(INSTDIR)\modules" <.y
399         copy modules\proxy\$(LONG)\mod_proxy_http.so "$(INSTDIR)\modules" <.y
400 !IF EXIST("srclib\openssl")
401         copy modules\ssl\$(LONG)\mod_ssl.so "$(INSTDIR)\modules" <.y
402         copy srclib\openssl\$(SSLBIN)\openssl.exe "$(INSTDIR)\bin" <.y
403         copy srclib\openssl\$(SSLBIN)\libeay32.dll "$(INSTDIR)\bin" <.y
404         copy srclib\openssl\$(SSLBIN)\ssleay32.dll "$(INSTDIR)\bin" <.y
405         type << >> "$(INSTDIR)\README.txt"
406
407   This binary distribution includes cryptographic software written by
408   Eric Young (eay@cryptsoft.com), software written by Tim Hudson 
409   (tjh@cryptsoft.com), and software developed by the OpenSSL Project 
410   for use in the OpenSSL Toolkit <http://www.openssl.org/>.
411 <<
412         -awk -f <<script.awk < "srclib\openssl\LICENSE" >> "$(INSTDIR)\LICENSE.txt"
413 {   print "";
414     print "For the libeay32.dll, ssleay32.dll and certtool.exe components:";
415     print "";
416     while ( getline > 0 ) {
417         print $$0;
418    }
419 }
420 <<
421         copy << + srclib\openssl\NEWS "$(INSTDIR)\OPENSSL-NEWS.txt" <.y
422
423  Apache HTTP Server 2.0 Limited OpenSSL Distribution
424
425  This binary distribution includes the minimal components of OpenSSL required
426  to support mod_ssl for Apache HTTP Server version 2.0 (details are listed 
427  in OPENSSL-README.txt.)  For the complete list of CHANGES to this and later 
428  versions of OpenSSL, please refer to the definative source,
429  <http://www.openssl.org/news/changelog.html>, or see the CHANGES file in the
430  full binary or source distribution package from <http://www.openssl.org/>.
431
432  These OpenSSL binaries were built for distribution from the U.S. without 
433  support for the patented encryption methods IDEA, MDC-2 or RC5.
434
435 --------------------------------------------------------------------------------
436 <<
437         copy << + srclib\openssl\README "$(INSTDIR)\OPENSSL-README.txt" <.y
438
439  Apache HTTP Server 2.0 Limited OpenSSL Distribution
440
441  This binary installation of OpenSSL is a limited distribution of the documents
442  OPENSSL-LICENSE.txt, OPENSSL-NEWS.txt and OPENSSL-README.txt, and the binaries
443
444    libeay32.dll
445    ssleay32.dll
446    openssl.exe
447
448  These are the minimal libraries and tools required to use mod_ssl as 
449  distributed with Apache HTTP Server version 2.0.  No library link files, 
450  headers or sources are distributed with this binary distribution.  Please 
451  refer to the <http://www.openssl.org/> site for complete source or binary 
452  distributions.
453
454  These OpenSSL binaries were built for distribution from the U.S. without 
455  support for the patented encryption methods IDEA, MDC-2 or RC5.
456
457  The Apache HTTP Project only supports the binary distribution of these files
458  and development of the mod_ssl module.  We cannot provide support assistance
459  for using or configuring the OpenSSL package or these modules.  Please refer
460  all installation and configuration questions to the appropriate forum,
461  such as the user supported lists, <http://httpd.apache.org/userslist.html> 
462  the Apache HTTP Server user's list or <http://www.openssl.org/support/> the
463  OpenSSL support page.
464
465 --------------------------------------------------------------------------------
466 <<
467         copy support\$(LONG)\abs.exe "$(INSTDIR)\bin\ab.exe" <.y
468 !ELSE
469         copy support\$(LONG)\ab.exe "$(INSTDIR)\bin" <.y
470 !ENDIF
471 !IF EXIST("srclib\zlib")
472         type << >> "$(INSTDIR)\README.txt"
473
474   This binary distribution of mod_deflate.so includes zlib compression code
475   <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
476   and Mark Adler (madler@alumni.caltech.edu) .
477 <<
478         -awk -f <<script.awk < "srclib\zlib\README" >> "$(INSTDIR)\LICENSE.txt"
479 {  while ( getline > 0 ) {
480       if ( $$0 ~ /Copyright notice:/ ) {
481         print "";
482         print "For the mod_deflate zlib compression component:";
483         while ( getline > 0 && $$0 !~ /^[^ ]/ ) {
484           print $$0;
485         }
486         exit 0;
487       }
488    }
489 }
490 <<
491         copy modules\filters\$(LONG)\mod_deflate.so "$(INSTDIR)\modules" <.y
492 !ENDIF
493         copy support\$(LONG)\htdbm.exe "$(INSTDIR)\bin" <.y
494         copy support\$(LONG)\htdigest.exe "$(INSTDIR)\bin" <.y
495         copy support\$(LONG)\htpasswd.exe "$(INSTDIR)\bin" <.y
496         copy support\$(LONG)\logresolve.exe "$(INSTDIR)\bin" <.y
497         copy support\$(LONG)\rotatelogs.exe "$(INSTDIR)\bin" <.y
498         copy support\win32\$(LONG)\ApacheMonitor.exe "$(INSTDIR)\bin" <.y
499         copy support\win32\$(LONG)\wintty.exe "$(INSTDIR)\bin" <.y
500         copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl" <.y
501         -awk -f <<script.awk "docs\cgi-examples\printenv" "$(INSTDIR)\cgi-bin\printenv.pl"
502     BEGIN { 
503         srcfl = ARGV[1];
504         dstfl = ARGV[2];
505         if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
506             gsub( /\\/, "/", perlroot );
507             print "#!" perlroot > dstfl;
508             getline < srcfl;
509         }
510         while ( ( getline < srcfl ) > 0 ) {
511             print $$0 > dstfl;
512         }
513     }
514 <<
515         xcopy docs\error "$(INSTDIR)\error" /s /d < .a
516         xcopy docs\docroot "$(INSTDIR)\htdocs" /d < .a
517         xcopy docs\manual "$(INSTDIR)\manual" /s /d < .a
518         xcopy srclib\pcre\pcre*.h "$(INSTDIR)\include" /d < .a
519         xcopy srclib\apr-util\xml\expat\lib\expat.h "$(INSTDIR)\include" /d < .a
520         xcopy srclib\apr\include\*.h "$(INSTDIR)\include" /d < .a
521         xcopy srclib\apr-util\include\*.h "$(INSTDIR)\include" /d < .a
522         xcopy include\*.h "$(INSTDIR)\include" /d < .a
523         xcopy docs\icons "$(INSTDIR)\icons" /s /d < .a
524         copy srclib\apr\Lib$(SHORT)\apr.lib "$(INSTDIR)\lib" <.y
525         copy srclib\apr-util\Lib$(SHORT)\aprutil.lib "$(INSTDIR)\lib" <.y
526         copy srclib\pcre\Lib$(SHORT)\pcre.lib "$(INSTDIR)\lib" <.y
527         copy srclib\pcre\Lib$(SHORT)\pcreposix.lib "$(INSTDIR)\lib" <.y
528 #       ### until we determine if it's safe to change expat>libexpat and xml>expat
529 #       within our cvs tree... at least remain consistent to our naming conventions;
530         copy srclib\apr-util\xml\expat\lib\Lib$(SHORT)\xml.lib "$(INSTDIR)\lib\expat.lib" <.y
531         copy srclib\apr\$(LONG)\libapr.lib "$(INSTDIR)\lib" <.y
532         copy srclib\apr\$(LONG)\libapr.exp "$(INSTDIR)\lib" <.y
533         copy srclib\apr-util\$(LONG)\libaprutil.lib "$(INSTDIR)\lib" <.y
534         copy srclib\apr-util\$(LONG)\libaprutil.exp "$(INSTDIR)\lib" <.y
535         copy $(LONG)\libhttpd.exp "$(INSTDIR)\lib" <.y
536         copy $(LONG)\libhttpd.lib "$(INSTDIR)\lib" <.y
537         copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\lib" <.y
538         copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\lib" <.y
539         copy docs\conf\magic "$(INSTDIR)\conf\magic.default" <.y
540         if not exist "$(INSTDIR)\conf\magic" \
541             copy "$(INSTDIR)\conf\magic.default" "$(INSTDIR)\conf\magic"
542         copy docs\conf\mime.types "$(INSTDIR)\conf\mime.types.default" <.y
543         if not exist "$(INSTDIR)\conf\mime.types" \
544             copy "$(INSTDIR)\conf\mime.types.default" "$(INSTDIR)\conf\mime.types"
545         copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.default.conf" <.y
546         -awk -f <<script.awk "docs\conf\httpd-win.conf" "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)"
547     BEGIN { 
548         srcfl = ARGV[1];
549         dstfl = ARGV[2];
550         serverroot = ARGV[3];
551         gsub( /\\/, "/", serverroot );
552         while ( ( getline < srcfl ) > 0 ) {
553             gsub( /@@ServerRoot@@/, serverroot );
554             gsub( /@@ServerName@@/, "$(SERVERNAME)" );
555             gsub( /@@Port@@/, "$(PORT)" );
556             print $$0 > dstfl;
557         }
558     }
559 <<
560         if not exist "$(INSTDIR)\conf\httpd.conf" \
561             copy "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)\conf\httpd.conf"
562         copy docs\conf\ssl-std.conf "$(INSTDIR)\conf\ssl.default.conf" <.y
563         -awk -f <<script.awk "docs\conf\ssl-std.conf" "$(INSTDIR)\conf\ssl.default.conf" "$(INSTDIR)"
564     BEGIN { 
565         srcfl = ARGV[1];
566         dstfl = ARGV[2];
567         serverroot = ARGV[3];
568         gsub( /\\/, "/", serverroot );
569         while ( ( getline < srcfl ) > 0 ) {
570             gsub( /@@ServerRoot@@/, serverroot );
571             print $$0 > dstfl;
572         }
573     }
574 <<
575         if not exist "$(INSTDIR)\conf\ssl.conf" \
576             copy "$(INSTDIR)\conf\ssl.default.conf" "$(INSTDIR)\conf\ssl.conf"
577         -awk -f <<script.awk "support\dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
578     { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
579           sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" ); 
580       }
581       if ( $$0 !~ /^#!@perlbin@/ )
582           print $$0;
583     }
584 <<
585         del .a .y
586