]> granicus.if.org Git - apache/blobdiff - Makefile.win
Backout r410758 because DavLockDB needs to point to an httpd-writable
[apache] / Makefile.win
index c0e1ebe3d664889c67141f2c30d3fb0b134652c4..4e71b3f787deb3bb2c749481e844108cf2481530 100644 (file)
 #   Option      Default
 #   INSTDIR     \Apache2
 #   PORT        80
+#   SSLPORT     443
 #   SERVERNAME  localhost
 #
 # For example;
 #
-#   nmake /f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
+#   nmake -f Makefile.win PORT=80 INSTDIR="d:\Program Files\Apache" installr
 #
 # Be aware that certain awk's will not accept backslahed names,
 # so the server root should be given in forward slashes (quoted),
 
 default: _apacher
 
-!IF ("$(CTARGET)" == "") && EXIST("Apache.sln")
+!IF ("$(CTARGET)" == "") && !EXIST("httpd.mak") && EXIST("Apache.sln")
 CTARGET=/build
 !ENDIF
 
 !IF !EXIST("srclib\apr") || !EXIST("srclib\apr-util") || !EXIST("srclib\apr-iconv")
 !MESSAGE Please check out or download and unpack the Apache Portability Runtime
-!MESSAGE sources (apr, apr-iconv and apr-util) into your $(INSTDIR)\srclib dir.
+!MESSAGE sources (apr, apr-iconv and apr-util) into your srclib dir.
 !MESSAGE Apache cannot build without these libraries!
 !MESSAGE 
-!ERROR Need $(INSTDIR)\srclib\  apr, apr-iconv and apr-util
+!ERROR Need srclib\  apr, apr-iconv and apr-util
 !ENDIF
 
 # Note; _tryssl: is only used by the msvc developer studio environment to 'fix up'
 #      the build, since conditional dependencies aren't supported.
 #
 !IF EXIST("srclib\openssl")
-!IF "$(LONG)" == "Debug"
+!IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe")
 SSLBIN=out32dll.dbg
 !ELSE
 SSLBIN=out32dll
@@ -52,10 +53,10 @@ SSLBIN=out32dll
 _tryssl:
 !IF EXIST("modules\ssl\mod_ssl.mak")
        cd modules\ssl
-       $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 .\$(LONG)\mod_ssl.so
+       $(MAKE) $(MAKEOPT) -f mod_ssl.mak CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..
        cd support
-       $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 .\$(LONG)\abs.exe
+       $(MAKE) $(MAKEOPT) -f abs.mak CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..
 !ELSEIF EXIST("Apache.sln")
        devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_ssl
@@ -83,7 +84,7 @@ _tryssl:
 _tryzlib:
 !IF EXIST("modules\filters\mod_deflate.mak")
        cd modules\filters
-       $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 .\$(LONG)\mod_deflate.so
+       $(MAKE) $(MAKEOPT) -f mod_deflate.mak CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..
 !ELSEIF EXIST("Apache.sln")
        devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
@@ -104,7 +105,7 @@ _tryzlib:
 !ENDIF
 
 !IF "$(INSTDIR)" == ""
-INSTDIR=g:\built\httpd-2.1-$(SHORT)
+INSTDIR=\Apache2
 !ENDIF
 !IF "$(SERVERNAME)" == ""
 SERVERNAME=localhost
@@ -112,25 +113,31 @@ SERVERNAME=localhost
 !IF "$(PORT)" == ""
 PORT=80
 !ENDIF 
+!IF "$(SSLPORT)" == ""
+SSLPORT=443
+!ENDIF 
 
 !IF "$(LONG)" == ""
 !MESSAGE
 !MESSAGE INSTDIR    = $(INSTDIR)
 !MESSAGE SERVERNAME = $(SERVERNAME)
 !MESSAGE PORT       = $(PORT)
+!IF EXIST("srclib\openssl")
+!MESSAGE SSLPORT    = $(SSLPORT)
+!ENDIF
 !MESSAGE
-!MESSAGE To change these options use 'nmake /f Makefile.win [option=value]'
-!MESSAGE Example: nmake /f Makefile.win PORT=8080
+!MESSAGE To change these options use 'nmake -f Makefile.win [option=value]'
+!MESSAGE Example: nmake -f Makefile.win PORT=8080
 !MESSAGE
 !MESSAGE
 !ENDIF
 
 !IFNDEF MAKEOPT
 # Only default the behavior if MAKEOPT= is omitted
-!IF "$(MAKE)" == "NMAKE"
+!IFDEF _NMAKE_VER
 # Microsoft NMake options
 MAKEOPT=-nologo
-!ELSEIF "($MAKE)" == "make"
+!ELSEIF "$(MAKE)" == "make"
 # Borland make options?  Not really supported (yet)
 MAKEOPT=-s -N
 !ENDIF
@@ -160,7 +167,7 @@ clean:      _cleanr _cleand
 y
 <<
 
-!IF EXIST("Apache.mak")
+!IF EXIST("httpd.mak")
 
 _cleanr:
        $(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
@@ -178,21 +185,18 @@ _build:
         $(MAKE) $(MAKEOPT) -f apriconv.mak  CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f libapriconv.mak  CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET)
 !IF "$(CTARGET)" == "CLEAN"
-       $(MAKE) $(MAKEOPT) /f build\modules.mk.win clean \
+       $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
                BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
 !ELSE
        cd ccs
-       $(MAKE) /nologo /f Makefile.win all \
+       $(MAKE) $(MAKEOPT) -f Makefile.win all \
                BUILD_MODE=$(LONG) BIND_MODE=shared
        cd ..\ces
-       $(MAKE) /nologo /f Makefile.win all \
+       $(MAKE) $(MAKEOPT) -f Makefile.win all \
                BUILD_MODE=$(LONG) BIND_MODE=shared
        cd ..
 !ENDIF
        cd ..\..
-       cd srclib\apr-util\uri
-        $(MAKE) $(MAKEOPT) -f gen_uri_delims.mak  CFG="gen_uri_delims - Win32 $(LONG)" RECURSE=0 $(CTARGET)
-       cd ..\..\..
        cd srclib\apr-util\xml\expat\lib
         $(MAKE) $(MAKEOPT) -f xml.mak             CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..\..
@@ -207,15 +211,19 @@ _build:
         $(MAKE) $(MAKEOPT) -f gen_test_char.mak   CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..
         $(MAKE) $(MAKEOPT) -f libhttpd.mak        CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
-        $(MAKE) $(MAKEOPT) -f Apache.mak          CFG="Apache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+        $(MAKE) $(MAKEOPT) -f httpd.mak           CFG="httpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
 # build ldap prior to authnz_ldap
        cd modules\ldap
         $(MAKE) $(MAKEOPT) -f mod_ldap.mak        CFG="mod_ldap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..
+       cd modules\database
+        $(MAKE) $(MAKEOPT) -f mod_dbd.mak         CFG="mod_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+       cd ..\..
        cd modules\aaa
         $(MAKE) $(MAKEOPT) -f mod_auth_basic.mak  CFG="mod_auth_basic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_authn_anon.mak  CFG="mod_authn_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+        $(MAKE) $(MAKEOPT) -f mod_authn_dbd.mak   CFG="mod_authn_dbd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_authn_dbm.mak   CFG="mod_authn_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_authn_default.mak CFG="mod_authn_default - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_authn_file.mak  CFG="mod_authn_file - Win32 $(LONG)" RECURSE=0 $(CTARGET)
@@ -241,14 +249,14 @@ _build:
        cd modules\dav\fs
         $(MAKE) $(MAKEOPT) -f mod_dav_fs.mak      CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..\..
-       cd modules\debug
+       cd modules\debugging
         $(MAKE) $(MAKEOPT) -f mod_bucketeer.mak   CFG="mod_bucketeer - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_dumpio.mak      CFG="mod_dumpio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..
        cd modules\experimental
-        $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..
        cd modules\filters
+        $(MAKE) $(MAKEOPT) -f mod_charset_lite.mak CFG="mod_charset_lite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
 !IF EXIST("srclib\zlib")
         $(MAKE) $(MAKEOPT) -f mod_deflate.mak     CFG="mod_deflate - Win32 $(LONG)" RECURSE=0 $(CTARGET)
 !ENDIF
@@ -274,7 +282,7 @@ _build:
         $(MAKE) $(MAKEOPT) -f mod_actions.mak     CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_alias.mak       CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_dir.mak         CFG="mod_dir - Win32 $(LONG)" RECURSE=0 $(CTARGET)
-        $(MAKE) $(MAKEOPT) -f mod_imap.mak        CFG="mod_imap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+        $(MAKE) $(MAKEOPT) -f mod_imagemap.mak    CFG="mod_imagemap - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_negotiation.mak CFG="mod_negotiation - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_rewrite.mak     CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f mod_speling.mak     CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
@@ -303,7 +311,7 @@ _build:
        cd ..\..
 !IF EXIST("srclib\openssl")
        cd modules\ssl
-        $(MAKE) $(MAKEOPT) -f mod_ssl.mak         CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET) .\$(LONG)\mod_ssl.so
+        $(MAKE) $(MAKEOPT) -f mod_ssl.mak         CFG="mod_ssl - Win32 $(LONG)" RECURSE=0 $(CTARGET)
        cd ..\..
        cd support
         $(MAKE) $(MAKEOPT) -f abs.mak             CFG="abs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
@@ -311,6 +319,7 @@ _build:
 !ENDIF
        cd support
         $(MAKE) $(MAKEOPT) -f ab.mak              CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+        $(MAKE) $(MAKEOPT) -f htcacheclean.mak    CFG="htcacheclean - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f htdbm.mak           CFG="htdbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f htdigest.mak        CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
         $(MAKE) $(MAKEOPT) -f htpasswd.mak        CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
@@ -355,7 +364,7 @@ _build:
                "BuildBin - Win32 $(LONG)" $(CTARGET)
 !IF "$(CTARGET)" == "/CLEAN"
        @cd srclib\apr-iconv
-       @$(MAKE) $(MAKEOPT) /f build\modules.mk.win clean \
+       @$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \
                BUILD_MODE=$(LONG) BIND_MODE=shared API_SOURCE=.
        @cd ..\..
 !ENDIF
@@ -373,7 +382,7 @@ _build:
 
 
 _copybin:
-       copy $(LONG)\Apache.$(src_exe)                          "$(inst_exe)" <.y
+       copy $(LONG)\httpd.$(src_exe)                           "$(inst_exe)" <.y
        copy $(LONG)\libhttpd.$(src_dll)                        "$(inst_dll)" <.y
        copy srclib\apr\$(LONG)\libapr-1.$(src_dll)             "$(inst_dll)" <.y
        copy srclib\apr-iconv\$(LONG)\libapriconv-1.$(src_dll)  "$(inst_dll)" <.y
@@ -381,6 +390,7 @@ _copybin:
        copy modules\aaa\$(LONG)\mod_auth_basic.$(src_so)       "$(inst_so)" <.y
        copy modules\aaa\$(LONG)\mod_auth_digest.$(src_so)      "$(inst_so)" <.y
        copy modules\aaa\$(LONG)\mod_authn_anon.$(src_so)       "$(inst_so)" <.y
+       copy modules\aaa\$(LONG)\mod_authn_dbd.$(src_so)        "$(inst_so)" <.y
        copy modules\aaa\$(LONG)\mod_authn_dbm.$(src_so)        "$(inst_so)" <.y
        copy modules\aaa\$(LONG)\mod_authn_default.$(src_so)    "$(inst_so)" <.y
        copy modules\aaa\$(LONG)\mod_authn_file.$(src_so)       "$(inst_so)" <.y
@@ -395,11 +405,12 @@ _copybin:
        copy modules\cache\$(LONG)\mod_file_cache.$(src_so)     "$(inst_so)" <.y
        copy modules\cache\$(LONG)\mod_mem_cache.$(src_so)      "$(inst_so)" <.y
        copy modules\cache\$(LONG)\mod_disk_cache.$(src_so)     "$(inst_so)" <.y
+       copy modules\database\$(LONG)\mod_dbd.$(src_so)         "$(inst_so)" <.y
        copy modules\dav\fs\$(LONG)\mod_dav_fs.$(src_so)        "$(inst_so)" <.y
        copy modules\dav\main\$(LONG)\mod_dav.$(src_so)         "$(inst_so)" <.y
-       copy modules\debug\$(LONG)\mod_bucketeer.$(src_so)      "$(inst_so)" <.y
-       copy modules\debug\$(LONG)\mod_dumpio.$(src_so)         "$(inst_so)" <.y
-       copy modules\experimental\$(LONG)\mod_charset_lite.$(src_so)    "$(inst_so)" <.y
+       copy modules\debugging\$(LONG)\mod_bucketeer.$(src_so)  "$(inst_so)" <.y
+       copy modules\debugging\$(LONG)\mod_dumpio.$(src_so)     "$(inst_so)" <.y
+       copy modules\filters\$(LONG)\mod_charset_lite.$(src_so) "$(inst_so)" <.y
 !IF EXIST("srclib\zlib")
        copy modules\filters\$(LONG)\mod_deflate.$(src_so)      "$(inst_so)" <.y
 !IF EXIST("srclib\zlib\zlib1.$(src_dll)")
@@ -421,7 +432,7 @@ _copybin:
        copy modules\mappers\$(LONG)\mod_actions.$(src_so)      "$(inst_so)" <.y
        copy modules\mappers\$(LONG)\mod_alias.$(src_so)        "$(inst_so)" <.y
        copy modules\mappers\$(LONG)\mod_dir.$(src_so)          "$(inst_so)" <.y
-       copy modules\mappers\$(LONG)\mod_imap.$(src_so)         "$(inst_so)" <.y
+       copy modules\mappers\$(LONG)\mod_imagemap.$(src_so)     "$(inst_so)" <.y
        copy modules\mappers\$(LONG)\mod_negotiation.$(src_so)  "$(inst_so)" <.y
        copy modules\mappers\$(LONG)\mod_rewrite.$(src_so)      "$(inst_so)" <.y
        copy modules\mappers\$(LONG)\mod_speling.$(src_so)      "$(inst_so)" <.y
@@ -452,6 +463,7 @@ _copybin:
 !ELSE
        copy support\$(LONG)\ab.$(src_exe)                              "$(inst_exe)" <.y
 !ENDIF
+       copy support\$(LONG)\htcacheclean.$(src_exe)            "$(inst_exe)" <.y
        copy support\$(LONG)\htdbm.$(src_exe)                   "$(inst_exe)" <.y
        copy support\$(LONG)\htdigest.$(src_exe)                "$(inst_exe)" <.y
        copy support\$(LONG)\htpasswd.$(src_exe)                "$(inst_exe)" <.y
@@ -460,6 +472,7 @@ _copybin:
        copy support\win32\$(LONG)\ApacheMonitor.$(src_exe)     "$(inst_exe)" <.y
        copy support\win32\$(LONG)\wintty.$(src_exe)            "$(inst_exe)" <.y
 
+
 # First we create the tree and populate the README so that 
 # whatever happens, all licensing has already propagated.  
 # Then repeatedly invoke the _copybin build to copy the
@@ -475,6 +488,7 @@ _install:
        -mkdir "$(INSTDIR)\bin\iconv"
        -mkdir "$(INSTDIR)\cgi-bin"
        -mkdir "$(INSTDIR)\conf"
+       -mkdir "$(INSTDIR)\conf\extra"
        -mkdir "$(INSTDIR)\error"
        -mkdir "$(INSTDIR)\htdocs"
        -mkdir "$(INSTDIR)\manual"
@@ -492,9 +506,10 @@ _install:
        copy CHANGES      "$(INSTDIR)\CHANGES.txt" <.y
        copy INSTALL      "$(INSTDIR)\INSTALL.txt" <.y
        copy LICENSE      "$(INSTDIR)\LICENSE.txt" <.y
+       copy NOTICE       "$(INSTDIR)\NOTICE.txt" <.y
        copy README       "$(INSTDIR)\README.txt" <.y
 !IF EXIST("srclib\openssl")
-       type << >> "$(INSTDIR)\README.txt"
+       type << >> "$(INSTDIR)\NOTICE.txt"
 
   This binary distribution includes cryptographic software written by
   Eric Young (eay@cryptsoft.com), software written by Tim Hudson 
@@ -559,7 +574,7 @@ BEGIN {
 <<
 !ENDIF
 !IF EXIST("srclib\zlib")
-       type << >> "$(INSTDIR)\README.txt"
+       type << >> "$(INSTDIR)\NOTICE.txt"
 
   This binary distribution of mod_deflate.so includes zlib compression code
   <http://www.gzip.org/zlib/> written by Jean-loup Gailly (jloup@gzip.org)
@@ -634,14 +649,14 @@ BEGIN {
        copy $(LONG)\libhttpd.lib                       "$(INSTDIR)\lib" <.y
        copy modules\dav\main\$(LONG)\mod_dav.exp       "$(INSTDIR)\lib" <.y
        copy modules\dav\main\$(LONG)\mod_dav.lib       "$(INSTDIR)\lib" <.y
-       copy docs\conf\magic "$(INSTDIR)\conf\magic.default" <.y
-       if not exist "$(INSTDIR)\conf\magic" \
-           copy "$(INSTDIR)\conf\magic.default" "$(INSTDIR)\conf\magic"
-       copy docs\conf\mime.types "$(INSTDIR)\conf\mime.types.default" <.y
-       if not exist "$(INSTDIR)\conf\mime.types" \
-           copy "$(INSTDIR)\conf\mime.types.default" "$(INSTDIR)\conf\mime.types"
-       copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.default.conf" <.y
-       -awk -f <<script.awk "docs/conf/httpd-win.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\httpd.default.conf"
+       echo Y >.y
+       for %f in ( charset.conv magic mime.types ) do ( \
+         copy docs\conf\%f "$(INSTDIR)\conf\%f.default" <.y && \
+         if not exist "$(INSTDIR)\conf\%f" \
+           copy "$(INSTDIR)\conf\%f.default" "$(INSTDIR)\conf\%f" \
+       )
+       copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.conf.default" <.y
+       -awk -f <<script.awk "docs/conf/httpd-win.conf" "$(INSTDIR)" > "$(INSTDIR)\conf\httpd.conf.default"
     BEGIN { 
        serverroot = ARGV[2];
        delete ARGV[2];
@@ -657,10 +672,10 @@ BEGIN {
     }
 <<
        if not exist "$(INSTDIR)\conf\httpd.conf" \
-           copy "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)\conf\httpd.conf"
-!IF EXIST("srclib\openssl")
-       copy docs\conf\ssl-std.conf.in "$(INSTDIR)\conf\ssl.default.conf" <.y
-       -awk -f <<script.awk "docs/conf/ssl-std.conf.in" "$(INSTDIR)" > "$(INSTDIR)\conf\ssl.default.conf"
+           copy "$(INSTDIR)\conf\httpd.conf.default" "$(INSTDIR)\conf\httpd.conf"
+       for %f in ( docs\conf\extra\*.in ) do ( \
+         copy %f "$(INSTDIR)\conf\extra\%~nf.default" <.y && \
+         awk -f <<script.awk "docs/conf/extra/%~nf.in" "$(INSTDIR)" > "$(INSTDIR)\conf\extra\%~nf.default" )
     BEGIN { 
        serverroot = ARGV[2];
        delete ARGV[2];
@@ -669,18 +684,31 @@ BEGIN {
        gsub( /^\//, substr( root, 1, 2 ) "/", serverroot );
     }
     {
-       gsub( /@@ServerRoot@@/, serverroot );
-       gsub( /@exp_runtimedir@/, "logs" );
-       gsub( /@exp_htdocsdir@/, serverroot "/htdocs" );
-       gsub( /@exp_logfiledir@/, "logs" );
-       gsub( /@exp_sysconfdir@/, "conf" );
-       gsub( /@exp_cgidir@/, serverroot "/cgi" );
+       gsub( /SSLMutex  file:@exp_runtimedir@\/ssl_mutex/, "SSLMutex default" );
+       gsub( /@@ServerRoot@@/,   serverroot );
+       gsub( /@exp_cgidir@/,     serverroot "/cgi-bin" );
+       gsub( /@exp_sysconfdir@/, serverroot "/conf" );
+       gsub( /@exp_errordir@/,   serverroot "/error" );
+       gsub( /@exp_htdocsdir@/,  serverroot "/htdocs" );
+       gsub( /@exp_iconsdir@/,   serverroot "/icons" );
+       gsub( /@exp_logfiledir@/, serverroot "/logs" );
+       gsub( /@exp_runtimedir@/, serverroot "/logs" );
+       gsub( /@exp_manualdir@/,  serverroot "/manual" );
+       gsub( /@rel_runtimedir@/, "logs" );
+       gsub( /@rel_logfiledir@/, "logs" );
+       gsub( /\/home\/\*\/public_html/, "\"C:/Documents and Settings/*/My Documents/My Website\"" );
+       gsub( /UserDir public_html/, "UserDir \"My Documents/My Website\"" );
+       gsub( /@@ServerName@@/, "$(SERVERNAME)" );
+       gsub( /@@Port@@/, "$(PORT)" );
+       gsub( /443/, "$(SSLPORT)" );
        print $$0;
     }
 <<
-       if not exist "$(INSTDIR)\conf\ssl.conf" \
-           copy "$(INSTDIR)\conf\ssl.default.conf" "$(INSTDIR)\conf\ssl.conf"
-!ENDIF
+       for %f in ( docs\conf\extra\*.in ) do ( \
+         if not exist "$(INSTDIR)\conf\extra\%~nf" \
+           copy "$(INSTDIR)\conf\extra\%~nf.default" "$(INSTDIR)\conf\extra\%~nf" \
+       )
+       copy "support\dbmmanage.in" "$(INSTDIR)\bin\dbmmanage.pl"
        -awk -f <<script.awk "support/dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
     { if ( $$0 ~ /^BEGIN \{ @AnyDBM_File::/ ) {
          sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );