Commit Graph

13400 Commits

Author SHA1 Message Date
Kyle Edwards f73a5bfaa9 UsePkgConfig: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Kyle Edwards 17bab9e709 FindwxWindows: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Kyle Edwards 13f7ae2878 FindQt: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Kyle Edwards 31cab35bb6 FindFLTK2: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Kyle Edwards ec155433ed FindFLTK: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Brad King 6194193a8a Merge topic 'file-REAL_PATH-relative'
6b5f2dbbfe file(REAL_PATH): resolve symlinks before '..' components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8605
2023-07-24 08:43:19 -04:00
Brad King 5051340916 Merge topic 'FindOpenSSL-trust-root-dir'
791d4fd350 FindOpenSSL: Prefer OPENSSL_ROOT_DIR only if non-empty

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8643
2023-07-21 09:37:29 -04:00
Brad King 32174571e9 Merge topic 'FindCUDAToolkit-libnvrtc-builtins'
c2601d01d1 FindCUDAToolkit: Fix nvrtc_builtins library name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !8642
2023-07-21 09:35:10 -04:00
Robert Maynard 6b5f2dbbfe file(REAL_PATH): resolve symlinks before '..' components
Previously REAL_PATH would collapse paths before resolving any symlinks
so if `..` crossed a symlink the output from `REAL_PATH` would be wrong.

It looked like REAL_PATH did this by mistake since it was a side-effect
of ensuring we had an absolute path before resolving symlinks.
2023-07-20 17:02:58 -04:00
Brad King 791d4fd350 FindOpenSSL: Prefer OPENSSL_ROOT_DIR only if non-empty
Since commit 5cc8a69867 (FindOpenSSL: Trust the user's OPENSSL_ROOT_DIR,
2023-05-17, v3.27.0-rc1~71^2) we use `OPENSSL_ROOT_DIR` whenever it is
defined, even if it is an empty string.  This breaks a pattern in
existing projects that define an empty `OPENSSL_ROOT_DIR` cache entry so
that `cmake-gui` users can fill it in.  Use the value only if non-empty.

Issue: #18352
2023-07-20 12:18:13 -04:00
Tomoharu Kitawaki c2601d01d1 FindCUDAToolkit: Fix nvrtc_builtins library name
The lib is named `libnvrtc-builtins.so`, not `libnvrtc_builtins.so`.

Update the change from commit 2a94c762ed (FindCUDAToolkit: Add support
for CUDA::nvrtc_static, 2023-01-20, v3.26.0-rc1~55^2).  Apply a fix
similar to commit 9688a8ebc2 (FindCUDAToolkit: Fix
`nvrtc_builtins_static` library name, 2023-02-03, v3.26.0-rc2~15^2).
2023-07-20 11:34:47 -04:00
Brad King ee6335f75f Merge topic 'windows-kernel-mode-driver'
b01f5eb079 Windows: Add experimental WindowsKernelModeDriver platform
d84681d8f0 try_compile(): Pass down CMAKE_EXPERIMENTAL_* feature flags
1ca82e7a04 cmake_language(): Add undocumented GET_EXPERIMENTAL_FEATURE_ENABLED mode
051cea7b7e cmExperimental: Expose feature data API

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8634
2023-07-19 10:41:22 -04:00
Brad King e4819c3a7a Merge topic 'armclang-update-version-computation'
65fac2fa35 ARMClang: Fix computation of compiler semantic version patch level

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8636
2023-07-18 13:48:50 -04:00
Brad King a881ae61f1 Merge topic 'armclang-update-version-computation' into release-3.27
65fac2fa35 ARMClang: Fix computation of compiler semantic version patch level

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8636
2023-07-18 13:48:49 -04:00
Daniel Brondani 65fac2fa35 ARMClang: Fix computation of compiler semantic version patch level
According to ARMClang documentation 6.20, the patch version number
should not include the last two digits of `__ARMCOMPILER_VERSION`,
which are reserved for internal use by ARM.
2023-07-18 13:29:01 -04:00
Kyle Edwards b01f5eb079 Windows: Add experimental WindowsKernelModeDriver platform 2023-07-17 16:54:10 -04:00
Brad King 08cdc91c09 Merge topic 'FindProtobuf-version-schemes'
6e90d79577 FindProtobuf: Fix new version number scheme

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8629
2023-07-14 11:03:10 -04:00
Jannik Beyerstedt 6e90d79577 FindProtobuf: Fix new version number scheme
Revise the changes from commit fc7dcc6a24 (FindProtobuf: Support new
version number scheme, 2023-06-19, v3.27.0-rc3~2^2).  Changing the
content of `Protobuf_VERSION` to exclude the major version of the library
might break code as it can't be used to detect breaking changes in the
library any more.

However, protoc v22 and up don't print the major version any more, so we
need to compare the against a truncated version number, too.
2023-07-14 09:34:13 -04:00
Brad King ba616fcb6d Merge topic 'android-platform'
bfe4722a61 Android: Restore platform info and search paths shared with Linux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8626
2023-07-14 08:33:13 -04:00
Brad King bfe4722a61 Android: Restore platform info and search paths shared with Linux
These were accidentally dropped by commit 1373373823 (enable_language:
Establish target platform identification variables earlier, 2023-06-06,
v3.27.0-rc1~3^2~1).

Fixes: #25077
2023-07-13 08:19:15 -04:00
Gregor Jasny 25977e177b apple: add preliminary visionOS support 2023-07-11 20:20:25 +02:00
Brad King 10a1759a6d Merge topic 'android-host-system-version'
fff6c469f8 Android: Populate CMAKE_HOST_SYSTEM_VERSION on native builds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8607
2023-07-07 10:30:32 -04:00
Brad King 619d850886 Merge topic 'findprotobuf-mingw'
e978b3b814 FindProtobuf: Fix linking to shared libraries on MinGW

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8609
2023-07-07 10:29:31 -04:00
Brad King cd70f0f9eb Merge topic 'findprotobuf-mingw' into release-3.27
e978b3b814 FindProtobuf: Fix linking to shared libraries on MinGW

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8609
2023-07-07 10:29:30 -04:00
Brad King d2e3821935 Merge topic 'hip-lib64'
f79428619e HIP: Fix search for hip-lang CMake package on Fedora distros

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8614
2023-07-07 10:27:19 -04:00
Brad King f79428619e HIP: Fix search for hip-lang CMake package on Fedora distros
These distros package the hip-lang package under `lib64`, so search it
too.  This is similar to commit bae57dc281 (HIP: Fix search for hip-lang
CMake package on multiarch distros, 2023-05-31, v3.27.0-rc1~28^2).

Fixes: #25050
2023-07-05 12:37:34 -04:00
مهدي شينون (Mehdi Chinoune) e978b3b814 FindProtobuf: Fix linking to shared libraries on MinGW
Fixes: #25011
2023-07-05 08:25:01 -04:00
funsafe-ptr fff6c469f8 Android: Populate CMAKE_HOST_SYSTEM_VERSION on native builds
Follow up commit c5892e484e (Android: add support for native
compilation, such as with the Termux app, 2019-10-15,
v3.17.0-rc1~594^2).
2023-07-05 06:41:13 -04:00
Brad King 442e2fab10 Merge topic 'FindProtobuf-upstream-options'
f784ef75a7 FindProtobuf: Add documentation for protobuf_generate()
cd3ff53c88 FindProtobuf: Add DEPENDENCIES to protobuf_generate
31adc11030 FindProtobuf: Add PLUGIN_OPTIONS and PROTOC_OPTIONS to protobuf_generate

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8601
2023-07-05 06:38:31 -04:00
André Apitzsch f784ef75a7 FindProtobuf: Add documentation for protobuf_generate()
Note, the argument `DESCRIPTORS` is not documented as upstream doesn't
provide this argument and code might break when switching to upstream
later.

Instead of the argument `DESCRIPTORS`
`PROTOC_OPTIONS "--descriptor_set_out=NAME.desc"` can be used.

Argument description has been copied from [1].

Fixes: #23037

[1] https://github.com/protocolbuffers/protobuf/blob/8ec0295ad7fc83d20609fcdf4830e3e3fddf2912/docs/cmake_protobuf_generate.md
2023-06-30 09:47:58 -04:00
Brad King 3efd705508 Merge topic 'FindPython-enhance-tests'
97b3a2ac17 FindPython: Add labels Python2 and/or Python3 on tests
9b45210b05 FindPython: Add tests for IronPython v3

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8603
2023-06-30 09:32:45 -04:00
Brad King 807d9165fb Merge topic 'FetchContent-unparsed-arguments'
9ede4cab2b FetchContent: Protect ExternalProject keywords from unknown arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !8598
2023-06-30 09:29:28 -04:00
André Apitzsch cd3ff53c88 FindProtobuf: Add DEPENDENCIES to protobuf_generate
See upstream PR for details https://github.com/protocolbuffers/protobuf/pull/10014.
2023-06-30 09:10:18 +02:00
André Apitzsch 31adc11030 FindProtobuf: Add PLUGIN_OPTIONS and PROTOC_OPTIONS to protobuf_generate 2023-06-30 09:08:35 +02:00
Marc Chevrier 9b45210b05 FindPython: Add tests for IronPython v3 2023-06-29 17:07:56 +02:00
Brad King 9ede4cab2b FetchContent: Protect ExternalProject keywords from unknown arguments
`ExternalProject_Add` treats all keyword arguments as multi-valued.
FetchContent re-orders some keyword arguments w.r.t. unparsed arguments.
Add an internal keyword argument to separate the keyword values from
following unparsed arguments.

This was exposed by commit 550f63447d (ExternalProject/FetchContent:
Support relative remote URLs, 2023-04-21, v3.27.0-rc1~156^2) by adding
`GIT_REPOSITORY` to the set of re-ordered keyword arguments.  This
caused its value to absorb following unparsed arguments.

Fixes: #25029
2023-06-29 09:49:51 -04:00
Brad King 62f2e5a994 Merge topic 'FindCxxTest-doc'
676d1da38b FindCxxTest: Modernize documentation formatting
dfe0f58962 FindCxxTest: Update link to cxxtest project page

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8589
2023-06-26 09:45:46 -04:00
Brad King b1d2c495dd Merge topic 'FindCxxTest-doc' into release-3.27
676d1da38b FindCxxTest: Modernize documentation formatting
dfe0f58962 FindCxxTest: Update link to cxxtest project page

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8589
2023-06-26 09:45:45 -04:00
Brad King d599c9e92e Merge topic 'support_nvhpc_versions_without_isystem'
f73ae7c510 NVHPC: Support nvfortran versions that don't support isystem

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8588
2023-06-26 09:44:57 -04:00
Brad King b7810bfb18 Merge topic 'support_nvhpc_versions_without_isystem' into release-3.27
f73ae7c510 NVHPC: Support nvfortran versions that don't support isystem

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8588
2023-06-26 09:44:56 -04:00
Brad King 7af90b7bf7 Merge topic 'link-depends-is-OFF'
5945a98ced link dependencies: deactivate the feature

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8587
2023-06-26 09:43:56 -04:00
Brad King 676d1da38b FindCxxTest: Modernize documentation formatting 2023-06-23 12:20:03 -04:00
Brad King dfe0f58962 FindCxxTest: Update link to cxxtest project page 2023-06-23 12:20:03 -04:00
Robert Maynard f73ae7c510 NVHPC: Support nvfortran versions that don't support isystem
Fixes: #25019
2023-06-23 12:14:09 -04:00
Brad King 09df135b60 Merge topic 'FindEXPAT-static'
302501ad36 FindEXPAT: add a EXPAT_USE_STATIC_LIBS hint

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8572
2023-06-23 11:01:48 -04:00
Brad King 483c971940 Merge topic 'FindCURL-static'
97d0f76453 FindCURL: add a CURL_USE_STATIC_LIBS hint

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8573
2023-06-23 11:01:09 -04:00
Marc Chevrier 5945a98ced link dependencies: deactivate the feature
Unfortunately it breaks in combination with LTO due to a bug in the GNU
linker.

Fixes: #25014
2023-06-23 10:35:04 -04:00
Even Rouault 302501ad36 FindEXPAT: add a EXPAT_USE_STATIC_LIBS hint
The effect of that hint is to restrict the candidate library names, but
more essentially to set the `XML_STATIC` compile definitions which is
required to get proper linking.

Vcpkg-Issue: https://github.com/microsoft/vcpkg/issues/1100
GDAL-Issue: https://github.com/OSGeo/gdal/issues/7955
2023-06-22 10:18:07 -04:00
Even Rouault 97d0f76453 FindCURL: add a CURL_USE_STATIC_LIBS hint
The effect of that hint is to set a CURL_STATICLIB compile definition,
and to auxiliary system windows libraries for MSVC builds.

GDAL-Issue: https://github.com/OSGeo/gdal/issues/7955
2023-06-22 10:17:16 -04:00
Brad King 7bf3d2a202 Merge topic 'android-platform-vars'
ab66b89a46 Android: Restore platform id vars with legacy toolchain file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8576
2023-06-20 13:10:00 -04:00