summaryrefslogtreecommitdiffstats
path: root/Source/cmTarget.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Apple: text-based stubs: manage imported configurations mappingMarc Chevrier2023-03-051-1/+3
|
* Merge topic 'Apple-handle-Text-Stubs'Brad King2023-03-021-9/+47
|\ | | | | | | | | | | | | | | | | 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
| * Apple: Handle generation and comsuption of text-based stubs (.tbd files)Marc Chevrier2023-03-011-3/+36
| | | | | | | | Fixes: #24123
| * Enhance support functionsMarc Chevrier2023-02-281-6/+11
| | | | | | | | | | * Avoid duplicate definiitions for IsExecutableWithExports, etc... * Add helper IsApple()
* | Add option to add SOVERSION to DLL namesRalf Habacker2023-02-271-0/+6
|/ | | | | | | Add variable/target property `[CMAKE_]DLL_NAME_WITH_SOVERSION`. Fixes: #24251 Signed-off-by: Ralf Habacker <ralf.habacker@freenet.de>
* cmMakefile: add support for a "synthesized" targetBen Boeckel2023-02-141-0/+17
| | | | | | 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.
* cmTarget: make Visibility an `enum class`Ben Boeckel2023-02-141-10/+10
|
* cmTarget: store visibility as an `enum` rather than boolsBen Boeckel2023-02-141-13/+46
| | | | | | | | 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.
* cmTarget: convert VS property settings to the new property lambdaBen Boeckel2023-02-021-15/+4
|
* cmTarget: factor out `POSITION_INDEPENDENT_CODE` initializationBen Boeckel2023-02-021-14/+8
| | | | | | This property is initialized using the common framework, but then forced on SHARED and MODULE targets, so just post-process the property in this case.
* cmTarget: factor out properties with targets with commandsBen Boeckel2023-02-021-5/+8
|
* cmTarget: factor out properties for targets with exportsBen Boeckel2023-02-021-5/+11
|
* cmTarget: factor out executable-requiring propertiesBen Boeckel2023-02-021-5/+8
|
* cmTarget: factor out linkable normal library target propertiesBen Boeckel2023-02-021-17/+10
|
* cmTarget: factor out non-executable normal target with artifact propertiesBen Boeckel2023-02-021-12/+12
|
* cmTarget: factor out normal targets with artifact propertiesBen Boeckel2023-02-021-24/+12
|
* cmTarget: factor out normal non-imported target propertiesBen Boeckel2023-02-021-3/+8
|
* cmTarget: factor out non-imported target propertiesBen Boeckel2023-02-021-4/+7
|
* cmTarget: factor out properties for normal targetsBen Boeckel2023-02-021-4/+9
|
* cmTarget: factor out Xcode and with-compiled source propertiesBen Boeckel2023-02-021-29/+33
|
* cmTarget: factor out Xcode-requiring propertiesBen Boeckel2023-02-021-4/+8
|
* cmTarget: factor out properties initialized for target which compileBen Boeckel2023-02-021-188/+193
|
* cmTarget: factor out always-initialized propertiesBen Boeckel2023-02-021-4/+9
|
* cmTarget: create a `TargetProperty` structureBen Boeckel2023-02-021-0/+106
| | | | | This structure will encapsulate when properties are initialized within a target.
* 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-271-22/+2
| |
| * cmTarget: use an enum for the action when writing fileset propertiesBen Boeckel2023-01-271-18/+35
| |
| * cmTarget: simplify fileset type property managementBen Boeckel2023-01-271-34/+38
| | | | | | | | | | Instead of copy/pasting conditionals for each fileset type, just make an array of the structures and iterate over them.
* | 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
| |
* | cmTarget: put static analysis (co-compile) properties in a groupBen Boeckel2023-01-301-15/+22
| |
* | cmTarget: put linking-related properties in a groupBen Boeckel2023-01-301-27/+43
| |
* | cmTarget: put compile-related properties in a groupBen Boeckel2023-01-301-44/+66
|/
* Make vector operations more efficientRose2022-12-101-2/+2
|
* clang-tidy: add <LANG>_CLANG_TIDY_EXPORT_FIXES_DIR propertyKyle Edwards2022-12-061-0/+4
| | | | Fixes: #21362