summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* Tests: Fix VS10Project SourceGroupTreeCMakeLists checkKyle Edwards2022-08-242-4/+5
| | | | | Fix an `IN LISTS` loop, fix a variable check, and escape backslashes in the regex used to search for source group names.
* export: Restore exclusion of private shared library dependencies from checksBrad King2022-08-159-0/+64
| | | | | | | | | | | Refactoring in commit 8c65b7042e (cmExportFileGenerator: Simplify collection of targets missing from export set, 2022-04-11, v3.24.0-rc1~281^2) accidentally dropped the behavior change from commit 0ad2a1c181 (Export: Never treat private link libraries as public package dependencies., 2013-09-24, v3.0.0-rc1~559^2). Restore the behavior and add a test. Fixes: #23838
* Merge topic 'fetchcontent-set-CMAKE_VERIFY_INTERFACE_HEADER_SETS' into ↵Brad King2022-08-045-0/+31
|\ | | | | | | | | | | | | | | | | release-3.24 2a9cc3e8e8 FetchContent: Disable header set verification for dependencies Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7535
| * FetchContent: Disable header set verification for dependenciesCraig Scott2022-08-035-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CMAKE_VERIFY_INTERFACE_HEADER_SETS variable is intended to be under the control of the user. It doesn't discriminate between header sets defined in the main project and those defined by dependencies brought into the build directly via FetchContent. Developers will usually only be interested in verifying the main project's header sets, not those from dependencies. Make the variable effectively only enable header set verification of the main project by turning it off during FetchContent_MakeAvailable() calls. The user still has variables like CMAKE_PROJECT_INCLUDE and CMAKE_PROJECT_<projectName>_INCLUDE available to them if they want to enable verification of all or specific dependencies respectively. Fixes: #23808
* | VERIFY_INTERFACE_HEADER_SETS: Add verification target for allKyle Edwards2022-08-037-0/+34
|/ | | | Fixes: #23802
* Merge topic 'verify-interface-header-sets-interface-library-source-language' ↵Brad King2022-07-282-0/+5
|\ | | | | | | | | | | | | | | | | | | into release-3.24 41f15193e5 VERIFY_INTERFACE_HEADER_SETS: Fall back to global languages Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7517
| * VERIFY_INTERFACE_HEADER_SETS: Fall back to global languagesKyle Edwards2022-07-272-0/+5
| | | | | | | | | | | | | | | | If a target doesn't have any source files, fall back to the global list of enabled languages to determine the language of the header file to verify. Fixes: #23774
* | VERIFY_INTERFACE_HEADER_SETS: Finalize compile info for verify targetsKyle Edwards2022-07-272-0/+6
|/ | | | Fixes: #23732
* cmake: In -P mode ignore flags like `--version` after `--`Robert Maynard2022-07-223-3/+5
| | | | Fixes: #21031
* cmake: In -P mode ignore extra paths on the command lineRobert Maynard2022-07-223-0/+13
| | | | Fixes: #23748
* VS: Exclude ZERO_CHECK.proj from .sln for include_external_msprojectSumit Bhardwaj2022-07-204-0/+43
| | | | | | | | | | | | | | | In `cmGlobalVisualStudio7Generator::WriteTargetsToSolution`, we skip writing `ZERO_CHECK.proj` to solution file as the check in `cmGlobalVisualStudioGenerator::IsInSolution` returns `false` for `ZERO_CHECK`. However, we write ZERO_CHECK to ProjectDependencies for external projects as there are no checks in `cmGlobalVisualStudio71Generator::WriteExternalProject`. Similar to `cmGlobalVisualStudioGenerator::IsInSolution`, we introduce `IsDepInSolution(const std::string&)` which excludes `ZERO_CHECK.proj` from being added to sln file for the cases where we have `ZERO_CHECK.proj`. Fixes: #23708
* Merge topic 'export-try-compile-crash' into release-3.24Kyle Edwards2022-07-142-0/+10
|\ | | | | | | | | | | | | | | 29c7546a61 cmGlobalGenerator: Only compute build files for all targets Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7472
| * cmGlobalGenerator: Only compute build files for all targetsKyle Edwards2022-07-132-0/+10
| | | | | | | | | | | | | | | | If we're creating generation objects for imported targets only, we don't need the export sets. Only compute build file generators if generating for all targets. Fixes: #23709
| * Merge branch 'file-set-crash' into release-3.23Brad King2022-06-307-0/+28
| |\ | | | | | | | | | Merge-request: !7420
| * \ Merge branch 'xcode-14' into release-3.23Brad King2022-06-111-0/+2
| |\ \ | | | | | | | | | | | | Merge-request: !7350
* | \ \ Merge topic 'genex-LINK_LIBRARY-check-supported-properties' into release-3.24Brad King2022-07-0720-12/+68
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 913ea78d7a Genex LINK_LIBRARY and LINK_GROUP: check supported properties Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7454
| * | | | Genex LINK_LIBRARY and LINK_GROUP: check supported propertiesMarc Chevrier2022-07-0620-12/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refines check for properties supporting these genex. Enhance error message. Fixes: #23699
* | | | | Merge topic 'genex-LINK_LIBRARY-fix-generation' into release-3.24Brad King2022-07-064-0/+12
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | e8792da04b genex-LINK_LIBRARY: ensure correct generation inside LINK_GROUP genex Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7443
| * | | | genex-LINK_LIBRARY: ensure correct generation inside LINK_GROUP genexMarc Chevrier2022-07-054-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fix ensures the following pattern is correctly handled: $<LINK_GROUP:group_feat,$<LINK_LIBRARY:lib_feat,mylib>> With: CMAKE_LINK_GROUP_USING_group_feat = "—START_GROUP" "—END_GROUP" CMAKE_LINK_LIBRARY_USING_lib_feat = "—PREFIX" "—LINK <LIBRARY>" "—SUFFIX" Before the fix, we get the following generation: —START_GROUP —PREFIX —LINK /path/to/mylib —END_GROUP —SUFFIX —END_GROUP and —SUFFIX are in the wrong order After the fix, we get the correct order: —START_GROUP —PREFIX —LINK /path/to/mylib —SUFFIX —END_GROUP
* | | | | Merge topic 'nvhpc-Werror' into release-3.24Brad King2022-07-051-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 35ec676ace NVHPC: warnings as error flag is "-Werror" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7415
| * | | | | NVHPC: warnings as error flag is "-Werror"Robert Maynard2022-07-011-1/+1
| | | | | |
* | | | | | Merge topic 'add_nvcc_compile_warning_support' into release-3.24Brad King2022-07-0523-45/+87
|\ \ \ \ \ \ | |/ / / / / | | / / / / | |/ / / / |/| | | | | | | | | | | | | | | | | | | cd324110d2 CUDA: NVCC support for COMPILE_WARNING_AS_ERROR target property 2e9ac1d272 Tests: Refactor warn on error tests to support multiple languages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7417
| * | | | CUDA: NVCC support for COMPILE_WARNING_AS_ERROR target propertyRobert Maynard2022-07-019-1/+18
| | | | |
| * | | | Tests: Refactor warn on error tests to support multiple languagesRobert Maynard2022-06-2916-44/+69
| | | | |
* | | | | Genex: Fix TARGET_BUNDLE_DIR_NAME incorrect extensionBen Leadbetter2022-07-013-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the genex from commit 997af2e1a6 (Genex: Add TARGET_BUNDLE_DIR_NAME, 2022-04-14, v3.24.0-rc1~233^2) to use the correct bundle directory extension for each bundle type. Fixes: #23683
* | | | | Merge topic 'file-set-crash' into release-3.24Brad King2022-06-307-0/+28
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | 3fee5398bd install(EXPORT): Check for missing file sets at generate time Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7420
| * | | install(EXPORT): Check for missing file sets at generate timeKyle Edwards2022-06-297-0/+28
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | Missing file sets were originally checked at configure time in install(TARGETS ... EXPORT), but were not checked at generate time. If a file set was added after install(TARGETS ... EXPORT) was called, an abortion error was thrown. Check again at generate time to gracefully display an error message instead of crashing. Fixes: #23680
| * | Merge topic 'ci-xcode-13.3' into release-3.23Brad King2022-04-261-0/+1
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 65b6daf776 gitlab-ci: update macOS jobs to use Xcode 13.3 94361a1309 Tests: Ignore all classes in Xcode internal objc warnings da9f864513 Tests: Teach RunCMake to ignore Xcode extension point warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7204
* | \ \ Merge topic 'vs-compile-batching' into release-3.24Brad King2022-06-231-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9a0a94fdaa VS: Add variable to to turn off Visual Studio compile batching a7ebb73929 Help: Improve formatting in VS_NO_COMPILE_BATCHING docs Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7405
| * | | | VS: Add variable to to turn off Visual Studio compile batchingBrad King2022-06-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the change from commit b764c7c273 (VS: Add property to turn off Visual Studio compile batching, 2022-02-07, v3.24.0-rc1~710^2) by adding a variable to initialize the property on every target. Issue: #23179 Fixes: #23639
* | | | | FindPkgConfig: Revert "Populate _STATIC_LINK_LIBRARIES. Add STATIC_TARGET."Brad King2022-06-227-203/+72
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 020976d637 (FindPkgConfig: Populate _STATIC_LINK_LIBRARIES. Add STATIC_TARGET., 2021-12-31, v3.24.0-rc1~105^2). Several regressions have been reported. Revert the feature pending further discussion and design work. Issue: #21714 Fixes: #23642
* | | | Utilities/Release: Add windows-arm64 package to file tableBrad King2022-06-131-0/+2
| | | |
* | | | Merge topic 'fetchcontent-global-targets' into release-3.24Brad King2022-06-118-0/+92
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f19b48e0b8 FetchContent: Honor CMAKE_FIND_PACKAGE_TARGETS_GLOBAL 1305bade56 Help: Add missing version directive for find_package() GLOBAL keyword Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7347
| * | | | FetchContent: Honor CMAKE_FIND_PACKAGE_TARGETS_GLOBALCraig Scott2022-06-108-0/+92
| | | | | | | | | | | | | | | Fixes: #23606
* | | | | Merge topic 'xcode-14' into release-3.24Brad King2022-06-111-0/+2
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 627c08e28b Tests: Teach RunCMake to ignore Xcode DVTSDK warnings ab40020b17 Xcode: Suppress "Run Script" build phase warning during compiler id 89e1113e0c Xcode: Use ad-hoc signing during compiler id on macOS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7350
| * | | | Tests: Teach RunCMake to ignore Xcode DVTSDK warningsBrad King2022-06-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some Xcode versions, `xcodebuild` may warn: ... xcodebuild[...] [MT] DVTSDK: Warning: SDK path collision for path ... Teach RunCMake to drop such incidental lines before matching against expected output.
| * | | | Merge branch 'ci-xcode-13.3' into release-3.22Brad King2022-04-261-0/+1
| |\ \ \ \ | | | |_|/ | | |/| | | | | | | Merge-request: !7204
| | * | | Tests: Ignore all classes in Xcode internal objc warningsGregor Jasny2022-04-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Xcode on Apple Silicon warns not only about AMSupportURL classes but also many more.
| | * | | Tests: Teach RunCMake to ignore Xcode extension point warningsBrad King2022-04-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some Xcode versions, `xcodebuild` may warn: ... xcodebuild[...] Requested but did not find extension point with identifier ... Teach RunCMake to drop such incidental lines before matching against expected output.
* | | | | Merge topic 'ExternalProject-stamp-genex' into release-3.24Brad King2022-06-102-0/+16
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c111d440ce ExternalProject: Express per-config step stamp file paths using CONFIG genex Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7341
| * | | | | ExternalProject: Express per-config step stamp file paths using CONFIG genexBrad King2022-06-082-0/+16
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ExternalProject module has long used the generator-specific placeholder in the `${CMAKE_CFG_INTDIR}` variable to express per-config stamp file paths in multi-config generators. Now that most generators support generator expressions in custom command outputs, we can use the `$<CONFIG>` genex instead. In particular, this fixes cross-config `BUILD_BYPRODUCTS` with the Ninja Multi-Config generator. Fixes: #23595
* | | | | CheckIPOSupported: Compile check using flags of calling projectBrad King2022-06-109-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Forward `CMAKE_<LANG>_FLAGS` and `CMAKE_<LANG>_FLAGS_DEBUG` from the calling project into the test project. The set of flags may affect the availability of IPO support. Since this may change the result of the check for existing projects, add a policy for compatibility. This was discovered after commit 5fcadc481e (MSVC: Default to -ZI instead of /Zi for x86 and x64, 2022-05-24) introduced policy CMP0138 to switch our default for MSVC's debug info flag. The `-ZI` flag is incompatible with the `-GL` flag used for IPO, so CMP0138 was reverted pending future work on an alternative solution. Re-use the CMP0138 policy number for this change to CheckIPOSupported instead. Fixes: #23607
* | | | | MSVC: Revert "Default to -ZI instead of /Zi for x86 and x64"Brad King2022-06-097-37/+0
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 5fcadc481e (MSVC: Default to -ZI instead of /Zi for x86 and x64, 2022-05-24). The `-ZI` flag is incompatible with the `-GL` flag used for IPO, and so is not an unconditionally better default. Revert the change pending future design of a first-class setting for MSVC debug info format that can be automatically reconciled with IPO settings. That commit introduced policy CMP0138, but we already have later policy numbers used too. Leave placeholder text to avoid policy renumbering. Issue: #23607, #10189
* | | | Merge topic 'ci-ispc'Brad King2022-06-071-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d14349c907 ci: Enable ISPC tests on Linux, Windows, and macOS nightly builds 49996faaac ci: remove ISPC from the Fedora CI image 3e791592ad gitlab-ci: init macOS and Windows jobs with per-CMAKE_CONFIGURATION scripts Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7336
| * | | | ci: remove ISPC from the Fedora CI imageBrad King2022-06-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 5ece12b7e4 (gitlab-ci: add ISPC to the Fedora CI image, 2020-08-18, v3.19.0-rc1~244^2). Later we will download ISPC in specific jobs. Update a `RunCMake.NinjaMultiConfig` test expectation to account for a change to the Qt deployed on Fedora 36.
* | | | | Merge topic 'print-sources'Brad King2022-06-0715-0/+136
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d8dcfa7776 Tests: Add tests for CMakePrintHelpers b7ddfcfe08 cmake_print_properties(): Update grammar docs e52b9e1270 PrintHelpers: Document argument order restriction d87ed4d88f PrintHelpers: Fix indentation 5fa70e1738 PrintHelpers: Rewrite a few more error messages 2579503f45 PrintHelpers: Fix target SOURCES property Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7331
| * | | | | Tests: Add tests for CMakePrintHelpersFeRD (Frank Dana)2022-06-0615-0/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add three tests in Tests/RunCMake/PrintHelpers, meant to verify basic functionality of the module. Tests are: * Variables: Test the results of a cmake_print_variables() call on two variables set within the test script. * Properties: Test cmake_print_properties() calls on a pair of SOURCES and a pair of TARGETS, printing some basic properties. * PropertiesSources: Specifically verify the results of a cmake_print_properties() call for the SOURCES property of a TARGET. Prior to the fix introduced alongside these tests, it was a known bug that such a request caused a FATAL_ERROR.
* | | | | | Merge topic 'ext_disabled'Brad King2022-06-071-5/+1
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d5014741c9 Tests/CompileFeatures: Fix CMP0128OldSameStandard with default OFF Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7328
| * | | | | Tests/CompileFeatures: Fix CMP0128OldSameStandard with default OFFRaul Tambre2022-06-041-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With CMP0128 OLD compiler extensions are enabled by default regardless of the compiler's default. Fix the test to always check for the extension flag as it was intended to. Fixes: 4a0485be7f4ab06201c478f5a46111ab1e8e773e (cmStandardLevelResolver: Avoid unnecessary flags, fix unset level logic, 2021-04-29)
* | | | | | Merge topic 'if-command-PATH_EQUAL'Brad King2022-06-0610-0/+72
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | be4b9e10af if command: Add PATH_EQUAL operator Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7321