You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2026/07/21 14:33:39 UTC
svn commit: r1936422 - subversion/trunk
Author: jun66j5
Date: Tue Jul 21 14:33:38 2026
New Revision: 1936422
Log:
cmake: Follow-up to r1936349, restore the minimum version of cmake to `3.14`.
* CMakeLists.txt
(cmake_minimum_required):
Ditto.
(test_prepend_builddir_to_path):
Add function to prepend the build directory to PATH environment.
If cmake version is 3.22 or later, use `ENVIRONMENT_MODIFICATION` with
`path_list_prepend` simply. Otherwise, build the value and use
`ENVIRONMENT`.
(swig-perl, swig-python, swig-ruby):
Use `test_prepend_builddir_to_path()` instead of `ENVIRONMENT_MODIFICATION`
directly.
Modified:
subversion/trunk/CMakeLists.txt
Modified: subversion/trunk/CMakeLists.txt
==============================================================================
--- subversion/trunk/CMakeLists.txt Tue Jul 21 12:45:05 2026 (r1936421)
+++ subversion/trunk/CMakeLists.txt Tue Jul 21 14:33:38 2026 (r1936422)
@@ -21,7 +21,7 @@
# CMAKE_MINIMUM_REQUIRED should be the first directive in the file:
# https://cmake.org/cmake/help/latest/command/cmake_minimum_required.html
-cmake_minimum_required(VERSION 3.22)
+cmake_minimum_required(VERSION 3.14)
# CMP0092: MSVC warning flags are not in CMAKE_<LANG>_FLAGS by default.
if(POLICY CMP0092)
@@ -861,6 +861,23 @@ function(swig_target_external_runtime ta
target_sources(${target} INTERFACE ${swig_runtime_path})
endfunction()
+function(test_prepend_builddir_to_path name)
+ file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}" dir)
+ if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.22")
+ set_property(TEST ${name} APPEND PROPERTY ENVIRONMENT_MODIFICATION
+ "PATH=path_list_prepend:${dir}"
+ )
+ else()
+ if(WIN32)
+ # Replace <;> with <\;> to prevent conversion to a list
+ string(REPLACE ";" "\\;" value "PATH=${dir};$ENV{PATH}")
+ else()
+ set(value "PATH=${dir}:$ENV{PATH}")
+ endif()
+ set_property(TEST ${name} APPEND PROPERTY ENVIRONMENT "${value}")
+ endif()
+endfunction()
+
if(SVN_ENABLE_SWIG_PYTHON)
find_package(PY3C REQUIRED)
@@ -920,9 +937,7 @@ if(SVN_ENABLE_SWIG_PYTHON)
"${CMAKE_CURRENT_BINARY_DIR}/swig-python"
)
if(WIN32 OR CYGWIN)
- set_property(TEST swig-python APPEND PROPERTY ENVIRONMENT_MODIFICATION
- "PATH=path_list_prepend:$<SHELL_PATH:${CMAKE_CURRENT_BINARY_DIR}>"
- )
+ test_prepend_builddir_to_path(swig-python)
endif()
endif()
@@ -1001,9 +1016,7 @@ if(SVN_ENABLE_SWIG_PERL)
${CMAKE_CURRENT_SOURCE_DIR}/subversion/bindings/swig/perl/native
)
if(WIN32 OR CYGWIN)
- set_property(TEST swig-perl APPEND PROPERTY ENVIRONMENT_MODIFICATION
- "PATH=path_list_prepend:$<SHELL_PATH:${CMAKE_CURRENT_BINARY_DIR}>"
- )
+ test_prepend_builddir_to_path(swig-perl)
endif()
endif()
@@ -1053,9 +1066,7 @@ if(SVN_ENABLE_SWIG_RUBY)
"SVN_TEST_SWIG_RUBY=ctest"
)
# svnserve in the build directory is launched by the tests
- set_property(TEST swig-ruby APPEND PROPERTY ENVIRONMENT_MODIFICATION
- "PATH=path_list_prepend:$<SHELL_PATH:${CMAKE_CURRENT_BINARY_DIR}>"
- )
+ test_prepend_builddir_to_path(swig-ruby)
endif()
### Checks
Re: svn commit: r1936422 - subversion/trunk
Posted by Daniel Sahlberg <da...@gmail.com>.
Den ons 22 juli 2026 kl 03:45 skrev Jun Omae <ju...@gmail.com>:
> On Wed, Jul 22, 2026 at 3:32 AM Timofei Zhakov <ti...@chemodax.net> wrote:
> >
> > I think here you've changed the behaviour by using the configure time
> environment instead of the one when tests are run (which I assume
> ENVIRONMENT_MODIFICATION does). This is not mentioned in the log message.
> >
> > Btw, did you consider simply requiring more modern cmake when swig
> bindings are enabled? I remember before we bumped to 3.14 from 3.12 there
> was logic to still force cmake 3.14/3.13 (I don't remember the exact
> version) for the bindings. The default config should not be affected by
> this but the bindings (I assume a lot of consumers don't compile them) - in
> this case they will have to get a newer cmake.
> >
> > --
> > Timofei Zhakov
>
> That might be r1932396 ?
>
> After r1934847, the CheckCompilerFlag is used but the module is
> introduced in 3.19.
> See also https://cmake.org/cmake/help/latest/module/CheckCompilerFlag.html
>
> [[[
> $ ../cmake-build.sh --cmake=3.14
> Configurations:
> apxs: /usr/bin/apxs2
> cmake: /home/jun66j5/cmake/3.14/bin/cmake
> ctest: /home/jun66j5/cmake/3.14/bin/ctest
> ctest args:
> java: /usr/bin/java
> perl: /usr/bin/perl
> pod2man: /usr/bin/pod2man
> py3c: /home/jun66j5/src/subversion/py3c-1.4/include
> python: /usr/bin/python3
> ruby: /usr/bin/ruby
> swig: /home/jun66j5/swig/3.0.12/bin/swig
> builddir: /dev/shm/svn-cmake-build.1kNkr/build
>
> -- The C compiler identification is GNU 11.4.0
> -- Check for working C compiler: /usr/bin/cc
> -- Check for working C compiler: /usr/bin/cc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- The CXX compiler identification is GNU 11.4.0
> -- Check for working CXX compiler: /usr/bin/c++
> -- Check for working CXX compiler: /usr/bin/c++ -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Found SWIG: /home/jun66j5/swig/3.0.12/bin/swig (found version "3.0.12")
> CMake Error at CMakeLists.txt:339 (include):
> include could not find load file:
>
> CheckCompilerFlag
>
>
> CMake Error at CMakeLists.txt:343 (check_compiler_flag):
> Unknown CMake command "check_compiler_flag".
> Call Stack (most recent call first):
> CMakeLists.txt:366 (SVN_CFLAGS_ADD_IFELSE)
>
>
> -- Configuring incomplete, errors occurred!
> See also "/dev/shm/svn-cmake-build.1kNkr/build/CMakeFiles/CMakeOutput.log".
> ]]]
>
> After the changes for CheckCompilerFlag are commented temporarily, the
> following error is occurred.
> The Intl::Intl is added in 3.20.
> See https://cmake.org/cmake/help/latest/module/FindIntl.html
>
> [[[
> -- Found Intl: /usr/include
> CMake Error at CMakeLists.txt:453 (add_library):
> add_library cannot create ALIAS target "external-intl" because target
> "Intl::Intl" is imported but not globally visible.
> ]]]
>
> Currently, the minimum required version 3.14 is not met. At least, it
> seems that 3.20 is needed. If the minimum required is important, I
> think we should run the build, test and install in the CI with the
> minimum version of cmake.
>
>
If we update to 3.20, we should still support Visual Studio 2019, right?
That means supporting all Microsoft's supported dev-env. We might loose a
few of the older LTS flavours of different Linux distributions, but there
is always autoconf for them.
How much of an issue is it to not have ENVIRONMENT_MODIFICATION? Is there a
way to guesstimate the market share of Visual Studio 2019 (to judge the
impact of requiring Visual Studio 2022) and/or how difficult is it to
aquire a newer CMake version for Visual Studio 2019? I assume you cannot
work with the project within the VS devenv if it require a newer CMake
version but if you accept only building on the command line if you have an
external CMake.
/Daniel
Re: svn commit: r1936422 - subversion/trunk
Posted by Ivan Zhakov <iv...@apache.org>.
On Wed, 29 Jul 2026 at 18:34, Jun Omae <ju...@gmail.com> wrote:
> On Wed, Jul 29, 2026 at 8:09 PM Ivan Zhakov <iv...@apache.org> wrote:
> >
> > On Thu, 23 Jul 2026 at 18:04, Jun Omae <ju...@gmail.com> wrote:
> >
> > [..]
> >>
> >> > After the changes for CheckCompilerFlag are commented temporarily, the
> >> > following error is occurred.
> >> > The Intl::Intl is added in 3.20.
> >> > See https://cmake.org/cmake/help/latest/module/FindIntl.html
> >> >
> >> > [[[
> >> > -- Found Intl: /usr/include
> >> > CMake Error at CMakeLists.txt:453 (add_library):
> >> > add_library cannot create ALIAS target "external-intl" because
> target
> >> > "Intl::Intl" is imported but not globally visible.
> >> > ]]]
> >> >
> >>
> >> Fixed in r1936526.
> >>
> > It looks the workaround from r1936526 is no longer needed since we
> bumped CMake minimum required version to 3.20 (r1936635)
> >
> > I have tested build with CMake 3.20 and r1936526 reverted: the build
> works fine.
> >
>
> See cmake 3.18 release notes,
> https://cmake.org/cmake/help/latest/release/3.18.html#commands
>
> > The add_library() and add_executable() commands learned to create Alias
> Targets referencing non-GLOBAL Imported Targets.
>
> The workaround is no longer needed for cmake 3.18 or later.
>
>
> > So I suggested to revert r1936526.
> >
> > WDYT?
> >
>
> I have no objection.
>
> Done in r1936758 <https://svn.apache.org/r1936758>.
Thanks!
--
Ivan Zhakov
Re: svn commit: r1936422 - subversion/trunk
Posted by Jun Omae <ju...@gmail.com>.
On Wed, Jul 29, 2026 at 8:09 PM Ivan Zhakov <iv...@apache.org> wrote:
>
> On Thu, 23 Jul 2026 at 18:04, Jun Omae <ju...@gmail.com> wrote:
>
> [..]
>>
>> > After the changes for CheckCompilerFlag are commented temporarily, the
>> > following error is occurred.
>> > The Intl::Intl is added in 3.20.
>> > See https://cmake.org/cmake/help/latest/module/FindIntl.html
>> >
>> > [[[
>> > -- Found Intl: /usr/include
>> > CMake Error at CMakeLists.txt:453 (add_library):
>> > add_library cannot create ALIAS target "external-intl" because target
>> > "Intl::Intl" is imported but not globally visible.
>> > ]]]
>> >
>>
>> Fixed in r1936526.
>>
> It looks the workaround from r1936526 is no longer needed since we bumped CMake minimum required version to 3.20 (r1936635)
>
> I have tested build with CMake 3.20 and r1936526 reverted: the build works fine.
>
See cmake 3.18 release notes,
https://cmake.org/cmake/help/latest/release/3.18.html#commands
> The add_library() and add_executable() commands learned to create Alias Targets referencing non-GLOBAL Imported Targets.
The workaround is no longer needed for cmake 3.18 or later.
> So I suggested to revert r1936526.
>
> WDYT?
>
I have no objection.
--
Jun Omae <ju...@gmail.com> (大前 潤)
Re: svn commit: r1936422 - subversion/trunk
Posted by Ivan Zhakov <iv...@apache.org>.
On Thu, 23 Jul 2026 at 18:04, Jun Omae <ju...@gmail.com> wrote:
[..]
> > After the changes for CheckCompilerFlag are commented temporarily, the
> > following error is occurred.
> > The Intl::Intl is added in 3.20.
> > See https://cmake.org/cmake/help/latest/module/FindIntl.html
> >
> > [[[
> > -- Found Intl: /usr/include
> > CMake Error at CMakeLists.txt:453 (add_library):
> > add_library cannot create ALIAS target "external-intl" because target
> > "Intl::Intl" is imported but not globally visible.
> > ]]]
> >
>
> Fixed in r1936526.
>
> It looks the workaround from r1936526 is no longer needed since we bumped
CMake minimum required version to 3.20 (r1936635)
I have tested build with CMake 3.20 and r1936526 reverted: the build works
fine.
So I suggested to revert r1936526.
WDYT?
--
Ivan Zhakov
Re: svn commit: r1936422 - subversion/trunk
Posted by Jun Omae <ju...@gmail.com>.
On 2026/07/22 10:44, Jun Omae wrote:
> On Wed, Jul 22, 2026 at 3:32 AM Timofei Zhakov <ti...@chemodax.net> wrote:
>>
>> I think here you've changed the behaviour by using the configure time environment instead of the one when tests are run (which I assume ENVIRONMENT_MODIFICATION does). This is not mentioned in the log message.
>>
>> Btw, did you consider simply requiring more modern cmake when swig bindings are enabled? I remember before we bumped to 3.14 from 3.12 there was logic to still force cmake 3.14/3.13 (I don't remember the exact version) for the bindings. The default config should not be affected by this but the bindings (I assume a lot of consumers don't compile them) - in this case they will have to get a newer cmake.
>>
>> --
>> Timofei Zhakov
>
> That might be r1932396 ?
Building Python bindings requires Python3::Module component, which is added in cmake 3.15. Other targets can be built with cmake 3.14.
> After r1934847, the CheckCompilerFlag is used but the module is
> introduced in 3.19.
> See also https://cmake.org/cmake/help/latest/module/CheckCompilerFlag.html
>
> [[[
> CMake Error at CMakeLists.txt:339 (include):
> include could not find load file:
>
> CheckCompilerFlag
>
>
> CMake Error at CMakeLists.txt:343 (check_compiler_flag):
> Unknown CMake command "check_compiler_flag".
> Call Stack (most recent call first):
> CMakeLists.txt:366 (SVN_CFLAGS_ADD_IFELSE)
> ]]]
The check_compiler_flag() is used to verify whether the -W options are available. If the module is unavailable, adding the options can be skipped. Alternatively, wouldn't it be possible to check the options using try_compile()? After resolving the issue, it is able to build with cmake 3.14 (or 3.15).
[[[
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5a7e49225..d219fb0f7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -352,15 +352,22 @@ else()
# Assume that all compilers except MSVC are GCC-compatible and support
# the -W syntax
- include(CheckCompilerFlag)
- # Adds flags if one is supported by the compiler
- function(SVN_CFLAGS_ADD_IFELSE flag)
- set(variable "HAVE_FLAG_${flag}")
- check_compiler_flag(C ${flag} ${variable})
- if (${${variable}})
- add_compile_options("${flag}")
- endif()
- endfunction()
+ include(CheckCompilerFlag OPTIONAL)
+ if(COMMAND check_compiler_flag)
+ # Adds flags if one is supported by the compiler
+ function(SVN_CFLAGS_ADD_IFELSE flag)
+ set(variable "HAVE_FLAG_${flag}")
+ check_compiler_flag(C ${flag} ${variable})
+ if (${${variable}})
+ add_compile_options("${flag}")
+ endif()
+ endfunction()
+ else()
+ message(NOTICE "CheckCompilerFlag module unavailable")
+ function(SVN_CFLAGS_ADD_IFELSE flag)
+ message(NOTICE "Skipped Test HAVE_FLAG_${flag}")
+ endfunction()
+ endif()
# Add flags that all versions of GCC (should) support
add_compile_options(-Wpointer-arith)
]]]
> After the changes for CheckCompilerFlag are commented temporarily, the
> following error is occurred.
> The Intl::Intl is added in 3.20.
> See https://cmake.org/cmake/help/latest/module/FindIntl.html
>
> [[[
> -- Found Intl: /usr/include
> CMake Error at CMakeLists.txt:453 (add_library):
> add_library cannot create ALIAS target "external-intl" because target
> "Intl::Intl" is imported but not globally visible.
> ]]]
>
Fixed in r1936526.
--
Jun Omae <ju...@gmail.com> (大前 潤)
Re: svn commit: r1936422 - subversion/trunk
Posted by Jun Omae <ju...@gmail.com>.
On Wed, Jul 22, 2026 at 3:32 AM Timofei Zhakov <ti...@chemodax.net> wrote:
>
> I think here you've changed the behaviour by using the configure time environment instead of the one when tests are run (which I assume ENVIRONMENT_MODIFICATION does). This is not mentioned in the log message.
>
> Btw, did you consider simply requiring more modern cmake when swig bindings are enabled? I remember before we bumped to 3.14 from 3.12 there was logic to still force cmake 3.14/3.13 (I don't remember the exact version) for the bindings. The default config should not be affected by this but the bindings (I assume a lot of consumers don't compile them) - in this case they will have to get a newer cmake.
>
> --
> Timofei Zhakov
That might be r1932396 ?
After r1934847, the CheckCompilerFlag is used but the module is
introduced in 3.19.
See also https://cmake.org/cmake/help/latest/module/CheckCompilerFlag.html
[[[
$ ../cmake-build.sh --cmake=3.14
Configurations:
apxs: /usr/bin/apxs2
cmake: /home/jun66j5/cmake/3.14/bin/cmake
ctest: /home/jun66j5/cmake/3.14/bin/ctest
ctest args:
java: /usr/bin/java
perl: /usr/bin/perl
pod2man: /usr/bin/pod2man
py3c: /home/jun66j5/src/subversion/py3c-1.4/include
python: /usr/bin/python3
ruby: /usr/bin/ruby
swig: /home/jun66j5/swig/3.0.12/bin/swig
builddir: /dev/shm/svn-cmake-build.1kNkr/build
-- The C compiler identification is GNU 11.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- The CXX compiler identification is GNU 11.4.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found SWIG: /home/jun66j5/swig/3.0.12/bin/swig (found version "3.0.12")
CMake Error at CMakeLists.txt:339 (include):
include could not find load file:
CheckCompilerFlag
CMake Error at CMakeLists.txt:343 (check_compiler_flag):
Unknown CMake command "check_compiler_flag".
Call Stack (most recent call first):
CMakeLists.txt:366 (SVN_CFLAGS_ADD_IFELSE)
-- Configuring incomplete, errors occurred!
See also "/dev/shm/svn-cmake-build.1kNkr/build/CMakeFiles/CMakeOutput.log".
]]]
After the changes for CheckCompilerFlag are commented temporarily, the
following error is occurred.
The Intl::Intl is added in 3.20.
See https://cmake.org/cmake/help/latest/module/FindIntl.html
[[[
-- Found Intl: /usr/include
CMake Error at CMakeLists.txt:453 (add_library):
add_library cannot create ALIAS target "external-intl" because target
"Intl::Intl" is imported but not globally visible.
]]]
Currently, the minimum required version 3.14 is not met. At least, it
seems that 3.20 is needed. If the minimum required is important, I
think we should run the build, test and install in the CI with the
minimum version of cmake.
--
Jun Omae <ju...@gmail.com> (大前 潤)
Re: svn commit: r1936422 - subversion/trunk
Posted by Timofei Zhakov <ti...@chemodax.net>.
On Tue, Jul 21, 2026 at 4:33 PM <ju...@apache.org> wrote:
> Author: jun66j5
> Date: Tue Jul 21 14:33:38 2026
> New Revision: 1936422
>
> Log:
> cmake: Follow-up to r1936349, restore the minimum version of cmake to
> `3.14`.
>
> * CMakeLists.txt
> (cmake_minimum_required):
> Ditto.
> (test_prepend_builddir_to_path):
> Add function to prepend the build directory to PATH environment.
> If cmake version is 3.22 or later, use `ENVIRONMENT_MODIFICATION` with
> `path_list_prepend` simply. Otherwise, build the value and use
> `ENVIRONMENT`.
> (swig-perl, swig-python, swig-ruby):
> Use `test_prepend_builddir_to_path()` instead of
> `ENVIRONMENT_MODIFICATION`
> directly.
>
> Modified:
> subversion/trunk/CMakeLists.txt
>
> Modified: subversion/trunk/CMakeLists.txt
>
> ==============================================================================
> --- subversion/trunk/CMakeLists.txt Tue Jul 21 12:45:05 2026
> (r1936421)
> +++ subversion/trunk/CMakeLists.txt Tue Jul 21 14:33:38 2026
> (r1936422)
> @@ -21,7 +21,7 @@
>
> # CMAKE_MINIMUM_REQUIRED should be the first directive in the file:
> # https://cmake.org/cmake/help/latest/command/cmake_minimum_required.html
> -cmake_minimum_required(VERSION 3.22)
> +cmake_minimum_required(VERSION 3.14)
>
> # CMP0092: MSVC warning flags are not in CMAKE_<LANG>_FLAGS by default.
> if(POLICY CMP0092)
> @@ -861,6 +861,23 @@ function(swig_target_external_runtime ta
> target_sources(${target} INTERFACE ${swig_runtime_path})
> endfunction()
>
> +function(test_prepend_builddir_to_path name)
> + file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}" dir)
> + if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.22")
> + set_property(TEST ${name} APPEND PROPERTY ENVIRONMENT_MODIFICATION
> + "PATH=path_list_prepend:${dir}"
> + )
> + else()
> + if(WIN32)
> + # Replace <;> with <\;> to prevent conversion to a list
> + string(REPLACE ";" "\\;" value "PATH=${dir};$ENV{PATH}")
> + else()
> + set(value "PATH=${dir}:$ENV{PATH}")
> + endif()
> + set_property(TEST ${name} APPEND PROPERTY ENVIRONMENT "${value}")
> + endif()
> +endfunction()
> +
> if(SVN_ENABLE_SWIG_PYTHON)
> find_package(PY3C REQUIRED)
>
> @@ -920,9 +937,7 @@ if(SVN_ENABLE_SWIG_PYTHON)
> "${CMAKE_CURRENT_BINARY_DIR}/swig-python"
> )
> if(WIN32 OR CYGWIN)
> - set_property(TEST swig-python APPEND PROPERTY ENVIRONMENT_MODIFICATION
> - "PATH=path_list_prepend:$<SHELL_PATH:${CMAKE_CURRENT_BINARY_DIR}>"
> - )
> + test_prepend_builddir_to_path(swig-python)
> endif()
> endif()
>
> @@ -1001,9 +1016,7 @@ if(SVN_ENABLE_SWIG_PERL)
> ${CMAKE_CURRENT_SOURCE_DIR}/subversion/bindings/swig/perl/native
> )
> if(WIN32 OR CYGWIN)
> - set_property(TEST swig-perl APPEND PROPERTY ENVIRONMENT_MODIFICATION
> - "PATH=path_list_prepend:$<SHELL_PATH:${CMAKE_CURRENT_BINARY_DIR}>"
> - )
> + test_prepend_builddir_to_path(swig-perl)
> endif()
> endif()
>
> @@ -1053,9 +1066,7 @@ if(SVN_ENABLE_SWIG_RUBY)
> "SVN_TEST_SWIG_RUBY=ctest"
> )
> # svnserve in the build directory is launched by the tests
> - set_property(TEST swig-ruby APPEND PROPERTY ENVIRONMENT_MODIFICATION
> - "PATH=path_list_prepend:$<SHELL_PATH:${CMAKE_CURRENT_BINARY_DIR}>"
> - )
> + test_prepend_builddir_to_path(swig-ruby)
> endif()
>
> ### Checks
>
>
I think here you've changed the behaviour by using the configure time
environment instead of the one when tests are run (which I
assume ENVIRONMENT_MODIFICATION does). This is not mentioned in the log
message.
Btw, did you consider simply requiring more modern cmake when swig bindings
are enabled? I remember before we bumped to 3.14 from 3.12 there was logic
to still force cmake 3.14/3.13 (I don't remember the exact version) for the
bindings. The default config should not be affected by this but the
bindings (I assume a lot of consumers don't compile them) - in this case
they will have to get a newer cmake.
--
Timofei Zhakov