Commit Graph

6261 Commits

Author SHA1 Message Date
Naren Manimohan 2060a1445c Tests: Fix file name case in GHS object library test 2019-03-21 12:57:38 -04:00
Brad King ddad70c8a4 Tests: Run GHS tests in a separate ctest process
These tests use a different compiler than the rest of the test suite.
Isolate the rest of our tests from their environment.
2019-03-21 12:57:38 -04:00
Brad King 28ae243ca6 Tests: Run FindGTK2 tests only when explicitly enabled
Do not `find_package(GTK2)` by default, as it gives the impression that
CMake depends on it to build.  We will set `CMake_TEST_FindGTK2` in the
cache of automated builds where GTK2 is expected to work.
2019-03-14 11:17:10 -04:00
Brad King accbf41da5 Merge topic 'short-commands'
077ab5774c cmake: add short version of '--target <tgt>...' option
071f5e1544 cmake: Reformat '--parallel' and '--verbose' options in help

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3078
2019-03-14 11:06:19 -04:00
Brad King 7b81b1c72c Merge topic 'cuda_compiler_generator_expressions'
b53766b205 CUDA: Support compiler id and version generator expressions
b544e34af6 All VersionNode use the same capitalization pattern

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3085
2019-03-13 10:16:25 -04:00
Brad King 5822a7bed2 Merge topic 'shell_path'
463c2fba4e Genex: Teach SHELL_PATH to support a list of paths
21da25d2a8 Tests: Generalize GeneratorExpression MSYS path conversion workaround

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3057
2019-03-12 09:53:27 -04:00
Bartosz Kosiorek 077ab5774c cmake: add short version of '--target <tgt>...' option 2019-03-12 12:00:09 +01:00
Robert Maynard b53766b205 CUDA: Support compiler id and version generator expressions
Introduce the CUDA_COMPILER_ID and CUDA_COMPILER_VERSION generator
expressions.
2019-03-11 12:33:43 -04:00
Henri Manson 463c2fba4e Genex: Teach SHELL_PATH to support a list of paths
Extend the genex added by commit ca6ba3fee5 (Genex: Add a SHELL_PATH
expression, 2015-09-24, v3.4.0-rc1~37^2) to accept a `;`-list of paths,
convert them all, and generate a list separated by the native shell
`PATH``` separator.
2019-03-11 11:39:25 -04:00
Brad King 21da25d2a8 Tests: Generalize GeneratorExpression MSYS path conversion workaround
Use MSYS2's `MSYS2_ARG_CONV_EXCL` environment variable to prevent
path conversion where possible.
2019-03-11 11:37:52 -04:00
Brad King c2a3a945a5 Merge topic 'install-no-imported-global'
47389c5641 install: Do not crash on imported global target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3071
2019-03-08 07:32:48 -05:00
Brad King 47389c5641 install: Do not crash on imported global target
Since commit e89ad0f94e (install: Allow installing targets created in
another directory, 2018-06-18, v3.13.0-rc1~407^2) the `install(TARGETS)`
command may find a global-scoped target outside the calling directory.
Ignore an `IMPORTED GLOBAL` target if it is found in this way.  Imported
targets cannot be installed, and trying to do so violates internal
invariants.

Fixes: #19022
2019-03-07 09:00:56 -05:00
Brad King 809890e3f6 Merge topic 'issue-18883-support-for-multiple-targets'
324d18bb34 cmake: Teach --build mode to support multiple targets
ebc94500c1 cmGlobalGenerator: Optimize Printable() method from GeneratedMakeCommand
fdeb364a84 cmGlobalGenerator: Change case of methods from GeneratedMakeCommand struct
b3955a08ab cmakemain: Remove ignored --use-stderr option from command line help
f1367c8c51 cmGlobalGenerator: Remove unused code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2939
2019-03-06 08:32:39 -05:00
Brad King 742339a779 Merge topic 'ios-variable'
e427c7c1d8 iOS: Add IOS variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3051
2019-03-06 08:27:20 -05:00
Ruslan Baratov e427c7c1d8 iOS: Add IOS variable
Since commit 11da882a12 (Apple: Introduce separate system name for iOS,
tvOS, and watchOS, 2018-01-15, v3.14.0-rc1~14^2~1) we support setting
`CMAKE_SYSTEM_NAME` to `iOS`.  Existing iOS toolchain files already
set `IOS` as a short-hand variable, so do the same here.
2019-03-05 09:42:41 -05:00
Bartosz Kosiorek 324d18bb34 cmake: Teach --build mode to support multiple targets
Fixes: #16136
2019-03-05 08:55:28 -05:00
Brad King 70d204410a Merge topic 'FindPython-NumPy-fix-include-dir'
8e3358336d FindPython: Fix NumPy component include directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3053
2019-03-04 08:36:29 -05:00
Brad King dbd3b1ac90 Merge topic 'vs-fortran-rc'
0b82f56ac6 VS: Fix Fortran target type selection with RC sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3050
2019-03-04 08:35:46 -05:00
Marc Chevrier 8e3358336d FindPython: Fix NumPy component include directory
Update the component added by commit 513e77550d (FindPython: Introduce
NumPy component, 2018-12-12, v3.14.0-rc1~95^2).  The `numpy/`
sub-directory should not be part of the include directory.  It should be
part of the `#include` line.
2019-03-04 08:28:21 -05:00
Brad King 0b82f56ac6 VS: Fix Fortran target type selection with RC sources
The Intel Fortran `.vfproj` files do support both Fortran and the
Windows Resource compiler (`.rc)` files.  Prior to CMake 3.9 we did not
support that, but commit 2c9f35789d (VS: Decide project type by linker
lang as fallback, 2017-03-30, v3.9.0-rc1~340^2) accidentally enabled it.
It was then broken by commit d3d2c3cd49 (VS: Fix Fortran target type
selection when linking C++ targets, 2019-02-04, v3.14.0-rc1~13^2).

Restore support for Fortran+RC in VS projects and add a test case.

Fixes: #19002
2019-03-01 11:58:21 -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
Kyle Edwards 258298f597 Help: Clarify ordering of list(REMOVE_DUPLICATES)
This also adds a test to enforce the order behavior of
list(REMOVE_DUPLICATES).
2019-02-27 11:22:57 -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 f369d59cdd Merge branch 'cmake_role-vs-fix' into release-3.14
Merge-request: !3028
2019-02-27 08:05:55 -05:00
Brad King e994e1f9cd Merge branch 'FindOctave-remove' into release-3.14
Merge-request: !3027
2019-02-27 07:57:03 -05:00
Brad King ec033b5b80 Merge topic 'FindOctave-remove'
7a1f3fe041 FindOctave: Remove module pending further work

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3027
2019-02-27 07:57:01 -05:00
Brad King 4570b5ae91 Merge branch 'restore-min-cmake-3.1' into release-3.14
Merge-request: !3021
2019-02-27 07:54:49 -05:00
Brad King 2645839a83 Merge topic 'restore-min-cmake-3.1'
a0d4430d66 Tests: Restore support for CMake 3.1 through 3.6 with MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3021
2019-02-27 07:54:25 -05:00
Kyle Edwards e795be115e Merge branch 'master' into cmake_role-vs-fix 2019-02-26 17:28:04 -05: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
Brad King 7a1f3fe041 FindOctave: Remove module pending further work
The `FindOctave` module added by commit 170bcb6fdc (FindOctave: Add
module to find GNU octave, 2018-11-17, v3.14.0-rc1~283^2) has a few
problems in its implementation that need to be worked out before the
module can be included in a CMake release.  These were missed during
review.  Remove the module for now.  It can be restored later with a
fresh review.

Issue: #18991
2019-02-26 14:12:34 -05: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 a0d4430d66 Tests: Restore support for CMake 3.1 through 3.6 with MSVC
The change in commit a5dd159990 (Tests: Fix RunCMake.try_compile
CxxStandard case on MSVC, 2017-09-22, v3.10.0-rc1~63^2) introduced use
of `if()` conditions not supported until CMake 3.7, so while it was
intended to restore support for CMake versions prior to 3.9, it actually
only did so for 3.7 and 3.8.  Backport the logic to work with CMake 3.1.

Fixes: #18987
2019-02-26 07:35:24 -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 f709089d84 XLClang: Extract compiler implicit include directories 2019-02-25 08:24:28 -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
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
Brad King a4d99e4dec Merge topic 'cmrange-improvements'
b8031308f3 cmRange: Add unit tests
a8d51ef8b7 cmRange: Add functions filter and transform
da4773e8b8 cmRange: Add functions all_of, any_of, none_of
17a367e77f cmRange: Stylistic cleanup
9eb0e73f46 cmRange: Move to dedicated header file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Artur Ryt <artur.ryt@gmail.com>
Merge-request: !2972
2019-02-25 08:03:01 -05:00
Brad King 90323ff051 Merge topic 'remove-exclude-from-all-warning'
d3b765d451 EXCLUDE_FROM_ALL: Don't warn if installing target excluded from all

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3002
2019-02-25 07:49:53 -05:00
Craig Scott d3b765d451 EXCLUDE_FROM_ALL: Don't warn if installing target excluded from all
The original warning pre-dates support for install components.
There are now legitimate scenarios where an install(TARGETS)
command may list a target that is excluded from all, e.g.
hierarchical projects that will never install the component such a
target belongs to.

Fixes: #18938
2019-02-22 07:55:56 +11:00
Brad King 214fcefa52 Remove now-unused code once used for MIPSpro on IRIX
In commit beb991110d (Remove now-unused code once used on IRIX,
2019-01-11, v3.14.0-rc1~167^2) we removed remnants of IRIX support.
Also remove remnants of MIPSpro compiler support.
2019-02-21 11:12:51 -05:00
Brad King 02587d80cf Add deprecation warnings for policies CMP0066 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for policies
introduced in CMake 3.7 and below to encourage projects to port away
from setting policies to OLD.
2019-02-21 11:02:46 -05:00
Regina Pfeifer b8031308f3 cmRange: Add unit tests 2019-02-21 08:24:26 -05:00
Brad King e0fbb7bf08 Merge topic 'list-prepend-and-pop-subcommands'
a84e509844 list: add sub-commands PREPEND, POP_BACK, POP_FRONT

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2980
2019-02-20 09:04:58 -05:00
Alex Turbov a84e509844 list: add sub-commands PREPEND, POP_BACK, POP_FRONT 2019-02-19 09:42:36 -05:00
Brad King d2489f2fde Merge topic 'autogen_test_fix'
91344e7a46 Autogen: Fix RerunMocPlugin test for Ninja generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2971
2019-02-18 09:04:47 -05:00
Brad King 6646623993 Merge topic 'tests-intel-fixup'
8fc0c98f08 Tests: Fix Module.WriteCompilerDetectionHeader for Intel on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2963
2019-02-15 07:58:57 -05:00
Brad King 3411c81575 Merge topic 'try_compile-expand-compile-defs'
cde2596a19 try_compile: Restore expansion of ;-list in COMPILE_DEFINITIONS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2965
2019-02-15 07:19:51 -05:00