summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorTarget.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Source: fix many -Wmissing-prototypes warnings by marking functions staticSean McBride2021-10-251-21/+26
|
* Add property to mark IMPORTED targets as not SYSTEMBrad King2021-10-141-0/+3
| | | | | | | | | | | Add an `IMPORTED_NO_SYSTEM` target property to specify this. When enabled, do not treat the `INTERFACE_INCLUDE_DIRECTORIES` of an imported target as `SYSTEM` include directories. This is similar to the existing `NO_SYSTEM_FROM_IMPORTED` property, but works from the consumed target rather than the consumer. Fixes: #17364
* Source: Fix clang -Wimplicit-fallthrough warningsSean McBride2021-09-281-0/+6
|
* Rename cmProp in cmValueMarc Chevrier2021-09-211-124/+127
|
* Merge topic 'macos-cache-rpath-install-namedir'Brad King2021-09-211-0/+15
|\ | | | | | | | | | | | | 2266e223c5 macOS: Speed up rpath install name dir lookup with a cache Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6543
| * macOS: Speed up rpath install name dir lookup with a cacheLukas Böger2021-09-201-0/+15
| | | | | | | | Fixes: #20602
* | remove cmToCStr functionMarc Chevrier2021-09-191-1/+1
|/
* Merge topic 'pch-xcode-multiple-languages'Brad King2021-09-141-2/+2
|\ | | | | | | | | | | | | | | bbcdac4e5d PCH: Fix all-language precompile header support in Xcode Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6435
| * PCH: Fix all-language precompile header support in XcodeCristian Adam2021-09-131-2/+2
| | | | | | | | Fixes: #22384
* | Refactor: Convert parallel string/backtrace vectors to BT vectorsKyle Edwards2021-09-031-56/+47
| |
* | Refactor: reduce cmToCStr usageMarc Chevrier2021-08-191-12/+9
| |
* | Refactor: cmGeneratorTarget::GetSourcesProperty returns cmPropMarc Chevrier2021-08-091-3/+3
| |
* | cmProp: refactoring: transform alias in classMarc Chevrier2021-08-081-14/+13
|/ | | | | | 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.
* cmGeneratorTarget: Clarify logic recognizing explicit link interfaceBrad King2021-07-131-6/+6
|
* cmGeneratorTarget: Clarify cmLinkImplItem constructor callBrad King2021-07-131-1/+2
|
* cmGeneratorTarget: Clarify ExpandLinkItems local variable roleBrad King2021-07-131-4/+7
|
* cmGeneratorTarget: Simplify ExpandLinkItems signatureBrad King2021-07-131-30/+17
|
* cmGeneratorTarget: Add method for LINKER: prefix translationMarc Chevrier2021-07-081-0/+7
|
* Merge topic 'tll-out-of-dir'Brad King2021-06-301-6/+8
|\ | | | | | | | | | | | | e27a76f131 target_link_libraries: Restore transitive out-of-dir linking Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6285
| * target_link_libraries: Restore transitive out-of-dir linkingBrad King2021-06-291-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit 7f506b95a7 (cmGeneratorTarget: Refactor link item lookup, 2021-05-26, v3.21.0-rc1~103^2~4) accidentally dropped the persistent lookup scope tracking across multiple items that was added by commit f0e67da061 (target_link_libraries: Fix out-of-dir linking of a list of targets, 2020-01-14, v3.17.0-rc1~149^2). This broke a transitive out-of-dir linking case not covered by our test suite. Restore the scope tracking and add a test case. Fixes: #22363
* | Merge topic 'import-elf'Brad King2021-06-251-7/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 115ff6a347 cmELF: Include the ELF parsing code unconditionally 5dfa3ddbe5 cmELF: Allow building without system ELF headers 0da1540aaa cmELF: Fix check for TagMipsRldMapRel e21188df8b cmELF: Open file explicitly in binary mode 70cdb36d25 Merge branch 'upstream-elf' into import-elf 7a0a37ca41 elf 2021-06-23 (f13da247) 18038042ed cmelf: Add script to import the FreeBSD ELF headers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6240
| * | cmELF: Include the ELF parsing code unconditionallyAlex Richardson2021-06-241-7/+2
| |/ | | | | | | | | Now that the ELF definitions are provided on all platforms there is no need to keep the CMake_USE_ELF_PARSER option.
* | Makefiles: Add support for building Fortran intrinsicsIsuru Fernando2021-06-241-0/+8
|/ | | | Fixes: #21463
* HIP: analyze output of `hipcc` to determine default GPU architectureZack Galbreath2021-06-071-0/+6
|
* HIP: Automatically inject the `hip::device` runtime targetRobert Maynard2021-06-071-26/+170
| | | | | Any target that might need to link to hip code needs the `hip::device` target
* HIP: Add language to CMakeRobert Maynard2021-06-071-3/+21
|
* cmGeneratorTarget: Clear cached link implementation when a source is addedBrad King2021-06-041-0/+1
| | | | | | Adding a source file at generate time can cause the linker language or other settings to change that affect `GetLinkImplementationLibraries` and friends.
* target_link_libraries: Place $<TARGET_OBJECTS> before librariesBrad King2021-05-291-5/+33
| | | | | | | | | Linkers always use object files explicitly specified on the command line regardless of where they appear. Move them to the front of the list of linked libraries in so that symbols required by the object files can be resolved by any library. Issue: #22149
* cmGeneratorTarget: Refactor link item lookupBrad King2021-05-281-14/+23
| | | | | Look up items individually so the call sites can do something with the result besides appending to a vector.
* cmGeneratorTarget: Give temporary link impl item an explicit nameBrad King2021-05-281-2/+2
|
* Xcode: Enable multi-arch TARGET_OBJECTS genex in [INTERFACE_]LINK_LIBRARIESBrad King2021-05-261-0/+2
| | | | This was an oversight in the original implementation.
* Framework: Fix $<TARGET_SONAME_FILE:...> for imported frameworksKyle Edwards2021-05-201-3/+26
|
* Source: Remove unnecessary comparisons to nullptrVitaly Stakhovsky2021-05-101-6/+5
|
* Merge topic 'CUDA-device-link'Brad King2021-04-011-8/+52
|\ | | | | | | | | | | | | bb96984ec9 CUDA Device link: Ensure all link options are correctly formatted Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5962
| * CUDA Device link: Ensure all link options are correctly formattedMarc Chevrier2021-03-311-8/+52
| | | | | | | | Fixes: #21994
* | Genex: Add TARGET_RUNTIME_DLLS genexKyle Edwards2021-02-241-0/+14
|/ | | | Co-Authored-by: Brad King <brad.king@kitware.com>
* Genex: LINK_LANGUAGE respects LINKER_LANGUAGE propertyMarc Chevrier2021-02-231-1/+5
| | | | | | | If target property LINKER_LANGUAGE is set, LINK_LANGUAGE generator expression evaluation must be always successful. This fix can be helpful to elaborate a solution for issue #21818.
* AIX: Enable XCOFF editing to replace RPATH on installationBrad King2021-02-031-9/+18
| | | | Avoid relinking before installation.
* Ninja Multi-Config: Enable relink diagnostic messageBrad King2021-02-031-2/+1
| | | | | We already have a message for the "Ninja" generator, but it applies to the "Ninja Multi-Config" generator too.
* Rename CMAKE_USE_ELF_PARSER to CMake_USE_ELF_PARSERBrad King2021-02-031-1/+1
| | | | We use the `CMake_` prefix for options affecting CMake itself.
* Merge topic 'clang-tidy-fixes'Brad King2021-01-271-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef935b17ab clang-tidy: fix `readability-use-anyofallof` warnings 9ac8dbbb94 clang-tidy: fix `readability-simplify-boolean-expr` warnings ca505718f4 clang-tidy: fix `readability-redundant-string-init` warnings b3b6ede6a1 clang-tidy: fix `readability-redundant-access-specifiers` warnings cdfc4e3195 clang-tidy: fix `readability-qualified-auto` warnings 808b17b120 clang-tidy: fix `readability-make-member-function-const` warnings 4470eb5179 clang-tidy: fix `performance-trivially-destructible` warnings 4f396e6528 clang-tidy: fix `performance-no-automatic-move` warnings ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5731
| * clang-tidy: fix `readability-qualified-auto` warningsBen Boeckel2021-01-271-2/+2
| |
* | OUTPUT_DIRECTORY: Support tgt genex in output artifact varsAsit Dhal2021-01-261-4/+3
|/ | | | | | | | | Following variables now support target dependent generator expressions. - CMAKE_RUNTIME_OUTPUT_DIRECTORY - CMAKE_LIBRARY_OUTPUT_DIRECTORY - CMAKE_ARCHIVE_OUTPUT_DIRECTORY Fixes: #18055
* Code style: add missed explicit 'this->'Oleksandr Koval2021-01-051-5/+5
| | | | | CMake uses explicit 'this->' style. Using custom clang-tidy check we can detect and fix places where 'this->' was missed.
* cmGeneratorTarget: Make GetConfigCommonSourceFiles Xcode-specificBrad King2020-12-161-1/+1
| | | | | | The Xcode generator is the only place left that we do not support per-config sources. Make the corresponding helper Xcode-specific to avoid any other new uses.
* Ninja Multi-Config: Add support for cross-config custom commandsKyle Edwards2020-12-151-1/+1
| | | | Co-Author: Brad King <brad.king@kitware.com>
* cmLocalGenerator: Refactor custom command generator constructionBrad King2020-12-151-7/+8
| | | | | | | Add support for constructing and using multiple generators for one custom command. cmGeneratorTarget contains a code path that needs this behavior when used with Ninja but not other generators, so use virtual dispatch through cmLocalGenerator.
* Merge topic 'correct_ispc_path_computation'Brad King2020-12-081-1/+6
|\ | | | | | | | | | | | | | | 9af93fef11 ISPC: Handle OBJECT sources in different directories 72ae15ebcb ISPC: Ninja properly compute ISPC_HEADER_DIRECTORY location Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5581
| * ISPC: Handle OBJECT sources in different directoriesRobert Maynard2020-12-071-1/+6
| |
| * Merge topic 'cuda_vs_skip_computation' into release-3.19Brad King2020-10-271-0/+8
| |\ | | | | | | | | | | | | | | | | | | | | | | | | dd77dec18d VS: Don't compute CUDA options unless necessary e9109dec36 Merge branch 'ninja-multi-per-config-sources' into release-3.18 7c0de4175b Merge branch 'cmake-E-cat-binary' into release-3.18 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5422