summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* Add option to optimize link dependencies for static librariesKyle Edwards2020-08-1237-0/+296
| | | | | | | | | Add an `OPTIMIZE_DEPENDENCIES` target property and supporting `CMAKE_OPTIMIZE_DEPENDENCIES` variable to optionally enable pruning and flattening of outgoing dependencies from static libraries. Since they do not actually link, they only depend on side effects of their dependencies. Therefore we can drop dependencies that contribute no side effects.
* Merge topic 'build-interface-targets'Brad King2020-08-1041-65/+394
|\ | | | | | | | | | | | | | | | | | | bafa9fe887 fileapi: Add INTERFACE libraries with SOURCES to codemodel-v2 4391913133 Add INTERFACE libraries to generated buildsystem if they have SOURCES afb998704e Remove filtering of allowed INTERFACE library properties e7edba2baf Makefiles: Use IsInBuildSystem in global generator target type checks Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5078
| * fileapi: Add INTERFACE libraries with SOURCES to codemodel-v2Brad King2020-08-0712-1/+260
| | | | | | | | | | | | | | | | | | | | | | | | INTERFACE libraries with SOURCES now appear in the generated buildsystem, so include them in the codemodel output too. We do not need to bump the `codemodel-v2` object kind minor version because that was already done in post-3.18 development by commit 7d6861f367 (fileapi: Extend codemodel targets with language standard, 2020-06-18). Fixes: #18608
| * Add INTERFACE libraries to generated buildsystem if they have SOURCESBrad King2020-08-0726-18/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | INTERFACE libraries were created with the intention of collecting usage requirements for use by other targets via `target_link_libraries`. Therefore they were not allowed to have SOURCES and were not included in the generated buildsystem. In practice, this has become limiting: * Header-only libraries do have sources, they just do not compile. Developers should be able to edit those sources (the header files) in their IDE. * Header-only libraries may need to generate some of their header files via custom commands. Some projects work around these limitations by pairing each interface library with an `add_custom_target` that makes the header files and custom commands appear in the generated buildsystem and in IDEs. Lift such limitations by allowing INTERFACE libraries to have SOURCES. For those with sources, add a corresponding build target to the generated buildsystem. Fixes: #19145
| * Remove filtering of allowed INTERFACE library propertiesBrad King2020-08-034-46/+0
| | | | | | | | | | | | | | | | | | | | | | Previously we disallowed use of arbitrary properties on INTERFACE libraries. The goal was to future-proof projects using them by not allowing properties to be set that may affect their future inclusion in the generated buildsystem. In order to prepare to actually include INTERFACE libraries in the generated buildsystem, drop the filter and allow arbitrary properties to be set. Issue: #19145
* | Merge topic 'runcmake-make-english'Brad King2020-08-101-0/+3
|\ \ | | | | | | | | | | | | | | | | | | 3d2ab71d42 Tests: Set LC_MESSAGES for RunCMake.Make Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5114
| * | Tests: Set LC_MESSAGES for RunCMake.MakeKyle Edwards2020-08-081-0/+3
| | | | | | | | | | | | | | | LANG was already set, but is not enough on some systems. Set LC_MESSAGES too.
* | | Merge topic 'clang-cl-vfs'Brad King2020-08-101-4/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 20ebaed972 Clang: Add support for passing VFS arguments d993ebd4ca clang-cl: Add '--' before source file a94672b919 cmake: Change cmake_llvm_rc separator from -- to ++ to avoid conflict Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5087
| * | | cmake: Change cmake_llvm_rc separator from -- to ++ to avoid conflictThomas Bernard2020-08-071-4/+4
| | |/ | |/|
* | | Merge topic 'test-FindPkgConfig-isolate-env'Brad King2020-08-101-0/+5
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | 8b12982653 Merge branch 'backport-test-FindPkgConfig-isolate-env' 4c939b0d39 Tests: Isolate RunCMake.FindPkgConfig from caller environment 20eeb40aaf Tests: Isolate RunCMake.FindPkgConfig from caller environment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5108
| * | Tests: Isolate RunCMake.FindPkgConfig from caller environmentBrad King2020-08-071-0/+5
| | | | | | | | | | | | | | | Avoid interference from `CMAKE_PREFIX_PATH` and friends if they happen to be set in the environment from which the tests are run.
* | | Merge topic 'cuda_memcheck_more_errors'Brad King2020-08-073-1/+19
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | d7a2cf681b Tests: Add cases for cuda-memcheck error types 562dcec3c4 CTest: Add error types to cuda-memcheck parser Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5101
| * | | Tests: Add cases for cuda-memcheck error typesTobias Ribizel2020-08-053-1/+19
| | |/ | |/|
* | | Merge topic 'compiler_flags'Brad King2020-08-0610-0/+93
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f76c20da63 Toolchain: Test compiler initial settings db486da265 Toolchain: Update documentation for initial compiler flags deec2f587c Toolchain: Take CMAKE_<lang>_FLAGS_INIT into account during compiler detection ca899af3e2 Toolchain: Handle repeated invocations of CMake with -DCMAKE_C_COMPILER 12ba89e142 Toolchain: Make `/path/comp;-argn' behave the same as 'comp;-argn' 6f1af899db Toolchain: Capture all arguments from CMAKE_<LANG>_COMPILER ec1d3bc0b6 cmake: avoid exception when printing "changed variables" message Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4136
| * | | Toolchain: Test compiler initial settingsFred Baksik2020-08-0310-0/+93
| | | |
* | | | Merge topic 'automoc_timestamp_deps'Brad King2020-08-066-0/+56
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9a9ed4b9d3 Merge branch 'backport-3.17-automoc_timestamp_deps' 7445c9a58a AutoGen: Add test to check for correct AutoMoc dependencies a79056bb02 AutoGen: Fix over-specified direct dependencies of custom command Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Aleix <aleixpol@kde.org> Merge-request: !5085
| * | | Merge branch 'backport-3.17-automoc_timestamp_deps'Brad King2020-08-056-0/+56
| |\ \ \ | | |_|/ | |/| |
| | * | AutoGen: Add test to check for correct AutoMoc dependenciesAlexandru Croitor2020-08-036-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | When using Qt 5.15.0 or above together with Ninja, check that touching a source file of a dependency does not needlessly re-run AUTOMOC for the dependee target.
| | * | Merge branch 'backport-3.17-graphviz-restore-per-target' into release-3.17Brad King2020-07-213-0/+56
| | |\ \ | | | | | | | | | | | | | | | Merge-request: !5039
| | * \ \ Merge topic 'pch-fix-bad-ClearSourcesCache' into release-3.17Brad King2020-06-011-2/+5
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 902858367f Merge branch 'backport-3.16-pch-fix-bad-ClearSourcesCache' fa7b041eca PCH: Fix logic error that incorrectly clears sources during VS generation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4815
* | | \ \ \ Merge topic 'fixup_bundle_item-fix'Brad King2020-07-295-0/+28
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 45ed314bff BundleUtilities: do not run install_name_tool on scripts Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5071
| * | | | | | BundleUtilities: do not run install_name_tool on scriptsT.J. Corona2020-07-285-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the same approach as commit 08be74bfd7 (GetPrerequisites: Fix handling of executable scripts, 2018-12-16, v3.14.0-rc1~206^2).
* | | | | | | Merge topic 'file-download-no-save'Craig Scott2020-07-285-0/+14
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fed7d8f76d file(DOWNLOAD): Make file argument optional Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5060
| * | | | | | | file(DOWNLOAD): Make file argument optionalKyle Edwards2020-07-275-0/+14
| | |_|_|_|_|/ | |/| | | | |
* | | | | | | Merge topic 'revert-add_test-special-chars'Brad King2020-07-2856-373/+6
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | / / / / | | |/ / / / | |/| | | | | | | | | | | | | | | | 5fc5f4d26e add_test: Revert "Allow special characters in test name" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5067
| * | | | | add_test: Revert "Allow special characters in test name"Brad King2020-07-2756-373/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit f84af8e270 (add_test: Allow special characters in test name, 2020-05-16, v3.18.0-rc1~142^2). Unfortunately the fix breaks projects that were working around the limitation with manual escaping. The fix can be re-introduced with a policy in a future version. Also add a 3.18.1 release note explaining the change. Fixes: #21017, #20965 Issue: #19391
| * | | | | Merge branch 'backport-3.17-graphviz-restore-per-target'Brad King2020-07-213-0/+56
| |\ \ \ \ \ | | | |_|_|/ | | |/| | |
| | * | | | Tests: Cover Graphviz support for per-target dependency graph optionsStephan Rohmen2020-07-213-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | Issue: #20928
| * | | | | Merge topic 'macos-11-file-GET_RUNTIME_DEPENDENCIES' into release-3.18Brad King2020-07-141-12/+14
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d9af90504f Tests: Update file(G_R_D) test to make system library optional c51400033c file: Update GET_RUNTIME_DEPENDENCIES for macOS 11 dylib cache Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !4998
| * \ \ \ \ \ Merge topic 'profiling-case-insensitive-command-names' into release-3.18Brad King2020-07-142-1/+18
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7cf2f7d2af cmake: Store lowercase command names in profiling output Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5007
* | \ \ \ \ \ \ Merge topic 'EXCLUDE_FROM_ALL-genex'Brad King2020-07-274-9/+6
|\ \ \ \ \ \ \ \ | |_|_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 22bd267388 Help: Add release note for EXCLUDE_FROM_ALL genex support 807c8aa9f0 Tests: Simplify RunCMake.ExcludeFromAll single-config case 36743436cf Tests: Fix RunCMake.ExcludeFromAll test program warning 99c131c5a3 cmGlobalGenerator: Fix spelling of EXCLUDE_FROM_ALL in error message Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5049
| * | | | | | | Tests: Simplify RunCMake.ExcludeFromAll single-config caseBrad King2020-07-232-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also avoid using parts of an unrelated test (NinjaMultiConfig) that were not designed for use with all generators.
| * | | | | | | Tests: Fix RunCMake.ExcludeFromAll test program warningBrad King2020-07-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a return value to `main()`.
| * | | | | | | cmGlobalGenerator: Fix spelling of EXCLUDE_FROM_ALL in error messageBrad King2020-07-231-1/+1
| | | | | | | |
* | | | | | | | Merge topic 'fix-typos-identified-using-codespell'Brad King2020-07-2313-15/+15
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 207373802e Fix typos identified using codespell Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5040
| * | | | | | | | Fix typos identified using codespellJean-Christophe Fillion-Robin2020-07-2213-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See https://github.com/codespell-project/codespell#readme The following command was used: ``` codespell -q6 --skip="\ .git,\ *.json,\ ./Copyright.txt,\ ./Help/command/foreach.rst,\ ./Help/prop_test/REQUIRED_FILES.rst,\ ./Help/variable/CTEST_COVERAGE_COMMAND.rst,\ ./Modules/CMakeCheckCompilerFlagCommonPatterns.cmake,\ ./Modules/CMakeRCInformation.cmake,\ ./Modules/Internal/CPack/NSIS.template.in,\ ./Modules/FindMatlab.cmake,\ ./Modules/MatlabTestsRedirect.cmake,\ ./Modules/Platform/Windows-Clang.cmake,\ ./Modules/Platform/Windows-Intel-Fortran.cmake,\ ./Modules/Platform/Windows-MSVC.cmake,\ ./Source/CMakeVersion.cmake,\ ./Source/cmConvertMSBuildXMLToJSON.py,\ ./Source/cmCreateTestSourceList.cxx,\ ./Source/cmGlobalVisualStudio10Generator.cxx,\ ./Source/cmExportBuildFileGenerator.cxx,\ ./Source/cmExportInstallAndroidMKGenerator.cxx,\ ./Source/cmExportInstallFileGenerator.cxx,\ ./Source/cmExportSet.cxx,\ ./Source/cmExportTryCompileFileGenerator.cxx,\ ./Source/cmFindPackageCommand.cxx,\ ./Source/cmInstallCommand.cxx,\ ./Source/cmGeneratorExpressionLexer.cxx,\ ./Source/cmLocalVisualStudio7Generator.cxx,\ ./Source/cmOrderDirectories.cxx,\ ./Source/cmTarget.cxx,\ ./Source/kwsys/*,\ ./Source/QtDialog/CMakeSetupDialog.ui,\ ./Source/CPack/WiX/cmWIXRichTextFormatWriter.cxx,\ ./Source/CTest/cmParseCoberturaCoverage.h,\ ./Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/English.license.rtf,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.license.txt,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.menu.txt,\ ./Tests/RunCMake/GoogleTest/xml_output.cpp,\ ./Tests/RunCMake/Make/TargetMessages*,\ ./Utilities/*,\ " \ -L "\ dependees,\ endwhile,\ fo,\ filetest,\ helpfull,\ nd,\ objext,\ stoll,\ supercedes,\ superceded,\ vas,\ varn,\ " ```
* | | | | | | | | Tests: Rename test RunCMake.{interface_library => InterfaceLibrary}Brad King2020-07-2233-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our RunCMake.<lower-case> namespace is meant for testing individual CMake language commands.
* | | | | | | | | Merge topic 'EXCLUDE_FROM_ALL-genex'Brad King2020-07-2212-0/+97
|\ \ \ \ \ \ \ \ \ | | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2cdaf43d96 Allow generator expressions in the EXCLUDE_FROM_ALL target property Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5021
| * | | | | | | | Allow generator expressions in the EXCLUDE_FROM_ALL target propertyJoerg Bornemann2020-07-2112-0/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows for setting EXCLUDE_FROM_ALL, conditional on the build configuration. However, only the Ninja Multi-Config generator supports different property values per config. All other multi-config generators will yield an error in that situation. Fixes: #20923
* | | | | | | | | Merge topic 'TARGET_PROPERTY-strip-empty-list-elements'Brad King2020-07-222-1/+23
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | af1a4f52be Genex: $<TARGET_PROPERTY> strip emtpy list elements for predefined properties Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5030
| * | | | | | | | | Genex: $<TARGET_PROPERTY> strip emtpy list elements for predefined propertiesMarc Chevrier2020-07-212-1/+23
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #20951
* | | | | | | | | Tests: Cover Graphviz support for per-target dependency graph optionsStephan Rohmen2020-07-213-0/+64
| |/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | Issue: #20928
* | | | | | | | Apple: suppress Xcode 12 ranlib warningGregor Jasny2020-07-171-0/+1
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Xcode 12 (Beta) toolchain for arm64 emits a warning when static libraries are created: ``` ranlib: archive member: libStaticLib.a(a.c.o) offset in archive not a multiple of 8 (must be since member is an 64-bit object file) ``` Due to the unexpected output multiple tests are broken. To make those tests pass we filter the problematic output in the test driver. See: https://developer.apple.com/forums/thread/652620
* | | | | | | Merge topic 'cmake-E-create_hardlink'Brad King2020-07-1610-0/+49
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2fad00940d cmake: Add -E create_hardlink Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5015
| * | | | | | | cmake: Add -E create_hardlinkSibi Siddharthan2020-07-1510-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #20950 Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
* | | | | | | | Move AddCompilerRequirementFlag to cmStandardLevelResolverRobert Maynard2020-07-152-2/+2
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cmLocalGenerator::AddCompilerRequirementFlag was another source of truth on what standard levels existed per language, so fold that into cmStandardLevelResolver to make updating CMake easier
* | | | | | | Merge topic 'genx-COMPILE_LANGUAGE-support'Brad King2020-07-144-0/+36
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6491d2503c Genex $<COMPILE_LANGUAGE>: Extend contexts supported Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5005
| * | | | | | | Genex $<COMPILE_LANGUAGE>: Extend contexts supportedMarc Chevrier2020-07-134-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When genex $<TARGET_PROPERTY:...> for properties like INCLUDE_DIRECTORIES is evaluated as part of add_custom_command or add_custom_target, genex $<COMPILE_LANGUAGE> and $<COMPLIE_LANG_AND_ID> should be supported. Fixes: #20926
* | | | | | | | Merge topic 'macos-11-file-GET_RUNTIME_DEPENDENCIES'Brad King2020-07-141-12/+14
|\ \ \ \ \ \ \ \ | | |_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d9af90504f Tests: Update file(G_R_D) test to make system library optional c51400033c file: Update GET_RUNTIME_DEPENDENCIES for macOS 11 dylib cache Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !4998
| * | | | | | | Tests: Update file(G_R_D) test to make system library optionalKyle Edwards2020-07-131-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the system library may not exist on the filesystem on macOS 11, skip it if it doesn't exist.