Commit Graph

29287 Commits

Author SHA1 Message Date
Brad King 62d876e4e3 Merge topic 'cmcomputecomponentgraph-compute-method'
bd0d03386b cmComputeComponentGraph: Move work out of constructor into Compute() method

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5079
2020-07-29 08:10:57 -04:00
Brad King 8a521f5e10 Merge topic 'refactor_cmTarget_language_initProperties'
6f1c04055f cmTarget: Refactor init of common language properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5077
2020-07-29 08:10:09 -04:00
Brad King 783c6e0455 Merge topic 'use-nonempty'
f37c14e930 Source: use cmNonempty()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5072
2020-07-29 08:08:02 -04:00
Brad King f04c68fab3 Merge topic 'noduplicates'
78357e98a4 Avoid duplicate calls to GetDefinition

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5073
2020-07-29 08:07:04 -04:00
Kitware Robot 49c600952e CMake Nightly Date Stamp 2020-07-29 00:02:15 -04:00
Kyle Edwards bd0d03386b cmComputeComponentGraph: Move work out of constructor into Compute() method
The computation of Tarjan's algorithm is an expensive operation which
should not be done in the constructor. Move this work into a dedicated
Compute() method, and call this method explicitly.
2020-07-28 15:30:56 -04:00
Robert Maynard 6f1c04055f cmTarget: Refactor init of common language properties 2020-07-28 12:37:44 -04:00
Craig Scott 22bfe014d0 Merge topic 'file-download-no-save'
fed7d8f76d file(DOWNLOAD): Make file argument optional

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5060
2020-07-28 10:23:35 -04:00
Vitaly Stakhovsky 78357e98a4 Avoid duplicate calls to GetDefinition 2020-07-28 09:12:16 -04:00
Vitaly Stakhovsky f37c14e930 Source: use cmNonempty() 2020-07-28 08:31:31 -04:00
Brad King 261a2585d9 Merge topic 'cleanup-target-types'
ef796cc743 cmGeneratorTarget: Skip computing link implementation for custom targets
45158b2afe cmGeneratorTarget: Simplify logic in ComputeLinkInterfaceLibraries
d6b1f5704e cmGeneratorTarget: Add missing nullptr checks
7695b67500 cmComputeTargetDepends: Add missing nullptr check
95b5df8646 cmGeneratorTarget: Skip computing languages for custom targets
2f0790df50 Factor out generator checks for filtering on non-compiling targets
422d9a0ab2 Factor out generator checks for filtering out interface libraries
bce82df0aa cmGeneratorTarget: Remove unnecessary target type check in dependency tracing
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !5038
2020-07-28 08:26:23 -04:00
Brad King 79d341d4d4 Merge topic 'cmctest-stdstring'
825b04c67a cmCTest: Members accept std::string parameters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5064
2020-07-28 08:25:47 -04:00
Brad King 40d3f5a227 Merge topic 'revert-add_test-special-chars'
5fc5f4d26e add_test: Revert "Allow special characters in test name"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5067
2020-07-28 08:24:34 -04:00
Brad King 1091e64177 Merge topic 'update-kwsys'
ead4adad75 Merge branch 'upstream-KWSys' into update-kwsys
36819d99c1 KWSys 2020-07-24 (c3054d90)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5055
2020-07-28 08:23:45 -04:00
Brad King 738f89f1ec Merge topic 'ctest-prefer-normative-text'
c83919d193 CTest: Prefer normative terms to express subprocess failures

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Lukas Riedel <mail@lukasriedel.com>
Acked-by: Yunus Sevinchan <yunussevinchan@gmail.com>
Merge-request: !5050
2020-07-28 08:21:38 -04:00
Kitware Robot e4e899056e CMake Nightly Date Stamp 2020-07-28 00:01:10 -04:00
Brad King 5fc5f4d26e add_test: Revert "Allow special characters in test name"
Revert commit f84af8e270 (add_test: Allow special characters in test
name, 2020-05-16, v3.18.0-rc1~142^2).  Unfortunately the fix breaks
projects that were working around the limitation with manual escaping.
The fix can be re-introduced with a policy in a future version.

Also add a 3.18.1 release note explaining the change.

Fixes: #21017, #20965
Issue: #19391
2020-07-28 08:04:11 +10:00
Kyle Edwards fed7d8f76d file(DOWNLOAD): Make file argument optional 2020-07-27 11:26:50 -04:00
Vitaly Stakhovsky 825b04c67a cmCTest: Members accept std::string parameters 2020-07-27 10:58:39 -04:00
Brad King cd8be45928 Merge topic 'ninja-remove-param-default'
cfe2dc4721 Ninja: Remove parameter default for cmNinjaTargetDepends

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5059
2020-07-27 10:51:12 -04:00
Brad King e0002c3e54 Merge topic 'xcode-12-legacy-deprecation'
36fc3a1e84 Xcode: Suppress legacy build system deprecation warning

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5052
2020-07-27 10:45:15 -04:00
Brad King ea8bb8a2a7 Merge topic 'vs-lang-flags'
a33a4ec68b Merge branch 'backport-vs-lang-flags' into vs-lang-flags
c4109a1bc8 VS: Restore toleration of target-wide -TP flag with MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5051
2020-07-27 10:42:44 -04:00
Brad King 11cf196fd2 Merge topic 'EXCLUDE_FROM_ALL-genex'
22bd267388 Help: Add release note for EXCLUDE_FROM_ALL genex support
807c8aa9f0 Tests: Simplify RunCMake.ExcludeFromAll single-config case
36743436cf Tests: Fix RunCMake.ExcludeFromAll test program warning
99c131c5a3 cmGlobalGenerator: Fix spelling of EXCLUDE_FROM_ALL in error message

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5049
2020-07-27 10:40:56 -04:00
Robert Maynard c83919d193 CTest: Prefer normative terms to express subprocess failures
Issue: #21004
2020-07-27 10:32:21 -04:00
Brad King ef796cc743 cmGeneratorTarget: Skip computing link implementation for custom targets
Targets created by `add_custom_target` cannot be used with
`target_link_libraries` and so have no link implementation.
2020-07-27 10:26:07 -04:00
Kitware Robot 097a302da0 CMake Nightly Date Stamp 2020-07-27 00:01:28 -04:00
Kitware Robot cdac7d3428 CMake Nightly Date Stamp 2020-07-26 00:01:08 -04:00
Kitware Robot 31425f88f2 CMake Nightly Date Stamp 2020-07-25 00:01:07 -04:00
Kyle Edwards cfe2dc4721 Ninja: Remove parameter default for cmNinjaTargetDepends 2020-07-24 11:49:59 -04:00
Brad King ead4adad75 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2020-07-24 (c3054d90)
2020-07-24 07:05:24 -04:00
Kitware Robot 1138907a58 CMake Nightly Date Stamp 2020-07-24 00:01:10 -04:00
Brad King 45158b2afe cmGeneratorTarget: Simplify logic in ComputeLinkInterfaceLibraries
Also check the result of `GetLinkImplementationLibrariesInternal`
before using it.
2020-07-23 13:31:45 -04:00
Brad King d6b1f5704e cmGeneratorTarget: Add missing nullptr checks
Check the result of `GetLinkImplementationLibraries` before using it.
2020-07-23 13:31:45 -04:00
Brad King 7695b67500 cmComputeTargetDepends: Add missing nullptr check
Check the result of `GetLinkImplementation` before using it.
2020-07-23 13:31:45 -04:00
Brad King 95b5df8646 cmGeneratorTarget: Skip computing languages for custom targets
Targets created by `add_custom_target` do not compile any sources
and therefore have no languages.
2020-07-23 13:31:45 -04:00
Brad King 2f0790df50 Factor out generator checks for filtering on non-compiling targets
Add a `cmGeneratorTarget::CanCompileSources` helper method to tell
generators whether a target might compile anything.
2020-07-23 13:31:45 -04:00
Brad King 422d9a0ab2 Factor out generator checks for filtering out interface libraries
Add a `cmGeneratorTarget::IsInBuildSystem` helper method to tell
generators whether a target should participate in the generated build
system.
2020-07-23 13:31:44 -04:00
Brad King bce82df0aa cmGeneratorTarget: Remove unnecessary target type check in dependency tracing
Since commit 2600e923a6 (Disallow INTERFACE libraries with
add_custom_command(TARGET)., 2014-03-19, v3.0.0-rc3~1^2), we do not
trace dependencies of INTERFACE libraries that do not participate in the
build system.  Therefore we can remove a check of the target type from
the implementation that had been added by commit 9db9c1fc8b (cmTarget:
Don't try to get sources of an INTERFACE_LIBRARY., 2014-02-14,
v3.0.0-rc1~20^2).
2020-07-23 13:31:16 -04:00
Brad King 36fc3a1e84 Xcode: Suppress legacy build system deprecation warning
Xcode 12 beta 3 now warns about using the legacy build system.
Since generation of the build system is CMake's responsibility,
the warning is not relevant to our users.  Suppress it.

Issue: #18088
2020-07-23 13:00:42 -04:00
Brad King a33a4ec68b Merge branch 'backport-vs-lang-flags' into vs-lang-flags 2020-07-23 10:58:11 -04:00
Brad King c4109a1bc8 VS: Restore toleration of target-wide -TP flag with MSVC
Since commit 3b547e2e4b (VS: Simplify logic adding source file C/C++
language flag to MSVC, 2020-05-15, v3.18.0-rc1~139^2~1) we only add a
per-source language selection flag when the source file extension does
not match the compiler's default.  This approach breaks when a project
adds a target-wide `-TP` flag.

Although such projects likely did not work with non-VS generators, we
did support them before in Visual Studio generators.  Add a special case
to tolerate such flags again.

Fixes: #21005
2020-07-23 10:54:35 -04:00
Brad King 6fd7ca5e51 cmTarget: Skip output dir property init for CMake-provided targets 2020-07-23 08:56:51 -04:00
Brad King 2f44a6a499 cmTarget: De-duplicate conditions for property initialization 2020-07-23 08:56:50 -04:00
Brad King 159a4d6b11 cmGlobalNinjaGenerator: Replace switch default with all cases 2020-07-23 08:56:50 -04:00
Brad King 9f8edd6ac3 cmLocalUnixMakefileGenerator3: Skip object file listing for custom targets 2020-07-23 08:56:50 -04:00
Brad King e3b5abd068 Merge topic 'fix-typos-identified-using-codespell'
207373802e Fix typos identified using codespell

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5040
2020-07-23 08:28:21 -04:00
Brad King 369ba2f4e2 Merge topic 'simplify-sources-check'
634c461b22 cmGlobalGenerator: Simplify CheckTargetsForMissingSources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5043
2020-07-23 08:27:17 -04:00
Brad King 4b1c6f908f Merge topic 'cmake-gui-qt-5.14' into release-3.18
af6cf586f6 cmake-gui: Fix crash when built with Qt 5.14 or later

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5045
2020-07-23 08:20:48 -04:00
Brad King f3d93edb36 Merge topic 'cmake-gui-qt-5.14'
af6cf586f6 cmake-gui: Fix crash when built with Qt 5.14 or later

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5045
2020-07-23 08:20:48 -04:00
Brad King 99c131c5a3 cmGlobalGenerator: Fix spelling of EXCLUDE_FROM_ALL in error message 2020-07-23 07:13:36 -04:00