summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* CMake 3.26.0-rc1v3.26.0-rc1Brad King2023-02-021-1/+1
|
* Merge topic 'modules-lang-specific-target-linked-dirs' into release-3.26Brad King2023-02-029-14/+41
|\ | | | | | | | | | | | | | | | | | | | | | | | | 13810dee17 cmDependsFortran: require that dependency info files work eed295fd8a cmGlobalNinjaGenerator: require that dependency info files work 837f7c113a cmCommonTargetGenerator: classify linked target directories by language d19648a928 cmGeneratorTarget: add a method to query if Fortran sources exist 245a89d8b6 cmMakefileTargetGenerator: make "target linked info" variable Fortran-specific aeb1b2ae3d cmMakefileTargetGenerator: simplify string streaming Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8146
| * cmDependsFortran: require that dependency info files workBen Boeckel2023-02-012-6/+12
| | | | | | | | | | Now that only targets expected to have information are listed, all `DependInfo.cmake` files should exist.
| * cmGlobalNinjaGenerator: require that dependency info files workBen Boeckel2023-02-011-1/+6
| | | | | | | | | | Now that only targets expected to have information are listed, all `<LANG>Modules.json` files should exist.
| * cmCommonTargetGenerator: classify linked target directories by languageBen Boeckel2023-01-314-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These directories are used to direct collators for Fortran and C++ modules to consume dependent module information to properly collate. However, the consumption of these files merely checks for existence of the file, not whether they are actually needed anymore. The problem arises when a target has Fortran or C++ modules at point A, a build occurs populating this file, and then the target is updated to no longer have potential modules. The `DependInfo.make` (for `Makefiles`) or `<LANG>DependInfo.json` (for `Ninja`) files still exist as they are never guaranteed to be cleaned up. This can introduce stale information to the build which may cause a false-positive compilation if a module file happens to still exist and gets found this way. Instead, query the `linked-target-dirs` using the language in question and only add the directory if it contains potential sources for modules coming from the language in question.
| * cmGeneratorTarget: add a method to query if Fortran sources existBen Boeckel2023-01-312-0/+11
| |
| * cmMakefileTargetGenerator: make "target linked info" variable Fortran-specificBen Boeckel2023-01-312-2/+2
| | | | | | | | This variable is Fortran-specific, so clarify that through its name.
| * cmMakefileTargetGenerator: simplify string streamingBen Boeckel2023-01-311-2/+2
| |
* | Begin 3.26 release versioningBrad King2023-02-011-3/+3
| |
* | Help: Drop development topic notes to prepare releaseBrad King2023-02-012-9/+0
| | | | | | | | | | Release versions do not have the development topic section of the CMake Release Notes index page.
* | Merge topic 'doc-3.26-relnotes'Brad King2023-02-0132-175/+192
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 385435cf78 Help: Organize and revise 3.26 release notes 4c63f031c1 Help: Consolidate 3.26 release notes bc1ba6d56b Help: Document experimental feature gate affecting CXX_SCAN_FOR_MODULES 71f9c1943d FindImageMagick: Fix documentation syntax in usage example Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8148
| * | Help: Organize and revise 3.26 release notesBrad King2023-02-011-62/+116
| | | | | | | | | | | | | | | | | | | | | | | | Add section headers similar to the 3.25 release notes and move each individual bullet into an appropriate section. Revise a few bullets. Add a bullet for `FindImageMagick` that was accidentally left out when its changes were made.
| * | Help: Consolidate 3.26 release notesBrad King2023-02-0127-160/+119
| | | | | | | | | | | | | | | Run the `Utilities/Release/consolidate-relnotes.bash` script to move notes from `Help/release/dev/*` into `Help/release/3.26.rst`.
| * | Help: Document experimental feature gate affecting CXX_SCAN_FOR_MODULESBrad King2023-02-014-5/+15
| | | | | | | | | | | | | | | | | | Also drop the release note for `CXX_SCAN_FOR_MODULES`, as the rest of the C++ modules support has not yet been mentioned in release notes (since it is still experimental).
| * | FindImageMagick: Fix documentation syntax in usage exampleBrad King2023-02-011-10/+4
|/ /
* | Merge topic 'configure-log'Brad King2023-02-0112-14/+114
|\ \ | | | | | | | | | | | | | | | | | | | | | 5252c88569 try_compile: Record propagated CMake variables in configure log 0a48d8fe5c ConfigureLog: De-duplicate event backtrace and check key generation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8140
| * | try_compile: Record propagated CMake variables in configure logBrad King2023-02-019-0/+104
| | | | | | | | | | | | | | | | | | | | | These provide more detailed information about how the test project was configured. Issue: #23200
| * | ConfigureLog: De-duplicate event backtrace and check key generationBrad King2023-02-015-14/+10
|/ / | | | | | | All event kinds have these fields, so centralize their implementation.
* | Merge topic 'update-kwsys'Brad King2023-02-012-4/+50
|\ \ | | | | | | | | | | | | | | | | | | | | | 11d59c9ed6 Merge branch 'upstream-KWSys' into update-kwsys 187389d9e1 KWSys 2023-02-01 (cafea4c8) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8147
| * \ Merge branch 'upstream-KWSys' into update-kwsysBrad King2023-02-012-4/+50
| |\ \ |/ / / | | | | | | | | | | | | # By KWSys Upstream * upstream-KWSys: KWSys 2023-02-01 (cafea4c8)
| * | KWSys 2023-02-01 (cafea4c8)KWSys Upstream2023-02-012-4/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code extracted from: https://gitlab.kitware.com/utils/kwsys.git at commit cafea4c84a581703c4bed5c725c421611c4bf358 (master). Upstream Shortlog ----------------- Brad King (1): 5df8c0a1 RegularExpression: Extend max paren groups from 10 to 32
* | | Merge topic 'xcode-header-search'Brad King2023-02-011-1/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 8527f42b96 Xcode: Explicitly disable deprecated user include path feature Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8143
| * | | Xcode: Explicitly disable deprecated user include path featureBrad King2023-01-311-1/+2
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `ALWAYS_SEARCH_USER_PATHS` feature is documented [1] to search the paths in `USER_HEADER_SEARCH_PATHS` before `HEADER_SEARCH_PATHS`. The behavior has been long discouraged and was deprecated by Xcode 8.3. Furthermore, Xcode explicitly disables this setting when creating new projects. We can do that too since we do not generate any user header search paths anyway. Previously we always set `USE_HEADERMAP` to `NO` to prevent Xcode's warning about an ancient "header map" feature deprecation. However, this somehow breaks Xcode 14's "Build Documentation" feature. Setting `ALWAYS_SEARCH_USER_PATHS` to `NO` seems to prevent the header map warning too, so drop `USE_HEADERMAP` to fix the documentation feature. [1] https://developer.apple.com/documentation/xcode/build-settings-reference Fixes: #24379
* | | Merge topic 'doc-ipo'Brad King2023-02-014-9/+10
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | d7c60ab6b0 Help: mark the directory properties INTERPROCEDURAL_OPTIMIZATION as deprecated 6ed026592e Help: improve docs for INTERPROCEDURAL_OPTIMIZATION target property Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8141
| * | | Help: mark the directory properties INTERPROCEDURAL_OPTIMIZATION as deprecatedAlexander Neundorf2023-01-313-9/+6
| | | | | | | | | | | | | | | | | | | | These properties actually never existed, so move the documentation to "Deprecated" and refer to the target properties.
| * | | Help: improve docs for INTERPROCEDURAL_OPTIMIZATION target propertyAlexander Neundorf2023-01-311-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | The documentation now mentions the per-config target property. Fixes: #24285
* | | | Merge topic '_hm_swift_threads_pthread'Brad King2023-02-011-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d7963aa9ee FindThreads: Filter -pthread out for compatibility with Swift linker Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8142
| * | | | FindThreads: Filter -pthread out for compatibility with Swift linkerHarry Mallon2023-01-311-1/+1
| | | | |
* | | | | Merge topic 'cmTarget-refactorings'Brad King2023-02-011-389/+335
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 33f629184f cmTarget: simplify `CheckLinkLibraryPattern` 22b9ce73e7 cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE usage requirements 332d2f8f52 cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT usage requirements 15eec07500 cmTarget: refactor INTERFACE_LINK_LIBRARIES usage requirements e80689d101 cmTarget: refactor LINK_LIBRARIES usage requirements 4f009d2121 cmTarget: refactor LINK_DIRECTORIES usage requirements 99e783e735 cmTarget: refactor LINK_OPTIONS usage requirements fd295dd263 cmTarget: refactor SOURCES usage requirements ... Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8127
| * | | | | cmTarget: simplify `CheckLinkLibraryPattern`Ben Boeckel2023-01-311-13/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that usage properties have more of a representation, the function can just take the requirement directly.
| * | | | | cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE usage requirementsBen Boeckel2023-01-311-27/+9
| | | | | |
| * | | | | cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT usage requirementsBen Boeckel2023-01-311-42/+42
| | | | | |
| * | | | | cmTarget: refactor INTERFACE_LINK_LIBRARIES usage requirementsBen Boeckel2023-01-311-28/+9
| | | | | |
| * | | | | cmTarget: refactor LINK_LIBRARIES usage requirementsBen Boeckel2023-01-311-25/+9
| | | | | |
| * | | | | cmTarget: refactor LINK_DIRECTORIES usage requirementsBen Boeckel2023-01-311-35/+14
| | | | | |
| * | | | | cmTarget: refactor LINK_OPTIONS usage requirementsBen Boeckel2023-01-311-31/+14
| | | | | |
| * | | | | cmTarget: refactor SOURCES usage requirementsBen Boeckel2023-01-311-32/+19
| | | | | |
| * | | | | cmTarget: refactor PRECOMPILE_HEADERS usage requirementsBen Boeckel2023-01-311-43/+23
| | | | | |
| * | | | | cmTarget: refactor COMPILE_DEFINITIONS usage requirementsBen Boeckel2023-01-311-25/+10
| | | | | |
| * | | | | cmTarget: refactor COMPILE_FEATURES usage requirementsBen Boeckel2023-01-311-25/+9
| | | | | |
| * | | | | cmTarget: refactor COMPILE_OPTIONS usage requirementsBen Boeckel2023-01-311-30/+14
| | | | | |
| * | | | | cmTarget: refactor INCLUDE_DIRECTORIES usage requirementsBen Boeckel2023-01-311-31/+47
| | | | | |
| * | | | | cmTarget: introduce a `UsageRequirementProperty` structureBen Boeckel2023-01-311-0/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This structure will encapsulate the behaviors of usage requirements. There are a number of them now and they all behave very similarly, so try to reduce the code duplication as much as possible.
| * | | | | cmTarget: use cmNonempty rather than local implementationBen Boeckel2023-01-261-22/+2
| | | | | |
| * | | | | cmTarget: use an enum for the action when writing fileset propertiesBen Boeckel2023-01-261-18/+35
| | | | | |
| * | | | | cmTarget: simplify fileset type property managementBen Boeckel2023-01-261-34/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of copy/pasting conditionals for each fileset type, just make an array of the structures and iterate over them.
* | | | | | Merge topic 'cmTarget-property-grouping'Brad King2023-02-011-90/+149
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a7c29f3ebd cmTarget: use static string views for per-config properties 47315d817c cmTarget: group remaining properties 32d21f215f cmTarget: put build graph-related properties into a group 6f9821d179 cmTarget: put static analysis (co-compile) properties in a group ead9ff61f9 cmTarget: put linking-related properties in a group 9bb824a237 cmTarget: put compile-related properties in a group Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8135
| * | | | | | cmTarget: use static string views for per-config propertiesBen Boeckel2023-01-301-6/+5
| | | | | | |
| * | | | | | cmTarget: group remaining propertiesBen Boeckel2023-01-301-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These are kind of a mixed assortment.
| * | | | | | cmTarget: put build graph-related properties into a groupBen Boeckel2023-01-301-15/+23
| | | | | | |