summaryrefslogtreecommitdiffstats
path: root/Tests/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* CUDA: Add Device LTO support for nvccRobert Maynard2022-07-221-0/+5
| | | | Fixes #22200
* Tests: Exclude win/arm64 tests with CMAKE_VS_PLATFORM_NAMENiyas Sait2022-07-051-3/+3
|
* Tests: Fix Java tests on multi-config generatorsmakise-homura2022-06-281-3/+3
| | | | | | | | | Java.NativeHeaders test was not passing on t:fedora36-ninja-multi pipeline. This is due to paths being not set because of $<CONFIG> being used at --test-command, but not being used at the actual CTest invocation. Now the correct variable is used there.
* Tests: handle a case when hg executable is brokenmakise-homura2022-06-281-1/+4
| | | | | | OS Elbrus 6.0-rc1 to rc3 have hg executable broken because of python2 and python3 module directories conflict. Here, we avoid hg related tests if such case is detected.
* Tests: don't fail tests on broken E2K Java RVMmakise-homura2022-06-281-37/+50
| | | | | | | | Java RVM on E2K architecture is known to be broken prior to RVM version 3.5.2 (they crash with SIGILL in some circumstances). That disallows tests like Java.Javah, Java.Jar, and Java.NativeHeaders to pass. Now, if such RVM is detected, these test are not being run.
* Tests: check for shlibdeps symbols/shlibs before testing itmakise-homura2022-06-281-1/+5
| | | | | | | | OS Elbrus 6.x has totally broken dpkg-shlibdeps; 7.1 has a working one, but still no symbols/shdibdeps files, so generated dependencies are also empty. Since this commit, we're checking if these files exist, and if not, we skip the CPackComponentsDEB-components-depend2 test.
* Tests: enable Java tests if javac is a recurse symlinkmakise-homura2022-06-281-1/+2
| | | | | | | | | | There are distros (OS Elbrus 6.x, 7.x, Ubuntu 21.x) where javac is a recurse symlink, like /usr/bin/javac -> /etc/alternatives/javac -> /usr/lib/jvm/.../bin/javac. On these distros, Java tests were not run, because Tests/CMakeLists.txt was not able to handle this case correctly. Now an additional stage of resolving symlinks is added, and these distros have Java tests running.
* Tests: don't use broken makensismakise-homura2022-06-281-2/+5
| | | | | | Some distros (OS Elbrus less than 7.0) have unrunnable makensis. While performing tests, this condition is now checked, and NSIS CPack generator test is not performed.
* FindOpenAL: Add imported targetSam V2022-06-221-0/+1
| | | | Fixes: #20026
* Tests: Use Java_JAVAC_EXECUTABLE variable consistentlyCraig Scott2022-06-041-1/+1
| | | | | | | | | | | | | | In certain specific scenarios, it is possible to end up with JAVA_COMPILE being unset, but Java_JAVAC_EXECUTABLE being set. This typically occurs when running different versions of CMake in the same build directory without deleting the CMakeCache.txt each time. This can result in an obscure error about the wrong number of arguments to the get_filename_component() command, but the real cause is the JAVA_COMPILE variable being unset. The JAVA_COMPILE variable is only set by the FindJava module, and it is a legacy variable that has been superceded by Java_JAVAC_EXECUTABLE. The latter is what the if() expression tests, so use that same variable in the body of the if() block for consistency and to avoid the above problem.
* Merge topic 'vs-arm64-tests'Brad King2022-05-121-3/+7
|\ | | | | | | | | | | | | 834422e075 Tests: Fix test failures for Windows Arm64 platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7251
| * Tests: Fix test failures for Windows Arm64 platformsNiyas Sait2022-05-111-3/+7
| |
* | OpenWatcom: Allow specifying the runtime libraryCameron Cawley2022-05-061-0/+4
|/ | | | | | | | Add a `CMAKE_WATCOM_RUNTIME_LIBRARY` variable to control the runtime library selection. Add policy CMP0136 to switch to in place of the old hard-coded default flags. Fixes: #23178
* CPack: Remove the deprecated PackageMaker generatorCraig Scott2022-05-041-11/+0
| | | | | | This CPack generator has been deprecated since commit 7bf187499f (CPack: Deprecate PackageMaker generator, 2020-01-31). Fixes: #23344
* messages: remove screamake from comments and errorsBen Boeckel2022-04-251-1/+1
|
* Merge topic 'FindJNI-targets'Brad King2022-04-071-0/+1
|\ | | | | | | | | | | | | | | | | | | 00c4f488f2 FindJNI: support Android NDK 171d45c039 FindJNI: added components and imported targets 35e92ec619 FindJNI: improved description Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !7069
| * FindJNI: added components and imported targetsSergiu Deitsch2022-04-041-0/+1
| |
* | FindMatlab: Add NO_IMPLICIT_LINK_TO_MATLAB_LIBRARIES option to matlab_add_mexSilvio2022-04-051-0/+3
|/
* Tests: Add Matlab label to Matlab-related testsSilvio2022-03-251-0/+6
|
* GHS: use INSTALL targetFred Baksik2022-03-171-1/+1
| | | | For consistancy use upper case install for pre-defined targets.
* ctest: print WORKING_DIRECTORY property with -VKevin Puetz2022-03-091-1/+1
|
* Tests: Run CTest.UpdateP4 tests only if explicitly enabledBrad King2022-02-221-7/+1
| | | | | The test occasionally fails with "Gave up waiting for server to start". Drop our heuristic so we can enable it only on specific builds.
* Tests: Preemptively create test HOME .bazaar directoryBrad King2022-02-221-0/+3
| | | | | | | | | Occasionally one of the `CTest.UpdateBZR` tests fails with: bzr: ERROR: [...] File exists: '/.../Tests/CMakeFiles/TestHome/.bazaar' Create the directory ahead of time to eliminate any chance of a time-of-check-time-of-use race.
* Tests: Run CTest.UpdateBZR tests only if explicitly enabledBrad King2022-02-081-7/+1
| | | | | | | | These tests have not been automatically enabled on current versions of `bzr` in a long time. The recent change to drop the `xmlplugins` heuristic caused the tests to start running on some machines, but they do not work everywhere. Disable the tests again pending further investigation.
* Tests: Add cache entries to control ExternalProject test VCS toolsBrad King2022-02-071-0/+7
| | | | | | Add undocumented `CMake_TEST_ExternalProject_*` cache entries to explicitly enable or disable these tests. If not set, compute defaults as before. Also consolidate the VCS default heuristics.
* Tests: Add cache entries to control existence of CTest.Update* testsBrad King2022-02-071-52/+75
| | | | | Add undocumented `CMake_TEST_CTestUpdate_*` cache entries to explicitly enable or disable these tests. If not set, compute defaults as before.
* Tests: Make condition for CTest.UpdateCVS match pattern of other toolsBrad King2022-02-071-6/+5
|
* Tests: Drop CTestUpdate.BZR test check for xmloutput pluginBrad King2022-02-071-20/+15
| | | | Current `bzr` tools do not have any `bzr xmlplugins` command.
* Tests: Drop unnecessary check for FindCVS moduleBrad King2022-02-071-6/+2
|
* Tests: Remove always-true condition enabling CTest.Update* testsBrad King2022-02-071-128/+125
|
* Tests: Remove unused CVS tool discoveryBrad King2022-02-071-20/+0
| | | | | | Since commit b819ee85c0 (BUG: Oops. Left chunk of junk at the bottom of the main Tests CMakeLists.txt file..., 2009-07-24, v2.8.0~385) the `do_cvs_tests` variable is not used in `Tests/CMakeLists.txt`.
* Tests: Move CTest.BuildCommand.ProjectInSubdir into RunCMake.ctest_buildBrad King2022-02-041-18/+0
| | | | | The former duplicates code that is now part of the infrastructure in the latter. The latter can also explicitly verify the results.
* Tests: Run MFC test only when explicitly enabledBrad King2022-02-031-103/+1
| | | | | | | | Previously we used a complicated heuristic to decide whether or not to run the MFC test, but it sometimes decided incorrectly to run the test. Since that was first written, we have developed a convention for other tests to enable them via undocumented cache entries that are added only on machines known to meet the tests' requirements. Do that for MFC.
* Add usage requirements to update direct link dependenciesBrad King2022-01-291-0/+2
| | | | | | | | | | | | | | | | | Link line construction starts with `LINK_LIBRARIES` and appends dependencies from the transitive closure of `INTERFACE_LINK_LIBRARIES`. Only the entries of `LINK_LIBRARIES` are considered direct link dependencies. In some advanced use cases, particularly involving static libraries and static plugins, usage requirements need to update the list of direct link dependencies. This may mean adding new items, removing existing items, or both. Add target properties to encode these usage requirements: * INTERFACE_LINK_LIBRARIES_DIRECT * INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE Fixes: #22496
* Merge topic 'ci-vs-managed'Brad King2021-12-061-1/+1
|\ | | | | | | | | | | | | 69419c5870 ci: Enable more VS tests that use managed code Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6782
| * ci: Enable more VS tests that use managed codeBrad King2021-12-031-1/+1
| | | | | | | | | | | | | | A couple of VS tests were conditioned on `NOT CMAKE_GENERATOR_TOOLSET`, but in CI jobs with VS we always set `CMAKE_GENERATOR_TOOLSET`. Make the condition specific to excluding the `v90` toolset, which was its original intention anyway.
* | Merge topic 'vs-csproj-scripts'Brad King2021-12-031-0/+1
|\ \ | |/ | | | | | | | | | | 13a7ae2194 VS: Revert "Add missing label in C# project-build events" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6781
| * VS: Revert "Add missing label in C# project-build events"Brad King2021-12-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit b284a21fee (VS: Add missing label in C# project-build events, 2021-09-03, v3.22.0-rc1~156^2). The change broke cases using multiple successful custom commands. Revert it pending further investigation into the interaction of the generated script code with `Microsoft.Common.CurrentVersion.targets`, and whether this is needed for all managed projects or just C# projects. Also add a test covering the case that was broken. Fixes: #22964 Issue: #21440
* | Merge topic 'envmod-test-modifying-existing'Brad King2021-11-011-0/+7
|\ \ | |/ | | | | | | | | | | | | 9c4d6404eb Tests/Environment: also test modifying ambient values 7d52d48a32 cmCTestRunTest: get the default value from the environment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6682
| * Tests/Environment: also test modifying ambient valuesBen Boeckel2021-10-291-0/+7
| |
* | Merge topic 'lcc-compiler'Brad King2021-10-191-6/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 02b2607a5c Help: Add release note for MCST LCC compiler support e5d9fce03f LCC: Add dedicated support for MCST LCC compiler 2b9ef77944 CPack/DEB: deal with broken dpkg-shlibdeps on E2K architecture 0995c75301 Tests/RPM: skip tests tat rely on debugedit if it's not found ea55ac9a51 Tests/RunCMake/CommandLine: Deal with locales that are different from English Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6608
| * | LCC: Add dedicated support for MCST LCC compilermakise-homura2021-10-151-6/+8
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Divert LCC compiler as a new one, instead of treating it as GNU. Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been passing checks for GNU compilers, so it has been identified as GNU. Now, with intent of seriously upstreaming its support, it has been added as a separate LCC compiler, and its version displays not a supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead of GNU 7.3.0). This commit adds its support for detection, and also converts basically every check like 'is this compiler GNU?' to 'is this compiler GNU or LCC?'. The only places where this check is untouched, is where it regards other platforms where LCC is unavailable (primarily non-Linux), and where it REALLY differs from GNU compiler. Note: this transition may break software that are already ported to Elbrus, but hardly relies that LCC will be detected as GNU; still such software is not known.
* | Tests: Disable SubDirSpaces test on Open WatcomBrad King2021-10-151-1/+1
|/ | | | Open Watcom 1.9 does not support spaces in the path.
* FindJasper: Add IMPORTED targetHiroshi Miura2021-10-061-0/+1
| | | | | Fixes: #20601 Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* Tests: Add support for testing Qt6Craig Scott2021-10-041-0/+10
| | | | | | | | | | | | The minimum CMake version for Qt6 is 3.16, so all the calls to cmake_minimum_required() are updated here to enforce that minimum. This will avoid any CMake version-related warnings from Qt. Avoid hard-coding Qt5 where the tests could now be using Qt5 or Qt6. Fixes: #22188
* Tests: Avoid output when running symlink checkBrad King2021-09-171-0/+2
| | | | | | | | Since commit 58d10cf6f1 (Alternative symlink-creating mode for file(INSTALL ...), 2021-08-02) we test creating a symlink during configuration to decide whether to activate some tests. Capture the process output during the check to avoid leaking the error message on failure.
* FindMatlab: Add imported targetsSilvio Traversaro2021-09-131-0/+2
|
* Tests: Fix check to add InstallMode testsBrad King2021-08-191-5/+4
| | | | | | | | | The check added by commit 58d10cf6f1 (Alternative symlink-creating mode for file(INSTALL ...), 2021-08-02) only works when re-running CMake in a build tree after building `cmake`. Use the driving CMake to check instead. Remove the stray link after creation. Also remove the message on failure: we do not use that convention.
* Merge topic 'symlinks-rebase-master'Brad King2021-08-101-0/+48
|\ | | | | | | | | | | | | | | 58d10cf6f1 Alternative symlink-creating mode for file(INSTALL ...) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6396
| * Alternative symlink-creating mode for file(INSTALL ...)Felix Lelchuk2021-08-021-0/+48
| | | | | | | | | | | | | | | | | | | | | | An new environment variable 'CMAKE_INSTALL_MODE' is introduced, which can be used to ask CMake to create symbolic links instead of copying files during a file(INSTALL ...). The operation is at the file level only, directory trees are still created using actual directories, not links. Signed-off-by: Felix Lelchuk <felix.lelchuk@gmx.de>