You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2026/05/21 03:07:37 UTC

svn commit: r1934466 - subversion/trunk/build/generator

Author: jun66j5
Date: Thu May 21 03:07:37 2026
New Revision: 1934466

Log:
Fix detection for zlib library in vcxproj build to adapt the *.lib naming
changes in zlib 1.3.2.

* build/generator/gen_win_dependencies.py
  (_find_zlib): Add z.lib and zs.lib to the detection.

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

Modified: subversion/trunk/build/generator/gen_win_dependencies.py
==============================================================================
--- subversion/trunk/build/generator/gen_win_dependencies.py	Thu May 21 02:38:06 2026	(r1934465)
+++ subversion/trunk/build/generator/gen_win_dependencies.py	Thu May 21 03:07:37 2026	(r1934466)
@@ -753,16 +753,18 @@ class GenDependenciesBase(gen_base.Gener
       inc_path = os.path.join(self.zlib_path, 'include')
       lib_path = os.path.join(self.zlib_path, 'lib')
 
-      # Different build options produce different library names :(
-      if os.path.exists(os.path.join(lib_path, 'zlibstatic.lib')):
-        # CMake default: zlibstatic.lib (static) and zlib.lib (dll)
-        lib_name = 'zlibstatic.lib'
-      elif os.path.exists(os.path.join(lib_path, 'zlibstat.lib')):
-        # Visual Studio project file default: zlibstat.lib (static) and zlibwapi.lib (dll)
-        lib_name = 'zlibstat.lib'
+      # Different versions and build options produce different library names :(
+      for name in (
+        'z.lib',           # >= 1.3.2 (shared)
+        'zs.lib',          # >= 1.3.2 (static)
+        'zlibstatic.lib',  # < 1.3.2 (cmake default)
+        'zlibstat.lib',    # < 1.3.2 (Visual Studio default)
+      ):
+        if os.path.exists(os.path.join(lib_path, name)):
+          lib_name = name
+          break
       else:
-        # Standard makefile produces zlib.lib (static) and zdll.lib (dll)
-        lib_name = 'zlib.lib'
+        lib_name = 'zlib.lib'  # < 1.3.2 (Standard makefile; fallback)
       debug_lib_name = None
     else:
       # We have a source location


Re: svn commit: r1934466 - subversion/trunk/build/generator

Posted by Ivan Zhakov <iv...@apache.org>.
On Thu, 21 May 2026 at 05:07, <ju...@apache.org> wrote:

> Author: jun66j5
> Date: Thu May 21 03:07:37 2026
> New Revision: 1934466
>
> Log:
> Fix detection for zlib library in vcxproj build to adapt the *.lib naming
> changes in zlib 1.3.2.
>
> * build/generator/gen_win_dependencies.py
>   (_find_zlib): Add z.lib and zs.lib to the detection.
>
> Modified:
>    subversion/trunk/build/generator/gen_win_dependencies.py
>
> Modified: subversion/trunk/build/generator/gen_win_dependencies.py
>
> ==============================================================================
> --- subversion/trunk/build/generator/gen_win_dependencies.py    Thu May 21
> 02:38:06 2026        (r1934465)
> +++ subversion/trunk/build/generator/gen_win_dependencies.py    Thu May 21
> 03:07:37 2026        (r1934466)
> @@ -753,16 +753,18 @@ class GenDependenciesBase(gen_base.Gener
>        inc_path = os.path.join(self.zlib_path, 'include')
>        lib_path = os.path.join(self.zlib_path, 'lib')
>
> -      # Different build options produce different library names :(
> -      if os.path.exists(os.path.join(lib_path, 'zlibstatic.lib')):
> -        # CMake default: zlibstatic.lib (static) and zlib.lib (dll)
> -        lib_name = 'zlibstatic.lib'
> -      elif os.path.exists(os.path.join(lib_path, 'zlibstat.lib')):
> -        # Visual Studio project file default: zlibstat.lib (static) and
> zlibwapi.lib (dll)
> -        lib_name = 'zlibstat.lib'
> +      # Different versions and build options produce different library
> names :(
> +      for name in (
> +        'z.lib',           # >= 1.3.2 (shared)
> +        'zs.lib',          # >= 1.3.2 (static)
> +        'zlibstatic.lib',  # < 1.3.2 (cmake default)
> +        'zlibstat.lib',    # < 1.3.2 (Visual Studio default)
> +      ):
> +        if os.path.exists(os.path.join(lib_path, name)):
> +          lib_name = name
> +          break
>        else:
> -        # Standard makefile produces zlib.lib (static) and zdll.lib (dll)
> -        lib_name = 'zlib.lib'
> +        lib_name = 'zlib.lib'  # < 1.3.2 (Standard makefile; fallback)
>        debug_lib_name = None
>      else:
>        # We have a source location
>
> It seems this change missing support for Debug build of ZLib. ZLib >=
1.3.2 uses 'zd.lib' and 'zsd.lib'

-- 
Ivan Zhakov