summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'ninja-multi-variable-shuffle-again' into release-3.17Brad King2020-02-2817-34/+70
|\ | | | | | | | | | | | | | | | | c794b70f19 Ninja Multi-Config: Always generate build.ninja 9590c3a400 Generator: Don't allow Ninja Multi-Config variables on other generators 7a63dafafb Ninja Multi-Config: Remove "NMC" from variable names Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4403
| * Ninja Multi-Config: Always generate build.ninjaKyle Edwards2020-02-274-12/+3
| | | | | | | | | | If CMAKE_DEFAULT_BUILD_TYPE is not specified, use the first item from CMAKE_CONFIGURATION_TYPES instead.
| * Generator: Don't allow Ninja Multi-Config variables on other generatorsKyle Edwards2020-02-2710-0/+45
| | | | | | | | | | | | We may want to enable these variables later on with specific semantics. To avoid breaking backwards compatibility, make it an error to use them for now.
| * Ninja Multi-Config: Remove "NMC" from variable namesKyle Edwards2020-02-276-27/+27
| | | | | | | | | | | | Also rename `..._DEFAULT_BUILD_FILE_CONFIG` to `..._DEFAULT_BUILD_TYPE`. These name changes make the variables meaningful for future use by other generators.
* | foreach: Set fatal error on invalid rangeKyle Edwards2020-02-274-0/+8
| | | | | | | | Fixes: #20394
* | foreach: Fix crash when parsing invalid integerKyle Edwards2020-02-2719-0/+48
|/ | | | Fixes: #20393
* Merge topic 'RunCMake-test-lang' into release-3.17Brad King2020-02-261-0/+3
|\ | | | | | | | | | | | | 95dbcf0598 Tests: fix RunCMake.Make test when run on systems with non-english locale Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4389
| * Tests: fix RunCMake.Make test when run on systems with non-english localeRolf Eike Beer2020-02-261-0/+3
| | | | | | | | | | | | Set `LANG=C` in the environment so the output of `make` is predictable. Fixes: #19689
* | Tests: Fix CFBundleTest for Ninja Multi-ConfigKyle Edwards2020-02-251-1/+1
| |
* | Tests: Fix CustComDepend test for Ninja Multi-ConfigKyle Edwards2020-02-251-2/+2
| |
* | CTest: Provide more detailed information on resource allocation errorKyle Edwards2020-02-243-3/+37
|/
* Merge topic 'ninja-multi-framework-dependency-autogen-fix' into release-3.17Brad King2020-02-182-0/+27
|\ | | | | | | | | | | | | 7abc3d61ac Ninja Multi-Config: Fix issue with framework dependencies and Autogen Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4363
| * Ninja Multi-Config: Fix issue with framework dependencies and AutogenKyle Edwards2020-02-172-0/+27
| | | | | | | | Fixes: #20345
* | ExternalProject: Quote each git --config option to handle spacesCraig Scott2020-02-151-1/+3
| | | | | | Fixes: #20354
* | Tests: Add missing ExternalProject smoke testsCraig Scott2020-02-151-0/+8
| |
* | Tests: Fix test_clean target missing some test directoriesCraig Scott2020-02-153-11/+16
|/
* Merge topic 'ninja-multi-default-configs-fix' into release-3.17Brad King2020-02-123-0/+45
|\ | | | | | | | | | | | | 46c836644d Ninja Multi-Config: Fix issue with "all" in CMAKE_NMC_DEFAULT_CONFIGS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4349
| * Ninja Multi-Config: Fix issue with "all" in CMAKE_NMC_DEFAULT_CONFIGSKyle Edwards2020-02-113-0/+45
| | | | | | | | | | | | | | | | Prior to this fix, CMAKE_NMC_DEFAULT_CONFIGS would inherit "all" from the union of CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG and CMAKE_NMC_CROSS_CONFIGS. This is inconsistent with the behavior of the "all" target signifying CMAKE_NMC_CROSS_CONFIGS. Update "all" in CMAKE_NMC_DEFAULT_CONFIGS to inherit only from CMAKE_NMC_CROSS_CONFIGS.
* | Merge topic 'file-CONFIGURE_DEPENDS-verify-CMP0009' into release-3.17Brad King2020-02-125-2/+30
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 818ec34bdd file: GLOB_RECURSE VerifyGlobs.cmake should have CMP0009 set to new b620dc566d file: Fix GLOB_RECURSE LIST_DIRECTORIES documentation regarding CMP0009 715f90bdd9 Tests: Perform minor cleanups in RunCMake.file test Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !4342
| * | file: GLOB_RECURSE VerifyGlobs.cmake should have CMP0009 set to newShane Parris2020-02-115-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In certain cases, rebuilds with CMake using the CONFIGURE_DEPENDS flag with GLOB_RECURSE could result in a reconfigure loop due to CMP0009 not being propogated to the generated VerifyGlobs.cmake script. During the inital configuration phase, RecurseThroughSymlinksOn() is called for recursive glob operations either by having the CMP0009 status not set to NEW or by explicitly providing the FOLLOW_SYMLINKS flag. At the end when the VerifyGlobs script is created, the FOLLOW_SYMLINKS flag is written according to the final resolved form through a call to GetRecurseThroughSymlinks(). Thus, setting CMP0009 to NEW in the generated file is safe and allows correct behavior whether or not the end user sets the policy status to NEW or OLD.
| * | Tests: Perform minor cleanups in RunCMake.file testShane Parris2020-02-111-2/+2
| | |
* | | Merge topic 'install-default-fix' into release-3.17Brad King2020-02-126-12/+12
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | 9442ae5083 install: Fix regression when using default destinations Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4340
| * | install: Fix regression when using default destinationsKyle Edwards2020-02-116-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 9fc20a4f3e (install: Add sane set of defaults for DESTINATION and file type parameters, 2018-11-02, v3.14.0-rc1~410^2~1), a regression was introduced, in which an `install(TARGETS)` with a RUNTIME/LIBRARY/ARCHIVE DESTINATION but no PUBLIC_HEADER/PRIVATE_HEADER DESTINATION would then install the headers. The old behavior did not do this. Restore the old behavior. Fixes: #20326
* | | Merge topic 'FindPython-reduce-resources-comsumption' into release-3.17Brad King2020-02-111-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 3dab4682f6 FindPython: reduces consumption of resources Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4338
| * | | FindPython: reduces consumption of resourcesMarc Chevrier2020-02-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Stores more information in the cache to reduce the number of sub-processes required on subsequent find_package calls. Fixes: #20337
* | | | Merge topic 'swift-no-sdk-include' into release-3.17Brad King2020-02-114-0/+81
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5c2a92f44f Swift: Exclude SDK include paths Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4315
| * | | | Swift: Exclude SDK include pathsYauheni Khnykin2020-02-104-0/+81
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | Populate `CMAKE_Swift_IMPLICIT_INCLUDE_DIRECTORIES` with the macOS SDK's include directory so that we filter such implicit directories out of Swift targets. Fixes: #19845
* | | | Ninja Multi-Config: Add support for DEPFILE option in add_custom_command()Kyle Edwards2020-02-073-0/+18
| |/ / |/| | | | | | | | And give other generators a path forward to add support in the future.
* | | Merge topic 'ninja-multi-default-config-fix' into release-3.17Brad King2020-02-072-0/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 1844be451e Ninja Multi-Config: Fix issue with CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4331
| * | | Ninja Multi-Config: Fix issue with CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIGKyle Edwards2020-02-062-0/+5
| |/ / | | | | | | | | | | | | | | | Fix an issue where CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG is specified and CMAKE_NMC_CROSS_CONFIGS is not, which results in a false error with CMAKE_NMC_DEFAULT_CONFIGS.
* | | Ninja Multi-Config: Don't include MinSizeRel by defaultKyle Edwards2020-02-066-8/+29
|/ /
* | Merge topic 'ninja-multi-cmake-build-no-config'Brad King2020-02-052-2/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | bd4ae2af0f Help: Make note of ninja -f argument in Ninja Multi-Config docs 79e5b3c46a Help: Explain new behavior of cmake --build in Ninja Multi-Config 16a4ba5b31 Ninja Multi-Config: Use build.ninja if cmake --build has no --config 2ac835b9f9 Refactor: Allow generators to decide default configuration for build Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4323
| * | Ninja Multi-Config: Use build.ninja if cmake --build has no --configKyle Edwards2020-02-042-2/+8
| | | | | | | | | | | | | | | | | | If cmake --build is called with no --config argument, and a build.ninja file is available, use that instead of defaulting to the Debug config.
* | | Add -E cmake_llvm_rc to preprocess files for llvm-rcThomas Bernard2020-02-049-0/+38
|/ / | | | | | | | | | | | | | | | | llvm-rc requires preprocessed rc files. The CMake command line tool cmake_llvm_rc enables channing the preprocessor call and the resource compiler and make this appear as single compilation step. When llvm-rc is detected as resource compiler, the RC compilation step is set to use this command.
* | Merge topic 'ninja-multi-variable-shuffle'Brad King2020-02-0321-10/+230
|\ \ | | | | | | | | | | | | | | | | | | b966f86d86 Ninja Multi-Config: Shuffle variables around Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4305
| * | Ninja Multi-Config: Shuffle variables aroundKyle Edwards2020-02-0321-10/+230
| | | | | | | | | | | | | | | | | | Remove redundant variable CMAKE_NINJA_MULTI_CROSS_CONFIG_ENABLE. Rename other variables. Document and improve handling of error conditions.
* | | Merge topic 'ctest-add-ignore-no-tests-option'Kyle Edwards2020-02-0310-0/+38
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | a39d4139d0 Add --no-tests=<[error|ignore]> option to CTest Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4258
| * | | Add --no-tests=<[error|ignore]> option to CTestStefan Dinkelacker2020-01-3110-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If no tests were found, the default behavior of CTest is to always log an error message but to return an error code in script mode only. This option unifies the behavior of CTest by either returning an error code if no tests were found or by ignoring it. Signed-off-by: Stefan Dinkelacker <s.dinkelacker@dkfz-heidelberg.de>
* | | | Merge topic 'windows-gnu-asm'Brad King2020-02-031-2/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 97de48b528 Tests: Update Assembler code generation to select MSVC runtime library 6348ffb9e5 ASM: Hook up Windows-specific GNU/Clang compiler information modules Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4287
| * | | | Tests: Update Assembler code generation to select MSVC runtime libraryBrad King2020-01-311-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `Assembler` test runs the C compiler in a custom command to generate a `.s` file for the platform. When using the GNU-like Clang variant on Windows, ensure that the custom command includes the MSVC runtime library selection flags for Clang. That way the resulting `.s` file, when assembled into a `.obj`, will tell the linker what runtime library it needs.
* | | | | Merge topic 'ninja_multi_config_test_understand_win_cuda'Brad King2020-02-032-0/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7f39ea3318 NinjaMultiConfig: CUDA executables generate symbols on windows Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !4310
| * | | | | NinjaMultiConfig: CUDA executables generate symbols on windowsRobert Maynard2020-01-312-0/+6
| | | | | |
* | | | | | AIX: Add an option to disable automatic exports from shared librariesBrad King2020-01-318-1/+40
| |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 0f150b69d3 (AIX: Explicitly compute shared object exports for both XL and GNU, 2019-07-11, v3.16.0-rc1~418^2~2) we always export all symbols from shared libraries by default. Add a new target property called `AIX_EXPORT_ALL_SYMBOLS` that can be explicitly set to OFF to suppress this behavior and export no symbols by default. Fixes: #20290
* | | | | Merge topic 'GNUInstallDirs-no-system'Brad King2020-01-313-0/+13
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | c18ed7236d GNUInstallDirs: Warn when CMAKE_SYSTEM_NAME is not set Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4300
| * | | | GNUInstallDirs: Warn when CMAKE_SYSTEM_NAME is not setVitaly Lipatov2020-01-303-0/+13
| | |/ / | |/| | | | | | | | | | | | | | | | | | If a project writes `include(GNUInstallDirs)` before `project()` then `CMAKE_SYSTEM_NAME` may not be set and an incorrect `LIBDIR` may be computed. Warn about this case.
* | | | Merge topic 'automoc-using-depfiles'Brad King2020-01-3015-7/+217
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | aebfbcaa46 AutoGen: Use depfiles for the XXX_autogen ninja targets f765fdea03 AutoGen: Use moc's feature to output dependencies f8c505d4b3 Add a parser for GCC-style depfiles Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Jan Niklas Hasse <jhasse@bixense.com> Merge-request: !4221
| * | | AutoGen: Use depfiles for the XXX_autogen ninja targetsJoerg Bornemann2020-01-281-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The XXX_autogen targets are implemented as utility commands, which means they always run, even if there weren't any changes. For the Ninja generator and Qt >= 5.15 we're taking a different approach: This commit adds custom commands that create XXX_autogen/timestamp files. Those custom commands have a depfile assigned that is generated from the depfiles that were created by moc. The XXX_autogen targets merely wrap the XXX_autogen/timestamp custom commands. Fixes: #18749
| * | | AutoGen: Use moc's feature to output dependenciesJoerg Bornemann2020-01-287-7/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Qt version 5.15.0 moc learned to output the dependencies of the generated file. This commit enhances JobCompileMocT to read the dependency file written by moc. The dependencies are stored in the same cache that's used for the dependencies determined by dependency filters. The dependency filter functionality is turned off if moc's dependency output feature is used. Fixes: #17750 Fixes: #19058
| * | | Add a parser for GCC-style depfilesJoerg Bornemann2020-01-288-0/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce the function cmReadGccDepfile that parses a GCC-style depfile and returns its content. The implementation uses a lexer that is modeled after the re2c implementation in Ninja. The sample files of the autotest have been created with gcc 8.3.0. This depfile reader is to be used by the Autogen facility to make use of the depfiles that are generated by Qt's meta object compiler.
* | | | Merge topic 'mixed-mode-multi-arch'Brad King2020-01-294-0/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 15f6606abd Swift: disallow multiple `CMAKE_OSX_ARCHITECTURES` with Swift Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4283