summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'Ninja-LINK_OPTIONS-with-newlines'Marc Chevrier2023-12-235-1/+27
|\ | | | | | | | | | | | | | | 255c2e1430 Ninja: LINK_OPTIONS property should support newlines Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !9096
| * Ninja: LINK_OPTIONS property should support newlinesMarc Chevrier2023-12-205-1/+27
| | | | | | | | Fixes: #25513
* | CMake Nightly Date StampKitware Robot2023-12-231-1/+1
| |
* | CMake Nightly Date StampKitware Robot2023-12-221-1/+1
| |
* | CMake Nightly Date StampKitware Robot2023-12-211-1/+1
| |
* | Merge topic 'cmake-presets-empty-architecture'Brad King2023-12-201-2/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | 0654051dde CMakePresets.json: Don't use architecture and toolset if empty Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !9093
| * | CMakePresets.json: Don't use architecture and toolset if emptyKyle Edwards2023-12-191-2/+3
| | | | | | | | | | | | Fixes: #24864
* | | Merge topic 'add_test-CROSSCOMPILING_EMULATOR-exclusive'Brad King2023-12-204-2/+17
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ca5a300d7f add_test: Honor CROSSCOMPILING_EMULATOR only when cross-compiling Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8947
| * | | add_test: Honor CROSSCOMPILING_EMULATOR only when cross-compilingRalf Habacker2023-12-194-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | Add policy CMP0158 to provide compatibility for existing projects. Fixes: #23672
* | | | Merge topic 'swift-CMP0157-old'Brad King2023-12-201-1/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d31b48816c Swift/Ninja: Fix missing OFM in CMP0157 OLD behavior Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9089
| * | | | Swift/Ninja: Fix missing OFM in CMP0157 OLD behaviorEvan Wilde2023-12-191-1/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CMP0157 old behavior omitted the output-file-map after the Swift build split because we stopped calling `EmitSwiftDependencyInfo` when we could not split the build because we didn't call `WriteObjectBuildStatement`. If we can't split the build, then we still need to include the OFM information to not break incremental builds.
* | | | CMake Nightly Date StampKitware Robot2023-12-201-1/+1
| |/ / |/| |
* | | Merge topic 'Xcode-Check-Imported-Framework'Brad King2023-12-191-5/+17
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | defbfd6f55 Xcode: Restore support for standalone IMPORTED_LOCATION_<CONFIG> Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9082
| * | Xcode: Restore support for standalone IMPORTED_LOCATION_<CONFIG>Marc Chevrier2023-12-181-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 878ae03832 (macOS: IMPORTED framework: Honor SYSTEM target property in all cases, 2023-08-27, v3.28.0-rc1~162^2) we broke support for `IMPORTED_LOCATION_<CONFIG>` without `IMPORTED_CONFIGURATIONS`. Previously it worked if the importing project's configurations match the set of `IMPORTED_LOCATION_<CONFIG>` properties set. Fix that case. Fixes: #25506 Issue: #25515
| * | CMake 3.28.1v3.28.1Brad King2023-12-141-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2023-12-191-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2023-12-181-1/+1
| |/ |/|
* | CMake Nightly Date StampKitware Robot2023-12-171-1/+1
| |
* | Merge topic 'swift-split-compilation-model'Brad King2023-12-167-28/+274
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 9bed4f4d81 Swift/Ninja: Split compilation model 64b3367845 cmGlobalGenerator: Allow passing language to GetLangaugeOutputExtension Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8907
| * | Swift/Ninja: Split compilation modelEvan Wilde2023-12-155-15/+253
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Splitting the Swift build into an object build and a separate link step, instead of building and linking in one step. The immediate benefit is LSP support because we are able to emit compile-commands for Swift files now. Additionally, it is possible to specify flags to the compile step, enabling folks to emit C and C++ headers from their Swift builds for C/C++ interop, without needing custom commands. Eventually, this gives us a path toward working object libraries. Object Libraries: - Object libraries don't work today because CMake doesn't emit targets for object libraries into the Ninja build file. - tl;dr: Object libraries work if they aren't WMO. Still need work to make WMO'd object libraries work. Object libraries still don't completely work with this patch because, while we emit the targets, the `TARGET_OBJECTS` generator expression expansion has a separate mechanism for determining what the names of the objects are based on the input source files, so targets that depend on an object library built with a whole-module optimization will depend on objects based on the name of the source file instead of the actual emitted object file. These features require being able to accurately model wholemodule builds though, because we actually need to track object files and WMO affects what objects are emitted. For that, we require CMP0157 use the NEW policy. When it's OLD, we have to fall back on the old behavior and cannot provide object libraries or the compile-commands for LSP. Issue: #25308
| * | cmGlobalGenerator: Allow passing language to GetLangaugeOutputExtensionEvan Wilde2023-12-052-13/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original GetLanguageOutputExtension took a sourcefile instead of the name of the language itself. This implementation provided a convenient handler for when the SourceFile doesn't know what language it is, but there are times where we know the language, but don't necessarily have a source file. Adding an overload that takes the name of the language and returns the extension of that language, or empty string if no extension is registered.
* | | CMake Nightly Date StampKitware Robot2023-12-161-1/+1
| | |
* | | Merge topic 'cmake-test-launcher'Brad King2023-12-154-7/+35
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 88863d83d6 fileapi: Add test launcher to codemodel-v2 1ec0372ed4 add_test: Optionally use a launcher for tests running in-project targets 478a5f4e04 fileapi: Make launcher attribute 'arguments' optional b44e38a397 cmFileAPICodemodel: Add missing std::move() Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8963
| * | | fileapi: Add test launcher to codemodel-v2Ralf Habacker2023-12-131-5/+8
| | | | | | | | | | | | | | | | | | | | We do not need to bump the minor version because it was recently bumped by addition of the cross-compiling emulator as another kind of launcher.
| * | | add_test: Optionally use a launcher for tests running in-project targetsRalf Habacker2023-12-133-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `CMAKE_TEST_LAUNCHER` variable and corresponding `TEST_LAUNCHER` target property. Issue: #23672
| * | | fileapi: Make launcher attribute 'arguments' optionalRalf Habacker2023-12-131-1/+3
| | | | | | | | | | | | | | | | | | | | This was missed in commit 80a64c9ce5 (fileapi: Add cross-compiling emulator to codemodel-v2, 2023-11-11).
| * | | cmFileAPICodemodel: Add missing std::move()Ralf Habacker2023-12-131-2/+2
| |/ / | | | | | | | | | | | | This was missed in commit 80a64c9ce5 (fileapi: Add cross-compiling emulator to codemodel-v2, 2023-11-11).
* | | CMake Nightly Date StampKitware Robot2023-12-151-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2023-12-141-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2023-12-131-1/+1
| | |
* | | Merge topic 'create_test_sourcelist-full-filepath'Brad King2023-12-121-9/+7
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a29ca55b1f create_test_sourcelist: use the full path to the driver 609af7734f cmCreateTestSourceList: simplify string operations Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9060
| * | | create_test_sourcelist: use the full path to the driverBen Boeckel2023-12-111-1/+1
| | | | | | | | | | | | | | | | | | | | When using `FILE_SET` syntax, full paths to out-of-source files are needed as they are not searched for.
| * | | cmCreateTestSourceList: simplify string operationsBen Boeckel2023-12-111-8/+6
| | | | | | | | | | | | | | | | | | | | Use `cmStrCat` where possible and use character literals instead of length-1 string literals.
* | | | Merge topic 'cmake-sources-no-scan'Brad King2023-12-124-0/+5
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 91b7bf59a7 cmGlobalXCodeGenerator: disable C++ module scanning for force-lang files 9e19a61ddb cmLocalGenerator: disable C++ module scanning for unity sources fa9a72a788 cmLocalGenerator: disable C++ module scanning for copied PCH sources e5dce1a37e cmQtAutoGenInitializer: disable C++ module scanning for autogen sources 4fd596c34c cmGeneratorTarget: disable C++ module scanning for verify targets Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !9064
| * | | cmGlobalXCodeGenerator: disable C++ module scanning for force-lang filesBen Boeckel2023-12-111-0/+1
| | | |
| * | | cmLocalGenerator: disable C++ module scanning for unity sourcesBen Boeckel2023-12-111-0/+1
| | | |
| * | | cmLocalGenerator: disable C++ module scanning for copied PCH sourcesBen Boeckel2023-12-111-0/+1
| | | |
| * | | cmQtAutoGenInitializer: disable C++ module scanning for autogen sourcesBen Boeckel2023-12-111-0/+1
| | | |
| * | | cmGeneratorTarget: disable C++ module scanning for verify targetsBen Boeckel2023-12-111-0/+1
| | | |
| * | | CMake 3.28.0v3.28.0Brad King2023-12-061-1/+1
| | | |
| * | | Merge topic 'fix-cxx-module-transitive-requirements' into release-3.28Brad King2023-12-061-5/+8
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e9b0dcbbfa cmCxxModuleMapper: Fix transitive requirements computation Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9030
* | | | | CMake Nightly Date StampKitware Robot2023-12-121-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2023-12-111-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2023-12-101-1/+1
| |_|/ / |/| | |
* | | | CMake Nightly Date StampKitware Robot2023-12-091-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2023-12-081-1/+1
| | | |
* | | | Merge topic 'makefiles-lwyu-module-libraries'Brad King2023-12-071-0/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6b85c71ad8 Makefiles: Add LINK_WHAT_YOU_USE support for MODULE libraries Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9042
| * | | | Makefiles: Add LINK_WHAT_YOU_USE support for MODULE librariesPeter Kokot2023-12-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was accidentally left out by Makefile generators. It already works with Ninja. Fixes: #25480
* | | | | Merge topic 'cmuvprocesschain-external-loop'Brad King2023-12-072-2/+32
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0b043a75b7 cmUVProcessChain: Add option for external uv_loop_t Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9040
| * | | | | cmUVProcessChain: Add option for external uv_loop_tKyle Edwards2023-12-052-2/+32
| | | | | |