Commit Graph

26085 Commits

Author SHA1 Message Date
Bartosz Kosiorek ebc94500c1 cmGlobalGenerator: Optimize Printable() method from GeneratedMakeCommand 2019-03-04 10:44:15 +01:00
Bartosz Kosiorek fdeb364a84 cmGlobalGenerator: Change case of methods from GeneratedMakeCommand struct 2019-03-04 10:44:14 +01:00
Bartosz Kosiorek b3955a08ab cmakemain: Remove ignored --use-stderr option from command line help 2019-03-04 10:44:14 +01:00
Bartosz Kosiorek f1367c8c51 cmGlobalGenerator: Remove unused code 2019-03-04 10:44:14 +01:00
Kitware Robot d1558fbf3a CMake Nightly Date Stamp 2019-03-04 00:01:14 -05:00
Kitware Robot 033728e867 CMake Nightly Date Stamp 2019-03-03 00:01:05 -05:00
Kitware Robot 26068d2db8 CMake Nightly Date Stamp 2019-03-02 00:01:09 -05:00
Brad King 980d9a987d Merge topic 'cuda_device_link_handle_frameworks'
d5d1b15654 CUDA: Filter out -framework arguments during device linking

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3039
2019-03-01 09:08:56 -05:00
Brad King 8b1716a62a Merge topic 'vs2019'
c9a7f3135e Help: Update VS 2019 generator release note for preview 4
00c1120837 VS: Drop workaround needed only for VS 2019 preview 2 and 3

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Egor Pugin <egor.pugin@gmail.com>
Merge-request: !3044
2019-03-01 09:07:29 -05:00
Kitware Robot 2f59cd6371 CMake Nightly Date Stamp 2019-03-01 00:01:07 -05:00
Robert Maynard d5d1b15654 CUDA: Filter out -framework arguments during device linking
The filter in commit e768d96c74 (CUDA: Filter out host link flags during
device linking, 2018-10-22, v3.13.0-rc2~4^2~2^2) removes `-framework`
but not the framework name that comes after it.  Revise the logic to
remove both.

Fixes: #18911
2019-02-28 14:56:11 -05:00
Brad King d0a328c9f6 Merge topic 'refactor-handle-path-command'
9636b03cca cmFileCommand: Refactor HandleCMakePathCommand

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2960
2019-02-28 11:43:39 -05:00
Brad King 6066aa471e Merge topic 'optimize_ge_node_lookup'
a490ea4a28 cmGeneratorExpressionNode: Initialize node key map in class constructor

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3031
2019-02-28 11:42:32 -05:00
Brad King bfd71fc05c Merge topic 'features-from-default-standard'
c7213ca870 Features: Do not use a lower-than-default standard for requested features

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3023
2019-02-28 11:41:43 -05:00
Brad King 00c1120837 VS: Drop workaround needed only for VS 2019 preview 2 and 3
A temporary workaround added by commit 626c51f47b (VS: Update for Visual
Studio 2019 Preview 2, 2019-01-24, v3.14.0-rc1~74^2) is no longer needed
as of VS 2019 preview 4.

Fixes: #18898
2019-02-28 11:04:29 -05:00
Brad King a4f2dd9577 Merge topic 'check-std-size-cbegin-cend'
e6195989c7 Merge branch 'backport-check-std-size-cbegin-cend'
a605bf438e Extend C++17/C++14 feature checks to cover more standard library APIs
e17deb7ad4 Extend C++17/C++14 feature checks to cover more standard library APIs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3030
2019-02-28 11:00:13 -05:00
Kitware Robot 0df31d99ae CMake Nightly Date Stamp 2019-02-28 00:01:08 -05:00
Mathieu Garaud a605bf438e Extend C++17/C++14 feature checks to cover more standard library APIs
Make sure `std::cbegin`, `std::cend`, and `std::size` work in C++17 or
C++14 mode before choosing the corresponding standard level for
compiling CMake itself.  This helps in cases that the compiler is using
a standard library too old to support the full standard level chosen.
2019-02-27 11:27:17 -05:00
Brad King b13a8441cd Merge topic 'ninja-dyndep-lang-aware'
f22c18b1c1 ninja: name dyndep internal files using the object file
7c78adca8e cmNinjaTargetGenerator: remove "preprocessed" mentions in dyndep
933dd91642 ninja: do not assume explicit preprocessing uses that output
2c0a7bc770 ninja: pass language to cmake_ninja_depends
72f9bb2993 ninja: make dyndep generation language aware
2dd0cb7aeb Help: note that Ninja also uses OBJECT_OUTPUTS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2997
2019-02-27 08:21:32 -05:00
Brad King 07421e6785 Merge topic 'autogen_variable_names'
63191b169e Autogen: Use more readable variable names for static const AUTO* strings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3026
2019-02-27 08:20:42 -05:00
Brad King 23bcac5d58 Merge topic 'ctest-clean-compress'
b5a69c6279 cmcompress: Delete unused 3rdParty module

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3019
2019-02-27 08:20:03 -05:00
Brad King 557d4b5882 Merge topic 'cmake_role-vs-fix'
e795be115e Merge branch 'master' into cmake_role-vs-fix
4b95e7fe63 CMAKE_ROLE: Fix value in --build for Visual Studio generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3028
2019-02-27 08:09:42 -05:00
Brad King 9b075d9032 Merge topic 'include_external_msproject-exclude-from-all'
3106cf4e3d include_external_msproject: Restore support for EXCLUDE_FROM_ALL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3025
2019-02-27 07:56:00 -05:00
Sebastian Holtermann a490ea4a28 cmGeneratorExpressionNode: Initialize node key map in class constructor
By initializing the node map in the class constructor of the static instance
we avoid an if-empty check.
2019-02-27 13:25:22 +01:00
Kitware Robot b3191a0f57 CMake Nightly Date Stamp 2019-02-27 00:01:09 -05:00
Kyle Edwards e795be115e Merge branch 'master' into cmake_role-vs-fix 2019-02-26 17:28:04 -05:00
Artur Ryt 9636b03cca cmFileCommand: Refactor HandleCMakePathCommand
Make use of cmJoin and fresh cmRange::transform
to reduce function complexity.
Move conversion logic to named functions.
2019-02-26 21:39:10 +01:00
Kyle Edwards 4b95e7fe63 CMAKE_ROLE: Fix value in --build for Visual Studio generators
Fixes: #18990
2019-02-26 14:52:17 -05:00
Zsolt Parragi c7213ca870 Features: Do not use a lower-than-default standard for requested features
`AddRequiredTargetC(xx)` feature didn't take the default compiler
standard into account, which possibly resulted in the use of an older
standard when some features requested it.

Fixes: #18686
2019-02-26 14:35:55 -05:00
Sebastian Holtermann 63191b169e Autogen: Use more readable variable names for static const AUTO* strings 2019-02-26 19:33:26 +01:00
Brad King 2621efac19 Merge topic 'vs-wince-no-deploy'
917c035ada VS: support suppressing deployment of selected targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2991
2019-02-26 11:10:08 -05:00
Brad King 28a296b6c4 Merge topic 'update-kwsys'
f6eebee194 Merge branch 'upstream-KWSys' into update-kwsys
11fe7c9063 KWSys 2019-02-25 (833b2470)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3018
2019-02-26 11:08:43 -05:00
Brad King 3c7662fd62 Merge topic 'add-xlclang'
d9d285c5ad jsoncpp: Fix include order for build within CMake
0d489fab19 libuv: fix atomic ops compilation with xlclang
1699f5c231 Utilities: Suppress warnings in third-party code when using XLClang
f709089d84 XLClang: Extract compiler implicit include directories
5c41386357 XLClang: Add policy CMP0089 to present as XL for compatibility
8278237933 XL: Remove overlap with the new XLClang compiler ID
6f5cf2d2c6 XL: Revert "Recognize compilers identified by __ibmxl__"
90c6156aa8 XLClang: Add a new compiler ID for the clang-based XL compiler
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2921
2019-02-26 11:07:54 -05:00
Brad King 5ac1c809f7 Merge topic 'autogen_headers_at_configure_time'
747463d1b3 Autogen: Move additional source header search to configuration stage
16c687825d Autogen: Refactor file lists computation
2d29166758 Autogen: Use cm::make_unique to allocate jobs
8182c21d2d Autogen: Use std::unordered_set instead of std::set for skip lists
84819c79e7 Autogen: Refactor cmQtAutoGenInitializer::AddGeneratedSource method
d9893fb594 Autogen: Refactor Qt executable name computation
5e36209f71 Autogen: Rename cmQtAutoGen::GeneratorT enum to cmQtAutoGen::GenT
14ae19c327 Autogen: cmQtAutoGen: Store generator names in class static const strings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3001
2019-02-26 11:06:10 -05:00
Brad King 3106cf4e3d include_external_msproject: Restore support for EXCLUDE_FROM_ALL
In commit dc6888573d (Pass EXCLUDE_FROM_ALL from directory to targets,
2019-01-15, v3.14.0-rc1~83^2) all `AddNewTarget` call sites were updated
to copy the directory-level `EXCLUDE_FROM_ALL` into the target property
of the same name, except that the one for `include_external_msproject`
was incorrectly missed.  Add it now.

Furthermore, refactoring in commit b99129d2d8 (ENH: some code cleanup,
2007-03-12, v2.6.0~2020) accidentally set the `EXCLUDE_FROM_ALL` target
property of `include_external_msproject`-generated targets to `FALSE`
instead of simply leaving it unset.  This was not necessary but had no
effect until the above commit gave it a meaning.  Drop that.

Fixes: #18986
2019-02-26 10:20:01 -05:00
Kitware Robot 7c292b37cf CMake Nightly Date Stamp 2019-02-26 00:01:07 -05:00
Ben Boeckel f22c18b1c1 ninja: name dyndep internal files using the object file
Now that preprocessing outputs are not necessarily used all the way
through, the output name is a better base name to use for these files.
2019-02-25 10:14:11 -05:00
Ben Boeckel 7c78adca8e cmNinjaTargetGenerator: remove "preprocessed" mentions in dyndep
Not all languages compile the preprocessed source (or even have
preprocessed sources at all).
2019-02-25 10:14:11 -05:00
Ben Boeckel 933dd91642 ninja: do not assume explicit preprocessing uses that output
In Fortran, this is OK, but for C++, compiling preprocessed source
generally results in poorer diagnostic messages and can also be
ill-formed anyways.
2019-02-25 10:14:11 -05:00
Ben Boeckel 2c0a7bc770 ninja: pass language to cmake_ninja_depends 2019-02-25 10:14:09 -05:00
Ben Boeckel 72f9bb2993 ninja: make dyndep generation language aware
A target may have multiple languages with dyndep rules, separate `.dd`
files should be generated.
2019-02-25 10:06:20 -05:00
Brad King f259e8759c Merge topic 'gt-shorter-unique-names'
3f685ac3e1 Use shorter names in internal TARGET_PROPERTY expressions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3009
2019-02-25 09:23:17 -05:00
Wil Stark 917c035ada VS: support suppressing deployment of selected targets
Add a `VS_NO_SOLUTION_DEPLOY` target property to explicitly specify for
each target whether to suppress VS solution deployment of the generated
target project.

Fixes: #18953
2019-02-25 09:14:15 -05:00
Brad King f6eebee194 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2019-02-25 (833b2470)
2019-02-25 09:04:03 -05:00
Brad King 5c41386357 XLClang: Add policy CMP0089 to present as XL for compatibility
We now identify IBM's Clang-based XL compilers, which define
`__ibmxl__`, as `XLClang` rather than `XL`.  In order to support
existing project code that checks for `XL`, add a policy whose OLD
behavior is to present the compiler id as `XL` and whose NEW behavior is
to present the compiler id as `XLClang` as we really detect it.
2019-02-25 08:24:28 -05:00
Sebastian Holtermann 747463d1b3 Autogen: Move additional source header search to configuration stage
The computation of additional source headers and and private headers for
AUTOGEN is moved from the _autogen target to the configuration stage.  This
makes them available for _autogen target dependency computations.

Closes: #18949
2019-02-25 08:20:19 -05:00
Sebastian Holtermann 16c687825d Autogen: Refactor file lists computation
In AUTOGEN this replaces simple file name lists with two list (for
headers and sources) of structs with file name and file flags.
The file name lists that are passed to the _autogen target via
AutogenInfo.cmake are filtered from these two lists.
2019-02-25 08:20:19 -05:00
Brad King f3b4a12c61 Merge topic 'return-explicit-conversion'
c7f3663b10 cmServerConnection: make return conversions explicit

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3000
2019-02-25 08:14:21 -05:00
Brad King 40768761b6 Merge topic 'drop-MIPSpro'
214fcefa52 Remove now-unused code once used for MIPSpro on IRIX

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3004
2019-02-25 08:13:44 -05:00
Brad King a6cb73b97f Merge topic 'deprecate-policy-old'
02587d80cf Add deprecation warnings for policies CMP0066 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3003
2019-02-25 08:12:54 -05:00