summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'cmake-option-parsing' into release-3.13Brad King2019-01-143-14/+17
|\ | | | | | | 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
* | Tests: Add case for warning when AUTOMOC/UIC/RCC gets disabledBrad King2019-01-116-0/+21
|/
* Tests: Add cases for -{C,D,U} without a source treeBrad King2019-01-1012-1/+22
|
* Merge branch 'backport-autogen_revert_implicit_includes' into release-3.13Brad King2018-12-071-3/+4
|\ | | | | | | Merge-request: !2709
| * Autogen: Revert passing compiler implicit includes to mocSebastian Holtermann2018-12-071-3/+4
| | | | | | | | | | | | | | | | | | Passing an incomplete list of compiler include directories causes a regression in the KIO project (and probably others). We need to disable it until the complete list is available (see #16291). Fixes: #18669 Issue: #18041
* | Merge branch 'cpack-status-callback' into release-3.13Brad King2018-12-072-0/+3
|\ \ | | | | | | | | | Merge-request: !2696
| * | CPack/External: Fix status messages of staging scriptsNils Gladitz2018-12-072-0/+3
| |/ | | | | | | | | | | | | | | Set progress callback on cmake instance used by CPack. The progress callback is used to output STATUS messages which are otherwise missing when issued from e.g. CPack External staging scripts. Fixes: #18567
* | CUDA: Fix crash on linking to a CUDA target without CUDA enabledBrad King2018-12-053-0/+10
|/ | | | | | | | Do not try to device link or add CUDA runtime libraries if the language is not enabled. Fixes: #18673 Issue: #18614
* Merge branch 'FindBoost-no-cxx' into release-3.13Brad King2018-11-263-0/+3
|\ | | | | | | Merge-request: !2663
| * FindBoost: Restore finding without CXX language enabledBrad King2018-11-263-0/+3
| | | | | | | | | | | | | | | | | | | | Since commit v3.13.0~7^2 (FindBoost: Improve compiler prefix detection for GCC 5+ and clang 4+, 2018-11-07) we run the internal `_Boost_COMPILER_DUMPVERSION` macro on all UNIX platforms. Teach the macro to tolerate missing `CMAKE_CXX_COMPILER_VERSION`, which occurs when the CXX language is not enabled. Fixes: #18624
* | Fortran: Fix module dependency scanning with upper-case SUBMODULEBrad King2018-11-201-3/+3
|/ | | | | | | | The lexical token expression added by commit v3.7.0-rc1~73^2~1 (Fortran: Add support for submodule syntax in dependency scanning, 2016-09-05) has a typo and does not match upper-case `B` in `SUBMODULE`. Fix it. Fixes: #18595
* Merge branch 'backport-configure_file-canonical-deps' into release-3.13Brad King2018-11-194-1/+14
|\ | | | | | | Merge-request: !2635
| * configure_file: canonicalize input and output path in dependenciesFrank Benkstein2018-11-194-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Represent the input file path internally in canonical form. Otherwise multiple `configure_file` calls that share the same input file but specify it relative to different directories (e.g. via `../`) result in multiple copies of the dependency on the rule to re-run CMake. This causes the Ninja generator to emit duplicate phony build statements for these dependencies, which generates an error with `-w dupbuild=err`, which will be default in Ninja 1.9. Also canonicalize the output path for consistency. Add a test case. Fixes: #18584
* | CTest: Restore inheritance of stdin by test processesBrad King2018-11-155-1/+34
| | | | | | | | | | | | | | | | | | | | | | Since commit v3.11.0-rc1~117^2 (CTest: Re-implement test process handling using libuv, 2017-12-10) we do not give the child test processes any stdin. Prior to that change we let the child test processes inherit stdin from ctest itself. Tests that run serially might be able to use the real stdin meaningfully, so restore that behavior and add a test case. Fixes: #18591
* | Tests: Teach RunCMake infrastructure to optionally provide stdinBrad King2018-11-151-0/+9
|/
* Merge branch 'rename-cpack-ext-generator' into release-3.13Brad King2018-11-0617-38/+38
|\ | | | | | | Merge-request: !2566
| * CPack: Rename Ext generator to ExternalCraig Scott2018-11-0517-38/+38
| | | | | | | | | | Ext and External were used inconsistently in the code and the docs. This change converts all uses of Ext to External, including within variable names used by the generator.
* | Merge branch 'custom-command-work-dir-genex' into release-3.13Brad King2018-11-051-2/+2
|\ \ | | | | | | | | | Merge-request: !2559
| * | add_custom_{command,target}: Fix WORKING_DIRECTORY leading genexBrad King2018-11-031-2/+2
| |/ | | | | | | | | | | | | | | | | | | | | Since commit v3.13.0-rc1~39^2 (add_custom_{command,target}: WORKING_DIRECTORY generator expressions, 2018-09-22) the `WORKING_DIRECTORY` option accepts generator expressions. Fix support for the case of a leading generator expression by deferring conversion to an absolute path until after evaluation of the generator expression. Fixes: #18543
* | Merge branch 'fix-custom-target-with-csharp' into release-3.13Brad King2018-10-314-2/+15
|\ \ | | | | | | | | | Merge-request: !2549
| * | CSharp: Fix regression in VS project type selection for custom targetBrad King2018-10-314-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A target created by `add_custom_target` should always be a `.vcxproj` file even if it has `.cs` sources involved in custom commands and such. The latter case was broken by refactoring in commit v3.12.0-rc1~160^2~7 (remove TargetIsCSharpOnly() and use methods from cmGeneratorTarget, 2018-03-19). The reason is that the `HasLanguage` method added by commit v3.12.0-rc1~239^2~6 (cmGeneratorTarget: add HasLanguage() as wrapper for GetLanguages(), 2018-03-19) does not check the target type and so is not a suitable check for deciding the project file extension. The `HasLanguage` method was an attempt at an abstraction that turns out not to work very well. Replace it with a dedicated `IsCSharpOnly` method that considers the target type, sources, and non-transitive `LINKER_LANGUAGE`. Fixes: #18515
* | | Merge branch 'set_directory_properties-script-mode' into release-3.13Brad King2018-10-293-0/+5
|\ \ \ | |_|/ |/| | | | | Merge-request: !2544
| * | set_directory_properties: Restore in script modeBrad King2018-10-293-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.10.0-rc1~391^2~3 (Add directory property 'LABELS' and CMAKE_DIRECTORY_LABELS variable, 2017-06-23) this command was accidentally not allowed in script mode. It was dropped because `ctest -S` mode needs to start with CMake's normal script mode and then replace the `set_directory_properties` implementation. Restore the normal `set_directory_properties` in script mode and then add special logic to replace it in ctest. Also add a test case. Fixes: #18523
* | | Merge branch 'cuda-thread-flags' into release-3.13Brad King2018-10-247-16/+73
|\ \ \ | |_|/ |/| | | | | Merge-request: !2512
| * | CUDA: Add test for device linking when host linking uses threadsRobert Maynard2018-10-247-16/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | Convert the `CudaOnly.LinkSystemDeviceLibraries` test to a new `Cuda.ProperDeviceLibraries` test. The former covered only the `cublas_device` library which is removed by CUDA 10. Extend the new test to also cover various cases of using threads. Issue: #18008
* | | Merge branch 'vs-csharp-in-custom-target' into release-3.13Brad King2018-10-233-0/+3
|\ \ \ | |/ / |/| | | | | Merge-request: !2515
| * | VS: Fix crash on CSharp sources in a custom targetBrad King2018-10-233-0/+3
| | | | | | | | | | | | | | | | | | | | | The target generator does not compute ClOptions for custom targets, so we should not use them either. Fixes: #18377, #18485
* | | Merge branch 'GNUInstallDirs-kfreebsd-man' into release-3.13Brad King2018-10-221-1/+1
|\ \ \ | | | | | | | | | | | | Merge-request: !2511
| * | | GNUInstallDirs: Don't use BSD info and man paths on GNU/kFreeBSDJames Clarke2018-10-221-1/+1
| |/ /
* | | Merge branch 'document-dollar-in-varnames' into release-3.13Brad King2018-10-166-0/+41
|\ \ \ | | | | | | | | | | | | Merge-request: !2479
| * | | CMP0053: document that `$` is a valid literal variable characterBen Boeckel2018-10-156-0/+41
| |/ / | | | | | | | | | | | | | | | | | | | | | This was overlooked in the initial implementation of CMP0053. However, an additional policy to reject it again is not worth it. Instead, add tests and document the behavior. Fixes: #17883
* | | Merge branch 'backport-revert-install-code-script-genex' into release-3.13Brad King2018-10-116-19/+0
|\ \ \ | | | | | | | | | | | | Merge-request: !2474
| * | | install: Revert CODE,SCRIPT support for generator expressionsBrad King2018-10-116-19/+0
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit v3.13.0-rc1~441^2 (install: Teach CODE,SCRIPT modes to evaluate generator expressions, 2018-05-29). Unfortunately it has been found to break existing code in a real project, e.g. install(CODE [[ message("$<FOOBAR>") ]]) Address this regression by reverting support for the 3.13 release series. Support can be restored later with a policy for compatibility. Issue: #15785 Fixes: #18435
* | | Merge branch 'vs-cuda-pdb' into release-3.13Brad King2018-10-1014-14/+14
|\ \ \ | | | | | | | | | | | | Merge-request: !2473
| * | | Tests: Fix Cuda test project namesBrad King2018-10-1014-14/+14
| |/ / | | | | | | | | | | | | Make them match what `ADD_TEST_MACRO` gives to ctest as the project name to build so that the `.sln` file will be found.
* | | Merge branch 'project-always-set-desc-url' into release-3.13Brad King2018-10-082-0/+27
|\ \ \ | | | | | | | | | | | | Merge-request: !2457
| * | | project(): Add tests verifying variables set by second project() callCraig Scott2018-10-072-0/+27
| |/ /
* | | Merge branch 'pkgc-op-lt-gt' into release-3.13Brad King2018-10-042-0/+84
|\ \ \ | | | | | | | | | | | | Merge-request: !2435
| * | | FindPkgConfig: support also > and < operators for version comparesRolf Eike Beer2018-10-042-0/+84
| |/ / | | | | | | | | | Fixes: #18416
* | | Fix misc. typosluz.paz2018-10-032-2/+2
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found via `codespell -q 3 -I ../cmake-whitelist.txt --skip="./Utilities"` where the whitelist consists of ``` aci ans behaviour buil convertor dum earch ect emmited emmitted helpfull iff isnt ith lowercased mose nd nknown nto objext ot pathes pevents splitted substract superceded supercedes te tim todays uint upto whitespaces ```
* | Merge topic 'fix-csharp-target-type'Brad King2018-10-032-0/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | 375b420fdf CSharp: Fix regression in VS project type selection 8b21aa0af0 VS: Fix CSharp flag selection when linking to a static C++ library Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2427
| * | CSharp: Fix regression in VS project type selectionBrad King2018-10-022-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A that target contains only `.cs` sources should be generated as a `.csproj` project even if it links to non-CSharp static libraries. The latter case was broken by refactoring in commit v3.12.0-rc1~160^2~7 (remove TargetIsCSharpOnly() and use methods from cmGeneratorTarget, 2018-03-19). The reason is that the `HasLanguage` method added by commit v3.12.0-rc1~239^2~6 (cmGeneratorTarget: add HasLanguage() as wrapper for GetLanguages(), 2018-03-19) enforces its "exclusive" check on the combined set of source file languages and the link language. To restore the original `TargetIsCSharpOnly` semantics, update `HasLanguage` to enforce exclusiveness only on the list of sources. Fixes: #18239
* | | Merge topic 'no_buildid_for_files'Brad King2018-10-014-0/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | c49d13f94b ctest: only create buildid when submitting from Testing/ dir Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2423
| * | | ctest: only create buildid when submitting from Testing/ dirZack Galbreath2018-09-284-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 7f530cc we taught CTest to pass extra information to CDash at submit time. This extra info is used by CDash to initialize a buildid. `ctest_submit(FILES)` can be used to send specific files to CDash. These files are not necessarily associated with the build currently being performed. For this reason, we modify the behavior of ctest_submit() to only specify this extra info when we are submitting files from the current build's Testing directory.
* | | | Ninja,Makefile: Add tests for handling of byproducts by clean operationsPedro Navarro2018-09-286-0/+173
| | | |
* | | | Tests: Update CustomCommandWorkingDirectory to handle in-source byproductsPedro Navarro2018-09-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When running an in-source build the CustomCommandWorkingDirectory test created a copy of a source file in the same directory it was running on. This breaks when byproducts are cleaned (e.g. via Ninja) because it deletes one of the source files.
* | | | Merge topic 'customcommandworkingdirectory'Brad King2018-09-281-0/+20
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f158ac19e1 add_custom_{command,target}: WORKING_DIRECTORY generator expressions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2409
| * | | | add_custom_{command,target}: WORKING_DIRECTORY generator expressionsJon Chronopoulos2018-09-281-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This teaches add_custom_command and add_custom_target WORKING_DIRECTORY about generator expressions Fixes: #14089
* | | | | Merge topic 'vs-global-props-for-all-targets'Brad King2018-09-283-0/+53
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 36489b85aa VS: Add test for CMAKE_VS_GLOBALS 22e670a306 VS: Add option to set VS_GLOBAL_* for all targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2345