Commit Graph

32497 Commits

Author SHA1 Message Date
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
Kitware Robot 45778c4f49 CMake Nightly Date Stamp 2022-06-21 00:01:11 -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 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 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
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
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 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
Harry Mallon a1a0ae3ad4 Xcode: Add Xcode SCHEME control for 'Launch' control 2022-06-15 19:02:56 +01:00
Da Quexian 69beee5314 Add SYSTEM target property
If it is ON, treat INTERFACE_INCLUDE_DIRECTORIES as system include directories.

Issue: #18040

Signed-off-by: Da Quexian <daquexian566@gmail.com>
2022-06-16 00:25:27 +08:00
Maxime Raynaud ba6cecea8e VS: Add compile properties to .NET Sdk projects 2022-06-15 10:59:16 -04:00
Brad King 85dc7c763a Merge topic 'find_item-validation-function'
f3b5a7d6df find_(program,library,file,path): add validation function

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7364
2022-06-15 09:59:12 -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
Brad King a58ec21389 Merge topic 'post-rel-dev'
ac24f4d49b Configure CMake itself with policies through CMake 3.23
25b1312a6d export: Increase maximum policy version in exported files to 3.23
5c8b776ca3 Add deprecation warnings for policies CMP0102 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7367
2022-06-15 09:52:48 -04:00
Kitware Robot 213d5daccc CMake Nightly Date Stamp 2022-06-15 00:01:20 -04:00
Ben Boeckel ff30a5397d cmExperimental: add an experimental feature to handle C++ modules 2022-06-14 19:27:30 -04:00
Ben Boeckel fb289dfcd9 cmExperimental: add a mechanism for experimental CMake features 2022-06-14 19:27:30 -04:00
Ben Boeckel fffc7813a4 cmGlobalXCodeGenerator: avoid unused parameter warnings 2022-06-14 19:27:30 -04:00
Ben Boeckel 7c7af09c5e cmScriptGenerator: remove unnecessary endif arguments 2022-06-14 19:27:30 -04:00
Ben Boeckel 030754a8b3 cmNinjaTargetGenerator: expand CFGIntDir for NMC 2022-06-14 19:27:30 -04:00
Ben Boeckel 52d47fd4e6 cmGlobalNinjaGenerator: simplify a string building call 2022-06-14 19:27:30 -04:00
Ben Boeckel a8115deebe cmCommonTargetGenerator: fix linked target directory for multi-config builds
Without this, `Ninja Multi-Config` generators were not getting the right
directory to look for `<LANG>Modules.json` files for module information.
2022-06-14 19:27:30 -04:00
Marc Chevrier f3b5a7d6df find_(program,library,file,path): add validation function
Fixes: #23603
2022-06-14 16:17:46 -04:00
Brad King 25b1312a6d export: Increase maximum policy version in exported files to 3.23
The files generatd by `install(EXPORT)` and `export()` commands
are known to work with policies as of CMake 3.23, so enable them
in sufficiently new CMake versions.
2022-06-14 15:05:09 -04:00
Brad King 5c8b776ca3 Add deprecation warnings for policies CMP0102 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for policies
introduced in CMake 3.17 and below to encourage projects to port
away from setting policies to OLD.
2022-06-14 15:05:03 -04:00
Brad King a6269e106c Merge topic 'lcc-warnings'
beb07cdda7 Source: Convince LCC that RAII variables are used

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7357
2022-06-14 07:35:21 -04:00
Brad King 93812f95c6 Merge topic 'spelling-occurred'
98a10290a8 cmSystemTools: Fix 'ErrorOccurred' spelling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7353
2022-06-14 07:34:32 -04:00
Kitware Robot a491edd54f CMake Nightly Date Stamp 2022-06-14 00:01:06 -04:00
Robert Maynard 6377a43814 CUDA: Support response files with nvcc 2022-06-13 14:56:58 -04:00
Brad King beb07cdda7 Source: Convince LCC that RAII variables are used
Extend the change from commit 5ad8862318 (Source: Convince NVHPC that
RAII variables are used, 2021-04-26, v3.21.0-rc1~254^2~1) to apply to
LCC too.
2022-06-13 11:07:35 -04:00
FeRD (Frank Dana) 98a10290a8 cmSystemTools: Fix 'ErrorOccurred' spelling
Rename the booleans 's_ErrorOccured' and 's_FatalErrorOccured' to
's_ErrorOccurred' and 's_FatalErrorOccurred', respectively.

Rename the getters and setters to 'Get[Fatal]ErrorOccurred' and
'Set[Fatal]ErrorOccurred', and fix all uses across the codebase.
2022-06-13 09:05:24 -04:00
Kitware Robot 87273cc9d3 CMake Nightly Date Stamp 2022-06-13 00:01:29 -04:00
Kitware Robot b145553bca CMake Nightly Date Stamp 2022-06-12 00:01:11 -04:00
Brad King 61ebc9d0e8 Merge topic 'cmake-gui-qt6-decode'
497397bd17 cmake-gui: Support non-ASCII chars on Windows with Qt6

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7346
2022-06-11 05:52:16 -04:00
Brad King f0ebdce4e8 Merge topic 'cmake-gui-qt6-decode' into release-3.24
497397bd17 cmake-gui: Support non-ASCII chars on Windows with Qt6

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7346
2022-06-11 05:52:15 -04:00
Brad King 8f6f1e5c7e Merge topic 'cmWindowsRegistry-cstdint'
bc4c0d657a cmWindowsRegistry: Add missing <cstdint> include

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7349
2022-06-11 05:49:39 -04:00
Brad King a3e2aa3494 Merge topic 'cmWindowsRegistry-cstdint' into release-3.24
bc4c0d657a cmWindowsRegistry: Add missing <cstdint> include

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7349
2022-06-11 05:49:38 -04:00