summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* 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 '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
| * | | Swift: disallow multiple `CMAKE_OSX_ARCHITECTURES` with SwiftSaleem Abdulrasool2020-01-284-0/+13
| | | | | | | | | | | | | | | | | | | | This disallows the use of multiple values in `CMAKE_OSX_ARCHITECTURES` with Swift which does not support FAT compilation.
* | | | Merge topic 'ninja-1.10'Brad King2020-01-282-2/+24
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ccaa0bccc4 Ninja: Do not clean metadata when re-generating inside a running build 657820a00b Ninja: Track when running to re-generate during a build b12b013028 Ninja: Factor metadata cleanup into dedicated method 5d92e60d81 Ninja: Skip cleandead and recompact if build.ninja is missing dd0a4718fd Ninja: Fix CMAKE_NINJA_OUTPUT_PATH_PREFIX with Ninja 1.10 0944caaebb Tests: Fix RunCMake.CMP0037 test with Ninja 1.10 9d4883cce5 Tests: Fix RunCMake.Ninja test for Ninja 1.10 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4290
| * | | | Tests: Fix RunCMake.CMP0037 test with Ninja 1.10Brad King2020-01-271-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CMP0037 OLD and WARN cases that actually use reserved target names like `all` produce `build.ninja` files with duplicate build statements producing the same output. With Ninja 1.10 and above we run ninja tools at the end of generation that require `build.ninja` to be loadable. It is not loadable for these test cases, so skip them.
| * | | | Tests: Fix RunCMake.Ninja test for Ninja 1.10Brad King2020-01-271-0/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | With Ninja 1.10 we run the cleandead and recompact tools after generation. These require that `build.ninja` be loadable. Update the `CustomCommandJobPool` case to define the referenced job pools to make `build.ninja` loadable.
* | | | Merge topic 'xcode-top-level-only-with-object-library'Brad King2020-01-284-0/+25
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 64304fe72b Xcode: Fix post build script for 'top level project only' opt Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4284
| * | | | Xcode: Fix post build script for 'top level project only' optYauheni Khnykin2020-01-274-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY is set on Xcode generator created post build scripts which tried to call XCODE_DEPEND_HELPER.make script in subproject. But XCODE_DEPEND_HELPER.make don't exist in subprojects when mentioned option is set on. Fixes: #20262
* | | | | Merge topic 'osx-version-flags'Brad King2020-01-286-0/+55
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6a84f0b791 macOS: Test OSX_COMPATIBILITY_VERSION and OSX_CURRENT_VERSION properties 4a62e3d97c macOS: Add OSX_COMPATIBILITY_VERSION and OSX_CURRENT_VERSION properties Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4274
| * | | | | macOS: Test OSX_COMPATIBILITY_VERSION and OSX_CURRENT_VERSION propertiesBrad King2020-01-276-0/+55
| | |_|_|/ | |/| | | | | | | | | | | | | Issue: #17652
* | | | | Merge topic 'cmsting-stl-compatibility'Brad King2020-01-281-5/+5
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8f839d02e3 cm::String: enhance compatibility with STL Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4281
| * | | | | cm::String: enhance compatibility with STLMarc Chevrier2020-01-251-5/+5
| | |/ / / | |/| | |
* | | | | Merge topic 'cuda_runtime_library_controls'Brad King2020-01-2826-17/+755
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0d0145138f CUDA: Add abstraction for cuda runtime selection Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4178
| * | | | | CUDA: Add abstraction for cuda runtime selectionRobert Maynard2020-01-2726-17/+755
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #17559 Replace our hard-coded default of cudart=static with a first-class abstraction to select the runtime library from an enumeration of logical names.
* | | | | | Merge topic 'install-name-tool-bug'Brad King2020-01-282-5/+9
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 162e8aeb9e Tests: Disable test on problematic versions of install_name_tool Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4276
| * | | | | Tests: Disable test on problematic versions of install_name_toolKyle Edwards2020-01-272-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to https://cmake.org/pipermail/cmake-developers/2015-September/026462.html, there is a bug in Xcode 7.0's install_name_tool that manifests when we try to test file(GET_RUNTIME_DEPENDENCIES). Add a cache option to disable this test.
* | | | | | Merge topic 'fix-ninja-multi-framework-header'Brad King2020-01-272-0/+29
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 63c9cd2088 Ninja Multi-Config: Fix bug with MacOS frameworks Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4279
| * | | | | Ninja Multi-Config: Fix bug with MacOS frameworksKyle Edwards2020-01-242-0/+29
| | |_|/ / | |/| | |
* | | | | Merge topic 'depend-on-target-real-name'Brad King2020-01-272-0/+12
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 08699cec68 add_custom_command: Fix dependency on macOS framework target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4273
| * | | | | add_custom_command: Fix dependency on macOS framework targetBrad King2020-01-242-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the `DEPENDS` option names a logical target name, convert to the "real" path of that target rather than any of the symlink-provided alternative file names. This makes the dependencies consistent with the outputs named by link rules producing the target artifacts. Fixes: #20264
* | | | | | Merge topic 'csharp-no-valued-macros'Brad King2020-01-271-4/+4
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | effd4d0569 CSharp: Do not pass definitions with values Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4267
| * | | | | | CSharp: Do not pass definitions with valuesSumit Bhardwaj2020-01-241-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Microsoft C# tooling does not accept definitions with values. Filter them out. Fixes: #19817
* | | | | | | Merge topic 'stl-support'Brad King2020-01-271-0/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 73d1da4f86 Stl support: cm::append now supports any sequential container Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4251
| * | | | | | | Stl support: cm::append now supports any sequential containerMarc Chevrier2020-01-241-0/+1
| | |_|_|_|/ / | |/| | | | |