| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
841272eb35 Xcode: Restore suppression of header maps
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8218
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In commit 8527f42b96 (Xcode: Explicitly disable deprecated user include
path feature, 2023-01-31, v3.26.0-rc1~7^2) we dropped the Xcode build
setting `USE_HEADERMAP = NO` because Xcode 14's "Build Documentation"
feature (`xcodebuild RUN_DOCUMENTATION_COMPILER=YES`) fails in some
cases without header maps. However, enabling header maps causes Xcode
to add `-iquote .../foo.hmap` and `-I .../bar.hmap` flags that can
change the intended header file search order based on the contents of
the header maps. This can break existing projects. Restore the
`USE_HEADERMAP = NO` setting to fix the header file search order.
Further investigation will be needed to resolve the problematic cases
with the Xcode 14 "Build Documentation" feature. Meanwhile projects
encountering such cases can set the `XCODE_ATTRIBUTE_USE_HEADERMAP`
target property to `YES` themselves.
Fixes: #24418
Issue: #24379
|
|/ |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
f9e8a067c2 cmake: Stop parsing after `--` when detecting script mode
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8186
|
| |
| |
| |
| |
| |
| |
| |
| | |
The fix in commit 08aa516880 (cmake: Stop parsing after `--` when
detecting script mode, 2022-12-06, v3.26.0-rc1~216^2) only corrected the
case where `-P -- -P <arg>` occurred and not `-P -- -P -<other>`.
Fixes: #24220
|
|/
|
|
| |
AutoMoc generates because moc settings changed, not uic.
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| | |
Now that only targets expected to have information are listed, all
`DependInfo.cmake` files should exist.
|
| |
| |
| |
| |
| | |
Now that only targets expected to have information are listed, all
`<LANG>Modules.json` files should exist.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| |
| |
| |
| | |
This variable is Fortran-specific, so clarify that through its name.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
These provide more detailed information about how the test project was
configured.
Issue: #23200
|
| |
| |
| |
| | |
All event kinds have these fields, so centralize their implementation.
|
| |
| |
| |
| |
| |
| | |
# By KWSys Upstream
* upstream-KWSys:
KWSys 2023-02-01 (cafea4c8)
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
8527f42b96 Xcode: Explicitly disable deprecated user include path feature
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8143
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | | |
Now that usage properties have more of a representation, the function
can just take the requirement directly.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Instead of copy/pasting conditionals for each fileset type, just make an
array of the structures and iterate over them.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
These are kind of a mixed assortment.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
91a26ce041 cmComputeComponentGraph: use `size_t` for component indices
65c0a64dc5 cmComputeComponentGraph: use a name for "invalid component"
50abdaab93 IWYU: exclude `__decay_and_strip<int>` as well
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8128
|
| | | | |
| | | | |
| | | | |
| | | | | |
This avoids using casts everywhere when dealing with the sizes.
|
| | |/ /
| |/| |
| | | |
| | | | |
This is to prepare for making the graph use `size_t`.
|