summaryrefslogtreecommitdiffstats
path: root/Tests/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* Languages: Add support for Objective-C++Steve Wilson2019-09-281-0/+36
| | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C++ compiler determination and identification. Add Modules to check Objective-C++ compiler flags, source compilations, program checks, etc... Use OBJCXX as the designator of the language, eg: project(foo OBJCXX) Add various tests for Objective-C++ language features. Add tests to preserve C++ handling of .M and .mm files when Objective-C++ is not a configured language. Co-authored-by: Cristian Adam <cristian.adam@gmail.com>
* Languages: Add support for Objective-CSteve Wilson2019-09-281-0/+37
| | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C compiler determination and identification. Add Modules to check Objective-C compiler flags, source compilations, program checks, etc... Use OBJC as the designator of the language, eg: project(foo OBJC) Add various tests for Objective-C language features. Add tests to preserve C++ handling of .m and .mm files when OBJC is not a configured language. Co-Authored-By: Cristian Adam <cristian.adam@gmail.com>
* Tests: Teach VSWinStorePhone to verify the content of generated appx/msixVedran Vujinovic2019-09-241-0/+3
| | | | | | Add a test to verify the content of generated UWP app package - appx/msix. MSIX format was introduced Visual Studio 2017 version 15.9.0 and Windows SDK version 17763.
* FindGnuTLS: add target GnuTLS::GnuTLSDavid Callu2019-09-181-0/+1
| | | | Also add a test case for the module.
* Merge topic 'clang-ipo-support'Brad King2019-09-031-1/+0
|\ | | | | | | | | | | | | | | | | | | dca9c33abc Tests: Remove old IPO test c856d4556b bindexplib: supporting llvm bitcode formats using llvm-nm 079b8e2916 Clang: prefer lld-link over link.exe 6e3655db2c Clang: add LTO support for GNU-command line clang on windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3527
| * Tests: Remove old IPO testZsolt Parragi2019-08-301-1/+0
| | | | | | | | | | This test didn't really result in IPO compilation, there are other better tests for this.
* | Tests: Fix nightly binary tests to fail on errorBrad King2019-08-291-1/+2
| | | | | | | | | | | | | | We generate a small shell script to drive the steps. Previously a failure in the `release_cmake.cmake` script was not diagnosed and hidden from the script exit code by the following upload step. Tell the shell to terminate with failure on the first command that fails.
* | Utilities/Release: Drop linux64 script in favor of docker buildBrad King2019-08-281-2/+0
| | | | | | | | Drop also drop the CMakeNightlyLinux64 test that uses the script.
* | Add option to skip CMake tests that need network accessBrad King2019-08-231-10/+12
|/
* Merge topic 'cmake-tutorial'Brad King2019-08-201-3/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6f6a32a0f6 Tutorial: Improve Step 9 6a35d630dc Tutorial: Improve Step 8 61d4d990d6 Tutorial: Improve Step 7 a36731c634 Tutorial: Improve Step 6 df9cdf629c Tutorial: Improve Step 5 442c0f0d46 Tutorial: Improve Step 4 bc64401c3d Tutorial: Improve Step 3 49ce4d6ff4 Tutorial: Improve Step 2 ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3528
| * Tutorial: Improve Step 1Betsy McPhail2019-08-191-3/+3
| | | | | | | | | | | | | | | | | | | | * Update minimum required version to 3.10 * Use VERSION argument to project command rather than separate variables * Replace `endif(USE_MYMATH)` with more modern `endif()` * Simplify the call to 'configure_file()' * Add comments to tutorial.cxx to use as anchors in documentation * Remove CMakeLists and TutorialConfig.h.in files that users should create. Consequently, remove Step1 from CMake tests.
* | FindOpenACC: Provide import targets and OpenACC_<lang>_OPTIONS variableRobert Maynard2019-08-191-0/+1
|/ | | | | | Previously the FindOpenACC module had issues where the contents of OpenACC_<lang>_FLAGS could not be used with target_compile_options when it contained multiple compiler flags.
* Merge topic 'ctest_make_program__propagated_to_cmake_configure_pass'Brad King2019-07-121-101/+47
|\ | | | | | | | | | | | | cd681f1f41 ctest: propagate make program to cmake Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3483
| * ctest: propagate make program to cmakeRobert Maynard2019-07-111-101/+47
| |
* | Tests: fix some Clang failures on WindowsZsolt Parragi2019-07-091-2/+4
| | | | | | | | | | | | | | | | | | * Execute MSVCRuntimeLibrary tests for GNU command line mode Clang on Windows using the MSVC ABI * Assembler tests should be executed with the Ninja generator * Assembler tests shouldn't be executed with clang-cl * Fixed a condition in the Preprocess test for clang-cl * Adjusted the conditions on some MSVC specific tests
* | Merge topic 'cuda-msvc-runtime-library'Brad King2019-06-271-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | 8fbd25772f CUDA: Implement MSVC runtime library abstraction 07807a2006 VS: Use AddLanguageFlags to de-duplicate CMAKE_{CUDA,ASM*}_FLAGS lookup Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3485
| * | CUDA: Implement MSVC runtime library abstractionBrad King2019-06-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | In commit fb3370b6a1 (MSVC: Add abstraction for runtime library selection, 2019-04-10, v3.15.0-rc1~229^2) we overlooked updating flags for CUDA on Windows, where nvcc uses MSVC as the host compiler. Add them now and update the MSVCRuntimeLibrary test to cover CUDA. Fixes: #19428
* | | Merge topic 'find-testlist'Brad King2019-06-261-167/+49
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | f68492912c Tests: reduce code duplication for CMake_TEST_Find* Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3471
| * | Tests: reduce code duplication for CMake_TEST_Find*Rolf Eike Beer2019-06-241-167/+49
| |/
* | Merge topic 'matlab-if'Brad King2019-06-251-5/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | 56e89e50d3 FindMatlab: simplify several if()-constructs 51bcdeb17f Tests: simplify checks for Matlab variables being set Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3472
| * | Tests: simplify checks for Matlab variables being setRolf Eike Beer2019-06-241-5/+5
| |/
* | Help/guide/tutorial: Adopt tutorial codeKitware Robot2019-06-181-2/+2
|/
* Merge topic 'implicit-includes-CPATH'Brad King2019-05-311-0/+18
|\ | | | | | | | | | | | | 2d0b0e2b9d Do not exclude include directories made implicit by CPATH Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3395
| * Do not exclude include directories made implicit by CPATHBrad King2019-05-301-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Entries of the `CPATH` environment variable are implicitly searched as include directories by some C/C++ compilers. Since commit 5990ecb741 (Compute implicit include directories from compiler output, 2018-12-07, v3.14.0-rc1~108^2) these entries are detected by CMake and included in the `CMAKE_{C,CXX}_IMPLICIT_INCLUDE_DIRECTORIES` variables. However, we should not exclude them from explicit specification via `-I` or particularly `-isystem` because they are meant as user-specified include directories that can be re-ordered without breaking compiler builtin headers. In particular, we need explicit requests via `include_directories` with the `SYSTEM` option to result in `-isystem` so that third-party headers do not produce warnings. Co-Author: Ben Boeckel <ben.boeckel@kitware.com> Fixes: #19291
* | Utilities/Release: Replace upload step with a "push" scriptBrad King2019-05-241-2/+2
| | | | | | | | | | | | | | | | Replace the `upload_release.cmake` script with a `push.bash` script that is more configurable from the command line and that does not hard-code any destinations. Instead of using `scp` to access `cmake.org` directly, push the files atomically to a staging directory from which another process will actually upload them.
* | Merge topic 'ninja-swift'Brad King2019-05-201-2/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a9180ccf9a Tests: add a check for the Swift compiler d745551fb6 Help: add some initial documentation for Swift support 9a182c9e5b Auxiliary: update vim syntax highlighting e9b0063e8e Modules: add build rules for Swift Ninja support b6412e3e38 Ninja: add placeholders to support Swift build 7d7f31161d Ninja: add support for Swift's output-file-map.json d688c4c19d Swift: remove unnecessary unreleased Ninja infrastructure 0723582208 Swift: Detect compiler version ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3297
| * | Tests: add a check for the Swift compilerSaleem Abdulrasool2019-05-171-2/+8
| | | | | | | | | | | | This ensures that the tests only run when the Swift compiler is present.
* | | Test: Improve WarnUnusedCliUnused to run on all generatorsSebastian Holtermann2019-05-151-18/+11
|/ / | | | | | | | | | | | | | | | | | | In the WarnUnusedCliUnused test, the whole CMakeCache.txt was removed in the clean stage to trigger the same CMake warning in re-builds. This technique worked only in the Makefile generators and the test was limited to these. Now only the variable of interest is removed from the cache by using a `unset(UNUSED_CLI_VARIABLE CACHE)` statement in the CMakeLists.txt file. This makes the WarnUnusedCliUnused test run on all generators
* | Tests: Extend MakeClean test to cover ADDITIONAL_CLEAN_FILESSebastian Holtermann2019-05-141-1/+2
| | | | | | | | | | | | | | | | This extends the MakeClean test to cover the - ADDITIONAL_CLEAN_FILES directory property and the - ADDITIONAL_CLEAN_FILES target property as well.
* | Merge topic 'msvc-runtime-library'Brad King2019-04-171-0/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | fb3370b6a1 MSVC: Add abstraction for runtime library selection f621e7fa5d VS: Fix Fortran runtime library flag map special case for '-' options Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Acked-by: Leonid Pospelov <pospelovlm@yandex.ru> Merge-request: !3211
| * | MSVC: Add abstraction for runtime library selectionBrad King2019-04-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace our hard-coded defaults for `/MD` and `/MDd` with a first-class abstraction to select the runtime library from an enumeration of logical names. We've long hesitated to do this because the idea of "runtime library selection" touches on related concepts on several platforms. Avoid that scope creep by simply defining an abstraction that applies only when targeting the MSVC ABI on Windows. Removing the old default flags requires a policy because existing projects may rely on string processing to edit them and choose a runtime library under the old behavior. Add policy CMP0091 to provide compatibility. Fixes: #19108
* | | GHS: Update tests and notesFred Baksik2019-04-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | -- add new tests for custom commands -- minor test cleanup Fixes #15995 Fixes #18909 Fixes #15902
* | | GHS: Update project layout to build targets correctlyFred Baksik2019-04-111-1/+1
|/ / | | | | | | | | | | | | | | | | | | -- Restructure projects and files to support proper building of targets Build order is determined by hierarchy of project files and folders Custom targets may have been run multiple times in the original file / folder structure -- Default to build targets that are part of ALL target -- List all known targets for this project Includes global targets for ALL_BUILD and INSTALL -- Compute build order for building targets
* | Merge topic 'ghs-linux'Brad King2019-03-221-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2c43fb5be3 FindThreads: Fix pthread library check in GHS Multi Generator 0404efe786 GHS: Add support for GHS Multi Generator in Linux 2060a1445c Tests: Fix file name case in GHS object library test ddad70c8a4 Tests: Run GHS tests in a separate ctest process f7dca1fc97 GHS: Fix include-what-you-use and clang-tidy diagnostics Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3006
| * | Tests: Run GHS tests in a separate ctest processBrad King2019-03-211-0/+1
| | | | | | | | | | | | | | | These tests use a different compiler than the rest of the test suite. Isolate the rest of our tests from their environment.
* | | Merge topic 'environment-modules'Brad King2019-03-191-0/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | dfea916d3c FindEnvModules: Provide a CMake interface to environment modules Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3076
| * | | FindEnvModules: Provide a CMake interface to environment modulesChuck Atkins2019-03-181-0/+4
| | | |
* | | | Merge topic 'FindGLEW-updates'Brad King2019-03-181-0/+4
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | a77a30e657 FindGLEW: Add test a7d853868b FindGLEW: Update implementation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3094
| * | | FindGLEW: Add testClaudio Fantacci2019-03-151-0/+4
| |/ /
* | | Tests: Run FindGTK2 tests only when explicitly enabledBrad King2019-03-141-5/+4
|/ / | | | | | | | | | | Do not `find_package(GTK2)` by default, as it gives the impression that CMake depends on it to build. We will set `CMake_TEST_FindGTK2` in the cache of automated builds where GTK2 is expected to work.
* | Merge topic 'FindOctave-remove'Brad King2019-02-271-4/+0
|\ \ | |/ | | | | | | | | | | 7a1f3fe041 FindOctave: Remove module pending further work Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3027
| * FindOctave: Remove module pending further workBrad King2019-02-261-4/+0
| | | | | | | | | | | | | | | | | | | | | | The `FindOctave` module added by commit 170bcb6fdc (FindOctave: Add module to find GNU octave, 2018-11-17, v3.14.0-rc1~283^2) has a few problems in its implementation that need to be worked out before the module can be included in a CMake release. These were missed during review. Remove the module for now. It can be restored later with a fresh review. Issue: #18991
* | Tests: Disable test that builds KWSys if not also building CMakeBrad King2019-02-131-11/+15
| | | | | | | | | | | | If `CMake_TEST_EXTERNAL_CMAKE` is enabled then the compiler with which we are driving tests may not be able to compile CMake, so do not try to compile KWSys with it either.
* | Tests: Teach tests when to treat clang-cl as MSVCZsolt Parragi2019-02-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Disable the system include unused variable test in ExportImport when clang is in MSVC compatible mode. * Disable CxxDialect testcase when clang is in MSVC compatible mode, as it doesn't support `typeof`. * Teach Module.WriteCompilerDetectionHeader to treat clang-cl as MSVC. * Disable the SystemIncludeDirectories testcase within IncludeDirectories when clang is in MSVC compatible mode. * Disable the CMakeOnly.CheckCXXCompilerFlag testcase when clang is in MSVC compatible mode. * Treat clang-cl as MSVC in LinkOptions.cmake in the try_run and try_compile testcases.
* | Merge topic 'ghs-updates'Brad King2019-02-111-1/+1
|\ \ | |/ | | | | | | | | | | bcd99fac60 GHS: Document usage of GHS_NO_SOURCE_GROUP_FILE Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2943
| * GHS: Document usage of GHS_NO_SOURCE_GROUP_FILEFred Baksik2019-02-081-1/+1
| | | | | | | | -- Also change variable name to CMAKE_GHS_NO_SOURCE_GROUP_FILE
* | Merge topic 'findcups'Brad King2019-02-071-0/+4
|\ \ | | | | | | | | | | | | | | | | | | dd45f23b01 FindCups: add imported target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2917
| * | FindCups: add imported targetPatrick Gansterer2019-02-061-0/+4
| |/
* | Tests: Add a way to configure custom options for FortranModules testBrad King2019-02-061-0/+1
|/ | | | | Read an undocumented cache entry to allow some CI builds to configure this test in a special way.
* Tests: Update CMake tutorialBetsy McPhail2019-01-271-8/+27
| | | | Latest material from data.kitware.com -> Collections -> Courses -> CMake.