Commit Graph

1890 Commits

Author SHA1 Message Date
Craig Scott d780fb15a4 Merge topic 'runcmake-test-filter'
b6eafd5781 Tests: Add RunCMake_TEST_FILTER environment variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Artur Ryt <artur.ryt@gmail.com>
Merge-request: !2743
2018-12-22 16:10:29 -05:00
Craig Scott 91bcb88c3c Merge topic 'output-on-failure'
19d86e26e3 ExternalProject: add LOG_OUTPUT_ON_FAILURE option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2625
2018-12-21 16:21:47 -05:00
Wouter Klouwen 19d86e26e3 ExternalProject: add LOG_OUTPUT_ON_FAILURE option
This option only has an effect if at least one of the other LOG_<step>
options is enabled.  If an error occurs for a step which has logging to
file enabled, that step's output will be printed to the console.  For
cases where a large amount of output is recorded, just the end of that
output may be printed to the console.
2018-12-21 07:52:08 +11:00
Kyle Edwards 3f915531ad Tests: Fix Cygwin failure on RunCMake.install 2018-12-19 12:04:59 -05:00
Kyle Edwards b6eafd5781 Tests: Add RunCMake_TEST_FILTER environment variable
This environment variable allows developers to locally run only a
subset of RunCMake subtests in a single RunCMakeTest.cmake script.
If the environment variable is not set, all of the tests in the
script are run.
2018-12-13 18:47:13 -05:00
Brad King e2d0da3366 Merge topic 'vs_deploy_content_fix'
b5b63da088 VS: Fix Deploy content in .csproj files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2713
2018-12-13 10:03:52 -05:00
Brad King dc90cd6877 Merge topic 'fileapi'
b9c6f08276 Help: Add release note for fileapi feature
4b6b2a571c fileapi: extend codemodel v2 with directory details
eb8c7676a4 fileapi: extend codemodel v2 with a project model
42f0125ceb fileapi: Add test for cmakeFiles v1
6615408193 fileapi: add cmakeFiles v1
3f6ee75a66 fileapi: Add test for cache v2
7489e95b8e fileapi: add cache v2
ea0a060168 fileapi: Add test for codemodel v2
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2706
2018-12-13 09:57:59 -05:00
Brad King 4b6b2a571c fileapi: extend codemodel v2 with directory details
Issue: #18398
Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
2018-12-12 15:12:26 -05:00
Brad King eb8c7676a4 fileapi: extend codemodel v2 with a project model
Offer clients a `project()`-centric view of the build system.  This is
similar to the directory-centric view but consolidates subdirectories
that do not call `project()` with a new project name.

Issue: #18398
Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
2018-12-12 15:12:26 -05:00
Kyle Edwards 42f0125ceb fileapi: Add test for cmakeFiles v1 2018-12-12 13:02:31 -05:00
Brad King 6615408193 fileapi: add cmakeFiles v1
Issue: #18398
2018-12-12 09:46:13 -05:00
Kyle Edwards 3f6ee75a66 fileapi: Add test for cache v2 2018-12-12 09:46:13 -05:00
Brad King 7489e95b8e fileapi: add cache v2
Start with v2 to distinguish it from server-mode v1.

Issue: #18398
2018-12-12 09:46:13 -05:00
Kyle Edwards ea0a060168 fileapi: Add test for codemodel v2 2018-12-12 09:45:49 -05:00
Brad King 3e922ceb5e fileapi: add codemodel v2
Start with v2 to distinguish it from server-mode v1.

Issue: #18398
2018-12-12 06:40:10 -05:00
Kyle Edwards 555fa77a35 fileapi: Add more infrastructure to FileAPI test 2018-12-12 06:40:10 -05:00
Brad King b83fe27d8d fileapi: Report cmake generator in reply index file 2018-12-12 06:40:10 -05:00
Brad King 276fdf2993 fileapi: Add protocol v1 support for stateful per-client queries
Add support for client-owned *stateful* query files.  These allow
clients to request a list of versions of each object kind and get only
the first-listed version that CMake recognizes.  Since clients own their
stateful query files they can mutate them over time.  As a client
installation is updated it may update the queries that it writes to
build trees to get newer object versions without paying the cost of
continuing to generate older versions.

Issue: #18398
2018-12-12 06:40:10 -05:00
Brad King 8fce59848b fileapi: Add protocol v1 support for client-specific query files
Add support for client-owned stateless query files.  These allow clients
to *own* requests for major object versions and get all those recognized
by CMake.

Issue: #18398
2018-12-12 06:40:10 -05:00
Brad King eb2ec41a04 fileapi: Add protocol v1 infrastructure with support for shared query files
Add a file-based API that clients may use to get semantic information
about the buildsystem that CMake generates.  Clients will write query
files under a designated location in the build tree, and CMake will
write reply files for clients to read.

Start with support for shared stateless query files.  These allow
clients to share requests for major object versions and get all those
recognized by CMake.  Once any client has written a shared request to a
build tree it will persist.  Other clients will not need to overwrite
the request (since it is stateless) and should not remove it either.

For now we add only an undocumented object kind to use for testing the
query and reply infrastructure.  Object kinds providing real semantic
information will be added later.

Issue: #18398
2018-12-12 06:39:30 -05:00
Brad King c3635e502c Tests: Add RunCMake "prep" step
Give tests a chance to write content to the build tree before CMake
runs on it.
2018-12-11 12:50:21 -05:00
Kyle Edwards bab24e782c target_link_libraries: Propagate dependencies of object libraries
Prior to this commit, linking against an object library did not
propagate private link dependencies of object libraries to their
consuming targets. This change implements the correct behavior.

Fixes: #18692
Co-Author: Brad King <brad.king@kitware.com>
2018-12-10 14:57:28 -05:00
Brad King d3983f7fc6 Merge topic 'SWIG'
dff28141dc UseSWIG: add management of SWIG option -module
7b3d4799f8 Help: update policy 0078 documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2669
2018-12-10 08:23:42 -05:00
Brad King 0bfe96a8c3 Merge topic 'file-read_symlink'
31840e363f file: Fix formatting of error in SIZE sub-command
98a39be6cf file: Add READ_SYMLINK sub-command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2705
2018-12-10 08:21:40 -05:00
Brad King d99e1cca20 Merge topic 'cpack-status-callback'
4a3ae1710e CPack/External: Fix status messages of staging scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2696
2018-12-10 08:17:06 -05:00
Marc Chevrier dff28141dc UseSWIG: add management of SWIG option -module
When file property SWIG_MODULE_NAME is specified, provide option -module
to SWIG compiler.

Fixes: #18374
2018-12-07 18:51:57 +01:00
Wil Stark b5b63da088 VS: Fix Deploy content in .csproj files 2018-12-07 09:01:32 -08:00
Brad King 2d402239c7 Merge topic 'submit-method'
9501a6145d CTest: Remove special case for Dart version <= 1
e184603378 CTest: Add release note about removed submission methods
8c25aa2feb CTest: Remove submission trigger
a688c6b928 CTest: Remove submit method 'ftp'
c339b64cf2 CTest: Remove submit method 'scp'
aebdad399e CTest: Remove submit method 'cp'
c2f6872c4e CTest: Remove submit method 'xmlrpc'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2672
2018-12-07 08:33:46 -05:00
Nils Gladitz 4a3ae1710e CPack/External: Fix status messages of staging scripts
Set progress callback on cmake instance used by CPack.  The progress
callback is used to output STATUS messages which are otherwise missing
when issued from e.g. CPack External staging scripts.

Fixes: #18567
2018-12-07 07:33:30 -05:00
Kyle Edwards 31840e363f file: Fix formatting of error in SIZE sub-command 2018-12-06 10:28:16 -05:00
Kyle Edwards 98a39be6cf file: Add READ_SYMLINK sub-command 2018-12-06 10:11:51 -05:00
Brad King d0e371f516 Merge topic 'try-compile'
f266182aec Check* functions family: add support for LINK_OPTIONS
29f9db5c63 try_compile/try_run: Add support for LINK_OPTIONS option.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2661
2018-12-06 09:03:58 -05:00
Brad King 0464298956 Merge topic 'arch-independent-version-file-creation'
eb973f935f CMakePackageConfigHelpers: Add ARCH_INDEPENDENT option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Silvio Traversaro <pegua1@gmail.com>
Merge-request: !2666
2018-12-06 09:00:58 -05:00
Brad King c0aab7a84a Merge topic 'cmcmd_touch_err'
100366a267 cmake: add error message when '-E touch' fails

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2671
2018-12-06 08:56:52 -05:00
Brad King 0780a8f57a Merge topic 'cuda-external'
7b74213461 CUDA: Fix crash on linking to a CUDA target without CUDA enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2704
2018-12-06 08:39:22 -05:00
Brad King 7b74213461 CUDA: Fix crash on linking to a CUDA target without CUDA enabled
Do not try to device link or add CUDA runtime libraries if the language
is not enabled.

Fixes: #18673
Issue: #18614
2018-12-05 14:45:19 -05:00
Marc Chevrier 29f9db5c63 try_compile/try_run: Add support for LINK_OPTIONS option. 2018-12-01 17:56:23 +01:00
Justin Bassett eb973f935f CMakePackageConfigHelpers: Add ARCH_INDEPENDENT option
Allow skipping the architecture check in the package version file generated from calling
write_basic_package_version_file. Document said architecture check.

Fixes: #16184
2018-11-30 22:52:40 -08:00
Regina Pfeifer 9501a6145d CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
Regina Pfeifer a688c6b928 CTest: Remove submit method 'ftp' 2018-11-29 00:29:13 +01:00
Regina Pfeifer c339b64cf2 CTest: Remove submit method 'scp' 2018-11-29 00:29:13 +01:00
Regina Pfeifer aebdad399e CTest: Remove submit method 'cp' 2018-11-29 00:29:13 +01:00
Regina Pfeifer c2f6872c4e CTest: Remove submit method 'xmlrpc' 2018-11-29 00:29:12 +01:00
Brad King 5daf7d92f8 Merge topic 'file-size'
12b471e828 file: add SIZE option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2639
2018-11-28 09:05:16 -05:00
Isaiah Norton 100366a267 cmake: add error message when '-E touch' fails
Issue: #16526
2018-11-27 16:20:43 -05:00
Brad King bae71966fb Merge topic 'ctest-updates'
d9195ab081 Tests: Teach run_ctest to handle removal of CTestConfig.cmake
1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables
15ac4aae0e Remove warning when no CTestConfig.cmake file exists
3125c47d27 ctest_build: Do not require unnecessary [CTEST_]PROJECT_NAME value
36bbd07a76 CDashUpload: Use the query part of the submit url as field
e1dfe8cee6 CTest: Don't require 'submit.php?' in submit location

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2640
2018-11-27 08:48:49 -05:00
Brad King 4aad340ec4 Merge topic 'FindBoost-no-cxx'
0369362132 FindBoost: Restore finding without CXX language enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2663
2018-11-27 08:44:11 -05:00
Wouter Klouwen 12b471e828 file: add SIZE option
This commit adds the SIZE option to file(). It returns the file size of
the given path if it exists and produces an error if not.
2018-11-27 08:50:36 +00:00
Brad King 0369362132 FindBoost: Restore finding without CXX language enabled
Since commit v3.13.0~7^2 (FindBoost: Improve compiler prefix
detection for GCC 5+ and clang 4+, 2018-11-07) we run the internal
`_Boost_COMPILER_DUMPVERSION` macro on all UNIX platforms.  Teach
the macro to tolerate missing `CMAKE_CXX_COMPILER_VERSION`, which
occurs when the CXX language is not enabled.

Fixes: #18624
2018-11-26 13:13:58 -05:00
Brad King d9195ab081 Tests: Teach run_ctest to handle removal of CTestConfig.cmake
When running tests in a non-fresh build tree there may be files left
from previous test runs.  In the case that a test removes
`CTestConfig.cmake.in`, we must remove any `CTestConfig.cmake` that
may have been left behind.
2018-11-26 08:05:13 -05:00