Author: rinrab
Date: Mon Sep 16 12:41:13 2024
New Revision: 1920717
URL: http://svn.apache.org/viewvc?rev=1920717&view=rev
Log:
Merge the `cmake` branch to trunk.
Added:
subversion/trunk/CMakeLists.txt
- copied unchanged from r1920716, subversion/branches/cmake/CMakeLists.txt
subversion/trunk/build/cmake/
- copied from r1920716, subversion/branches/cmake/build/cmake/
subversion/trunk/build/generator/gen_cmake.py
- copied unchanged from r1920716, subversion/branches/cmake/build/generator/gen_cmake.py
subversion/trunk/build/generator/templates/targets.cmake.ezt
- copied unchanged from r1920716, subversion/branches/cmake/build/generator/templates/targets.cmake.ezt
subversion/trunk/subversion/svn_private_config.hc
- copied unchanged from r1920716, subversion/branches/cmake/subversion/svn_private_config.hc
Modified:
subversion/trunk/ (props changed)
subversion/trunk/INSTALL
subversion/trunk/gen-make.py
subversion/trunk/tools/dist/release.py
Propchange: subversion/trunk/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Mon Sep 16 12:41:13 2024
@@ -65,3 +65,5 @@ compile_commands.json
.swig_pl_checked
.swig_py_checked
.swig_rb_checked
+out
+CMakeSettings.json
Propchange: subversion/trunk/
------------------------------------------------------------------------------
Merged /subversion/branches/cmake:r1918598-1920716
Modified: subversion/trunk/INSTALL
URL: http://svn.apache.org/viewvc/subversion/trunk/INSTALL?rev=1920717&r1=1920716&r2=1920717&view=diff
==============================================================================
--- subversion/trunk/INSTALL (original)
+++ subversion/trunk/INSTALL Mon Sep 16 12:41:13 2024
@@ -20,6 +20,7 @@ Contents:
C. Building under Unix in Different Directories
D. Installing from a Zip or Installer File under Windows
E. Building the Latest Source under Windows
+ F. Building using CMake
III. BUILDING A SUBVERSION SERVER
A. Setting Up Apache Httpd
@@ -676,6 +677,19 @@ I. INTRODUCTION
II. INSTALLATION
============
+ Subversion support three different build systems:
+ - Autoconf/make, for Unix builds
+ - Visual Studio vcproj, for Windows builds
+ - CMake, for both Unix and Windows
+
+ The first two have been in use since 2001. Sections A-E below describe
+ the classic build system.
+
+ The CMake build system was created in 2024 and is still under
+ development. It will be included in Subversion 1.15 and is expected to
+ be the default build system starting with Subversion 1.16. Section F
+ below describes the CMake build system.
+
A. Building from a Tarball
------------------------------
@@ -1187,6 +1201,31 @@ II. INSTALLATION
C:>python win-tests.py -c -r -v -u http://localhost
C:>cd ..
+
+
+ F. Building using CMake
+ --------------------
+
+ Get the sources, either a release tarball or by checking out the
+ official repository. The CMake build system currently only exists in
+ /trunk and it will be included in the 1.15 release.
+
+ The process for building on Unix and Windows is the same.
+
+ $ python gen-make.py -t cmake
+ $ cmake -B out [build options]
+ $ cmake --build out
+
+ "out" in the commands above is the build directory used by CMake.
+
+ Build options can be added, for example:
+
+ $ cmake -B out -DCMAKE_INSTALL_PREFIX=/usr/local/subversion -DSVN_ENABLE_RA_SERF=ON
+
+ Build options can be listed using:
+
+ $ cmake -LH
+
III. BUILDING A SUBVERSION SERVER
============================
Modified: subversion/trunk/gen-make.py
URL: http://svn.apache.org/viewvc/subversion/trunk/gen-make.py?rev=1920717&r1=1920716&r2=1920717&view=diff
==============================================================================
--- subversion/trunk/gen-make.py (original)
+++ subversion/trunk/gen-make.py Mon Sep 16 12:41:13 2024
@@ -47,6 +47,7 @@ sys.path.insert(0, os.path.join('build',
sys.path.insert(1, 'build')
gen_modules = {
+ 'cmake' : ('gen_cmake', 'CMake build system'),
'make' : ('gen_make', 'Makefiles for POSIX systems'),
'vcproj' : ('gen_vcnet_vcproj', 'VC.Net project files'),
}
Modified: subversion/trunk/tools/dist/release.py
URL: http://svn.apache.org/viewvc/subversion/trunk/tools/dist/release.py?rev=1920717&r1=1920716&r2=1920717&view=diff
==============================================================================
--- subversion/trunk/tools/dist/release.py (original)
+++ subversion/trunk/tools/dist/release.py Mon Sep 16 12:41:13 2024
@@ -910,6 +910,8 @@ def roll_tarballs(args):
# line endings and won't run, so use the one in the working copy.
run_script(args.verbose,
'%s/tools/po/po-update.sh pot' % get_workdir(args.base_dir))
+ run_script(args.verbose,
+ 'python gen-make.py -t cmake --release')
clean_pycache() # as with clean_autom4te, is this pointless on Windows?
os.chdir(cwd)
clean_autom4te() # dist.sh does it but pointless on Windows?
@@ -926,6 +928,8 @@ def roll_tarballs(args):
'''tools/po/po-update.sh pot
./autogen.sh --release''',
hide_stderr=True) # SWIG is noisy
+ run_script(args.verbose,
+ 'python gen-make.py -t cmake --release')
clean_pycache() # without this, tarballs contain empty __pycache__ dirs
os.chdir(cwd)
clean_autom4te() # dist.sh does it but probably pointless
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.