| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Fixes: #24972
|
|
|
|
| |
It is now subsumed by the UUID setting completely.
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
7b62a83c6f cxxmodules: update the experimental UUID
6ff5cdc533 cxxmodules: remove support for `CXX_MODULE_HEADER_UNITS` filesets
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8510
|
| |
| |
| |
| |
| | |
There's no backing implementation for header units anyways, so just
remove it for now.
|
|/ |
|
| |
|
|
|
|
| |
Fixes: #24109
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
c42630ee62 cmGeneratorExpressionNode: implement `COMPILE_ONLY` genex
0fb923c460 cmGeneratorExpressionNode: implement `COMPILE_ONLY` genex
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8411
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This generator expression is the inverse of `LINK_ONLY` and only coveys
usage requirements for the purposes of compilation. Its intended use is
to avoid needing to export targets that do not have link usage
requirements (e.g., header-only libraries) when used by another target.
See: #15415
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
375e6fdbbe Link step: use linker dependency linker file
24a3e5cda0 cmLocalGenerator::MayBeRelativeToWorkDir: take care of all cases
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8443
|
| | |
| | |
| | |
| | |
| | |
| | | |
Based on work done by @ben.boeckel (!8051)
Fixes: #22217
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
7bf4e30090 Autogen: Default AUTOGEN_USE_SYSTEM_INCLUDE to ON if it is not set
033dc7ee2f Autogen: Add AUTOGEN_USE_SYSTEM_INCLUDE target property
8ba16db163 Tests/RunCMake: Add option for dynamic expected output
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8400
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`AUTOGEN_USE_SYSTEM_INCLUDE` was added. `AUTOGEN_USE_SYSTEM_INCLUDE`
is a boolean property that can be set on a target to indicate that the
autogen target include directory should be added as a system include
directory or normal include directory to the target.
|
|/ / |
|
|/ |
|
|
|
|
|
| |
Make it available outside the `cmGeneratorTarget` implementation.
In particular, we will later use it in `cmQtAutoGenInitializer`.
|
|
|
|
| |
Avoid `warning: Extra tokens on pragma line` from IWYU.
|
|
|
|
|
|
|
|
| |
`nvcc --options-file` does not parse unquoted arguments in a response
file correctly if they contain `[]`. Quote the `--generate-code=` flags
we add for CUDA architectures.
Fixes: #24657
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since commit b6c60f14b6 (macOS: Default to arm64 architecture on Apple
Silicon hosts, 2020-09-28, v3.19.0-rc1~63^2) we add `-arch arm64` by
default on Apple Silicon hosts if `CMAKE_OSX_ARCHITECTURES` is not set.
This is necessary to prevent the toolchain from selecting its own
default architecture based on that of the build tool (e.g., `x86_64`).
If `CMAKE_<LANG>_COMPILER_TARGET` is set, its `-target` flag tells the
compiler what architecture to use, so do not add `-arch arm64`.
Fixes: #24599
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
2def6a874b CUDA: Add support for CUBIN, FATBIN, and OPTIXIR compilation
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8259
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
b909be9e23 target_sources: Fix backtrace on missing source
4a3e79048b Tests: Add RunCMake.target_sources case covering missing source
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8268
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
If a source file is not found, the error message reports a backtrace.
Previously the backtrace pointed at where the target was created.
In the case of `target_sources`, the missing source may have been
named elsewhere.
Fixes: #24538
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| | |
ede33f30cf Apple: Handle generation and comsuption of text-based stubs (.tbd files)
fcbd723a50 Enhance support functions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !8204
|
| |
| |
| |
| | |
Fixes: #24123
|
| |
| |
| |
| |
| | |
* Avoid duplicate definiitions for IsExecutableWithExports, etc...
* Add helper IsApple()
|
|/
|
|
|
|
|
| |
Add variable/target property `[CMAKE_]DLL_NAME_WITH_SOVERSION`.
Fixes: #24251
Signed-off-by: Ralf Habacker <ralf.habacker@freenet.de>
|
| |
|
|
|
|
|
|
| |
It is a normal target, but will end up copying its internals from
another target. Keep track of this state so that such copying can only
occur when intended.
|
|
|
|
|
|
|
|
| |
C++ modules are going to introduce a third concept of "synthesized"
targets, so update logic where needed to avoid assuming "not imported?
must be normal".
Also add an accessor method to perform queries against the visibility.
|
|
|
|
|
|
|
|
| |
`INTERFACE` targets with C++ modules are basically BMI-only modules. It
is unknown if they will be useful directly (due to ODR of the `module
M;` initializers needing to live in some specific object file). However,
they will be used to attach BMI-only compilations of `IMPORTED` C++
modules.
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
a525f5f1bf cmGeneratorTarget: Cache full name components
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8033
|
| |
| |
| |
| |
| | |
Cache the result of cmGeneratorTarget::GetFullNameInternalComponents
to improve performance.
|
| | |
|
|/
|
|
| |
Fixes: #24258
|
|\
| |
| |
| |
| |
| |
| |
| | |
232467eb1c clang-tidy: add <LANG>_CLANG_TIDY_EXPORT_FIXES_DIR property
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7982
|
| |
| |
| |
| | |
Fixes: #21362
|
|\ \
| |/
|/|
| |
| |
| |
| | |
7c63372c22 cmGeneratorTarget: Fix regression in CUDA device link options
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7981
|
| |
| |
| |
| |
| |
| | |
Since commit f69d1872db (cmGeneratorTarget: Add caches to some
functions, 2022-11-23) we cache the computed link options for a target.
Cache the host and device link options separately.
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
f69d1872db cmGeneratorTarget: Add caches to some functions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7952
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add caches to the following cmGeneratorTarget functions in order to
improve performance:
- GetIncludeDirectories
- GetCompileOptions
- GetCompileDefinitions
- GetPrecompileHeaders
- GetLinkOptions
- GetLinkDirectories
|
| | |
|
|/ |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
5e7c8f44ac Ninja: Restore support for compilers not defining a C++ standard level
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Jaeden Amero <kitware@patater.com>
Acked-by: Martin Kojtal <martin.kojtal@arm.com>
Merge-request: !7896
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit 386465bf83 (cmTarget: add support for C++ module fileset
types, 2022-04-08, v3.25.0-rc1~624^2~7), the Ninja generator checks for
C++20 support using logic that requires `CMAKE_<LANG>_STANDARD_DEFAULT`
to be non-empty. On some compilers, such as ARMClang, CMake does not
automatically detect and set default language standards, thus causing
`HaveStandardAvailable` to raise an internal error.
To fix this issue, if `CMAKE_CXX_STANDARD_DEFAULT` is empty, assume all
standards to be supported instead of calling `HaveStandardAvailable`.
This is consistent with how `CompileFeaturesNode::Evaluate` handles this
case.
Fixes: #24146
|