You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by rh...@apache.org on 2021/04/09 13:17:32 UTC

svn commit: r1888560 - /subversion/trunk/build/generator/gen_win_dependencies.py

Author: rhuijben
Date: Fri Apr  9 13:17:32 2021
New Revision: 1888560

URL: http://svn.apache.org/viewvc?rev=1888560&view=rev
Log:
Properly handle building against non-static serf on Windows.


Part of an attempt to get subversion in the vcpkg repository to make it much
easier to build Subversion on Windows with less manual scripting.
(The vcpkg port currently applies this fix as a patch)


* build/generator/gen_win_dependencies.py
  (parse_options): Handle explicit static serf and via static apr.
  (_find_serf): Use libserf-1.lib when found and not requested static.

Modified:
    subversion/trunk/build/generator/gen_win_dependencies.py

Modified: subversion/trunk/build/generator/gen_win_dependencies.py
URL: http://svn.apache.org/viewvc/subversion/trunk/build/generator/gen_win_dependencies.py?rev=1888560&r1=1888559&r2=1888560&view=diff
==============================================================================
--- subversion/trunk/build/generator/gen_win_dependencies.py (original)
+++ subversion/trunk/build/generator/gen_win_dependencies.py Fri Apr  9 13:17:32 2021
@@ -168,6 +168,7 @@ class GenDependenciesBase(gen_base.Gener
     self.disable_shared = None
     self.static_apr = None
     self.static_openssl = None
+    self.static_serf = None
     self.instrument_apr_pools = None
     self.instrument_purify_quantify = None
     self.sasl_path = None
@@ -225,8 +226,11 @@ class GenDependenciesBase(gen_base.Gener
         self.disable_shared = 1
       elif opt == '--with-static-apr':
         self.static_apr = 1
+        self.static_serf = 1 # Can't mix apr versions
       elif opt == '--with-static-openssl':
         self.static_openssl = 1
+      elif opt == '--with-static-serf':
+        self.static_serf = 1
       elif opt == '-D':
         self.cpp_defines.append(val)
       elif opt == '--vsnet-version':
@@ -1334,6 +1338,9 @@ class GenDependenciesBase(gen_base.Gener
       lib_name = 'serf-%d.lib' % (serf_ver_maj,)
     else:
       lib_name = 'serf.lib'
+    
+    if not self.static_serf and os.path.isfile(os.path.join(lib_dir, 'lib' + lib_name)):
+      lib_name = 'lib' + lib_name
 
     defines = ['SVN_HAVE_SERF', 'SVN_LIBSVN_RA_LINKS_RA_SERF']