Nice! Cheers! =) Den mån 16 sep. 2024 kl 14:41 skrev <rin...@apache.org>:
> 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 > > >