Commit Graph

5447 Commits

Author SHA1 Message Date
Shane Parris 915b71010c Enhance RunCMake test coverage for file(GLOB) 2018-02-28 09:34:47 -05:00
Brad King 0b8db75b47 Merge topic 'contract-plplot'
4964fe1e Tests: Update PLplot contract test repository URL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1801
2018-02-27 09:27:43 -05:00
Brad King 2edd5cb9e0 Merge topic 'unixtimefix'
e1cd936c Tests: Fix TIMESTAMP-UnixTime test under SOURCE_DATE_EPOCH=1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1800
2018-02-27 09:25:48 -05:00
Bernhard M. Wiedemann e1cd936c62 Tests: Fix TIMESTAMP-UnixTime test under SOURCE_DATE_EPOCH=1
The test was expecting timestamps on day 1 in 1970 to start at 86400 but
they actually started at 0.  This worked without `SOURCE_DATE_EPOCH=1`
because after 1972, leap days compensated the offset.

Fixes: #17762
2018-02-26 10:35:30 -05:00
Brad King 4964fe1e5a Tests: Update PLplot contract test repository URL
Use a `git://` protocol URL documented by the repository hosting
infrastructure.  After some updates to that infrastructure, the
`https://` URL with the `.git` extension no longer works reliably.
2018-02-26 09:33:56 -05:00
Robert Dailey 076a356cd1 VS: Support C# project references
When specifying a pure C# target in the `target_link_libraries()` call to
another C++ target, a `<ProjectReference>` was setup for it (we wanted this)
but also a corresponding `.lib` was added under `<AdditionalDependencies>`
(we didn't want this).

This change introduces a check that prevents `.lib` linker options from
being used when the corresponding target for that library is a C# target.

Fixes: #17678
2018-02-23 08:53:17 -06:00
Brad King f6fc689c26 Merge topic '14297-partial-xcode-zero-check'
481420ee Xcode: Generate ZERO_CHECK generator target only once

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1790
2018-02-23 08:22:51 -05:00
Gregor Jasny 481420ee89 Xcode: Generate ZERO_CHECK generator target only once
In case CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY has been enabled
generate only the root-level ZERO_CHECK target so targets in
subdirectories pick up the root generator target of ZERO_CHECK.

For the case that CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY is not
enabled more investigation and a proper and final fix is still needed.

Issue: 14297
2018-02-22 21:15:48 +01:00
Brad King 8ac6c7e7f3 Merge topic 'test-ExternalProject-serial'
8a55ad2c Tests: Run ExternalProject tests serially

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1783
2018-02-22 11:26:57 -05:00
Brad King dcb45a1161 Merge topic 'test-CompileFeatures-c11-range'
972f7caa Tests: Make CompileFeatures C dialect check consistent with impl

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1785
2018-02-22 11:24:04 -05:00
Brad King 13c5a91197 Merge branch 'test-CompileFeatures-c11-range' into release-3.11
Merge-request: !1785
2018-02-21 14:41:56 -05:00
Brad King 972f7caad3 Tests: Make CompileFeatures C dialect check consistent with impl
`Modules/CMakeCCompilerId.c.in` will report the C dialect as 11 whenever
`__STDC_VERSION__` indicates *at least* C 11.  Make the test consistent
with this.  We already do this for the C++ case.

Fixes: #17740
2018-02-21 14:39:09 -05:00
Brad King 8a55ad2c5b Tests: Run ExternalProject tests serially
These tests use a lot of resources, so run them separately from other
tests to avoid competition (which may cause spurious timeouts).
2018-02-21 08:32:43 -05:00
Brad King 846a4dd118 Merge topic 'string-join'
689eeb67 string: Add JOIN subcommand

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com>
Merge-request: !1762
2018-02-20 11:47:51 -05:00
Alex Turbov 689eeb67cb string: Add JOIN subcommand
This is just like CONCAT but accepts a glue string to put between
each value.  `JOIN ""` is equivalent to `CONCAT`.
2018-02-16 10:04:47 -05:00
Brad King 524696ec10 Merge topic 'file_cmd_touch'
e78e24f6 Replaces execute_process calls to touch files with file(TOUCH) calls
602988e1 Adds file(TOUCH) and file(TOUCH_NOCREATE) sub-commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1705
2018-02-16 09:39:47 -05:00
Brad King d97c9ffb6c Merge topic 'genex-IN_LIST-operator'
5089f560 Genex: Add IN_LIST logical operator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1724
2018-02-16 09:22:56 -05:00
Shane Parris e78e24f68c Replaces execute_process calls to touch files with file(TOUCH) calls 2018-02-15 10:54:38 -05:00
Shane Parris 602988e1e5 Adds file(TOUCH) and file(TOUCH_NOCREATE) sub-commands 2018-02-15 10:54:18 -05:00
Brad King a2ec98b7d9 Merge topic 'enhanced-UseSWIG-Module'
0bef9eb4 UseSWIG: modernize module
d6048bd1 UseSWIG: Re-work test framework

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1707
2018-02-15 08:50:29 -05:00
Brad King b5d18cbd77 Merge topic 'directory-property-TESTS'
b513a879 Tests management: add TESTS directory property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1748
2018-02-15 08:49:44 -05:00
Brad King 8bd3e13ec3 Merge topic 'export-android-mk'
b6d68766 Android.mk: Fix export of static libraries with PRIVATE dependencies
56e16885 Android.mk: Evaluate generator expressions up front

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1766
2018-02-15 08:42:47 -05:00
Brad King b6d68766b1 Android.mk: Fix export of static libraries with PRIVATE dependencies
The `LINK_ONLY` generator expression is used to represent private
dependencies of static libraries in their `INTERFACE_LINK_LIBRARIES`
property value.  Fix evaluation of generator expressions during export
to support the `LINK_ONLY` genex.  Extend the RunCMake.AndroidMK test
with a case for this.
2018-02-14 11:24:05 -05:00
Brad King ead859f50c Merge topic 'ninja-cmd'
22e8b3af Ninja: Generate scripts for long custom command sequences

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1604
2018-02-14 09:43:38 -05:00
Marc Chevrier 0bef9eb410 UseSWIG: modernize module 2018-02-14 08:35:04 +01:00
Marc Chevrier d6048bd153 UseSWIG: Re-work test framework 2018-02-14 08:35:04 +01:00
luz.paz 193082a3c8 MAINT: Misc. typos
Found via `codespell -q 3 -I ../cmake-whitelist.txt`.
2018-02-13 11:24:30 -05:00
Marc Chevrier b513a879ec Tests management: add TESTS directory property
Implements: #17680
2018-02-08 19:16:28 +01:00
Marc Chevrier 5089f560e7 Genex: Add IN_LIST logical operator
Implements #17679
2018-02-07 10:57:18 +01:00
Roger Leigh 22e8b3af04 Ninja: Generate scripts for long custom command sequences
Ninja runs just one command line for every build statement, so the Ninja
generator needs to `&&`-chain multiple commands together into one long
string.  For long custom command sequences this can exceed the maximum
command-line length for the operating system.  In such cases, write the
commands out to a script instead, and then run the script from Ninja's
one command line.

Co-Author: Brad King <brad.king@kitware.com>
Fixes: #15612
2018-02-06 13:24:46 -05:00
Brad King 8285aa9e4e Tests: Add missing error check in CudaOnly.GPUDebugFlag
If `cudaMallocManaged` fails then later use of `has_debug` is not valid.
2018-02-01 09:07:50 -05:00
Brad King 4499cc8bb6 Merge topic 'msvc_cuda_files_use_consistent_obj_names'
fa583869 CUDA: Use MSVC default pattern for naming object files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1722
2018-01-31 08:36:24 -05:00
Brad King 3fd01be56b Merge topic 'source_group-TREE-args'
365e02e7 source_group: Fix TREE argument parsing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1713
2018-01-31 08:34:24 -05:00
Mateusz Janek 365e02e73e source_group: Fix TREE argument parsing
Fixes: #17581
2018-01-30 12:49:26 -05:00
Robert Maynard fa583869f7 CUDA: Use MSVC default pattern for naming object files
The default that CUDA uses causes failures when you try to embed
CUDA obj's into another target.
2018-01-30 09:14:02 -05:00
Brad King 18153217e2 Merge topic 'ctest_start_function_scope'
13347740 Help: add release notes, documentation for CTEST_RUN_CURRENT_SCRIPT behavior
74092d92 cmCTestScriptHandler: Add new field ShouldRunCurrentScript

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1703
2018-01-29 08:04:59 -05:00
Kyle Edwards 74092d92bf cmCTestScriptHandler: Add new field ShouldRunCurrentScript
This is to avoid scope issues with CTEST_RUN_CURRENT_SCRIPT. If
ctest_start() is called within a function scope, the value of
CTEST_RUN_CURRENT_SCRIPT that it sets doesn't make it to the global
scope. With this change, ctest_start() no longer sets
CTEST_RUN_CURRENT_SCRIPT, and instead sets a field directly in
cmCTestScriptHandler. The old behavior of CTEST_RUN_CURRENT_SCRIPT
has also been kept for projects and tests that rely on setting it.
2018-01-26 09:27:22 -05:00
Brad King d71be346a4 Tests: Speed up RunCMake.TargetPropertyGeneratorExpressions
Consolidate similar test cases.
2018-01-25 12:08:13 -05:00
Brad King 234a069de3 Tests: Speed up RunCMake.GeneratorExpression
Avoid enabling languages in cases that do not need them.
2018-01-25 10:50:20 -05:00
Brad King aaf3c5b32c Merge topic 'RemoveKDevelop3'
551bd0b3 Generators: adjust error message for the removed KDevelop3 generator
9198e6a2 Generators: remove KDevelop3 generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1688
2018-01-25 08:34:53 -05:00
Brad King 76f5a87cf1 Merge topic 'sourceFile-new-properties'
04483111 sourceFile properties: add property INCLUDE_DIRECTORIES
3073bd1f VisualStudio generators: refactoring
78b1c2e0 sourceFile properties: add property COMPILE_OPTIONS
3f935e69 LocalGenerator: refactoring

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1596
2018-01-25 08:33:35 -05:00
Brad King 03050c5689 Merge topic 'fix-include_regular_expression-subdir'
2d64f9f0 include_regular_expression: Fix propagation to subdirectories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1690
2018-01-25 08:31:03 -05:00
Marc Chevrier 0448311179 sourceFile properties: add property INCLUDE_DIRECTORIES 2018-01-24 15:10:10 +01:00
Brad King 05e9cdb81e Merge topic 'GenerateExportHeader-include-guard'
b1ae9aaf GenerateExportHeader: add release notes, tests for include guard changes
f4082b0e GenerateExportHeader: add INCLUDE_GUARD_NAME option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1643
2018-01-24 08:53:05 -05:00
Brad King 56fd8b3c72 Merge topic 'UseJava-native-headers-generation'
4829ea23 add_jar: add option GENERATE_NATIVE_HEADERS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1675
2018-01-24 08:51:32 -05:00
Alex Neundorf 9198e6a27b Generators: remove KDevelop3 generator
The last KDevelop3 release was many years ago, in 2008 I think.
I haven't seen or read about anybody using KDevelop 3 since a
long time, so I think it can safely be removed from CMake.
KDevelop 4 (first released in 2010) has its own proper CMake
support now, independent from this generator.

Alex
2018-01-24 08:30:02 -05:00
Brad King 2d64f9f08d include_regular_expression: Fix propagation to subdirectories
Refactoring in commit v3.4.0-rc1~321^2 (cmMakefile: Remove special
handling of INCLUDE_REGULAR_EXPRESSION, 2015-04-04) accidentally broke
propagation of the include regex to subdirectories.  Refactoring in
commit v3.5.0-rc1~319^2~1 (cmState: Initialize properties immediately,
2015-10-07) moved maintenance of this value from `cmMakefile` to
`cmStateSnapshot`.

Restore propagation of the `INCLUDE_REGULAR_EXPRESSION` to
subdirectories and add a test to cover it.

Fixes: #17676
2018-01-24 08:20:19 -05:00
Kyle Edwards b1ae9aaf79 GenerateExportHeader: add release notes, tests for include guard changes 2018-01-23 10:43:40 -05:00
Marc Chevrier 78b1c2e09e sourceFile properties: add property COMPILE_OPTIONS
Add the support of per-source property COMPILE_OPTIONS,
including generator expressions support.

Related: #17507
2018-01-23 10:24:56 +01:00
Marc Chevrier 4829ea239a add_jar: add option GENERATE_NATIVE_HEADERS 2018-01-22 17:15:59 +01:00