summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Tests: Add options to disable tests requiring QtBrad King2017-11-131-4/+12
|
* Merge branch 'implicit-lib-gcceh' into release-3.10Brad King2017-11-081-1/+21
|\ | | | | | | Merge-request: !1460
| * Restore exclusion of "gcc_eh" from implicit link librariesChristian Pfeiffer2017-11-081-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.9.0-rc1~148^2 (Do not assume GCC libs are linked by all compilers, 2017-05-05) we no longer filter out all `gcc*` implicit link libraries. This allows mixing of gcc and non-gcc compilers across languages. However, this caused a subtle problem with how GCC makes exception handling symbols available to linked binaries. GCC (at least on MinGW) provides two different libraries with exception handling symbols: * gcc_s: A shared library with -fvisibility=default, used by -shared-libgcc. * gcc_eh: A static library with -fvisibility=hidden, used by -static-libgcc. The C compiler (on MinGW) defaults to -static-libgcc and uses gcc_eh. The C++ compiler defaults to -shared-libgcc and uses gcc_s when linking shared libraries and executables so that exceptions can propagate across shared libraries [1]. When linking a mixed-language binary, the C++ compiler should be used along with its choice of gcc_s. In this case gcc_eh should not be added even though the C compiler implies it because gcc_s supersedes it. Since the above-mentioned change, CMake is adding gcc_eh to C++ link lines that also contain C code on MinGW. This causes both gcc_s and gcc_eh to be used, which is incorrect. We can fix this simply by excluding gcc_eh from the C compiler's implicit link libraries. [1] https://gcc.gnu.org/onlinedocs/gcc-7.2.0/gcc/Link-Options.html#Link-Options Fixes: #17436
| * Autogen: Tests: Backport tests for _autogen target dependenciesSebastian Holtermann2017-09-1311-47/+182
| |
| * Merge branch 'backport-genex-SOURCES-test' into release-3.9Brad King2017-09-071-2/+2
| |\
| | * Tests: Fix RunCMake.GeneratorExpression to run in CMake 3.9Brad King2017-09-071-2/+2
| | | | | | | | | | | | CMake 3.9 does not have CMP0070, so port away from it for that branch.
| * | Merge branch 'backport-vs-csharp-ref-no-asm' into release-3.9Brad King2017-09-053-0/+25
| |\ \ | | | | | | | | | | | | Merge-request: !1203
| * \ \ Merge branch 'fix-genex-SOURCES' into release-3.9Brad King2017-09-015-0/+15
| |\ \ \ | | | |/ | | |/| | | | | Merge-request: !1218
* | | | Autogen: Tests: Set AUTOMOC_MOC_OPTIONS in a simple testSebastian Holtermann2017-10-311-0/+5
| | | |
* | | | Merge branch 'cpack-rpm-dist-test-fix' into release-3.10Brad King2017-10-301-0/+5
|\ \ \ \ | | | | | | | | | | | | | | | Merge-request: !1424
| * | | | CPack/RPM: DIST-MONOLITHIC-type subtest fixDomen Vrankar2017-10-301-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Test was failing in case dist macro contained a + symbol which is valid but must be escaped for using the string as a regex. Fixes #17328
* | | | | Merge branch 'backport-fix-co-compile' into release-3.10Brad King2017-10-2714-5/+100
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | Merge-request: !1418
| * | | | | cmcmd: Restore support for running multiple lint toolsBrad King2017-10-2714-5/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.10.0-rc1~115^2 (Clean up iwyu code to not be one big if statement, 2017-08-28) incorrectly changed the logic to run only one lint tool at a time. Restore support for running all tools specified on the command-line.
* | | | | | Merge branch 'autogen-static-library-cycles' into release-3.10Brad King2017-10-279-0/+89
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !1408
| * | | | | | Autogen: Tests: Add test for STATIC_LIBRARY cyclesSebastian Holtermann2017-10-279-0/+89
| |/ / / / /
* | | | | | Merge branch 'cmp0040-wording' into release-3.10Brad King2017-10-261-3/+3
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | Merge-request: !1415
| * | | | | CMP0040: Clarify policy warning to match documentationBrad King2017-10-261-3/+3
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.5.0-rc1~8^2~2 (Help: Clarify policy `CMP0040` documentation, 2016-01-28) the documentation was clarified to indicate that the target must be defined in the current directory. Do the same for the text of the policy warning itself. Fixes: #17399
* | | | | Merge branch 'imported-interface-no-system' into release-3.10Brad King2017-10-131-1/+0
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | Merge-request: !1386
| * | | | | Do not initialize NO_SYSTEM_FROM_IMPORTED on INTERFACE librariesBrad King2017-10-131-1/+0
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change in commit v3.8.0-rc1~276^2 (Allow NO_SYSTEM_FROM_IMPORTED on imported INTERFACE libraries, 2016-11-21) was incorrect. The property is not meant to be set on imported targets at all. It is meant to be set on their consumers that compile sources. Since INTERFACE libraries have no sources to compile, the property is not needed on them. Revert most of that change. Unfortunately we must still tolerate project code setting NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries because they were allowed by CMake 3.8 and 3.9. Issue: #17348
* | | | | Merge branch 'cpack-deb-mr-1296-fix' into release-3.10Brad King2017-10-114-0/+21
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | Merge-request: !1375
| * | | | | CPack/Deb: CPACK_DEBIAN_PACKAGE_VERSION regex testing exceptionDomen Vrankar2017-10-104-0/+21
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CPACK_DEBIAN_PACKAGE_VERSION variable could in the past also contain release and epoch version so regex test should expect the entire versioning if both CPACK_DEBIAN_PACKAGE_RELEASE and CPACK_DEBIAN_PACKAGE_EPOCH are not set. Also since the checks were not performed in the past the regex test of CPACK_DEBIAN_PACKAGE_VERSION variable content should only report author warnings instead of errors in case of the test fail. Fixes: #17339
* | | | | Merge branch 'xcode-tests-ios-deployment-target' into release-3.10Brad King2017-10-105-27/+20
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | Merge-request: !1365
| * | | | Xcode 9: Lower iOS deployment version to get armv7 buildsGregor Jasny2017-10-101-5/+16
| | | | |
| * | | | Revert "Xcode: Adjust tests to drop of 32bit iOS architectures"Gregor Jasny2017-10-105-22/+4
| | | | | | | | | | | | | | | | | | | | This reverts commit d210b2813072c874ee13fcc941e41aacacf09874.
* | | | | Merge topic 'xcode9-ios-tests'Brad King2017-10-055-4/+22
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | d210b281 Xcode: Adjust tests to drop of 32bit iOS architectures Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1347
| * | | | Xcode: Adjust tests to drop of 32bit iOS architecturesGregor Jasny2017-10-055-4/+22
| | | | |
* | | | | Tests: Remove ancient workaround in LoadCommand testsBrad King2017-10-042-14/+0
|/ / / /
* | | | Merge topic 'test-macos-updates'Brad King2017-10-042-3/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 58d9297e Tests: Fix RunCMake.Framework ios arch for Xcode 9 b8dd7a70 Tests: Fix RunCMake.Framework expected output on macOS 10.13 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1338
| * | | | Tests: Fix RunCMake.Framework ios arch for Xcode 9Brad King2017-10-031-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | Xcode 9 comes with the iPhoneOS 11.0 SDK that does not support the `armv7` architecture. For this SDK version and newer, use `arm64`.
| * | | | Tests: Fix RunCMake.Framework expected output on macOS 10.13Brad King2017-10-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The archiver output in the case of universal binaries has changed slightly. Update our expected output to match. While at it, drop unnecessary leading and trailing `.*`.
* | | | | Merge topic 'src-flags-genex-target'Brad King2017-10-043-4/+15
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 303cd703 VS,Xcode: Fix TARGET_PROPERTY genex in source COMPILE_FLAGS property Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Nikita Nemkin <nikita@nemkin.ru> Merge-request: !1336
| * | | | VS,Xcode: Fix TARGET_PROPERTY genex in source COMPILE_FLAGS propertyBrad King2017-10-033-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This already worked in other generators. Also add a test case. Fixes: #17314
* | | | | Merge topic 'FindProtobuf-gen-desc'Brad King2017-10-035-1/+98
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1299f4cc FindProtobuf: add flag to allow descriptor files to be generated 4e91be95 FindProtobuf: Refactor custom command output listing Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1301
| * | | | FindProtobuf: add flag to allow descriptor files to be generatedPeter Mitrano2017-10-025-1/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - The .desc files will be in the same folder as the generated .cc and .h files. - Paths to generate .desc files are stored in a variable passed in - This is only implemented for C++ - Remove legacy ARGS - Add test that generates and uses C++ protobuf message - Add test that checks that the generated .desc file can be instantiated with DynamicMessageFactory - Add Help rst for new feature
* | | | | Merge topic 'FindBoost-cmake-package'Brad King2017-10-027-0/+19
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c044b9ae FindBoost: Improve messages when a Boost CMake package is found Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1330
| * | | | | FindBoost: Improve messages when a Boost CMake package is foundBrad King2017-09-297-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a test for this case to verify the messages. This test will also be valuable to cover this code path in which we've had several regressions recently.
* | | | | | Tests: Fix CudaOnly.WithDefs test on CUDA 9Brad King2017-09-291-1/+5
|/ / / / / | | | | | | | | | | | | | | | CUDA 9 dropped support for `compute_20`, so use a different alternative.
* | | | | Merge topic 'add-vs-shader-properties'Brad King2017-09-291-2/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 49dab3eb VS: Add VS_SHADER_OUTPUT_HEADER_FILE and VS_SHADER_VARIABLE_NAME properties. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1319
| * | | | | VS: Add VS_SHADER_OUTPUT_HEADER_FILE and VS_SHADER_VARIABLE_NAME properties.Kevin M. Godby2017-09-271-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VS_SHADER_OUTPUT_HEADER_FILE property is the name of the generated header file containing the object code of the shader. The VS_SHADER_VARIABLE_NAME property is the name of the variable containing the object code in the above header file. Signed-off-by: Kevin M. Godby <kevin@godby.org>
* | | | | | Autogen: Tests: Update AUTOMOC_MACRO_NAMES testSebastian Holtermann2017-09-2815-49/+139
| | | | | |
* | | | | | Merge topic 'GetPrerequisites-no-clear-on-missing'Brad King2017-09-274-0/+11
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1a7b8c83 GetPrerequisites: Restore behavior on missing binary of not clearing list Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1312
| * | | | | | GetPrerequisites: Restore behavior on missing binary of not clearing listBrad King2017-09-264-0/+11
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to commit v3.4.0-rc1~264^2~1 (GetPrerequisites: Add error checks for execute_process() calls, 2015-07-29), `get_prerequisites` would simply warn on a missing binary and not update the result list at all. That commit accidentally made the case an error. This was fixed by commit v3.8.0-rc1~110^2 (GetPrerequisites: Do not fail on files we cannot find, 2017-01-10), but the fix also cleared the result list. Clearing the list is incorrect because it is supposed to be able to accumulate results over multiple calls. Remove the list clearing behavior to restore the original behavior on a missing binary. Fixes: #17306
* | | | | | Merge topic 'ninja-rc-depfile-quoting'Brad King2017-09-271-0/+7
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | df965cb9 Ninja: Fix quoting of RC language depfile in cmcldeps call Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1309
| * | | | | | Ninja: Fix quoting of RC language depfile in cmcldeps callBrad King2017-09-251-0/+7
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.0.0-rc1~448^2 (Ninja: use deps = gcc/msvc feature, 2013-10-18) the value of the `DEP_FILE` binding already includes the needed quoting to refer to the file. However, that commit forgot to update one of the `$DEP_FILE` references to not be quoted anymore. The offending code path currently only affects cmcldeps for RC. Remove the extra quoting now. Fixes: #17298
* | | | | | Merge topic 'FindOpenGL-glvnd'Brad King2017-09-272-1/+64
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e2e8a690 FindOpenGL: Add support for GLVND on Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !782
| * | | | | | FindOpenGL: Add support for GLVND on LinuxTom Fogal2017-09-252-1/+64
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Find GLVND components if available. Add `GLX` and `EGL` options for COMPONENTS that allow requesting these libraries explicitly. Introduce new import targets for these windowing-system-specific libraries. On a GLVND system, populate the legacy `OPENGL_LIBRARIES` variable and the `OpenGL::GL` target using the `OpenGL` and `GLX` components. On non-GLVND systems, continue to use the legacy `GL` library and simply do not provide the GLVND components. Application code can choose to adapt based on the availability of GLVND components as imported targets.
* | | | | | Merge topic 'revert-perf-source-lookup'Brad King2017-09-272-1/+17
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a7005c98 Tests: Add case for legacy source file property behavior 1604716d Revert "Performance: Improve efficiency of source file lookup in cmMakefile" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1308
| * | | | | Tests: Add case for legacy source file property behaviorBrad King2017-09-252-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change in commit 3b95ab5693 (Performance: Improve efficiency of source file lookup in cmMakefile, 2017-08-17) broke some legacy behavior of source file properties in which the order sources are first resolved with extensions affects how setting properties without extensions works. It has been reverted for now, but the discovery was made after merging because the broken case was not covered by our test suite. Add a test case representing the legacy behavior. Issue: #15208
* | | | | | Merge topic 'test-fix-msvc-standard-default'Brad King2017-09-251-13/+31
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | a5dd1599 Tests: Fix RunCMake.try_compile CxxStandard case on MSVC Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1302
| * | | | | Tests: Fix RunCMake.try_compile CxxStandard case on MSVCBrad King2017-09-221-13/+31
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In post-3.9 development we've taught CMake to understand C++ language standards for MSVC. The RunCMake.try_compile test needs to know whether to expect support or not. Previously we depended on the host CMake version to know this, but CMake 3.9 and below do not. Add special logic to the test to account for this.