Re: svn commit: r1920717 - in /subversion/trunk: ./ CMakeLists.txt INSTALL build/cmake/ build/generator/gen_cmake.py build/generator/templates/targets.cmake.ezt gen-make.py subversion/svn_private_config.hc tools/dist/release.py

Daniel Sahlberg <[email protected]>
Newsgroups gmane.comp.version-control.subversion.svn,gmane.comp.java.ofbiz.devel
Message-ID <CAMHy98OVottB5T9Tc31NnfSPO++vHtCq9T+rfqq7EtesYoDsvQ@mail.gmail.com>
Nice! Cheers! =)

Den mån 16 sep. 2024 kl 14:41 skrev <[email protected]>:

> 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.