You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by wr...@apache.org on 2007/12/21 12:01:52 UTC

svn commit: r606156 - /httpd/httpd/trunk/build/installwinconf.awk

Author: wrowe
Date: Fri Dec 21 03:01:50 2007
New Revision: 606156

URL: http://svn.apache.org/viewvc?rev=606156&view=rev
Log:
Modifications for 1) httpd.conf.in generic conf file, and
2) source tree build (in addition to the msi installer)
carefully dodging the installer's desire to delete sources.

Modified:
    httpd/httpd/trunk/build/installwinconf.awk

Modified: httpd/httpd/trunk/build/installwinconf.awk
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/build/installwinconf.awk?rev=606156&r1=606155&r2=606156&view=diff
==============================================================================
--- httpd/httpd/trunk/build/installwinconf.awk (original)
+++ httpd/httpd/trunk/build/installwinconf.awk Fri Dec 21 03:01:50 2007
@@ -1,7 +1,7 @@
 #
 # InstallConf.awk Apache HTTP 2.2 script to rewrite the @@ServerRoot@@ 
-# tags in httpd-win.conf to httpd.default.conf - then duplicate the
-# conf files if they don't already exist.
+# tags in httpd.conf.in to original\httpd.conf - then duplicate the
+# conf files to the 'live' configuration if they don't already exist.
 #
 # Note that we -don't- want the ARGV file list, so no additional {} blocks
 # are coded.  Use explicit args (more reliable on Win32) and use the fact
@@ -18,7 +18,9 @@
     serverport = ARGV[4];
     serversslport = ARGV[5];
     serverroot = ARGV[6];
+    sourceroot = ARGV[7];
 
+    delete ARGV[7];
     delete ARGV[6];
     delete ARGV[5];
     delete ARGV[4];
@@ -30,7 +32,15 @@
     gsub( /[ \/]+$/, "", serverroot );
     tstfl = serverroot "/logs/install.log"
     confroot = serverroot "/conf/";
-    confdefault = confroot "default/";
+    confdefault = confroot "original/";
+
+    if ( sourceroot != "docs/conf/" ) {
+        sourceroot = confroot;
+        extrapath = "";
+    }
+    else {
+        extrapath = "extra/";
+    }
 
     print "Installing Apache HTTP 2.0 server with" >tstfl;
     print " DomainName =    " domainname >tstfl;
@@ -40,7 +50,7 @@
     print " ServerSslPort = " serverport >tstfl;
     print " ServerRoot =    " serverroot >tstfl;
 
-    filelist["httpd.conf"] = "httpd-win.conf";
+    filelist["httpd.conf"] = "httpd.conf.in";
     filelist["httpd-autoindex.conf"] = "httpd-autoindex.conf.in";
     filelist["httpd-dav.conf"] = "httpd-dav.conf.in";
     filelist["httpd-default.conf"] = "httpd-default.conf.in";
@@ -54,9 +64,102 @@
     filelist["httpd-vhosts.conf"] = "httpd-vhosts.conf.in";
 
     for ( conffile in filelist ) {
-      srcfl = confdefault filelist[conffile];
-      dstfl = confdefault conffile;
+
+      if ( conffile == "httpd.conf" ) {
+        srcfl = sourceroot filelist[conffile];
+        dstfl = confdefault conffile;
+	bswarning = 1;
+      } else {
+        srcfl = sourceroot extrapath filelist[conffile];
+        dstfl = confdefault "extra/" conffile;
+        bswarning = 0;
+      }
+
       while ( ( getline < srcfl ) > 0 ) {
+
+	if ( bswarning && /^$/ ) {
+	  print "#" > dstfl;
+	  print "# NOTE: Where filenames are specified, you must use forward slashes" > dstfl;
+	  print "# instead of backslashes (e.g., \"c:/apache\" instead of \"c:\\apache\")." > dstfl;
+	  print "# If a drive letter is omitted, the drive on which Apache.exe is located" > dstfl;
+	  print "# will be used by default.  It is recommended that you always supply" > dstfl;
+	  print "# an explicit drive letter in absolute paths to avoid confusion." > dstfl;
+	  bswarning = 0;
+        }
+	if ( /@@LoadModule@@/ ) {
+	  print "LoadModule actions_module modules/mod_actions.so" > dstfl;
+	  print "LoadModule alias_module modules/mod_alias.so" > dstfl;
+	  print "LoadModule asis_module modules/mod_asis.so" > dstfl;
+	  print "LoadModule access_compat_module modules/mod_access_compat.so" > dstfl;
+	  print "LoadModule auth_basic_module modules/mod_auth_basic.so" > dstfl;
+	  print "#LoadModule auth_digest_module modules/mod_auth_digest.so" > dstfl;
+	  print "#LoadModule authn_anon_module modules/mod_authn_anon.so" > dstfl;
+	  print "LoadModule authn_core_module modules/mod_authn_core.so" > dstfl;
+	  print "#LoadModule authn_dbd_module modules/mod_authn_dbd.so" > dstfl;
+	  print "#LoadModule authn_dbm_module modules/mod_authn_dbm.so" > dstfl;
+	  print "LoadModule authn_default_module modules/mod_authn_default.so" > dstfl;
+	  print "LoadModule authn_file_module modules/mod_authn_file.so" > dstfl;
+	  print "#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so" > dstfl;
+	  print "LoadModule authz_core_module modules/mod_authz_core.so" > dstfl;
+	  print "#LoadModule authz_dbd_module modules/mod_authz_dbd.so" > dstfl;
+	  print "#LoadModule authz_dbm_module modules/mod_authz_dbm.so" > dstfl;
+	  print "LoadModule authz_default_module modules/mod_authz_default.so" > dstfl;
+	  print "LoadModule authz_groupfile_module modules/mod_authz_groupfile.so" > dstfl;
+	  print "LoadModule authz_host_module modules/mod_authz_host.so" > dstfl;
+	  print "#LoadModule authz_owner_module modules/mod_authz_owner.so" > dstfl;
+	  print "LoadModule authz_user_module modules/mod_authz_user.so" > dstfl;
+	  print "LoadModule autoindex_module modules/mod_autoindex.so" > dstfl;
+	  print "#LoadModule cache_module modules/mod_cache.so" > dstfl;
+	  print "#LoadModule cern_meta_module modules/mod_cern_meta.so" > dstfl;
+	  print "LoadModule cgi_module modules/mod_cgi.so" > dstfl;
+	  print "#LoadModule charset_lite_module modules/mod_charset_lite.so" > dstfl;
+	  print "#LoadModule dav_module modules/mod_dav.so" > dstfl;
+	  print "#LoadModule dav_fs_module modules/mod_dav_fs.so" > dstfl;
+	  print "#LoadModule dav_lock_module modules/mod_dav_lock.so" > dstfl;
+	  print "#LoadModule dbd_module modules/mod_dbd.so" > dstfl;
+	  print "#LoadModule deflate_module modules/mod_deflate.so" > dstfl;
+	  print "LoadModule dir_module modules/mod_dir.so" > dstfl;
+	  print "#LoadModule disk_cache_module modules/mod_disk_cache.so" > dstfl;
+	  print "#LoadModule dumpio_module modules/mod_dumpio.so" > dstfl;
+	  print "LoadModule env_module modules/mod_env.so" > dstfl;
+	  print "#LoadModule expires_module modules/mod_expires.so" > dstfl;
+	  print "#LoadModule ext_filter_module modules/mod_ext_filter.so" > dstfl;
+	  print "#LoadModule file_cache_module modules/mod_file_cache.so" > dstfl;
+	  print "#LoadModule filter_module modules/mod_filter.so" > dstfl;
+	  print "#LoadModule headers_module modules/mod_headers.so" > dstfl;
+	  print "#LoadModule ident_module modules/mod_ident.so" > dstfl;
+	  print "#LoadModule imagemap_module modules/mod_imagemap.so" > dstfl;
+	  print "LoadModule include_module modules/mod_include.so" > dstfl;
+	  print "#LoadModule info_module modules/mod_info.so" > dstfl;
+	  print "LoadModule isapi_module modules/mod_isapi.so" > dstfl;
+	  print "#LoadModule ldap_module modules/mod_ldap.so" > dstfl;
+	  print "#LoadModule logio_module modules/mod_logio.so" > dstfl;
+	  print "LoadModule log_config_module modules/mod_log_config.so" > dstfl;
+	  print "#LoadModule log_forensic_module modules/mod_log_forensic.so" > dstfl;
+	  print "#LoadModule mem_cache_module modules/mod_mem_cache.so" > dstfl;
+	  print "LoadModule mime_module modules/mod_mime.so" > dstfl;
+	  print "#LoadModule mime_magic_module modules/mod_mime_magic.so" > dstfl;
+	  print "LoadModule negotiation_module modules/mod_negotiation.so" > dstfl;
+	  print "#LoadModule proxy_module modules/mod_proxy.so" > dstfl;
+	  print "#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so" > dstfl;
+	  print "#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so" > dstfl;
+	  print "#LoadModule proxy_connect_module modules/mod_proxy_connect.so" > dstfl;
+	  print "#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so" > dstfl;
+	  print "#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so" > dstfl;
+	  print "#LoadModule proxy_http_module modules/mod_proxy_http.so" > dstfl;
+	  print "#LoadModule rewrite_module modules/mod_rewrite.so" > dstfl;
+	  print "LoadModule setenvif_module modules/mod_setenvif.so" > dstfl;
+	  print "#LoadModule speling_module modules/mod_speling.so" > dstfl;
+	  print "#LoadModule ssl_module modules/mod_ssl.so" > dstfl;
+	  print "#LoadModule status_module modules/mod_status.so" > dstfl;
+	  print "#LoadModule substitute_module modules/mod_substitute.so" > dstfl;
+	  print "#LoadModule unique_id_module modules/mod_unique_id.so" > dstfl;
+	  print "#LoadModule userdir_module modules/mod_userdir.so" > dstfl;
+	  print "#LoadModule usertrack_module modules/mod_usertrack.so" > dstfl;
+	  print "#LoadModule version_module modules/mod_version.so" > dstfl;
+	  print "#LoadModule vhost_alias_module modules/mod_vhost_alias.so" > dstfl;
+	  continue;
+	}
 	gsub( /SSLMutex  file:@exp_runtimedir@\/ssl_mutex/, "SSLMutex default" );
 	gsub( /@@ServerRoot@@/,   serverroot );
 	gsub( /@exp_cgidir@/,     serverroot "/cgi-bin" );
@@ -64,24 +167,20 @@
 	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( /@exp_runtimedir@/, serverroot "/logs" );
+	if ( gsub( /@exp_logfiledir@/, serverroot "/logs" ) ||
+	     gsub( /@rel_logfiledir@/, "logs" ) ) {
+	  gsub( /_log"/, ".log\"" )
+	}
 	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( /www.example.com/,  servername );
-        gsub( /@@ServerAdmin@@/,  serveradmin );
-        gsub( /you@example.com/,  serveradmin );
-	gsub( /@@ServerName@@/,   servername );
-        gsub( /www.example.com/,  servername );
-        gsub( /@@ServerAdmin@@/,  serveradmin );
-        gsub( /you@example.com/,  serveradmin );
-        gsub( /@@DomainName@@/,   domainname );
-        gsub( /example.com/,      domainname );
-        gsub( /@@Port@@/,         serverport );
-	gsub( /443/,              serversslport );
+	gsub( /@@ServerName@@|www.example.com/,  servername );
+        gsub( /@@ServerAdmin@@|you@example.com/, serveradmin );
+        gsub( /@@DomainName@@|example.com/,      domainname );
+        gsub( /@@Port@@/,                        serverport );
+	gsub( /@@SSLPort@@|443/,                 serversslport );
         print $0 > dstfl;
       }
       close(srcfl);
@@ -89,10 +188,12 @@
       if ( close(dstfl) >= 0 ) {
         print "Rewrote " srcfl "\n to " dstfl > tstfl;
         gsub(/\//, "\\", srcfl);
-        if (system("del \"" srcfl "\"")) {
-          print "Failed to remove " srcfl > tstfl;
-        } else {
-          print "Successfully removed " srcfl > tstfl;
+        if ( sourceroot != "docs/conf/" ) {
+          if (system("del \"" srcfl "\"")) {
+            print "Failed to remove " srcfl > tstfl;
+          } else {
+            print "Successfully removed " srcfl > tstfl;
+          }
         }
       } else {
         print "Failed to rewrite " srcfl "\n to " dstfl > tstfl;
@@ -106,7 +207,7 @@
     filelist["mime.types"] = "";
 
     for ( conffile in filelist ) {
-      srcfl = confdefault conffile;
+      srcfl = confdefault filelist[conffile] conffile;
       dstfl = confroot filelist[conffile] conffile;
       if ( ( getline < dstfl ) < 0 ) {
 	while ( ( getline < srcfl ) > 0 ) {
@@ -120,12 +221,14 @@
       close(dstfl);
     }
 
-    srcfl = confdefault "InstallConf22.awk";
-    gsub(/\//, "\\", srcfl);
-    if (system("del \"" srcfl "\"")) {
+    if ( sourceroot != "docs/conf/" ) {
+      srcfl = confdefault "installwinconf.awk";
+      gsub(/\//, "\\", srcfl);
+      if (system("del \"" srcfl "\"")) {
         print "Failed to remove " srcfl > tstfl;
-    } else {
+      } else {
         print "Successfully removed " srcfl > tstfl;
+      }
     }
     close(tstfl);
-}
\ No newline at end of file
+}