summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* cmTarget: Fix typoStephen Kelly2013-12-192-2/+2
| | | | 'a ALIAS' -> 'an ALIAS'
* Genex: Accept arbitrary content in *_CASE and MAKE_C_IDENTIFIER.Stephen Kelly2013-12-192-6/+6
|
* Merge topic 'wix-fragment-injection'Brad King2013-12-192-0/+9
|\ | | | | | | | | 8632233 CPackWiX: allow customization of generated WiX sources
| * CPackWiX: allow customization of generated WiX sourcesNils Gladitz2013-12-172-0/+9
| | | | | | | | | | | | Added a new variable CPACK_WIX_PATCH_FILE that users can point at an XML patch file. Fragments defined within the patch file will be inserted at supported insertion points (currently Component, File and Directory).
* | Merge topic 'GenerateExportHeader-tests'Brad King2013-12-1931-326/+595
|\ \ | | | | | | | | | | | | | | | 2410b91 Merge some GenerateExportHeader subtests. 4017db1 Speed up the GenerateExportHeader unit test (#14453).
| * | Merge some GenerateExportHeader subtests.Stephen Kelly2013-12-1515-143/+28
| | |
| * | Speed up the GenerateExportHeader unit test (#14453).Stephen Kelly2013-12-1517-183/+567
| |/ | | | | | | | | | | | | | | Instead of running many small tests with many cmake projects, simply compare the generated export header against a reference. Remove the helper macros and the try_compiles which are duplicates of the library build tests.
* | Merge topic 'build-symlink-invalid-sup-file'Brad King2013-12-191-1/+9
|\ \ | | | | | | | | | | | | 57c008c Tests: allow valgrind test to pass with symlinked build dir
| * | Tests: allow valgrind test to pass with symlinked build dirNils Gladitz2013-12-141-1/+9
| |/
* | Merge topic 'remove-INTERFACE-build-targets'Brad King2013-12-197-41/+21
|\ \ | | | | | | | | | | | | 97fae68 Remove INTERFACE build targets.
| * | Remove INTERFACE build targets.Stephen Kelly2013-12-107-41/+21
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit b04f3b9a (Create make rules for INTERFACE_LIBRARY targets., 2013-08-21) extended the makefile generator to create build targets for INTERFACE_LIBRARY targets. No other generators were extended with this feature. This conflicts with the feature of whitelisting of target properties read from INTERFACE_LIBRARY targets. The INTERFACE_* properties of the INTERFACE_LIBRARY may legitimately contain TARGET_PROPERTY generator expressions for reading properties from the 'head target'. The 'head target' would be the INTERFACE_LIBRARY itself when creating the build rules for it, which means that non-whitelisted properties would be read.
* | Merge topic 'fix-INTERFACE-mapped-config'Brad King2013-12-194-0/+25
|\ \ | | | | | | | | | | | | 3b8e56a Don't search for IMPORTED_LOCATION of INTERFACE_LIBRARY (14636)
| * | Don't search for IMPORTED_LOCATION of INTERFACE_LIBRARY (14636)Stephen Kelly2013-12-094-0/+25
| |/ | | | | | | | | | | | | | | The INTERFACE_LIBRARY type does not have any LOCATION at all, so return early from GetMappedConfig. GetMappedConfig is called from two locations, one of which already pre-checks the INTERFACE_LIBRARY case. Remove that pre-check and handle that case inside the method instead.
* | Merge topic 'vtk-contract'Brad King2013-12-191-0/+9
|\ \ | |/ |/| | | | | ad330ed Tests/Contracts: Submit notes with VTK build
| * Tests/Contracts: Submit notes with VTK buildZack Galbreath2013-12-191-0/+9
| | | | | | | | | | Submit the configured Dashboard script as as Notes file to CDash. Also add comments about the origin & purpose of this test.
* | Merge topic 'vtk-contract'Brad King2013-12-092-4/+3
|\ \ | |/ | | | | | | ca9e117 Tests/Contracts: Fix failing VTK Contract test
| * Tests/Contracts: Fix failing VTK Contract testZack Galbreath2013-12-092-4/+3
| | | | | | | | | | This test was failing because it was attempting to build VTK in the wrong directory.
* | Merge topic 'INTERFACE_AUTOUIC_OPTIONS'Brad King2013-12-0914-0/+201
|\ \ | | | | | | | | | | | | | | | 77f3772 cmTarget: Require a compatible INTERFACE_AUTOUIC_OPTIONS from dependencies. 2e60b5f cmTarget: Report origin of COMPATIBLE_INTERFACE properties.
| * | cmTarget: Require a compatible INTERFACE_AUTOUIC_OPTIONS from dependencies.Stephen Kelly2013-12-086-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | Revert the origin-tracking infrastructure from commit 98093c45 (QtAutoUic: Add INTERFACE_AUTOUIC_OPTIONS target property., 2013-11-20). Use the compatibility-tracking for compatible strings instead. If two different dependencies require different AUTOUIC_OPTIONS, cmake will now appropriately issue an error.
| * | cmTarget: Report origin of COMPATIBLE_INTERFACE properties.Stephen Kelly2013-12-089-0/+158
| | |
* | | Merge topic 'cleanup-build-commands'Brad King2013-12-063-1/+10
|\ \ \ | | | | | | | | | | | | | | | | ef7c11e Tests: Fix standalone build of tests with nested projects
| * | | Tests: Fix standalone build of tests with nested projectsBrad King2013-12-053-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit fd6076d0 (Tests: Pass CMAKE_MAKE_PROGRAM instead of --build-makeprogram, 2013-11-15) the ExportImport, Fortran, and MacRuntimePath tests use the value of CMAKE_TEST_MAKEPROGRAM as the CMAKE_MAKE_PROGRAM for their nested projects configurations. Teach these tests to initialize CMAKE_TEST_MAKEPROGRAM when it is not provided, such as when building the tests manually.
* | | | Merge topic 'vtk-contract'Brad King2013-12-055-31/+79
|\ \ \ \ | |_|/ / |/| | / | | |/ | |/| 1b173f2 Tests/Contracts: Update test for VTK release branch
| * | Tests/Contracts: Update test for VTK release branchZack Galbreath2013-12-055-31/+79
| | | | | | | | | | | | | | | | | | The plan is to reinstate the VTK contracts test so that CMake & VTK devs will both be made aware when a change in CMake causes build problems for VTK.
* | | Merge topic 'fix-export-segfault'Brad King2013-12-046-0/+13
|\ \ \ | | | | | | | | | | | | | | | | 1cd1430 export(): Check targets exist at configure-time (#14608)
| * | | export(): Check targets exist at configure-time (#14608)Stephen Kelly2013-12-046-0/+13
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Commit 66b290e7 (export(): Process the export() command at generate time., 2012-10-06 ) refactored export() so that it could evaluate strings at generate-time. This was intended for evaluating target properties, but that commit also removed a check for target existence at configure-time. Restore that check and add a test for this case.
* | | Merge topic 'INTERFACE_AUTOUIC_OPTIONS'Brad King2013-12-0213-0/+340
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 98093c4 QtAutoUic: Add INTERFACE_AUTOUIC_OPTIONS target property. 02542b4 QtAutoUic: Handle new -include command line parameter. 1242f4e Genex: Add {UPPER,LOWER}_CASE and MAKE_C_IDENTIFIER. 754b321 QtAutogen: Use config without prefix in map key.
| * | | QtAutoUic: Add INTERFACE_AUTOUIC_OPTIONS target property.Stephen Kelly2013-11-2711-0/+334
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Transitively consume the property from linked dependents. Implement configuration-specific support by following the pattern set out for compile definitions and includes in cmQtAutoGenerators. Implement support for origin-tracking with CMAKE_DEBUG_TARGET_PROPERTIES. This is motivated by the needs of KDE, which provides a separate translation system based on gettext instead of the Qt linguist translation system. The Qt uic tool provides command line options for configuring the method used to translate text, and to add an include directive to the generated file to provide the method. http://thread.gmane.org/gmane.comp.kde.devel.frameworks/7930/focus=7992 Implement the interface to provide the uic options as a usage-requirement on the KI18n target, as designed for KDE.
| * | | Genex: Add {UPPER,LOWER}_CASE and MAKE_C_IDENTIFIER.Stephen Kelly2013-11-272-0/+6
| |/ /
* | | Merge topic 'wix-components'Brad King2013-12-021-1/+13
|\ \ \ | | | | | | | | | | | | | | | | 7b390f7 CPackWiX: add CPack component support
| * | | CPackWiX: add CPack component supportNils Gladitz2013-11-261-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Creates a hierarchy of WiX features from CPack components and component groups. Switch to the FeatureTree UI in case components have been defined. Handles the component REQUIRE and HIDDEN options and the component group EXPANDED option.
* | | | Merge topic 'export-includes'Brad King2013-12-0232-3/+336
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5838aba Export: Report error on relative include with genex. 7a3e45b Export: Prefix relative items with genexes in INSTALL_INTERFACE. f088a32 Export: Process INSTALL_INTERFACE in INCLUDES DESTINATION. 9eedc85 Export: Process relative includes after genex evaluation. 80790f3 Export: Test existing behavior of exporting includes with genexes. 38afc82 target_include_directories: Allow relative path with genex
| * | | Export: Report error on relative include with genex.Stephen Kelly2013-11-2622-0/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Diagnostics which check the sanity of exported include paths previously skipped over any path containing a generator expression. Introduce a policy to issue an error message in such cases. The export files created in the OLD behavior are not usable, because they contain relative paths or paths to the source or build location which are not suitable for use on installation. CMake will report an error on import.
| * | | Export: Prefix relative items with genexes in INSTALL_INTERFACE.Stephen Kelly2013-11-262-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code such as target_include_directories(foo INTERFACE $<INSTALL_INTERFACE:include$<FOO>> ) should be treated as a relative directory, despite the genex, after the INSTALL_INTERFACE is stripped away. Previously, this would generate a relative directory on export, which would be an error on import, so no policy is needed.
| * | | Export: Process INSTALL_INTERFACE in INCLUDES DESTINATION.Stephen Kelly2013-11-262-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code such as install(TARGETS ... INCLUDES DESTINATION $<INSTALL_INTERFACE:include> ) should behave as if the INSTALL_INTERFACE wrapper were not present.
| * | | Export: Process relative includes after genex evaluation.Stephen Kelly2013-11-263-1/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In code such as install(TARGETS ... INCLUDES DESTINATION $<FOO>include ) the generator expressions are evaluated at generate-time. Delay determining whether each entry is a relative path until after the generator expressions are evaluated. Such relative paths are based relative to the CMAKE_INSTALL_PREFIX.
| * | | Export: Test existing behavior of exporting includes with genexes.Stephen Kelly2013-11-265-1/+54
| | | | | | | | | | | | | | | | Test that no warning or error diagnostic is issued for 'good code'.
| * | | target_include_directories: Allow relative path with genexStephen Kelly2013-11-263-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Treat paths which are relative and which contain a generator expression which is not at the beginning as relative to the source directory. This matches the behavior of paths which are relative but contain no generator expression at all. Previously this would generate a relative path with the IMPORTED target on export(), which would be a reported as a non-existent path on import. If used directly in the buildsystem, it would be reported as a relative path, which is also an error. There is no need for a policy in this case.
* | | | Merge topic 'autogen-depends'Brad King2013-11-264-1/+49
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 1320e07 cmQtAutogen: Allow specifying depends for autogen targets.
| * | | | cmQtAutogen: Allow specifying depends for autogen targets.Stephen Kelly2013-11-254-1/+49
| |/ / / | | | | | | | | | | | | | | | | Test this by generating files with a custom target, which moc requires to be present when it is run.
* | | | cmTarget: Add whitelist of properties on INTERFACE_LIBRARY.Stephen Kelly2013-11-254-0/+27
|/ / /
* | | Merge topic 'cross-compiling-toolchain-variables'Brad King2013-11-2211-0/+193
|\ \ \ | | | | | | | | | | | | | | | | 7521da2 Introduce CMAKE_STAGING_PREFIX variable.
| * | | Introduce CMAKE_STAGING_PREFIX variable.Stephen Kelly2013-11-2111-0/+193
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This variable can be useful in cross-compiling contexts where the sysroot is read-only or where the sysroot should otherwise remain pristine. If the new CMAKE_STAGING_PREFIX variable is set, it is used instead of CMAKE_INSTALL_PREFIX when generating the installation rules in cmake_install.cmake. This way, the CMAKE_INSTALL_PREFIX variable always refers to the installation prefix on the target device, regardless of whether host==target. If any -rpath paths passed to the linker contain the CMAKE_STAGING_PREFIX, the matching path fragments are replaced with the CMAKE_INSTALL_PREFIX. Matching paths in the -rpath-link are not transformed. The cross-prefix usr-move workaround is assumed not to require extension regarding CMAKE_STAGING_PREFIX. The staging area is a single prefix, so there is no scope for cross-prefix symlinks. The CMAKE_INSTALL_PREFIX is still used to determine the workaround path, and that variable remains the relevant one even if CMAKE_STAGING_PREFIX is used. If the generated export files are deployed to the target, the workaround will still be in place, and still be employed if required.
* | | Add policy CMP0040 to disallow custom commands on missing targetsNils Gladitz2013-11-2119-0/+74
| | |
* | | Tests: Don't read the LOCATION property from build targets.Stephen Kelly2013-11-197-28/+13
|/ /
* | Merge topic 'cleanup-build-commands'Brad King2013-11-1918-250/+228
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4cce44b Help: Document the CMAKE_MAKE_PROGRAM variable in more detail 558c74d VS: Switch to internal CMAKE_MAKE_PROGRAM lookup by generators 5229f2d Tests: Do not use an explicit make program for VS generators 72dd738 Tests: Fix MFC test heuristic for empty CMAKE_TEST_MAKEPROGRAM fd6076d Tests: Pass CMAKE_MAKE_PROGRAM instead of --build-makeprogram 68031ab Tests: Configure SubProject-Stage2 test more robustly 003d10c Tests: Simplify VSExcludeFromDefaultBuild configuration e47d934 Tests: Simplify VSProjectInSubdir configuration e965cb1 Tests: Simplify CTest.BuildCommand.ProjectInSubdir configuration 72bf255 Tests: Pass --build-options to every test 4d1d772 ctest: Teach --build-options to allow zero options 96966b5 ctest: Make the --build-makeprogram optional for --build-and-test 91a0211 Simplify some calls to cmGlobalGenerator::Build 123a060 Teach GenerateBuildCommand to find its own make program 5f5c92b VS: Add internal APIs to find MSBuild, devenv/VCExpress, and msdev 4ac75fd Prefer CMAKE_MAKE_PROGRAM over CMAKE_BUILD_TOOL (#14548) ...
| * Tests: Do not use an explicit make program for VS generatorsBrad King2013-11-181-1/+5
| | | | | | | | | | Do not pass the CMAKE_MAKE_PROGRAM cache entry to tests when using the VS generators. Allow them to pick the correct build tool automatically.
| * Tests: Fix MFC test heuristic for empty CMAKE_TEST_MAKEPROGRAMBrad King2013-11-181-1/+1
| | | | | | | | Also disable the MFC test if CMAKE_MAKE_PROGRAM is vcexpress.
| * Tests: Pass CMAKE_MAKE_PROGRAM instead of --build-makeprogramBrad King2013-11-186-9/+9
| | | | | | | | | | | | | | | | | | | | Pass the CMAKE_TEST_MAKEPROGRAM, if any, to each test at CMake time in the CMAKE_MAKE_PROGRAM cache entry. Pass the CMAKE_TEST_MAKEPROGRAM into the ExportImport, Fortran, and MacRuntimePath tests so that they may do the same for the nested project configurations. Now "ctest --build-and-test" can get the make program from the test build tree cache, so drop the explicit --build-makeprogram.
| * Tests: Configure SubProject-Stage2 test more robustlyBrad King2013-11-181-13/+12
| | | | | | | | | | | | | | | | | | | | | | Fix the condition that adds the test to check CMAKE_TEST_GENERATOR rather than the tools used to build CMake. Drop the test on Ninja because the generator does not support subproject generation anyway. Stop using the general build_generator_args and pass the --build-generator options explicitly. Also pass --build-makeprogram explicitly when CMAKE_TEST_MAKEPROGRAM is available because there is no CMakeCache.txt in the test project subdirectory from which to pick up the make program.