Commit Graph

57921 Commits

Author SHA1 Message Date
Brad King
2f3ea66a76 Merge topic 'ci-openal'
b97d371007 ci: Add OpenAL to Debian and Fedora base images

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7394
2022-06-22 08:46:31 -04:00
Brad King
134109bc09 Merge branch 'release-3.24' 2022-06-22 08:43:48 -04:00
Brad King
418abf89f7 Merge branch 'release-3.23' 2022-06-22 08:43:46 -04:00
Brad King
271fdaea3a Merge branch 'release-3.23' into release-3.24 2022-06-22 08:43:37 -04:00
Brad King
485c076f37 Merge branch 'release-3.24' 2022-06-22 08:42:50 -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
ab8bc1c986 Merge topic 'ExternalProject-stamp-cfgdir' into release-3.24
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:49 -04:00
Brad King
8321c3d08e Merge branch 'backport-3.23-ExternalProject-stamp-cfgdir' into release-3.23
Merge-request: !7396
2022-06-22 08:41:50 -04:00
Kitware Robot
da27438883 CMake Nightly Date Stamp 2022-06-22 00:01:08 -04:00
Brad King
6a1e45fdec Merge branch 'backport-3.23-ExternalProject-stamp-cfgdir' 2022-06-21 18:31:00 -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
Brad King
b97d371007 ci: Add OpenAL to Debian and Fedora base images 2022-06-21 12:27:58 -04:00
Brad King
8d8957e56d Merge topic 'add_export_no_system'
9680b3b279 Add EXPORT_NO_SYSTEM target property, deprecate IMPORTED_NO_SYSTEM

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7379
2022-06-21 10:46:03 -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
Kitware Robot
45778c4f49 CMake Nightly Date Stamp 2022-06-21 00:01:11 -04:00
Brad King
c93d3cf0b7 Merge branch 'release-3.24' 2022-06-20 09:57:23 -04:00
Brad King
32604113b6 Merge topic 'ci-rel-win-arm64'
41ea4d4de8 ci: Rebuild Qt 6.3.0 windows-arm64 dependency with LLVM/Clang
e0d9ee0cc4 Utilities/Release: Simplify script to build Qt 6.3.0 Windows binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7380
2022-06-20 09:57:23 -04:00
Brad King
2787427306 Merge topic 'ci-rel-win-arm64' into release-3.24
41ea4d4de8 ci: Rebuild Qt 6.3.0 windows-arm64 dependency with LLVM/Clang
e0d9ee0cc4 Utilities/Release: Simplify script to build Qt 6.3.0 Windows binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7380
2022-06-20 09:57:22 -04:00
Kitware Robot
24142cf841 CMake Nightly Date Stamp 2022-06-20 00:01:17 -04:00
Kitware Robot
d7bd40852a CMake Nightly Date Stamp 2022-06-19 00:01:07 -04:00
Kitware Robot
c27a0b773f CMake Nightly Date Stamp 2022-06-18 00:01:11 -04:00
Brad King
d94e09ec88 Merge topic 'cpp-named-module-file-sets'
07bc3b07ec gitlab-ci: test C++ modules using GCC
1b2270aa4e ci: add a Docker image to test out C++ modules with GCC
8c5a53096a Tests/RunCMake/CXXModules: add module-using examples
4151547e2f cmGlobalNinjaGenerator: use `cmModuleMapper` implementation
b43bdaff3c cmCxxModuleMapper: implement support for GCC's module map format
02d0f0e752 cmCxxModuleMapper: add source to handle module mapper contents
a046a45aad cmGlobalNinjaGenerator: add a TODO for header units
386465bf83 cmTarget: add support for C++ module fileset types
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7369
2022-06-17 11:35:12 -04:00
Brad King
88a300d421 Merge topic 'cmake-mode-bracket-comment-argument'
364ca22b12 cmake-mode.el: add support for bracket_comment and bracket_argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7375
2022-06-17 11:32:20 -04:00
Brad King
6940a67d47 Merge topic 'try_compile-cross-app-bundles'
81549baff4 try_compile: Fix COPY_FILE with app-bundles on non-macOS hosts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7377
2022-06-17 11:31:38 -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
Brad King
4f7291928b Merge topic 'msvc_cuda_pass_arch_flags_in_additional_options'
e3983168da CUDA: MSVC pass all cuda gencode flags via AdditionalOptions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7359
2022-06-17 11:29:54 -04:00
Brad King
41ea4d4de8 ci: Rebuild Qt 6.3.0 windows-arm64 dependency with LLVM/Clang
In commit 7a21173b0e (gitlab-ci: Add job to build Windows arm64
binaries, 2022-06-13, v3.24.0-rc1~4^2~1) we built the Qt binaries using
the MSVC 14.32 toolset targeting arm64.  However, the `cmake-gui` built
with them does not start, perhaps due to a bug in MSVC's ARM64 support.
Run the `Utilities/Release/win/qtbase-6.3.0-win-msvc.cmake` script for
`i386` and `x86_64`.  Run it for `arm64` with the `clang-cl` argument.

Issue: #21902
2022-06-17 11:04:11 -04:00
Cristian Adam
e0d9ee0cc4 Utilities/Release: Simplify script to build Qt 6.3.0 Windows binaries
Revise and simplify the script from commit d0c9225a7e
(Utilities/Release: Add script to build Qt 6.3.0 Windows binaries,
2022-06-10, v3.24.0-rc1~4^2~5).  For `cmake-gui` we only need QtBase.
Also, convert to a `.cmake` script.

Issue: #21902
2022-06-17 11:04:10 -04:00
Da Quexian
9680b3b279 Add EXPORT_NO_SYSTEM target property, deprecate IMPORTED_NO_SYSTEM
Issue: #18040

Signed-off-by: Da Quexian <daquexian566@gmail.com>
2022-06-17 22:38:07 +08:00
montag451
364ca22b12 cmake-mode.el: add support for bracket_comment and bracket_argument 2022-06-17 12:43:23 +02: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
Kitware Robot
467d0e01f8 CMake Nightly Date Stamp 2022-06-17 00:01:11 -04:00
Heiko Lewin
81549baff4 try_compile: Fix COPY_FILE with app-bundles on non-macOS hosts
Cross compiling from eg linux to apple-platforms requires handling of
.app-Bundles.

Fixes: #23597
2022-06-16 14:29:16 -04:00
Ben Boeckel
07bc3b07ec gitlab-ci: test C++ modules using GCC 2022-06-16 10:28:34 -04:00
Ben Boeckel
1b2270aa4e ci: add a Docker image to test out C++ modules with GCC 2022-06-16 10:28:34 -04:00
Ben Boeckel
8c5a53096a Tests/RunCMake/CXXModules: add module-using examples
This includes a number of examples that should work for various levels
of support in a compiler.

There are a number of tests which are gated on various features in the
compilers. To enable the tests, set `CMake_TEST_MODULE_COMPILATION` to a
comma-separated (to avoid `;`-escaping problems) to the list of features
which are supported:

  - `named`: Named modules are supported.
  - `shared`: Shared libraries with module usage at the API boundary are
    supported.
  - `partitions`: Named module partitions are supported.
  - `internal_partitions`: Named module internal partitions are
    supported.

Additionally, a `CMake_TEST_MODULE_COMPILATION_RULES` file must be
passed which contains the rules for how to build modules using the
provided compiler. It will be included in the tests to provide these
rules. To verify that the file provided works as intended, it must set
`CMake_TEST_CXXModules_UUID` to a specific version to indicate that it
is an expected file.
2022-06-16 10:28:34 -04:00
Ben Boeckel
4151547e2f cmGlobalNinjaGenerator: use cmModuleMapper implementation 2022-06-16 10:28:34 -04:00
Ben Boeckel
b43bdaff3c cmCxxModuleMapper: implement support for GCC's module map format 2022-06-16 10:28:34 -04:00
Ben Boeckel
02d0f0e752 cmCxxModuleMapper: add source to handle module mapper contents
This will allow all generators to share an implementation for actually
writing out the module map formats.
2022-06-16 10:28:34 -04:00
Ben Boeckel
a046a45aad cmGlobalNinjaGenerator: add a TODO for header units 2022-06-16 10:28:34 -04:00
Ben Boeckel
386465bf83 cmTarget: add support for C++ module fileset types
C++ modules have two variants which are of importance to CMake:

  - `CXX_MODULES`: interface modules (those using `export module M;`,
    `export module M:part;`, or `module M:internal_part;`)
  - `CXX_MODULE_HEADER_UNITS`: importable header units

Creating C++ modules or partitions are *not* supported in any other
source listing. This is because the source files must be installed (so
their scope matters), but not part of usage requirements (what it means
for a module source to be injected into a consumer is not clear at this
moment). Due to the way `FILE_SET` works with scopes, they are a perfect
fit as long as `INTERFACE` is not allowed (which it is not).
2022-06-16 10:28:34 -04:00
Brad King
dd8befd9d3 Merge topic 'add_SYSTEM_prop'
69beee5314 Add SYSTEM target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7308
2022-06-16 09:00:45 -04:00
Brad King
7eddfed10f Merge topic 'xcode-launch-mode'
a1a0ae3ad4 Xcode: Add Xcode SCHEME control for 'Launch' control

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7355
2022-06-16 08:59:51 -04:00
Brad King
d0ea344b03 Merge topic '23376-add-compile-properties-to-csharp-sdk-projects'
ba6cecea8e VS: Add compile properties to .NET Sdk projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7373
2022-06-16 08:59:02 -04:00
Robert Maynard
e3983168da CUDA: MSVC pass all cuda gencode flags via AdditionalOptions
Fixes #23491
2022-06-16 08:13:57 -04:00
Kitware Robot
696b87217a CMake Nightly Date Stamp 2022-06-16 00:01:09 -04: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