Author: rinrab
Date: Sat Jul  6 12:27:21 2024
New Revision: 1918965

URL: http://svn.apache.org/viewvc?rev=1918965&view=rev
Log:
On the 'cmake' branch: Read and setup Subversion package version.

* CMakeLists.txt
  (version): Do little magic with CMake and regexes to read the version.
  (project): Setup VERSION field.

Modified:
    subversion/branches/cmake/CMakeLists.txt

Modified: subversion/branches/cmake/CMakeLists.txt
URL: 
http://svn.apache.org/viewvc/subversion/branches/cmake/CMakeLists.txt?rev=1918965&r1=1918964&r2=1918965&view=diff
==============================================================================
--- subversion/branches/cmake/CMakeLists.txt (original)
+++ subversion/branches/cmake/CMakeLists.txt Sat Jul  6 12:27:21 2024
@@ -26,7 +26,20 @@ if(POLICY CMP0092)
   cmake_policy(SET CMP0092 NEW)
 endif()
 
-project("Subversion")
+file(
+  STRINGS "${CMAKE_SOURCE_DIR}/subversion/include/svn_version.h" 
VERSION_STRINGS
+  REGEX "#define (SVN_VER_MAJOR|SVN_VER_MINOR|SVN_VER_PATCH)"
+)
+
+string(REGEX REPLACE ".*SVN_VER_MAJOR +([0-9]+).*" "\\1" SVN_VER_MAJOR 
${VERSION_STRINGS})
+string(REGEX REPLACE ".*SVN_VER_MINOR +([0-9]+).*" "\\1" SVN_VER_MINOR 
${VERSION_STRINGS})
+string(REGEX REPLACE ".*SVN_VER_PATCH +([0-9]+).*" "\\1" SVN_VER_PATCH 
${VERSION_STRINGS})
+
+set(SVN_VERSION "${SVN_VER_MAJOR}.${SVN_VER_MINOR}.${SVN_VER_PATCH}")
+
+project("Subversion"
+  VERSION ${SVN_VERSION}
+)
 
 configure_file(
   "${CMAKE_CURRENT_SOURCE_DIR}/subversion/svn_private_config.hc"
@@ -83,6 +96,8 @@ if(SVN_BUILD_SHARED_RA)
   message(FATAL_ERROR "SVN_BUILD_SHARED_RA not yet supported")
 endif()
 
+option(SVN_BUILD_SVNXX "Enable compilation of the C++ bindings (requires C++)" 
OFF)
+
 # Setup modules path
 
 list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/build/cmake")


Reply via email to