Commit Graph

1725 Commits

Author SHA1 Message Date
Robert Maynard 4d384d290e Help: Document the $CACHE{} syntax
Also add a test case for the behavior.
2018-08-07 13:13:27 -04:00
Gregor Jasny 6b7f1e1db0 Xcode: Add variables and properties to configure schemes
Add `XCODE_SCHEME_*` target properties and associated variables
`CMAKE_XCODE_SCHEME_*` to initialize them on target creation.
Map each target property value to an associated Xcode scheme entry.

Co-Author: Martin Sander <mail@martin-sander.de>
Fixes: #17919
2018-08-01 09:12:42 -04:00
Craig Scott 50e40b7eec Merge topic 'cpack-default-package-version-zero'
ed015bde2b CPack: Restore support for 0-valued version components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2239
2018-07-29 05:40:37 -04:00
Brad King 5bbcf76399 Merge topic 'UseSWIG-target-name-policy'
a3a0c3aa71 UseSWIG: add policy to manage target naming strategy.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2232
2018-07-27 10:08:54 -04:00
Brad King bccbf9a737 Merge topic 'reproducible-tarballs'
548ac51d8e CPack/Deb: Support SOURCE_DATE_EPOCH when packaging files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2226
2018-07-27 10:06:44 -04:00
Brad King ed015bde2b CPack: Restore support for 0-valued version components
In commit v3.12.0-rc1~136^2 (CPack: Use project version as default for
`CPACK_PACKAGE_VERSION`, 2018-04-29) we did not account for the value of
`CMAKE_PROJECT_VERSION_{MAJOR,MINOR,PATCH}` having `0`.  Fix the logic
to distinguish between unprovided version components and `0` components.

While at it, add a test case covering the behavior described in the
documentation by the original commit.  The number of version components
in the package name should match those provided to the `project()`
command `VERSION` option.

Fixes: #18199
2018-07-27 10:01:29 -04:00
Andrew Fuller 548ac51d8e CPack/Deb: Support SOURCE_DATE_EPOCH when packaging files 2018-07-25 13:39:07 -07:00
Marc Chevrier a3a0c3aa71 UseSWIG: add policy to manage target naming strategy. 2018-07-25 18:00:52 +02:00
Craig Scott ae2b12a95c Merge topic 'project-injected-no-cmp0048'
6646771b0f project: Do not issue CMP0048 warnings on injected call
08eb157c03 Tests: Add case showing CMP0048 warning on injected project command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2235
2018-07-25 08:15:02 -04:00
Brad King 6646771b0f project: Do not issue CMP0048 warnings on injected call
Fixes: #18202
2018-07-24 13:14:10 -04:00
Brad King 08eb157c03 Tests: Add case showing CMP0048 warning on injected project command
Issue: #18202
2018-07-24 13:14:09 -04:00
Rolf Eike Beer 7aa26cf0e9 FindPkgConfig: allow to create global imported targets 2018-07-22 13:33:04 +02:00
Craig Scott e3664debd2 Merge topic 'doc-find_package-root'
492ade276b Help: Add explicit <PackageName>_ROOT variable documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2225
2018-07-20 18:58:43 -04:00
Brad King 492ade276b Help: Add explicit <PackageName>_ROOT variable documentation
Add documentation for both the CMake variable and environment variable
of this name pattern.  Update references to these names to link to their
documents.  Clarify the pattern used to construct their names.
2018-07-20 09:43:08 -04:00
Kyle Edwards 36ef57a939 Tests: Add test for cmake --build . --target package 2018-07-17 09:07:10 -04:00
Kyle Edwards 11ca374b28 Tests: Add test for install(SCRIPT ... COMPONENT) 2018-07-17 09:07:10 -04:00
Kyle Edwards 2201fb6f43 Tests: Add test for InstallRequiredSystemLibraries 2018-07-17 09:07:10 -04:00
Kyle Edwards 69ca768e78 Tests: Add test for install(TARGETS) RPATH functionality 2018-07-17 09:07:01 -04:00
Kyle Edwards 25c3fb6c35 Tests: Add test for install(FILES) with PERMISSIONS 2018-07-17 09:07:01 -04:00
Kyle Edwards b5df4faa20 Tests: Add test for installing parts of targets in different directories 2018-07-17 09:07:01 -04:00
Kyle Edwards 4108ab4be2 Tests: Add test for install(DIRECTORY) with PATTERN and REGEX 2018-07-17 09:07:01 -04:00
Kyle Edwards bce8fa229a Tests: Add test for CONFIGURATIONS parameter of install() 2018-07-17 09:07:01 -04:00
Kyle Edwards ae1c917f1a Tests: Add test for install(<SCRIPT|CODE>) 2018-07-17 09:07:01 -04:00
Kyle Edwards 2c62a45a5a Tests: Add test for <PRE|POST>_INSTALL_SCRIPT 2018-07-17 09:07:01 -04:00
Kyle Edwards db4bc2fa18 Tests: Add test for deprecated install_*() commands 2018-07-17 09:07:01 -04:00
Kyle Edwards ec5c838fcb Tests: Add tests for *OUTPUT_NAME properties 2018-07-17 09:07:00 -04:00
Kyle Edwards f6c7358c2a Tests: Add test for install(DIRECTORY ... OPTIONAL) 2018-07-17 09:07:00 -04:00
Kyle Edwards 1638ffa287 Tests: Add tests for install(<TARGETS|FILES> ... OPTIONAL) 2018-07-17 09:07:00 -04:00
Brad King 406f397e8b math: Restore toleration of unexpected characters in an expression
Prior to commit 7c4c13ffef (math: Reject unexpected expression input
explicitly, 2018-05-18) we ignored unexpected characters in an
expression that otherwise can be parsed.  In order to preserve
compatibility with projects that accidentally used this, convert the
error to a warning.
2018-07-16 14:46:43 -04:00
Brad King 7b04ad61cf Merge topic 'option_respects_existing_stack_variable'
f8a7cf85ad option: No CMP077 warnings when both cache and local variable exists

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2203
2018-07-12 09:12:26 -04:00
Robert Maynard f8a7cf85ad option: No CMP077 warnings when both cache and local variable exists
Previously we would warn when the local and cache version of a variable
exists, but this use case doesn't need a warning as it maintains backwards
compatibility.
2018-07-10 13:56:15 -04:00
Brad King c878e6f8cc Merge topic 'option-normal-variable'
2a5f5c0e31 option: respect existing normal variable
12e6f83319 Option: Add a test that verifies interaction with normal variables
5bb3d40a28 cmOption: Remove VTK 4.0 workarounds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2155
2018-07-09 10:25:33 -04:00
Robert Maynard 2a5f5c0e31 option: respect existing normal variable
Add policy CMP0077 to change this behavior in a compatible way.
2018-07-09 07:48:28 -04:00
Brad King 9d1bc0a918 Merge topic 'list-command-insert'
a08154d493 list: Allow inserting at the end of a list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2181
2018-07-06 09:41:24 -04:00
Daniel Chabrowski a08154d493 list: Allow inserting at the end of a list
Fixes: #18069
2018-07-05 13:53:49 -04:00
Brad King 326ebdf12a Merge topic 'revert-subdirectory-linking'
0d7114987c Revert "target_link_libraries: Allow use with targets in other directories"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2191
2018-07-05 11:31:17 -04:00
Brad King ca733cdf45 Merge topic 'math-hex'
5dbee9d2d0 math: Add options to calculate and format output as hexadecimal
8661e7052c math: Diagnose divide-by-zero
7c4c13ffef math: Reject unexpected expression input explicitly
5b0f73a15a math: Use 64-bit integer type for computation
963b8d9f6c math: Add RunCMake.math test to prepare for error cases

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2056
2018-07-05 10:26:05 -04:00
Daniel Franke 5dbee9d2d0 math: Add options to calculate and format output as hexadecimal 2018-07-03 09:55:58 -04:00
Brad King 0d7114987c Revert "target_link_libraries: Allow use with targets in other directories"
Revert commit v3.12.0-rc1~82^2 (target_link_libraries: Allow use with
targets in other directories, 2018-05-11).  The RHS target scoping and
visibility rules are not clear and will need further investigation
before the feature can be added.

Issue: #17943
2018-07-03 09:39:28 -04:00
Kyle Edwards 2ef966bc77 Testing: Add test for CPack External generator
This test case ensures that the CPack External generator produces
the proper .json file, and also ensures that the version negotation
with CPACK_EXT_REQUESTED_VERSIONS works properly.
2018-07-02 09:51:02 -04:00
Brad King 08813b17a1 Merge topic 'ctest_submit-https'
71f27c04b0 ctest_submit: show headers as debug info
4464ef21da ctest_submit: Check CA file during CDASH_UPLOAD

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2171
2018-06-29 08:56:25 -04:00
Brad King faa9ef9968 Merge topic 'lexer-null'
b29842a818 ListFileLexer: Do not match null bytes in input

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2174
2018-06-29 08:55:47 -04:00
Brad King decfdec63f Merge branch 'ctest_submit-https' into release-3.12
Merge-request: !2171
2018-06-27 15:10:56 -04:00
Zack Galbreath 71f27c04b0 ctest_submit: show headers as debug info
Hide any headers specified by `ctest_submit(HTTPHEADER ...)` unless ctest
is run with --debug.  This option is used to present bearer tokens to CDash.
We do not want to inadvertently expose this secret data in the console
output log.
2018-06-27 15:08:14 -04:00
Daniel Franke 8661e7052c math: Diagnose divide-by-zero 2018-06-26 14:21:18 -04:00
Daniel Franke 7c4c13ffef math: Reject unexpected expression input explicitly
Switch to C++ exceptions for lexer/parser error handling.
Teach the lexer/parser to fail on unexpected input.
2018-06-26 14:15:21 -04:00
Brad King 2ba71a11e3 Merge branch 'lexer-null' into release-3.12
Merge-request: !2174
2018-06-26 13:04:25 -04:00
Brad King b29842a818 ListFileLexer: Do not match null bytes in input
Extend the fix from commit v3.10.0-rc1~188^2 (ListFileLexer: fix
heap-buffer-overflow on malicious input, 2017-08-26) to apply to all
lexer token matches.  Replace all `.` with `[^\0\n]`.  Update all
`[^...]` match expressions to not match `\0`.

We cannot safely process null bytes in strings.

Fixes: #18124
2018-06-26 11:54:34 -04:00
Brad King 8848a1c07a Merge topic 'test-wizard'
7bffd71c3b Tests: Adopt wizard test in RunCMake.CommandLine

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2166
2018-06-25 09:56:56 -04:00
Brad King 383f29fd63 Merge topic 'file-GLOB-remove-new-errors'
142a625729 file: Drop error cases added by CMake 3.12.0-rc1 to avoid regressions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Shane Parris <shane.lee.parris@gmail.com>
Merge-request: !2164
2018-06-25 09:53:24 -04:00