summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* cmake: Add tests for verbose output to --build modeRobert Maynard2019-01-2811-1/+50
|
* Merge topic 'cmake_build_jobs_supports_no_space'Brad King2019-01-239-0/+21
|\ | | | | | | | | | | | | | | f2fca92686 cmake: --build supports '-jN' e463133cd2 Tests: Remove unused files from RunCMake.CommandLine test Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2819
| * cmake: --build supports '-jN'Robert Maynard2019-01-229-0/+25
| |
| * Tests: Remove unused files from RunCMake.CommandLine testBrad King2019-01-224-4/+0
| | | | | | | | Drop `-stderr.txt` files for cases that do not exist.
* | cmake: Convert no source/build dir error to warningCraig Scott2019-01-223-3/+15
| | | | | | | | | | | | | | | | | | | | Temporarily restore previous behavior that allowed specifying no source or build directory to work, even though it was neither documented nor supported. This commit is expected to eventually be reverted to restore the fatal error for such cases. Relates: #18817
* | Merge topic 'implicit-includes'Brad King2019-01-2256-0/+1560
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5990ecb741 Compute implicit include directories from compiler output d751d2d2ed CMakeDetermineCompilerABI: set locale to C for try_compile() c765ae495a CMakeDetermineCompilerABI: pass verbose flag during compilation 8c5221fb1f try_compile: Preserve special characters in COMPILE_DEFINITIONS 15ad830062 Refactor exclusion of -I/usr/include to avoid per-language values Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2716
| * | Compute implicit include directories from compiler outputChuck Cranor2019-01-2156-0/+1560
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - CMakeParseImplicitIncludeInfo.cmake: new parser that extracts the compiler's include path from verbose output. If the parser cannot parse the output, we fall back to the old behavior. On osx we skip over framework directories (handled elsewhere). - CMakeDetermineCompilerABI.cmake: - use verbose flag in try_compile for ${src} - use new cmake_parse_implicit_include_info() to attempt extract implicit include directory path and if successful set CMAKE_${LANG}_IMPLICIT_INCLUDE_DIRECTORIES - CMakeCCompiler.cmake.in and CMakeCXXCompiler.cmake.in - preserve CMAKE_${LANG}_IMPLICIT_INCLUDE_DIRECTORIES value between runs in the same way CMAKE_${LANG}_IMPLICIT_LINK_DIRECTORIES is preserved - Tests/RunCMake/ParseImplicitIncludeInfo: tests for parse based on the older Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in. The test runs a set of verbose compiler outputs collected from various machines through the parser and checks the results. New compiler files can be added by dropping input/output files in the ParseImplicitIncludeInfo/data subdirectory and then adding the new set of files to the ${targets} list in ParseImplicitIncludeInfo.cmake. There is a helper CMakeLists.txt in ParseImplicitIncludeInfo/data that can help with the generation of test input files. NOTE: the standard cmake pre-commit hook rejects verbose compiler output with trailing spaces... you have to manually edit them out. This shouldn't impact the test. Note that both the parser and the test code can use CMAKE_${LANG}_COMPILER_* variables such as ${CMAKE_CXX_COMPILER_ID} to decide how to parse verbose compiler output. For the test code, this requires us to save the variables values in the test input files. Fixes: #16291
* | | CROSSCOMPILING_EMULATOR: Fix test generation for empty valueKyle Edwards2019-01-211-0/+6
| |/ |/| | | | | | | | | | | | | If CROSSCOMPILING_EMULATOR was set to an empty string, and a test was generated with the executable as the command, CMake would segfault upon trying to generate the test file. Fix this. Fixes: #18819
* | Merge topic 'fortran-compiler-id'Brad King2019-01-217-0/+30
|\ \ | | | | | | | | | | | | | | | | | | a080914274 Fortran: Add compiler ID/Version generator expressions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2804
| * | Fortran: Add compiler ID/Version generator expressionsAndrew Paprocki2019-01-187-0/+30
| |/ | | | | | | | | | | | | | | | | | | | | | | Adds `Fortran_COMPILER_ID` and `Fortran_COMPILER_VERSION` generator expression support to match equivalent `C_COMPILER_ID`, `CXX_COMPILER_ID`, `C_COMPILER_VERSION`, and `CXX_COMPILER_VERSION` support. This is very helpful in the case where the C/C++ compiler suite is a different type of compiler from the platform Fortran compiler and projects use generator expressions to assign compiler flags and definitions. (e.g. `GNU` C/C++ and `SunPro` Fortran on Linux)
* | Merge topic 'cmake-role-fix'Brad King2019-01-213-2/+19
|\ \ | | | | | | | | | | | | | | | | | | 264bdac185 CMAKE_ROLE: Fix value for ctest --build-and-test Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2820
| * | CMAKE_ROLE: Fix value for ctest --build-and-testKyle Edwards2019-01-183-2/+19
| |/ | | | | | | | | --build-and-test builds a CMake project, so CMAKE_ROLE should be PROJECT. Fix this and add a test case.
* | Merge topic 'ctest-json-polish'Brad King2019-01-217-11/+21
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cae9d2a61a CTest: Teach --show-only= to reject unknown values 7370b02c36 CTest: Teach --show-only=json-v1 to filter out not-available tests 62fec84ad7 Tests: Fix RunCMake.CTestCommandLine case when no python is found 75a7a23746 Tests: Rename RunCMake.CTestCommandLine show-only test cases fecbc87608 Tests: Fix RunCMake.CTestCommandLine to actually check json-v1 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2812
| * | CTest: Teach --show-only= to reject unknown valuesBrad King2019-01-174-0/+5
| | |
| * | CTest: Teach --show-only=json-v1 to filter out not-available testsBrad King2019-01-171-0/+1
| | | | | | | | | | | | | | | | | | Avoid exposing the internal special value that we use to track tests not available in the tested configuration. This also prevents clients from having to do the filtering themselves.
| * | Tests: Fix RunCMake.CTestCommandLine case when no python is foundBrad King2019-01-171-0/+3
| | | | | | | | | | | | | | | Do not try to run the python checks if the python executable is not available.
| * | Tests: Rename RunCMake.CTestCommandLine show-only test casesBrad King2019-01-175-12/+12
| | | | | | | | | | | | | | | The current name was chosen from an earlier design iteration of the command-line option name. Rename the case to match the final name.
| * | Tests: Fix RunCMake.CTestCommandLine to actually check json-v1Brad King2019-01-161-0/+1
| | | | | | | | | | | | | | | Add a file missing from commit 67209a9291 (Tests: Add cases for ctest --show-only=json-v1, 2018-11-01) to actually hook up the content check.
* | | Merge topic 'command_file_link'Brad King2019-01-2110-0/+47
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0f08ed8936 cmSystemTools: Silence CreateLink and CreateSymlink errors 593d986470 Tests: Avoid cross-device links in CREATE_LINK test 9a3d85cfc5 Tests: Skip symlink tests on Windows e68ea269d7 Tests: CREATE_LINK subcommand negative test case 45aa9c65a1 Tests: file CREATE_LINK subcommand test cases 8bb7562f1a Help: Add documentation for file(CREATE_LINK) subcommand 81650e488c cmFileCommand: Add CREATE_LINK subcommand Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2759
| * | | Tests: Avoid cross-device links in CREATE_LINK testTushar Maheshwari2019-01-163-1/+20
| | | | | | | | | | | | | | | | Add a test for COPY_ON_ERROR to cover that scenario.
| * | | Tests: Skip symlink tests on WindowsTushar Maheshwari2019-01-165-10/+10
| | | |
| * | | Tests: CREATE_LINK subcommand negative test caseTushar Maheshwari2019-01-164-0/+7
| | | |
| * | | Tests: file CREATE_LINK subcommand test casesTushar Maheshwari2019-01-164-0/+21
| |/ /
* | | Merge topic 'find-package-resolve-symlinks'Brad King2019-01-214-0/+31
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | b773e58099 find_package: add test coverage for CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS a5e948a36f find_package: optionally resolve symlinks when discovering packages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2798
| * | | find_package: add test coverage for CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKSDavid Aguilar2019-01-164-0/+31
| |/ /
* | | Merge topic 'submit-url'Brad King2019-01-212-6/+4
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2915a75615 CTest: Add documentation and release notes for SubmitURL d6475daa79 Modules/CTest: Set SubmitURL 938f06fda6 ctest_submit: Add parameter SUBMIT_URL 65e725c957 CTest: Add option SubmitURL 65f1fc9d63 CTest: Add function GetSubmitURL 2bedd5fb7c ctest_submit: Remove submit method from log output Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2719
| * | ctest_submit: Remove submit method from log outputRegina Pfeifer2019-01-162-6/+4
| |/
* | Merge topic 'cmake_role-global-property'Brad King2019-01-1710-0/+51
|\ \ | | | | | | | | | | | | | | | | | | 4568d046c4 Properties: Add CMAKE_ROLE global property Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2805
| * | Properties: Add CMAKE_ROLE global propertyKyle Edwards2019-01-1710-0/+51
| |/ | | | | | | | | This property allows scripts to determine whether they're in project mode, script mode, find-package mode, CTest, or CPack.
* | Merge topic 'vs-debug-utility-targets'Brad King2019-01-178-72/+84
|\ \ | | | | | | | | | | | | | | | | | | 22b43b0009 VS: Add support for VS_DEBUGGER_* properties on custom targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2794
| * | VS: Add support for VS_DEBUGGER_* properties on custom targetsNils Gladitz2019-01-168-72/+84
| |/ | | | | | | | | | | Visual studio itself supports the corresponding `LocalDebugger*` properties on utility targets; support generating them from CMake as well.
* | Merge topic 'fix_csharp_defines'Brad King2019-01-173-0/+83
|\ \ | |/ |/| | | | | | | | | a541d113e6 VS: Honor target_compile_definitions for C# projects Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2809
| * VS: Honor target_compile_definitions for C# projectsWil Stark2019-01-163-0/+83
| | | | | | | | Fixes: #18698
* | Merge topic 'autogen_adaptive_warning'Brad King2019-01-161-2/+2
|\ \ | |/ |/| | | | | | | | | | | | | 5fe18eee13 Autogen: Adaptive missing Qt warning f2f1661334 Autogen: Add and use QtAutoGen::Tools method b2343ff086 Autogen: Fix rcc validity check Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2806
| * Autogen: Adaptive missing Qt warningSebastian Holtermann2019-01-151-1/+1
| | | | | | | | | | This makes the warning message for a missing Qt use the requested Qt version in the message text.
| * Autogen: Add and use QtAutoGen::Tools methodSebastian Holtermann2019-01-151-1/+1
| |
* | Merge topic 'fetchcontent-uses-terminal'Brad King2019-01-154-0/+24
|\ \ | | | | | | | | | | | | | | | | | | | | | 2119c33b7e FetchContent: Give access to the terminal for download and update Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Michael Hirsch, Ph.D. <michael@scivision.co> Merge-request: !2800
| * | FetchContent: Give access to the terminal for download and updateCraig Scott2019-01-144-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A main scenario where this is needed is when a git operation needs the password to a private key and asks for it on the console. Without this change, such operations can appear to hang indefinitely with no prompt if QUIET is in effect (which it is by default). Another scenario this addresses is when progress of a download or update should be shown. Without this change, all such progress is buffered with some generators and will only be shown at the end, which defeats the purpose of logging any progress to begin with. Relates: #18238
* | | Merge topic 'vs2019'Brad King2019-01-154-7/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 57e48f16f2 VS: Add Visual Studio 16 2019 generator bdef729646 VS: Parameterize VS 2017 generator to support future versions 68d316e0cf VS: Rename VS 2017 generator sources to be version-independent d8ed309d05 VS: Parameterize cmVSSetupAPIHelper instances with VS version Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2789
| * | | VS: Add Visual Studio 16 2019 generatorBrad King2019-01-114-7/+9
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add this generator *without* support for specifying the target architecture in the generator name. cmake-gui will be taught to provide a field for this, and command-line builds can use -A. Also, teach this generator to select a default target architecture based on the host architecture. Fixes: #18689 Inspired-by: Egor Pugin <egor.pugin@gmail.com>
* | | Merge topic 'fix-source-group-CMakeLists.txt'Brad King2019-01-153-0/+37
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 77303314dc Restore support for a custom source group for CMakeLists.txt Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2803
| * | | Restore support for a custom source group for CMakeLists.txtBrad King2019-01-143-0/+37
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.11.0-rc1~467^2 (VS,Xcode: Add CMakeLists.txt sources without mutating targets, 2017-10-18) we do not add `CMakeLists.txt` to target sources but instead generate references to them directly. This accidentally dropped generation of the `.vcxproj.filters` entry for a source group in which `CMakeLists.txt` is the only member. Fixes: #18795
* | | Merge topic 'vs10_cs_cf_support'Brad King2019-01-153-0/+63
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 5b1364a2e3 cmVisualStudio10TargetGenerator: Fix .NET Compact Framework projects. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2715
| * | | cmVisualStudio10TargetGenerator: Fix .NET Compact Framework projects.Wil Stark2019-01-113-0/+63
| | |/ | |/| | | | | | | Fixes: #18672
* | | Merge topic 'deprecate-policy-old'Brad King2019-01-151-0/+10
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 6845e2559d Add deprecation warnings for policies CMP0065 and below Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2793
| * | | Add deprecation warnings for policies CMP0065 and belowBrad King2019-01-111-0/+10
| |/ / | | | | | | | | | | | | | | | The OLD behaviors of all policies are deprecated, but only by documentation. Add an explicit deprecation diagnostic for some policies to encourage projects to port away from setting policies to OLD.
* | | Tests: Make RunCMake.FindBoost robust to Boost_ROOT in environmentBrad King2019-01-141-0/+1
| |/ |/| | | | | | | Remove the environment variable within the test to avoid CMP0074 behavior.
* | Merge topic 'cmake-option-parsing'Brad King2019-01-143-14/+17
|\ \ | | | | | | | | | | | | | | | | | | | | | 27eb7c5bdb cmake: Ensure source and binary dirs are set a1adbc7243 cmake: Stop processing if -P option lacks file name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2799
| * | cmake: Ensure source and binary dirs are setCraig Scott2019-01-133-14/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If only the source dir is provided, the binary dir is assumed to be the working directory. If only the binary dir is provided and it doesn't yet have a CMakeCache.txt to provide the source dir, then the source dir is assumed to be the working directory. This logic was not previously being handled correctly when -S and/or -B options were involved. Furthermore, when both were missing, no suitable error message was provided and an empty string was used for the build directory. Fixes: #18707
* | | Merge topic 'autogen_noqt_warning'Brad King2019-01-146-0/+21
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | 0377fe1e2b Merge branch 'backport-autogen_noqt_warning' into autogen_noqt_warning dd39da5518 Tests: Add case for warning when AUTOMOC/UIC/RCC gets disabled f44a0414ae Autogen: Issue a warning when AUTOMOC/UIC/RCC gets disabled. 5ae69f5919 Autogen: Issue a warning when AUTOMOC/UIC/RCC gets disabled. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2787