summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'LINK_LIBRARY-genex-with-INTERFACE_LINK_LIBRARIES_DIRECT'Brad King2023-11-306-84/+137
|\ | | | | | | | | | | | | | | 9798482a8c LINK_LIBRARY-genex: correct behavior for INTERFACE_LINK_LIBRARIES_DIRECT Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8992
| * LINK_LIBRARY-genex: correct behavior for INTERFACE_LINK_LIBRARIES_DIRECTMarc Chevrier2023-11-296-84/+137
| | | | | | | | Fixes: #25416
* | Merge topic 'remove-non-readable-dir'Brad King2023-11-301-4/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9718c312b6 Tests: Avoid leaving behind non-readable directories 2e82ba70b3 Tests: Avoid creating world-writable paths 5589bcb1bf Tests: Fix directory removal in RunCMake.if test 165bf3252f Merge branch 'upstream-KWSys' into remove-write-only-dir 22a759b5b5 KWSys 2023-11-29 (433f3d23) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9015
| * | Merge branch 'upstream-KWSys' into remove-write-only-dirBrad King2023-11-291-4/+4
| | | | | | | | | | | | | | | | | | # By KWSys Upstream * upstream-KWSys: KWSys 2023-11-29 (433f3d23)
* | | Merge topic 'ccmake-install-rds-crash'Brad King2023-11-301-0/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | d01120a47a cmGlobalGenerator: clear RuntimeDependencySet members at configure Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9013
| * | | cmGlobalGenerator: clear RuntimeDependencySet members at configureBen Boeckel2023-11-291-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit f2617cf8e6 (Source: Add cmInstallRuntimeDependencySet, 2021-05-19) introduced via !6186 to 3.21 added storage to the global generator for runtime dependency sets. However, this was not cleared at the start of configure in the `ClearGeneratorMembers()` method. When using `ccmake` to configure (and, presumably `cmake-gui` too), projects using `install(TARGETS … RUNTIME_DEPENDENCY_SET)` would use dependency set tracking instances from previous configure runs that held references to targets free'd with the `cmMakefile` instance that held them. Clear the dependency sets at the beginning of configure so that they are not remembered and trigger via use-after-free bugs when used. Fixes: #25446
* | | | CMake Nightly Date StampKitware Robot2023-11-301-1/+1
| |/ / |/| |
* | | Merge topic 'cxxmodules-diagnostics'Brad King2023-11-291-7/+12
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | cbd549b09e cxxmodules: Add more suggestions to no-modules-support diagnostics Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !9011
| * | | cxxmodules: Add more suggestions to no-modules-support diagnosticsBrad King2023-11-281-7/+12
| |/ / | | | | | | | | | | | | | | | Tell users what generators *do* support C++ modules. Report the current generator to make clear it is not one of those supporting modules. Also clarify the purpose of the existing documentation references.
* | | Merge topic 'xcode-embed-resources'Brad King2023-11-291-3/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6030df205a Xcode: Fix embed resources prop name Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Deal <halx99@live.com> Merge-request: !9008
| * | | Xcode: Fix embed resources prop namehalx992023-11-281-3/+2
| |/ / | | | | | | | | | | | | | | | | | | Fix commit e40d2cb3af (Xcode: Add embed resources support, 2023-07-31, v3.28.0-rc1~281^2). The implementation should not name the `_PATH` suffix explicitly. That variant is automatically handled by `cmGlobalXCodeGenerator::AddEmbeddedObjects`.
* | | CMake Nightly Date StampKitware Robot2023-11-291-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2023-11-281-1/+1
| |/ |/|
* | Merge topic 'ctest-cleanup'Brad King2023-11-272-35/+35
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0432b921ae cmCTestMultiProcessHandler: Inline removal of pending test as it starts b17c732e88 cmCTestMultiProcessHandler: Clarify role of StartTestProcess 0950acb337 cmCTestMultiProcessHandler: Manage concurrency slots with other resources 697900da29 cmCTestMultiProcessHandler: Manage affinity assignments with other resources Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8999
| * | cmCTestMultiProcessHandler: Inline removal of pending test as it startsBrad King2023-11-222-11/+7
| | | | | | | | | | | | | | | Avoid searching the entire list of ordered pending tests to remove one when we already know where it is.
| * | cmCTestMultiProcessHandler: Clarify role of StartTestProcessBrad King2023-11-221-4/+4
| | | | | | | | | | | | | | | Focus its role on actually running the test process. Move administrative tasks to the call site.
| * | cmCTestMultiProcessHandler: Manage concurrency slots with other resourcesBrad King2023-11-221-2/+4
| | |
| * | cmCTestMultiProcessHandler: Manage affinity assignments with other resourcesBrad King2023-11-221-21/+23
| | |
* | | Merge topic 'uv-write'Brad King2023-11-272-0/+67
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7ee5fb01c6 cmUVHandlePtr: Add uv_write wrapper to manage request lifetime bec0dd93a3 cmUVHandlePtr: Add explicit uv_loop_ptr::operator* Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8997
| * | | cmUVHandlePtr: Add uv_write wrapper to manage request lifetimeBrad King2023-11-222-0/+61
| | | | | | | | | | | | | | | | Provide a way to synchronously cancel a write request callback.
| * | | cmUVHandlePtr: Add explicit uv_loop_ptr::operator*Brad King2023-11-212-0/+6
| | | | | | | | | | | | | | | | | | | | Previously the dereferencing operator was implicitly available due to `operator uv_loop_t*() const`. Make it explicit.
* | | | Merge topic 'vs-ifx'Brad King2023-11-275-2/+42
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 43d218d970 VS: Add support for using Intel oneAPI Fortran compiler in .vfproj files 5c77facd78 VS: Fix Intel plugin version detection fallback Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9001
| * | | | VS: Add support for using Intel oneAPI Fortran compiler in .vfproj filesBrad King2023-11-224-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `fortran={ifort,ifx}` field to `CMAKE_GENERATOR_TOOLSET` to specify which Intel Fortran compiler to use. Fixes: #25427
| * | | | VS: Fix Intel plugin version detection fallbackBrad King2023-11-221-2/+2
| | | | | | | | | | | | | | | | | | | | Do not read a value that was not parsed.
* | | | | Merge topic 'fortran-objects-as-sources-fix'Brad King2023-11-2716-78/+281
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | beb1393f8f Merge branch 'revert-exact-collation-depends-3.27' into fortran-objects-as-sources-fix a033dce326 Makefiles: provide, but do not consume, "forward linked" target dirs 7cd0adab1b cmCommonTargetGenerator: use modules from linked object-referenced targets 1175f1c874 LinkItem: track `cmSourceFile` instances for external objects d2fa56772f Ninja: support "forwarding" modules from other targets ec1e589bec Ninja: Revert exact collation dependencies for 3.27 06df59b930 cmCommonTargetGenerator: return forward linked target dirs too f8729ab366 cmLocalUnixMakefileGenerator3: handle object-referencing Fortran modules ... Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8989
| * | | | Makefiles: provide, but do not consume, "forward linked" target dirsBen Boeckel2023-11-232-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makefiles do not have a per-object sense of where they come from, so forwarding any module information here would end up with incorrect module file path construction by consuming targets. Leave a TODO item in its place.
| * | | | cmCommonTargetGenerator: use modules from linked object-referenced targetsBen Boeckel2023-11-232-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fortran modules provided by objects added as linked items via `$<TARGET_OBJECTS>` should also be considered as "linked targets" for collation purposes. As C++ modules have their own visibility rules through their `FILE_SET` feature, do not expose these for C++ module collation.
| * | | | LinkItem: track `cmSourceFile` instances for external objectsBen Boeckel2023-11-236-13/+30
| | | | | | | | | | | | | | | | | | | | | | | | | The target may be required in order to provide Fortran modules, so track the source file so that the target may be looked up when needed.
| * | | | Ninja: support "forwarding" modules from other targetsBen Boeckel2023-11-233-1/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a target uses objects from another target which provides modules as sources, the modules provided by the referenced target must also be treated as if they were provided by the referencing target. Add the concept of "forwarding" modules so that consumers can use modules created by these sources as well. Note that this is only sensible for Fortran where module usages are implicit as far as CMake's visibility model is concerned. C++ modules have their own concept of visibility which does not require or support such `$<TARGET_OBJECTS>` reuse in this way.
| * | | | cmCommonTargetGenerator: return forward linked target dirs tooBen Boeckel2023-11-214-38/+62
| | | | | | | | | | | | | | | | | | | | | | | | | This will be used for module forwarding in order to support `$<TARGET_OBJECTS>` usage in source and link libraries calls.
| * | | | cmLocalUnixMakefileGenerator3: handle object-referencing Fortran modulesBen Boeckel2023-11-211-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Targets only using Fortran modules via `$<TARGET_OBJECTS>` also need a collation step to be performed. Check for this case and trigger the depends rule to be used.
| * | | | cmNinjaTargetGenerator: handle object-referencing Fortran modulesBen Boeckel2023-11-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Targets only using Fortran modules via `$<TARGET_OBJECTS>` also need a collation step to be performed. Check for this case and trigger the collation rule to be added and used.
| * | | | cmGeneratorTarget: also check included objects for Fortran modulesBen Boeckel2023-11-211-9/+37
| | | | | | | | | | | | | | | | | | | | | | | | | Fortran modules provided by objects in `$<TARGET_OBJECTS>` should also count as "has Fortran modules" for the target referencing the objects.
| * | | | cmCommonTargetGenerator: use modules from object-referenced targetsBen Boeckel2023-11-211-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fortran modules provided by objects added as sources via `$<TARGET_OBJECTS>` should also be considered as "linked targets" for collation purposes. As C++ modules have their own visibility rules through their `FILE_SET` feature, do not expose these for C++ module collation.
| * | | | cmGeneratorTarget: add a query for targets with objects in the source listBen Boeckel2023-11-212-9/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will be eventually be used to inform the collator of this information so that Fortran modules provided by the resulting objects can also be used as intended.
| * | | | cmGeneratorTarget: use pointers to `const` generator targets for languagesBen Boeckel2023-11-211-2/+2
| | | | |
| * | | | cmGeneratorTarget: track object libraries using a `set`Ben Boeckel2023-11-211-10/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids having to do manual "is already present" checks. The order the targets are processed does not need to be preserved because the resulting `languages` result is already a `set`.
| * | | | Merge topic 'fileapi-file-sets-base-dirs-relative' into release-3.28Brad King2023-11-201-1/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a3a85524cd fileapi: Fix file sets' base directories relative to top source Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8977
| * \ \ \ \ Merge topic 'custom-command-ninja-deps' into release-3.28Brad King2023-11-201-2/+2
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3c8d1eef72 Ninja: depfile: keep rules without dependencies Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8984
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-271-1/+1
| | | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-261-1/+1
| | | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-251-1/+1
| | | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-241-1/+1
| | | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-231-1/+1
| |_|_|_|_|/ |/| | | | |
* | | | | | Merge topic 'ctest-loop-idle'Brad King2023-11-226-81/+94
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 086a41c0f3 cmCTestMultiProcessHandler: Simplify test startup batching e528cd795f cmCTestMultiProcessHandler: Start new tests asynchronously 9d8415c17b cmCTestMultiProcessHandler: Clarify test-load retry timer infrastructure 61e98ca33b cmCTestMultiProcessHandler: Factor out loop startup and teardown 5ff0b4ed57 cmCTestMultiProcessHandler: Consolidate test readiness checks ad3df3ce4d cmCTestMultiProcessHandler: Exclude dependent tests earlier 3c4767f467 cmCTestTestHandler: Clarify name of member storing RESOURCE_LOCK property Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8995
| * | | | | | cmCTestMultiProcessHandler: Simplify test startup batchingBrad King2023-11-214-20/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Once a test is ready to run, count it against the number of tests to start in the current batch whether or not the test process actually starts successfully. If a test process does fail to start, simply schedule a new startup batch on the next loop iteration.
| * | | | | | cmCTestMultiProcessHandler: Start new tests asynchronouslyBrad King2023-11-212-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a test finishes, defer starting new tests until the next loop iteration. That way, if multiple tests finish in a single loop iteration, we can free all of their resources first, and then start a new batch of tests.
| * | | | | | cmCTestMultiProcessHandler: Clarify test-load retry timer infrastructureBrad King2023-11-212-32/+23
| | | | | | |
| * | | | | | cmCTestMultiProcessHandler: Factor out loop startup and teardownBrad King2023-11-212-2/+15
| | | | | | |
| * | | | | | cmCTestMultiProcessHandler: Consolidate test readiness checksBrad King2023-11-211-11/+13
| | | | | | |