Author: rinrab
Date: Sat Jan 17 18:08:26 2026
New Revision: 1931390

Log:
Add separate target to the build system for checksum backend linkage. This
eliminates the need of adding openssl directly (which acted in the same way
before), only it's more convinient for other backends like Windows BCrypt.

* CMakeLists.txt
  (checksum backend): Setup backends via external-checksum-libs target.
* build/generator/gen_win_dependencies.py
  (GenDependenciesBase): Ignore 'checksum-libs'.
* build.conf
  (libsvn_subr): Link against checksum-libs
  (checksum-libs): New target.

Modified:
   subversion/trunk/CMakeLists.txt
   subversion/trunk/build.conf
   subversion/trunk/build/generator/gen_win_dependencies.py

Modified: subversion/trunk/CMakeLists.txt
==============================================================================
--- subversion/trunk/CMakeLists.txt     Sat Jan 17 17:11:02 2026        
(r1931389)
+++ subversion/trunk/CMakeLists.txt     Sat Jan 17 18:08:26 2026        
(r1931390)
@@ -386,14 +386,14 @@ if (SVN_ENABLE_RA_SERF)
 endif()
 
 if (SVN_CHECKSUM_BACKEND STREQUAL "apr")
-  add_library(external-openssl INTERFACE)
+  add_library(external-checksum-libs INTERFACE)
   add_private_config_definition(
     "Defined if svn should use APR to compute checksums."
     "SVN_CHECKSUM_BACKEND_APR" "1"
   )
 elseif (SVN_CHECKSUM_BACKEND STREQUAL "openssl")
   find_package(OpenSSL REQUIRED)
-  add_library(external-openssl ALIAS OpenSSL::Crypto)
+  add_library(external-checksum-libs ALIAS OpenSSL::Crypto)
   add_private_config_definition(
     "Defined if svn should use OpenSSL to compute checksums."
     "SVN_CHECKSUM_BACKEND_OPENSSL" "1"
@@ -403,8 +403,8 @@ elseif (SVN_CHECKSUM_BACKEND STREQUAL "b
     message(SEND_ERROR "BCrypt checksum backend is only available on Win32 
platform.")
   endif()
 
-  add_library(external-openssl INTERFACE)
-  target_link_libraries(external-openssl INTERFACE Bcrypt.lib)
+  add_library(external-checksum-libs INTERFACE)
+  target_link_libraries(external-checksum-libs INTERFACE Bcrypt.lib)
 
   add_private_config_definition(
     "Defined if svn should use BCrypt to compute checksums."

Modified: subversion/trunk/build.conf
==============================================================================
--- subversion/trunk/build.conf Sat Jan 17 17:11:02 2026        (r1931389)
+++ subversion/trunk/build.conf Sat Jan 17 18:08:26 2026        (r1931390)
@@ -394,7 +394,7 @@ install = fsmod-lib
 path = subversion/libsvn_subr
 sources = *.c lz4/*.c
 libs = aprutil apriconv apr xml zlib apr_memcache
-       sqlite magic intl lz4 utf8proc macos-plist macos-keychain openssl
+       sqlite magic intl lz4 utf8proc macos-plist macos-keychain checksum-libs
 msvc-libs = kernel32.lib advapi32.lib shfolder.lib ole32.lib
             crypt32.lib version.lib ws2_32.lib
 msvc-export = 
@@ -1505,6 +1505,10 @@ external-lib = $(SVN_SASL_LIBS)
 type = lib
 external-lib = $(SVN_OPENSSL_LIBS) $(SVN_LIBCRYPTO_LIBS)
 
+[checksum-libs]
+type = lib
+external-lib = $(SVN_CHECKSUM_LIBS)
+
 [intl]
 type = lib
 external-lib = $(SVN_INTL_LIBS)

Modified: subversion/trunk/build/generator/gen_win_dependencies.py
==============================================================================
--- subversion/trunk/build/generator/gen_win_dependencies.py    Sat Jan 17 
17:11:02 2026        (r1931389)
+++ subversion/trunk/build/generator/gen_win_dependencies.py    Sat Jan 17 
18:08:26 2026        (r1931390)
@@ -125,6 +125,7 @@ class GenDependenciesBase(gen_base.Gener
         'java_sdk',
         'openssl',
         'apr_memcache',
+        'checksum-libs',
 
         # So optional, we don't even have any code to detect them on Windows
         'magic',

Reply via email to