Commit Graph

29225 Commits

Author SHA1 Message Date
Brad King
d45f0d719e Merge topic 'EXCLUDE_FROM_ALL-genex'
2cdaf43d96 Allow generator expressions in the EXCLUDE_FROM_ALL target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5021
2020-07-22 11:23:34 -04:00
Brad King
1f8bbfec0f Merge topic 'TARGET_PROPERTY-strip-empty-list-elements'
af1a4f52be Genex: $<TARGET_PROPERTY> strip emtpy list elements for predefined properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5030
2020-07-22 08:47:58 -04:00
Brad King
3e14b15f44 Merge topic 'graphviz-restore-per-target'
8efdd905f2 Merge branch 'backport-3.18-graphviz-restore-per-target'
a78e991420 Tests: Cover Graphviz support for per-target dependency graph options
370a94c487 Merge branch 'backport-3.17-graphviz-restore-per-target'
1829220310 Merge branch 'backport-3.17-graphviz-restore-per-target'
f3a6b4a209 Tests: Cover Graphviz support for per-target dependency graph options
93549b9224 Graphviz: Restore support for per-target dependency graph options

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5039
2020-07-22 08:42:37 -04:00
Kitware Robot
5ac007f41c CMake Nightly Date Stamp 2020-07-22 00:01:19 -04:00
Brad King
370a94c487 Merge branch 'backport-3.17-graphviz-restore-per-target' 2020-07-21 15:02:09 -04:00
Stephan Rohmen
93549b9224 Graphviz: Restore support for per-target dependency graph options
The behaviors controlled by options `GRAPHVIZ_GENERATE_PER_TARGET` and
`GRAPHVIZ_GENERATE_DEPENDERS` were broken by commit 553658393c (Graphviz:
added test suite, fixes, enhancements, 2019-10-08, v3.17.0-rc1~615^2).
It had not been covered in the test suite previously, and those changes
left out checks for these features from the `default_options` case.

Implement the previously-existing behavior in the new graphviz
generation engine added by the above-mentioned commit.

Fixes: #20928
2020-07-21 14:55:44 -04:00
Joerg Bornemann
2cdaf43d96 Allow generator expressions in the EXCLUDE_FROM_ALL target property
This allows for setting EXCLUDE_FROM_ALL, conditional on the build
configuration. However, only the Ninja Multi-Config generator supports
different property values per config. All other multi-config
generators will yield an error in that situation.

Fixes: #20923
2020-07-21 17:16:26 +02:00
Marc Chevrier
af1a4f52be Genex: $<TARGET_PROPERTY> strip emtpy list elements for predefined properties
Fixes: #20951
2020-07-21 15:08:28 +02:00
Brad King
2683d72f96 Merge topic 'strdup'
eea0337c7d centos5: Fix FTBFS with strdup

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5026
2020-07-21 07:25:02 -04:00
Craig Scott
8abeec58f3 Merge topic 'xcode-native-arch'
26673bf480 Xcode: Explicitly specify default native architecture on macOS
ce624cfbd4 cmGlobalXCodeGenerator: Save CMAKE_SYSTEM_NAME in member

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5023
2020-07-21 07:19:02 -04:00
Kitware Robot
cd580a99bd CMake Nightly Date Stamp 2020-07-21 00:02:32 -04:00
Brad King
26673bf480 Xcode: Explicitly specify default native architecture on macOS
When `CMAKE_OSX_ARCHITECTURES` is not specified, we add the Xcode
setting `ONLY_ACTIVE_ARCH = YES` with the intention of targeting the
native architecture of the host.  However, the default `ARCHS` value
chosen by "Xcode 12 Universal Apps" includes multiple architectures.
Add an explicit `ARCHS` setting with value `$(NATIVE_ARCH_ACTUAL)`
to tell Xcode to use the host's native architecture only.

Fixes: #20893
2020-07-20 10:03:15 -04:00
Brad King
beb78ada5e Merge topic 'swift-link-iface'
14a5712447 Swift: Fix regression in linking to interface libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5027
2020-07-20 09:56:07 -04:00
Julien Schueller
eea0337c7d centos5: Fix FTBFS with strdup
Since commit f034b0f663 (CMake compilation: do not use compiler
extensions, 2020-03-14, v3.18.0-rc1~494^2) we need to explicitly enable
availability of `strdup`.

Fixes: #20971
2020-07-20 08:21:40 +02:00
Kitware Robot
d66638400f CMake Nightly Date Stamp 2020-07-20 00:01:09 -04:00
Kitware Robot
7cebaf0390 CMake Nightly Date Stamp 2020-07-19 00:01:11 -04:00
Kitware Robot
8eef665d07 CMake Nightly Date Stamp 2020-07-18 00:01:11 -04:00
Brad King
5b419f795c Merge topic 'xcode-try_compile-no-sign'
d3a64c4e3f Xcode: Explicitly turn off signing in try_compile projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5022
2020-07-17 08:52:13 -04:00
Brad King
286411ed89 Merge topic 'ninja-multi-rsp'
99ed39b011 Ninja Multi-Config: Make link response files per-config

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5020
2020-07-17 08:49:37 -04:00
Brad King
14a5712447 Swift: Fix regression in linking to interface libraries
Since commit 2026915f8f (Swift: Propagate Swift_MODULE_DIRECTORY as include
directory, 2020-02-03, v3.18.0-rc1~547^2) we internally call
`GetAllConfigCompileLanguages` on all directly linked targets without
checking if they are interface libraries that don't compile at all.
That violates an internal assumption and assertion.

Fixes: #20977
2020-07-17 08:26:40 -04:00
Kitware Robot
79cba639e8 CMake Nightly Date Stamp 2020-07-17 00:01:28 -04:00
Brad King
ce624cfbd4 cmGlobalXCodeGenerator: Save CMAKE_SYSTEM_NAME in member 2020-07-16 14:17:47 -04:00
Kyle Edwards
99ed39b011 Ninja Multi-Config: Make link response files per-config
Fixes: #20961
2020-07-16 11:57:46 -04:00
Brad King
d3a64c4e3f Xcode: Explicitly turn off signing in try_compile projects
Fixes: #18407, #20571, #20688
2020-07-16 10:42:39 -04:00
Brad King
c7b7547d8d Merge topic 'cmake-E-create_hardlink'
2fad00940d cmake: Add -E create_hardlink

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5015
2020-07-16 10:19:12 -04:00
Brad King
4662c041ea Merge topic 'move_more_queries_to_cmStandardLevelResolver'
56cf509a72 Move AddCompilerRequirementFlag to cmStandardLevelResolver

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4989
2020-07-16 10:17:52 -04:00
Kitware Robot
78df084c7a CMake Nightly Date Stamp 2020-07-16 00:01:12 -04:00
Kyle Edwards
63ecf481da Merge topic 'cmnonempty'
eaad8072ee cmNonempty: Convenience inlines to check for non-empty string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5017
2020-07-15 10:53:43 -04:00
Sibi Siddharthan
2fad00940d cmake: Add -E create_hardlink
Fixes: #20950
Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
2020-07-15 20:22:04 +05:30
Robert Maynard
56cf509a72 Move AddCompilerRequirementFlag to cmStandardLevelResolver
The cmLocalGenerator::AddCompilerRequirementFlag was another
source of truth on what standard levels existed per language,
so fold that into cmStandardLevelResolver to make updating
CMake easier
2020-07-15 09:40:33 -04:00
Brad King
d421274e3e CMake 3.18.0 2020-07-15 07:19:20 -04:00
Brad King
67d809006f Merge topic 'xcode-lib-refs'
3603ca8e86 Xcode: Special treatment for directly linked framework binaries
e637744c51 Xcode: Use "Link Binary With Libraries" to link any library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4975
2020-07-15 06:50:22 -04:00
Brad King
2d294219a5 Merge topic 'ison-stdstring'
7156911242 cmIsOn: add overload accepting const std::string*

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5013
2020-07-15 06:47:46 -04:00
Kitware Robot
84c9e14bc2 CMake Nightly Date Stamp 2020-07-15 00:01:43 -04:00
Craig Scott
a335999021 Merge topic 'source_file_props_dedup_scopes' into release-3.18
f6969b917d set_property: Deduplicate source file directory scopes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5009
2020-07-14 18:59:39 -04:00
Craig Scott
538668962e Merge topic 'source_file_props_dedup_scopes'
f6969b917d set_property: Deduplicate source file directory scopes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5009
2020-07-14 18:59:39 -04:00
Vitaly Stakhovsky
eaad8072ee cmNonempty: Convenience inlines to check for non-empty string 2020-07-14 15:18:59 -04:00
Vitaly Stakhovsky
7156911242 cmIsOn: add overload accepting const std::string* 2020-07-14 08:22:24 -04:00
Gusts Kaksis
3603ca8e86 Xcode: Special treatment for directly linked framework binaries
Always refer to framework directory instead of binary directly.
2020-07-14 08:08:45 -04:00
Gusts Kaksis
e637744c51 Xcode: Use "Link Binary With Libraries" to link any library
Add external libraries as fileRefs to Xcode project and add those
references to Link Binary With Libraries build phase.  This allows
linking .a, .o, .dylib, .framework and .tbd libraries through "Link
Binary With Libraries" build phase, as opposed to `OTHER_LINKER_FLAGS`.

This improves on the approach added by commit 58c05e1c73 (Xcode: Use
"Link Binary With Libraries" build phase when possible, 2020-06-12).
2020-07-14 08:07:55 -04:00
Brad King
2da778664d Merge topic 'genx-COMPILE_LANGUAGE-support'
6491d2503c Genex $<COMPILE_LANGUAGE>: Extend contexts supported

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5005
2020-07-14 07:22:30 -04:00
Brad King
35928fa7ca Merge topic 'getfeature-prop'
18726ad634 GetFeature(): return cmProp

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5004
2020-07-14 07:20:15 -04:00
Brad King
2455ec9565 Merge topic 'evaluate-cleanup'
43f7b17816 cmGeneratorExpressionInterpreter::Evaluate: remove const char* overload

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5003
2020-07-14 07:19:26 -04:00
Brad King
007cd3c83e Merge topic 'macos-11-file-GET_RUNTIME_DEPENDENCIES'
d9af90504f Tests: Update file(G_R_D) test to make system library optional
c51400033c file: Update GET_RUNTIME_DEPENDENCIES for macOS 11 dylib cache

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !4998
2020-07-14 07:15:12 -04:00
Brad King
8c6cce27ca Merge topic 'macos-11-file-GET_RUNTIME_DEPENDENCIES' into release-3.18
d9af90504f Tests: Update file(G_R_D) test to make system library optional
c51400033c file: Update GET_RUNTIME_DEPENDENCIES for macOS 11 dylib cache

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !4998
2020-07-14 07:15:11 -04:00
Brad King
2ef6ad0136 Merge topic 'profiling-case-insensitive-command-names' into release-3.18
7cf2f7d2af cmake: Store lowercase command names in profiling output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5007
2020-07-14 07:14:08 -04:00
Brad King
41ede81341 Merge topic 'profiling-case-insensitive-command-names'
7cf2f7d2af cmake: Store lowercase command names in profiling output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5007
2020-07-14 07:14:08 -04:00
Kitware Robot
8e7922e382 CMake Nightly Date Stamp 2020-07-14 00:01:11 -04:00
Alexandru Croitor
f6969b917d set_property: Deduplicate source file directory scopes
A user could specify the same directory scope to set_property()
multiple times, which in conjunction with APPEND would append the
property multiple times.

Make sure to deduplicate scopes across both DIRECTORY and
TARGET_DIRECTORY options, so that a property is only appended
once in such a scenario.

Fixes: #20941
2020-07-13 17:43:17 +02:00
Marc Chevrier
6491d2503c Genex $<COMPILE_LANGUAGE>: Extend contexts supported
When genex $<TARGET_PROPERTY:...> for properties like INCLUDE_DIRECTORIES
is evaluated as part of add_custom_command or add_custom_target,
genex $<COMPILE_LANGUAGE> and $<COMPLIE_LANG_AND_ID> should be supported.

Fixes: #20926
2020-07-13 16:27:19 +02:00