Author: rinrab
Date: Thu Sep 19 15:13:59 2024
New Revision: 1920787
URL: http://svn.apache.org/viewvc?rev=1920787&view=rev
Log:
build: Make ra-modules compiling into shared DLL on Windows with CMake.
This change will only affect CMake build. gen-win still have the previous
behavior.
* build.conf
(libsvn_ra): Add explicit dependency on APR-Util; before it was inheriting
from a ra-module.
(libsvn_ra_serf, libsvn_ra_svn, libsvn_ra_local): Export required headers
from the libraries.
* CMakeLists.txt
(options): Make the shared modules to be shared by default also on Windows.
(checks): Do not warn if enabled shared modules on Windows.
Modified:
subversion/trunk/CMakeLists.txt
subversion/trunk/build.conf
Modified: subversion/trunk/CMakeLists.txt
URL:
http://svn.apache.org/viewvc/subversion/trunk/CMakeLists.txt?rev=1920787&r1=1920786&r2=1920787&view=diff
==============================================================================
--- subversion/trunk/CMakeLists.txt (original)
+++ subversion/trunk/CMakeLists.txt Thu Sep 19 15:13:59 2024
@@ -95,7 +95,7 @@ option(SVN_INSTALL_PRIVATE_H "Instal pri
# Configuration
option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
cmake_dependent_option(SVN_BUILD_SHARED_FS "Build shared FS modules" ON
"BUILD_SHARED_LIBS" OFF)
-cmake_dependent_option(SVN_BUILD_SHARED_RA "Build shared RA modules" ON
"BUILD_SHARED_LIBS;LINUX" OFF)
+cmake_dependent_option(SVN_BUILD_SHARED_RA "Build shared RA modules" ON
"BUILD_SHARED_LIBS" OFF)
option(SVN_DEBUG "Enables specific features for developer builds" OFF)
cmake_dependent_option(SVN_USE_WIN32_CRASHHANDLER "Enables WIN32 crash
handler." ON "WIN32" OFF)
option(SVN_USE_DSO "Defined if svn should try to load DSOs" OFF)
@@ -162,10 +162,6 @@ else()
set(SVN_RA_BUILD_TYPE STATIC)
endif()
-if(SVN_BUILD_SHARED_RA AND WIN32)
- message(FATAL_ERROR "SVN_BUILD_SHARED_RA not yet supported on Windows")
-endif()
-
if(SVN_ENABLE_FS_BASE)
message(FATAL_ERROR "SVN_ENABLE_FS_BASE is NOT implemented and deprecated.")
endif()
Modified: subversion/trunk/build.conf
URL:
http://svn.apache.org/viewvc/subversion/trunk/build.conf?rev=1920787&r1=1920786&r2=1920787&view=diff
==============================================================================
--- subversion/trunk/build.conf (original)
+++ subversion/trunk/build.conf Thu Sep 19 15:13:59 2024
@@ -338,7 +338,7 @@ msvc-export = private/svn_fs_util.h
description = Subversion General Repository Access Library
type = lib
path = subversion/libsvn_ra
-libs = libsvn_delta libsvn_subr ra-libs apriconv apr
+libs = libsvn_delta libsvn_subr ra-libs apriconv apr aprutil
# conditionally add more dependencies
add-deps = $(SVN_RA_LIB_DEPS)
add-install-deps = $(SVN_RA_LIB_INSTALL_DEPS)
@@ -355,6 +355,7 @@ install = serf-lib
libs = libsvn_delta libsvn_subr aprutil apriconv apr serf zlib
add-install-deps = $(SVN_FS_LIB_INSTALL_DEPS)
msvc-static = yes
+msvc-export = ../libsvn_ra_serf/ra_init.h
# Accessing repositories via SVN
[libsvn_ra_svn]
@@ -364,6 +365,7 @@ path = subversion/libsvn_ra_svn
install = ramod-lib
libs = libsvn_delta libsvn_subr aprutil apriconv apr sasl
msvc-static = yes
+msvc-export = ../libsvn_ra_svn/ra_init.h svn_ra_svn.h
private/svn_ra_svn_private.h
# Accessing repositories via direct libsvn_fs
[libsvn_ra_local]
@@ -373,6 +375,7 @@ path = subversion/libsvn_ra_local
install = ramod-lib
libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
msvc-static = yes
+msvc-export = ../libsvn_ra_local/ra_init.h
# Routines built on top of libsvn_fs
[libsvn_repos]