You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by br...@apache.org on 2012/08/09 19:47:49 UTC

svn commit: r1371338 - in /subversion/trunk: build/generator/gen_win.py build/generator/templates/serf.vcproj.ezt build/generator/templates/serf.vcxproj.ezt gen-make.py

Author: brane
Date: Thu Aug  9 17:47:48 2012
New Revision: 1371338

URL: http://svn.apache.org/viewvc?rev=1371338&view=rev
Log:
Teach serf build on Windows to use static APR/Util and OpenSSL.
Note: The APR_STATIC support requires a patch to serf.mak,
      see http://code.google.com/p/serf/issues/detail?id=88

* gen-make.py: New option --with-static-openssl.
* build/generator/gen_win.py (write_serf_project_file):
  Send configuration for static APR and OpenSSL linking to the serf
  project file generator.

* build/generator/templates/serf.vcproj.ezt,
  build/generator/templates/serf.vcxproj.ezt: Update nmake command templates.

Modified:
    subversion/trunk/build/generator/gen_win.py
    subversion/trunk/build/generator/templates/serf.vcproj.ezt
    subversion/trunk/build/generator/templates/serf.vcxproj.ezt
    subversion/trunk/gen-make.py

Modified: subversion/trunk/build/generator/gen_win.py
URL: http://svn.apache.org/viewvc/subversion/trunk/build/generator/gen_win.py?rev=1371338&r1=1371337&r2=1371338&view=diff
==============================================================================
--- subversion/trunk/build/generator/gen_win.py (original)
+++ subversion/trunk/build/generator/gen_win.py Thu Aug  9 17:47:48 2012
@@ -94,6 +94,7 @@ class GeneratorBase(gen_base.GeneratorBa
     # Instrumentation options
     self.disable_shared = None
     self.static_apr = None
+    self.static_openssl = None
     self.instrument_apr_pools = None
     self.instrument_purify_quantify = None
     self.configure_apr_util = None
@@ -155,6 +156,8 @@ class GeneratorBase(gen_base.GeneratorBa
         self.disable_shared = 1
       elif opt == '--with-static-apr':
         self.static_apr = 1
+      elif opt == '--with-static-openssl':
+        self.static_openssl = 1
       elif opt == '--vsnet-version':
         if val == '2002' or re.match('7(\.\d+)?', val):
           self.vs_version = '2002'
@@ -1164,6 +1167,8 @@ class WinGeneratorBase(GeneratorBase):
     else:
       serflib = 'serf.lib'
 
+    apr_static = self.static_apr and 'APR_STATIC=1' or ''
+    openssl_static = self.static_openssl and 'OPENSSL_STATIC=1' or ''
     self.move_proj_file(self.serf_path, name,
                         (('serf_sources', serf_sources),
                          ('serf_headers', serf_headers),
@@ -1176,7 +1181,8 @@ class WinGeneratorBase(GeneratorBase):
                          ('apr_util_path', os.path.relpath(self.apr_util_path,
                                                            self.serf_path)),
                          ('project_guid', self.makeguid('serf')),
-                         ('apr_static', self.static_apr),
+                         ('apr_static', apr_static),
+                         ('openssl_static', openssl_static),
                          ('serf_lib', serflib),
                         ))
 

Modified: subversion/trunk/build/generator/templates/serf.vcproj.ezt
URL: http://svn.apache.org/viewvc/subversion/trunk/build/generator/templates/serf.vcproj.ezt?rev=1371338&r1=1371337&r2=1371338&view=diff
==============================================================================
--- subversion/trunk/build/generator/templates/serf.vcproj.ezt (original)
+++ subversion/trunk/build/generator/templates/serf.vcproj.ezt Thu Aug  9 17:47:48 2012
@@ -40,9 +40,9 @@
             ATLMinimizesCRunTimeLibraryUsage="FALSE">
             <Tool
                 Name="VCNMakeTool"
-                BuildCommandLine="nmake /s /nologo /f serf.mak ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]"
-                ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]"
-                CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path]  [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]"
+                BuildCommandLine="nmake /s /nologo /f serf.mak ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]"
+                ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]"
+                CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]"
                 Output="$(OutDir)\[serf_lib]"/>
         </Configuration>
         <Configuration
@@ -56,9 +56,9 @@
             ATLMinimizesCRunTimeLibraryUsage="FALSE">
             <Tool
                 Name="VCNMakeTool"
-                BuildCommandLine="nmake /s /nologo /f serf.mak ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]"
-                ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path]  [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]"
-                CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]"
+                BuildCommandLine="nmake /s /nologo /f serf.mak ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]"
+                ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]"
+                CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]"
                 Output="$(OutDir)\[serf_lib]"/>
         </Configuration>
 [end]    </Configurations>

Modified: subversion/trunk/build/generator/templates/serf.vcxproj.ezt
URL: http://svn.apache.org/viewvc/subversion/trunk/build/generator/templates/serf.vcxproj.ezt?rev=1371338&r1=1371337&r2=1371338&view=diff
==============================================================================
--- subversion/trunk/build/generator/templates/serf.vcxproj.ezt (original)
+++ subversion/trunk/build/generator/templates/serf.vcxproj.ezt Thu Aug  9 17:47:48 2012
@@ -46,9 +46,9 @@
   <PropertyGroup>
 [for configs][for platforms]    <OutDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">[configs]</OutDir>
     <IntDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">[configs]</IntDir>
-    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]</NMakeBuildCommandLine>
-    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]</NMakeReBuildCommandLine>
-    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path]  [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]</NMakeCleanCommandLine>
+    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]</NMakeBuildCommandLine>
+    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]</NMakeReBuildCommandLine>
+    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]</NMakeCleanCommandLine>
     <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">$(OutDir)\[serf_lib]</NMakeOutput>
 [end][end]  </PropertyGroup>
   <ItemDefinitionGroup>

Modified: subversion/trunk/gen-make.py
URL: http://svn.apache.org/viewvc/subversion/trunk/gen-make.py?rev=1371338&r1=1371337&r2=1371338&view=diff
==============================================================================
--- subversion/trunk/gen-make.py (original)
+++ subversion/trunk/gen-make.py Thu Aug  9 17:47:48 2012
@@ -204,6 +204,9 @@ def _usage_exit(err=None):
   print("  --with-static-apr")
   print("           Use static apr and apr-util")
   print("")
+  print("  --with-static-openssl")
+  print("           Use static openssl")
+  print("")
   print("  --vsnet-version=VER")
   print("           generate for VS.NET version VER (2002, 2003, 2005, 2008, 2010 or 2012)")
   print("           [only valid in combination with '-t vcproj']")
@@ -248,6 +251,7 @@ if __name__ == '__main__':
                             'with-sasl=',
                             'with-apr_memcache=',
                             'with-static-apr',
+                            'with-static-openssl',
                             'enable-pool-debug',
                             'enable-purify',
                             'enable-quantify',