summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* file: add SIZE optionWouter Klouwen2018-11-275-0/+20
| | | | | 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.
* Merge topic 'ctest-stdin'Brad King2018-11-196-1/+43
|\ | | | | | | | | | | | | | | 86e8315482 CTest: Restore inheritance of stdin by test processes bdec3bd896 Tests: Teach RunCMake infrastructure to optionally provide stdin Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2618
| * CTest: Restore inheritance of stdin by test processesBrad King2018-11-155-1/+34
| | | | | | | | | | | | | | | | | | | | | | Since commit v3.11.0-rc1~117^2 (CTest: Re-implement test process handling using libuv, 2017-12-10) we do not give the child test processes any stdin. Prior to that change we let the child test processes inherit stdin from ctest itself. Tests that run serially might be able to use the real stdin meaningfully, so restore that behavior and add a test case. Fixes: #18591
| * Tests: Teach RunCMake infrastructure to optionally provide stdinBrad King2018-11-151-0/+9
| |
| * Merge branch 'rename-cpack-ext-generator' into release-3.13Brad King2018-11-0617-38/+38
| |\ | | | | | | | | | Merge-request: !2566
| * \ Merge branch 'fix-custom-target-with-csharp' into release-3.13Brad King2018-10-313-0/+13
| |\ \ | | | | | | | | | | | | Merge-request: !2549
| * \ \ Merge branch 'set_directory_properties-script-mode' into release-3.13Brad King2018-10-293-0/+5
| |\ \ \ | | | | | | | | | | | | | | | Merge-request: !2544
* | \ \ \ Merge topic 'test-WriteBasicConfigVersionFile'Brad King2018-11-154-0/+891
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f3a381115f Tests: Simplify RunCMake.WriteBasicConfigVersionFile 0dbcc1afbf Tests: Factor out RunCMake.WriteBasicConfigVersionFile test Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2612
| * | | | | Tests: Simplify RunCMake.WriteBasicConfigVersionFileBrad King2018-11-142-29/+8
| | | | | |
| * | | | | Tests: Factor out RunCMake.WriteBasicConfigVersionFile testBrad King2018-11-145-0/+912
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `WriteBasicConfigVersionFile` section of the `FindPackageTest` is independent of the rest.
* | | | | | Merge topic 'configure_file-canonical-deps'Brad King2018-11-154-1/+14
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6199637e95 configure_file: canonicalize input and output path in dependencies Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2586
| * | | | | | configure_file: canonicalize input and output path in dependenciesFrank Benkstein2018-11-134-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Represent the input file path internally in canonical form. Otherwise multiple `configure_file` calls that share the same input file but specify it relative to different directories (e.g. via `../`) result in multiple copies of the dependency on the rule to re-run CMake. This causes the Ninja generator to emit duplicate phony build statements for these dependencies, which generates an error with `-w dupbuild=err`, which will be default in Ninja 1.9. Also canonicalize the output path for consistency. Add a test case. Fixes: #18584
* | | | | | | Merge topic 'deprecate-findqt'Brad King2018-11-156-0/+51
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0f5c1b404b find_package(): Add policy to remove the FindQt module Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: noo mook <noomook2519@gmail.com> Merge-request: !2554
| * | | | | | | find_package(): Add policy to remove the FindQt moduleKyle Edwards2018-11-146-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing FindQt.cmake gives Qt upstream a path forward to export its own QtConfig.cmake files which can be found by find_package() without having to explicitly specify CONFIG. Projects that still want to use Qt3/4 can call find_package(Qt[34]), include(FindQt), or add FindQt.cmake to their CMAKE_MODULE_PATH.
* | | | | | | | Tests: Add option for custom RunCMake.XcodeProject timeoutBrad King2018-11-141-0/+7
| |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | The test has many cases and can take a long time on busy machines.
* | | | | | | Merge topic 'GNUInstallDirs-FreeBSD-info'Brad King2018-11-145-5/+127
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f835f189ae GNUInstallDirs: Update FreeBSD "info" destination to share/info 4c0d97dd98 GNUInstallDirs: Split "info" and "man" default logic 1b8f0ca515 Tests: Split GNUInstallDirs expectations for FreeBSD Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Rolf Eike Beer <eike@sf-mail.de> Merge-request: !2588
| * | | | | | GNUInstallDirs: Update FreeBSD "info" destination to share/infoTobias C. Berner2018-11-134-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FreeBSD ports commit r484628 (Install texinfo files (GNU info) into ${PREFIX}/share/info, 2018-11-10) changed the "info" destination from "info" to "share/info". The commit included a patch to their distribution of CMake to fix the `GNUInstallDirs` module too. Apply a similar logic change to our upstream version of the module. We already made a similar change for GNU/kFreeBSD in commit v3.13.0-rc2~8^2 (GNUInstallDirs: Don't use BSD info and man paths on GNU/kFreeBSD, 2018-10-21). Fixes: #18585
| * | | | | | Tests: Split GNUInstallDirs expectations for FreeBSDBrad King2018-11-135-5/+127
| |/ / / / /
* | | | | | Merge topic 'pie-link-options'Craig Scott2018-11-1217-1/+257
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c4b4d8b3a6 POSITION_INDEPENDENT_CODE: Manage link flags for executables 724a0346f7 POSITION_INDEPENDENT_CODE: Fix erroneous '-fPIE' flag for Sun Studio 023188ffb4 INTERFACE_POSITION_INDEPENDENT_CODE: add generator expressions support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2465
| * | | | | POSITION_INDEPENDENT_CODE: Manage link flags for executablesMarc Chevrier2018-11-1111-1/+229
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #14983, #16561
| * | | | | INTERFACE_POSITION_INDEPENDENT_CODE: add generator expressions supportMarc Chevrier2018-11-087-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #16532
* | | | | | cpack: Better error message when generator doesn't exist.Robert Maynard2018-11-081-1/+1
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | Currently the CPack error message when passed an invalid generator name reads like the generator failed to work, rather than the name was invalid.
* | | | | install: Add sane set of defaults for DESTINATION and file type parametersKyle Edwards2018-11-0732-0/+505
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the user does not specify a DESTINATION for a target type, the install() command checks to see if the appropriate variable from GNUInstallDirs is set. If it is not, then it uses an appropriate hard-coded guess. In addition, for FILES and DIRECTORY, the user can specify a file type instead of a DESTINATION, and the command will use the appropriate variable from GNUInstallDirs, or a hard-coded guess if it is not set.
* | | | | Merge topic 'fix-double-warn-uninitialized-in-script-mode'Brad King2018-11-073-0/+10
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 53a5aec899 CMP0053: Fix double warning on uninitialized variables in -P mode f92f93467e cmMakefile: Rename SuppressWatches to SuppressSideEffects Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2565
| * | | | | CMP0053: Fix double warning on uninitialized variables in -P modeR2RT2018-11-053-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When `CMP0053` is not set to OLD or NEW then we compute both variants in case we need to warn about a behavior change. Do not allow both code paths to produce an uninitialized variable warning. Fixes: #18552
* | | | | | Merge topic 'rename-cpack-ext-generator'Brad King2018-11-0617-38/+38
|\ \ \ \ \ \ | |/ / / / / |/| | | | / | | |_|_|/ | |/| | | | | | | | | | | | | 20d5e77a27 CPack: Rename Ext generator to External Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2566
| * | | | CPack: Rename Ext generator to ExternalCraig Scott2018-11-0517-38/+38
| |/ / / | | | | | | | | | | | | | | | | Ext and External were used inconsistently in the code and the docs. This change converts all uses of Ext to External, including within variable names used by the generator.
* | | | Merge topic 'check-keywords-only-if-used'Brad King2018-11-0222-0/+88
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4babc9058a cmTargetPropCommandBase: check keywords after parsing 45a49ae58a cmTargetPropCommandBase: simplify code path 9f64974f5e cmTargetPropCommandBase: skip property setting if there's nothing to add 4201a11c2b Tests: add tests for empty-value keyword arguments in target_* Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2514
| * | | | cmTargetPropCommandBase: check keywords after parsingBen Boeckel2018-10-2614-40/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following was disallowed: add_library(iface INTERFACE) target_link_libraries(iface PUBLIC) just due to the mention of the `PUBLIC` keyword. Instead, only error if there are actually `PUBLIC` dependencies specified (and analogously for other restrictions). Update tests to expect this new behavior.
| * | | | Tests: add tests for empty-value keyword arguments in target_*Ben Boeckel2018-10-2636-0/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not all of these commands accept non-compilable (i.e., IMPORTED) targets, so those calls are currently just commented out. If they ever do start to accept them, the tests should be enabled.
* | | | | Merge topic 'fix-custom-target-with-csharp'Brad King2018-11-013-0/+13
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9040df31e2 Merge branch 'backport-fix-custom-target-with-csharp' 1acd1c2b50 CSharp: Fix regression in VS project type selection for custom target a56edad6d6 CSharp: Fix regression in VS project type selection for custom target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2549
| * | | | CSharp: Fix regression in VS project type selection for custom targetBrad King2018-10-313-0/+13
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A target created by `add_custom_target` should always be a `.vcxproj` file even if it has `.cs` sources involved in custom commands and such. The latter case was broken by refactoring in commit v3.12.0-rc1~160^2~7 (remove TargetIsCSharpOnly() and use methods from cmGeneratorTarget, 2018-03-19). The reason is that the `HasLanguage` method added by commit v3.12.0-rc1~239^2~6 (cmGeneratorTarget: add HasLanguage() as wrapper for GetLanguages(), 2018-03-19) does not check the target type and so is not a suitable check for deciding the project file extension. The `HasLanguage` method was an attempt at an abstraction that turns out not to work very well. Replace it with a dedicated `IsCSharpOnly` method that considers the target type, sources, and non-transitive `LINKER_LANGUAGE`. Fixes: #18515
| * | | Merge branch 'GNUInstallDirs-kfreebsd-man' into release-3.13Brad King2018-10-221-1/+1
| |\ \ \ | | | | | | | | | | | | | | | Merge-request: !2511
* | \ \ \ Merge topic 'set_directory_properties-script-mode'Brad King2018-10-303-0/+5
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | 50572d638b set_directory_properties: Restore in script mode Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2544
| * | | | set_directory_properties: Restore in script modeBrad King2018-10-293-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.10.0-rc1~391^2~3 (Add directory property 'LABELS' and CMAKE_DIRECTORY_LABELS variable, 2017-06-23) this command was accidentally not allowed in script mode. It was dropped because `ctest -S` mode needs to start with CMake's normal script mode and then replace the `set_directory_properties` implementation. Restore the normal `set_directory_properties` in script mode and then add special logic to replace it in ctest. Also add a test case. Fixes: #18523
* | | | | Merge topic 'minusCparse'Brad King2018-10-2912-1/+22
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 379e5f93a9 Tests: Add cases for -{C,D,U} without a source tree 5873815fef cmake: distinguish '-Cpath' from '-C path' in source dir parsing Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2517
| * | | | | Tests: Add cases for -{C,D,U} without a source treeBrad King2018-10-2612-1/+22
| | |_|_|/ | |/| | |
* | | | | RPATH: Add option for using $ORIGIN in build treePeter Wu2018-10-264-1/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes binaries independent of the build directory by not embedding the build directory via RPATH. The tests are partially based on the existing RuntimePath test, but with the check moved into a POST_BUILD command such that it can be skipped when the platform lacks support. Fixes: #18413
* | | | | Merge topic 'GNUInstallDirs-kfreebsd-man'Brad King2018-10-231-1/+1
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | b2d7ab8bd1 GNUInstallDirs: Don't use BSD info and man paths on GNU/kFreeBSD Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2511
| * | | GNUInstallDirs: Don't use BSD info and man paths on GNU/kFreeBSDJames Clarke2018-10-221-1/+1
| | | |
* | | | Merge branch 'master' into deployqt4-cmp0080-fixKyle Edwards2018-10-19163-190/+340
|\ \ \ \ | |_|_|/ |/| | |
| * | | Merge topic 'better-empty-list-behavior'Brad King2018-10-1721-26/+38
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 121a036f73 cmListCommand: handle empty lists for list(REMOVE_AT) acfe53c588 cmListCommand: make list(ACTION not_a_list) succeed when idempotent bf572ac952 cmListCommand: check list(FILTER) operation before the list Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2478
| | * | | cmListCommand: handle empty lists for list(REMOVE_AT)Ben Boeckel2018-10-167-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | Treat an empty list as a list with no valid bounds and return an error message indicating that any given indices are out-of-bounds.
| | * | | cmListCommand: make list(ACTION not_a_list) succeed when idempotentBen Boeckel2018-10-1615-25/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The operations changed here all are no-ops on empty lists anyways, so just have them succeed when given non-extant lists. - `list(REMOVE_ITEM)` - `list(REMOVE_DUPLICATES)` - `list(SORT)` - `list(FILTER)` - `list(REVERSE)`
| * | | | Merge topic 'document-dollar-in-varnames'Brad King2018-10-166-0/+41
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 82a4822610 CMP0053: document that `$` is a valid literal variable character Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2479
| * \ \ \ \ Merge topic 'cppcheck-exit-code'Brad King2018-10-126-9/+18
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3b80cd77fb Fail the build if cppcheck returns a non-zero exit code Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2459
| | * | | | | Fail the build if cppcheck returns a non-zero exit codeHarald Brinkmann2018-10-116-9/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the build failure to be tuned with cppcheck's options --error-exitcode=<n> and --exitcode-suppressions=<file>.
| * | | | | | Merge branch 'backport-revert-install-code-script-genex' into ↵Brad King2018-10-116-19/+0
| |\ \ \ \ \ \ | | |_|_|/ / / | |/| | | | | | | | | | | | revert-install-code-script-genex
| * | | | | | Merge topic 'cmake_policy-get_warning'Brad King2018-10-112-10/+16
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0d988f98e5 cmake_policy: Add undocumented GET_WARNING command f9f96598df Help: Convert FindOpenGL documentation to block comment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2472
| | * | | | | | cmake_policy: Add undocumented GET_WARNING commandKyle Edwards2018-10-102-10/+16
| | | |/ / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This command is intended for modules that issue policy warnings so they can get the warning string from CMake in a uniform manner, rather than duplicating the string. Several modules been updated to include an example of the usage of this new command.