Commit Graph

12789 Commits

Author SHA1 Message Date
Brad King b5bc72574e FindHDF5: Revert "Add explicit library location instead of guessed ..."
Revert commit e4e309f165 (FindHDF5: Add explicit library location
instead of guessed library name., 2022-03-22, v3.24.0-rc1~375^2).
The old behavior was not a guessed library name, but the name of an
imported target that can contain per-config locations and encode usage
requirements.  Although find modules do not normally return their
imported target names in the `_LIBRARIES` variable, FindHDF5 has done so
since commit 5201a3065b (FindHDF5: use the target rather than the path,
2017-01-04, v3.8.0-rc1~81^2).

Fixes: #23667
2022-06-27 13:51:33 -04:00
Marc Chevrier ece3bedbf2 FindPython: fix error on multiple queries with different COMPONENTS
Ensure that multiple queries with different COMPONENTS specified in
different sub-directories are fully supported.
2022-06-27 13:16:29 -04:00
Igor Molchanov 57da7a4925 LCC: link with -lgfortran instead of -llfortran since 1.26.03
Since LCC 1.26.03, compiler developers decided to rename
liblfortran to libgfortran (internal reference: mcstbug#131633),
and despite it's stated that "-llfortran will be automatically
treated as -lgfortran", it actually does not work (and there's
even no symlinks like liblfortran.* -> libgfortran.*); so we
have to explicitly choose which library we have to link in.

Fixes: #23646
2022-06-27 13:02:53 -04:00
Markus Mützel 6c8789af75 FindGLEW: select_library_configuration might be used before it is defined
Fixes a regression from a31b270785
2022-06-26 10:38:11 +02:00
Brad King dcfb2d5f5d Merge topic 'FindPython-use-VALIDATOR'
e8e5af0278 FindPython: enhance search criterias

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7401
2022-06-23 09:33:47 -04:00
Brad King 6760180f57 Merge topic 'findvulkan-volk'
f849e33452 FindVulkan: Add 'volk' component

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7382
2022-06-23 09:29:59 -04:00
Brad King 1c27316145 Merge topic 'findopenal-add-import-library'
91e3f2e088 ci: Enable FindOpenAL test on Linux builds
927e091949 FindOpenAL: Add imported target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7385
2022-06-23 09:28:55 -04:00
Brad King 4137cf1964 Merge topic 'ipo_append_auto_on_gcc'
fe57410b33 IPO: Use -flto=auto if compiler is GCC >= 10.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7400
2022-06-23 09:24:59 -04:00
Brad King 0c2066f2d9 Merge topic 'ipo_append_auto_on_gcc' into release-3.24
fe57410b33 IPO: Use -flto=auto if compiler is GCC >= 10.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7400
2022-06-23 09:24:58 -04:00
Brad King d1e2090526 Merge topic 'revert-pkgconfig-static-libs'
7e4adcac82 FindPkgConfig: Revert "Populate _STATIC_LINK_LIBRARIES. Add STATIC_TARGET."

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7402
2022-06-23 09:21:26 -04:00
Marc Chevrier e8e5af0278 FindPython: enhance search criterias
Use VALIDATOR option of find_* commands to add more criterias to the search:
* version
* architecture

Fixes: #22319
2022-06-22 16:47:56 +02:00
Brad King 7e4adcac82 FindPkgConfig: Revert "Populate _STATIC_LINK_LIBRARIES. Add STATIC_TARGET."
Revert commit 020976d637 (FindPkgConfig: Populate
_STATIC_LINK_LIBRARIES. Add STATIC_TARGET., 2021-12-31,
v3.24.0-rc1~105^2).  Several regressions have been reported.
Revert the feature pending further discussion and design work.

Issue: #21714
Fixes: #23642
2022-06-22 10:13:00 -04:00
Aiden Lambert f849e33452 FindVulkan: Add 'volk' component 2022-06-22 09:46:46 -04:00
Sam V 927e091949 FindOpenAL: Add imported target
Fixes: #20026
2022-06-22 09:16:19 -04:00
Linus Dierheimer fe57410b33 IPO: Use -flto=auto if compiler is GCC >= 10.1
Since GCC 12.1, the `-flto` option warns unless given an explicit
LTRANS job count.

Issue: #23640
2022-06-22 09:09:16 -04:00
Brad King 2be09731e0 Merge topic 'FindPython-registry-management'
0201530bdb FindPython: enhance windows registry handling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7384
2022-06-22 09:03:12 -04:00
Brad King 9f3ca7ff4d Merge topic 'glew'
a31b270785 FindGLEW: Set documented variables when found via upstream package

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7390
2022-06-22 09:01:10 -04:00
Brad King 47be79e382 Merge topic 'FetchContent-doc-example'
641d97e03f FetchContent: Fix example code in documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !7393
2022-06-22 08:50:27 -04:00
Brad King aae6a67e5c Merge topic 'FetchContent-doc-example' into release-3.24
641d97e03f FetchContent: Fix example code in documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !7393
2022-06-22 08:50:26 -04:00
Brad King 97c273161e Merge topic 'FindMPI-l-colon'
a606609499 FindMPI: Parse '-l:' flags in pkg-config output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7392
2022-06-22 08:49:32 -04:00
Brad King e38783f16b Merge topic 'FindMPI-l-colon' into release-3.24
a606609499 FindMPI: Parse '-l:' flags in pkg-config output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7392
2022-06-22 08:49:31 -04:00
Brad King 52e9225e4f Merge topic 'xcode14'
7c79fde5fb Xcode: automatically create Info.plist for signing during compiler id
116cc5a57b cm_cxx_features: filter out warnings from Xcode 14

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7391
2022-06-22 08:47:38 -04:00
Brad King 0b86798a53 Merge topic 'xcode14' into release-3.24
7c79fde5fb Xcode: automatically create Info.plist for signing during compiler id
116cc5a57b cm_cxx_features: filter out warnings from Xcode 14

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7391
2022-06-22 08:47:37 -04:00
Brad King 01ba9d3c39 Merge topic 'ExternalProject-stamp-cfgdir'
6a1e45fdec Merge branch 'backport-3.23-ExternalProject-stamp-cfgdir'
5022b42f8b ExternalProject: Fix regression in stamp creation for Xcode+iOS
7b622f3e80 ExternalProject: Fix regression in stamp creation for Xcode+iOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !7396
2022-06-22 08:42:50 -04:00
Brad King 5022b42f8b ExternalProject: Fix regression in stamp creation for Xcode+iOS
The change to `_ep_add_mkdir_command` in commit 5fbac2bb24
(ExternalProject: Move inline scripts to separate files, 2022-01-22,
v3.23.0-rc1~101^2) did not account for the possibility that
`CMAKE_CFG_INTDIR` is `$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)`
instead of just the configuration name.  Pass the value into the helper
script on the command line so that the native buildsystem placeholders
are evaluated.

Fixes: #23645
2022-06-21 18:27:44 -04:00
Brad King 7b622f3e80 ExternalProject: Fix regression in stamp creation for Xcode+iOS
The change to `_ep_add_mkdir_command` in commit 5fbac2bb24
(ExternalProject: Move inline scripts to separate files, 2022-01-22,
v3.23.0-rc1~101^2) did not account for the possibility that
`CMAKE_CFG_INTDIR` is `$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)`
instead of just the configuration name.  Pass the value into the helper
script on the command line so that the native buildsystem placeholders
are evaluated.

Fixes: #23645
2022-06-21 18:26:22 -04:00
Marc Chevrier 0201530bdb FindPython: enhance windows registry handling 2022-06-21 22:52:02 +02:00
Markus Mützel a31b270785 FindGLEW: Set documented variables when found via upstream package
When GLEW is found by `find_package` (most of) the variables described
in the documentation of `FindGLEW` aren't set.  That could lead to
issues when building packages that rely on these variables.

Fixes: #19662
2022-06-21 13:56:29 -04:00
Markus Mützel a606609499 FindMPI: Parse '-l:' flags in pkg-config output
With the msmpi package in MSYS2:

    $ pkg-config --libs msmpi
    -LC:/msys64/mingw64/lib -l:libmsmpi.dll.a

MSYS2-Issue: https://github.com/msys2/MINGW-packages/pull/11839
Fixes: #23620
2022-06-21 12:38:30 -04:00
pigeon 641d97e03f FetchContent: Fix example code in documentation 2022-06-21 12:31:00 -04:00
Gregor Jasny 7c79fde5fb Xcode: automatically create Info.plist for signing during compiler id
Extend the Xcode 14 update from commit 89e1113e0c (Xcode: Use ad-hoc
signing during compiler id on macOS, 2022-06-10, v3.24.0-rc1~13^2~2).
2022-06-21 10:49:45 -04:00
Brad King b27c3700e6 Merge topic 'drhpc-findblas-pkgconfig'
70f15d202f Modules/Find{BLAS,LAPACK}: allow choice of pkg-config package

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7370
2022-06-21 10:44:14 -04:00
Brad King a43679d13c Merge topic 'find-wxwidgets'
8c9106538f FindwxWidgets: Support more wxWidgets versions, including 3.2
d8a2edb74e FindwxWidgets: Use version number from header for library names
2f2fe1a2e3 FindwxWidgets: Move extracting version number to a macro

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7374
2022-06-17 11:30:50 -04:00
Dr. Thomas Orgis 70f15d202f Modules/Find{BLAS,LAPACK}: allow choice of pkg-config package
The BLA_PREFER_PKGCONFIG switch is not that useful if you are not able
to specify the pkg-config package to use. This adds BLA_PKGCONFIG_BLAS
and BLA_PKGCONFIG_LAPACK to that effect, allowing user choice in
environments that install differing variants of the BLAS libraries
with distinct .pc file names.

This is part of work to get more standardized installations of the
BLAS libs with specific names, likely blas.pc and lapack.pc only
for Netlib reference code, or maybe blas-netlib.pc and lapack-netlib.pc,
in any case distinct from choices like openblas-openmp.pc.
2022-06-17 10:43:38 +02:00
Maarten Bent 8c9106538f FindwxWidgets: Support more wxWidgets versions, including 3.2
Update the example to use a more recent wxWidgets version.

Use a list with known version numbers when searching for installation directories and wx-config names.
2022-06-15 23:18:39 +02:00
Maarten Bent d8a2edb74e FindwxWidgets: Use version number from header for library names 2022-06-15 23:17:28 +02:00
Maarten Bent 2f2fe1a2e3 FindwxWidgets: Move extracting version number to a macro 2022-06-15 23:16:22 +02:00
Brad King c6e027cd5f Merge topic 'SerenityOS-platform'
45ca894164 SerenityOS: Add Platform module

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ali Mohammad Pur <ali.mpfard@gmail.com>
Merge-request: !6837
2022-06-15 09:56:04 -04:00
Brad King 086030caf0 Merge topic 'cuda_use_response_files'
6377a43814 CUDA: Support response files with nvcc

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7358
2022-06-15 09:55:26 -04:00
James Bigler a7758394af FindCUDA: Fix varaible reset with CUDA_TOOLKIT_TARGET_DIR
CUDA_TOOLKIT_TARGET_DIR doesn't always exist in the cache or defined by the user
previous to using FindCUDA. In this case it will always reset the variables
making it impossible to manually change or set them. This can be fixed by
checking to see if the variable is defined before checking against the
previously used version stored in CUDA_TOOLKIT_TARGET_DIR_INTERNAL.
2022-06-14 15:48:30 -04:00
Andrew Kaster 45ca894164 SerenityOS: Add Platform module
Add an initial Platform module for SerenityOS [1]. This module is a mix
of the platform module currently used to build the Serenity Kernel and
Userspace applications and libraries, and the platform module included
in the CMake Port [2] which still has some work to do on the system
before its other patches could be considered for upstream.

As such, the platform module is currently only useful when used with a
suitably patched GCC or LLVM cross-compiler toolchain.

[1] https://github.com/SerenityOS/serenity
[2] https://github.com/SerenityOS/serenity/tree/master/Ports/cmake/patches

Issue: #23589
2022-06-14 15:31:17 -04:00
Robert Maynard 6377a43814 CUDA: Support response files with nvcc 2022-06-13 14:56:58 -04:00
Brad King 9f16821ea5 Merge topic 'fetchcontent-global-targets'
f19b48e0b8 FetchContent: Honor CMAKE_FIND_PACKAGE_TARGETS_GLOBAL
1305bade56 Help: Add missing version directive for find_package() GLOBAL keyword

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7347
2022-06-11 06:13:58 -04:00
Brad King 012eb49263 Merge topic 'fetchcontent-global-targets' into release-3.24
f19b48e0b8 FetchContent: Honor CMAKE_FIND_PACKAGE_TARGETS_GLOBAL
1305bade56 Help: Add missing version directive for find_package() GLOBAL keyword

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7347
2022-06-11 06:13:57 -04:00
Brad King aafa598e24 Merge topic 'xcode-14'
627c08e28b Tests: Teach RunCMake to ignore Xcode DVTSDK warnings
ab40020b17 Xcode: Suppress "Run Script" build phase warning during compiler id
89e1113e0c Xcode: Use ad-hoc signing during compiler id on macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7350
2022-06-11 05:39:11 -04:00
Brad King 61c357a021 Merge topic 'xcode-14' into release-3.24
627c08e28b Tests: Teach RunCMake to ignore Xcode DVTSDK warnings
ab40020b17 Xcode: Suppress "Run Script" build phase warning during compiler id
89e1113e0c Xcode: Use ad-hoc signing during compiler id on macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7350
2022-06-11 05:39:10 -04:00
Brad King 65f2e9263c Merge branch 'xcode-14' into release-3.23
Merge-request: !7350
2022-06-11 05:37:53 -04:00
Brad King ab40020b17 Xcode: Suppress "Run Script" build phase warning during compiler id
warning: Run script build phase 'Run Script' will be run during every
    build because it does not specify any outputs.
2022-06-10 14:24:03 -04:00
Brad King 89e1113e0c Xcode: Use ad-hoc signing during compiler id on macOS
Xcode 14 no longer accepts an empty signing identity for macOS.
However, Xcode in general does not accept an ad-hoc signing
identity for iOS.  Switch based on the target platform.

Fixes: #23609
2022-06-10 14:22:40 -04:00
Brad King 616cc40fc6 Merge topic 'ExternalProject-stamp-genex'
c111d440ce ExternalProject: Express per-config step stamp file paths using CONFIG genex

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7341
2022-06-10 11:10:24 -04:00