Brad King
241ee252ce
IWYU: Update for Debian 12 CI job
...
`include-what-you-use` diagnostics, in practice, are specific to
the environment's compiler and standard library. Update includes
to satisfy IWYU for our CI job under Debian 12.
2023-07-28 09:14:08 -04:00
Marc Chevrier
b3a6a11e95
fileapi: Extend codemodel targets/compileGroups with Apple frameworks
...
Fixes : #19897
2023-05-19 12:10:20 +02:00
Brad King
43e973eba2
cmGeneratorTarget: Pass language to GetAppleArchs when possible
2023-03-15 10:18:41 -04:00
Brad King
93afe804ce
cmGeneratorTarget: Convert GetAppleArchs output argument to return value
2023-03-15 10:11:37 -04:00
Rose
6d15754814
Make vector operations more efficient
2022-12-10 12:48:09 -05:00
Ben Boeckel
b3e9fb67bb
file-api: support exporting file set information
...
This includes listing the filesets themselves as well as which file set
(if any) each source file is associated with.
Fixes : #24128
2022-11-08 10:07:10 -05:00
Ben Boeckel
29118091dc
install: support CXX_MODULES_BMI
installation bits
2022-07-06 10:15:23 -04:00
Hyper Nova Sun
41ba35a42b
cmTarget: Add HasKnownObjectFileLocation()
shorthand
...
Allow `cmGlobalGenerator`s to decide `HasKnownObjectFileLocation()` per given
`cmTarget`
- `cmGlobalGenerator::HasKnownObjectFileLocation()` now takes an optional `cmGeneratorTarget`
- `cmTarget::HasKnownObjectFileLocation()` added as a shorthand
2022-04-11 14:10:29 -07:00
Kyle Edwards
3c3698b0e4
FileAPI: Add information on file set installers
2021-10-27 15:17:23 -04:00
Marc Chevrier
cc56dc7468
Rename cmProp in cmValue
2021-09-21 17:14:04 +02:00
Marc Chevrier
e5cd39ca80
cmProp: refactoring: transform alias in class
...
To handle safely the values used by CMake variables and properties,
introduce the class cmProp as a replacement from the simple pointer
to std::string instance.
2021-08-08 16:19:08 +02:00
Brad King
6fa9f3c695
Merge topic 'fileapi-link-fragments'
...
68bbec66e0
fileapi: Fix codemodel-v2 link command fragment relative paths
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6220
2021-06-14 09:41:50 -04:00
Brad King
68bbec66e0
fileapi: Fix codemodel-v2 link command fragment relative paths
...
Use the same `cmLinkLineComputer` subclass as the generator does. This
affects the base directory from which relative paths are computed.
Fixes : #22301
2021-06-11 11:11:36 -04:00
Brad King
acb25d50d9
Merge topic 'install-with-runtime-dependencies'
...
8d898cb3e1
FileAPI: Add integration for runtime dependency installers
72f2448e82
Help: Add documentation for runtime dependency installation
0c3c6acaff
Tests: Add tests for new options
4910132d8c
install: Add RUNTIME_DEPENDENCY_SET mode
bc8a4a06a4
install(IMPORTED_RUNTIME_ARTIFACTS): Add RUNTIME_DEPENDENCY_SET option
3e7d3c252a
install(TARGETS): Add RUNTIME_DEPENDENCY_SET argument
ed3633d88c
install(TARGETS): Add RUNTIME_DEPENDENCIES option
f2617cf8e6
Source: Add cmInstallRuntimeDependencySet
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6186
2021-06-08 08:09:04 -04:00
Kyle Edwards
8d898cb3e1
FileAPI: Add integration for runtime dependency installers
2021-06-04 15:25:18 -04:00
Brad King
dbfb50cd72
cmFileAPICodemodel: Assert input in DirectoryObject::DumpInstaller
...
This tells clang-analyzer that the `gen` argument is never `nullptr`.
2021-06-03 14:59:55 -04:00
Kyle Edwards
f7ba3a0589
FileAPI: Populate information for IMPORTED_RUNTIME_ARTIFACTS
2021-05-31 09:02:45 -04:00
Nils Gladitz
99ff75455e
install: Implement new install(CODE|SCRIPT) option ALL_COMPONENTS
...
In a per-component installation the generated installation scripts
are invoked once for each component.
Per default custom installation script code added by install(CODE|SCRIPT)
only runs for one specific component in this context.
The new ALL_COMPONENTS option allows custom script code to be run once
for each component being installed.
2021-05-19 19:17:58 +02:00
Brad King
5b3a71a83f
cmSystemTools: Adopt RelativeIfUnder helper
...
This returns a relative path if it does not start in `../`.
2021-05-17 10:02:16 -04:00
Brad King
049bf98f63
fileapi: Add installers to codemodel-v2 "directory" object
...
Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
2021-03-16 16:47:57 -04:00
Brad King
eae2256a52
fileapi: Add backtraceGraph to codemodel-v2 "directory" object
...
Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
2021-03-16 16:47:55 -04:00
Brad King
a12d7f70b1
fileapi: Add a "directory" object to codemodel-v2
...
This object will contain more detailed directory-level information.
Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
2021-03-16 16:47:43 -04:00
Brad King
fd30bd93e6
fileapi: Re-organize backtrace infrastructure
...
Make it available to more parts of the codemodel object.
2021-03-16 11:24:41 -04:00
Brad King
415ead8153
cmFileAPICodemodel: Build map from each target to its index
2021-03-16 11:24:28 -04:00
Ben Boeckel
cdfc4e3195
clang-tidy: fix readability-qualified-auto
warnings
2021-01-27 08:45:45 -05:00
Oleksandr Koval
209daa20b2
Code style: add missed explicit 'this->'
...
CMake uses explicit 'this->' style. Using custom clang-tidy check we can
detect and fix places where 'this->' was missed.
2021-01-05 14:32:36 +02:00
Vitaly Stakhovsky
11425041f0
cmMakefile::GetDefinition: return cmProp
2020-09-02 07:27:32 -04:00
Brad King
bafa9fe887
fileapi: Add INTERFACE libraries with SOURCES to codemodel-v2
...
INTERFACE libraries with SOURCES now appear in the generated
buildsystem, so include them in the codemodel output too.
We do not need to bump the `codemodel-v2` object kind minor
version because that was already done in post-3.18 development
by commit 7d6861f367
(fileapi: Extend codemodel targets with
language standard, 2020-06-18).
Fixes : #18608
2020-08-07 08:46:34 -04:00
Justin Goshi
2f383d852d
fileapi: Support multiple backtraces for language standard
2020-07-06 11:40:39 -07:00
Robert Maynard
7a969fe21d
cmMakefile: Refactor API to better handle empty config values
2020-07-03 07:43:18 -04:00
Justin Goshi
7d6861f367
fileapi: Extend codemodel targets with language standard
2020-06-26 08:52:29 -04:00
Vitaly Stakhovsky
b36d1bdd9d
Single location for cmProp typedef
2020-06-01 08:54:20 -04:00
Brad King
15b9b41d72
Merge topic 'fileApiAddPrecompileHeadersBacktrace'
...
9f6d40ee23
fileapi: Extend codemodel targets with PRECOMPILE_HEADERS
b698764a31
Tests: Add a PCH example to RunCMake.FileAPI codemodel-v2
b3812c0e54
Tests: Fix indentation in RunCMake.FileAPI cxx_exe.json
9c48804b69
PCH: Fix source group of per-architecture PCH headers
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4684
2020-05-25 10:40:56 -04:00
Justin Goshi
9f6d40ee23
fileapi: Extend codemodel targets with PRECOMPILE_HEADERS
2020-05-22 11:26:55 -04:00
Marc Chevrier
2faa3f6c55
Refactoring: Third-parties public headers are under cm3p prefix
...
Fixes : #20666
2020-05-07 12:06:08 +02:00
Vitaly Stakhovsky
36aba01223
cmGeneratorTarget::GetProperty: return cmProp
2020-04-29 10:59:39 -04:00
Vitaly Stakhovsky
e64fa5f1b6
cmSourceFile::GetProperty: return cmProp
2020-04-14 10:57:17 -04:00
Cristian Adam
f593b354da
PCH: Add support for multi architecture iOS projects
...
Fixes : #20497
2020-04-02 11:51:19 -04:00
Marc Chevrier
f466cea3c9
cmMakefile: modernize memory management
2020-01-14 11:03:07 +01:00
Marc Chevrier
5444a8095d
cmGlobalGenerator: modernize memrory managemenbt
2019-12-30 16:55:39 +01:00
Marc Chevrier
f7d12609f0
Refactoring: use append functions from cmext/algorithm
2019-12-17 10:44:02 +01:00
Marc Chevrier
36c8cae2e8
cmLocalGenerator: modernize memory management
2019-12-10 00:24:06 +01:00
Brad King
5b46bc3194
Merge topic 'unity-HEADER_FILE_ONLY'
...
9a5418320e
Unity: Don't include sources with HEADER_FILE_ONLY property set
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4023
2019-11-12 09:51:16 -05:00
Cristian Adam
9a5418320e
Unity: Don't include sources with HEADER_FILE_ONLY property set
...
Fixes : #19946
Fixes : #19947
Co-authored-by: Craig Scott <craig.scott@crascit.com>
2019-11-11 14:10:18 +01:00
Daniel Eiband
ec2f130aa9
cmFileAPI: Resolve full path in PCH source comparison
...
Issue: 19927
2019-11-11 13:03:29 +01:00
Cristian Adam
36ded610af
PCH: Generate sources during Compute step
2019-10-09 13:50:25 +02:00
Kitware Robot
ed98209ddc
Revise include order using clang-format-6.0
...
Run the `clang-format.bash` script to update our C and C++ code to a new
include order `.clang-format`. Use `clang-format` version 6.0.
2019-10-01 12:26:36 -04:00
Justin Goshi
8b84c046fa
fileapi: add some source property backtraces
...
Support backtraces for COMPILE_DEFINITIONS, COMPILE_OPTIONS, and
INCLUDE_DIRECTORIES source properties.
2019-09-26 10:56:52 -04:00
Brad King
4ade1b00c5
Merge topic 'fileapiLinkPathAndLinkDirBacktraces'
...
4d6334824d
fileapi: add backtraces for LINK_PATH and LINK_DIRECTORIES
5bd65dff7a
cmLocalGenerator: Add OutputLinkLibraries overload with backtraces
5d39e792ae
cmGeneratorTarget: Store backtrace for target LINK_DIRECTORIES property
7da17ef797
cmLinkLineComputer: Add ComputeLinkLibraries overload with backtraces
d4d0dd0f6a
cmLinkLineComputer: Add ComputeLinkLibs overload with backtraces
0ac9dcb807
cmLinkLineComputer: Add ComputeLinkPath overload with backtraces
0c6468178a
cmComputeLinkInformation: Add GetDirectoriesWithBacktraces
a209b31d0d
cmComputeLinkInformation: Add AppendValues with backtraces
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3805
2019-09-20 10:22:01 -04:00
Justin Goshi
4d6334824d
fileapi: add backtraces for LINK_PATH and LINK_DIRECTORIES
2019-09-18 14:00:39 -04:00