diff options
author | Brad King <brad.king@kitware.com> | 2010-05-28 13:47:12 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2010-05-28 15:01:42 (GMT) |
commit | d3303dbc8130988be63b9dda913eb9af9770edeb (patch) | |
tree | 06ac8636c106f555ccd93219c0487d18de212272 /Tests/CMakeLists.txt | |
parent | 159606c3667e006bba59490c2cae82871f25d773 (diff) | |
download | CMake-d3303dbc8130988be63b9dda913eb9af9770edeb.zip CMake-d3303dbc8130988be63b9dda913eb9af9770edeb.tar.gz CMake-d3303dbc8130988be63b9dda913eb9af9770edeb.tar.bz2 |
Test LINK_FLAGS and STATIC_LIBRARY_FLAGS (#10768)
Add a LinkFlags test series to check that these properties work. Since
no link flag is accepted everywhere we test for presence of flags by
adding a bad flag and looking for the complaint in the test output.
Diffstat (limited to 'Tests/CMakeLists.txt')
-rw-r--r-- | Tests/CMakeLists.txt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 330cf9f..0761486 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -174,6 +174,37 @@ IF(BUILD_TESTING) ADD_TEST_MACRO(Module.CheckTypeSize CheckTypeSize) + ADD_TEST(LinkFlags-prepare + ${CMAKE_CTEST_COMMAND} -C \${CTEST_CONFIGURATION_TYPE} + --build-and-test + "${CMake_SOURCE_DIR}/Tests/LinkFlags" + "${CMake_BINARY_DIR}/Tests/LinkFlags" + --build-generator ${CMAKE_TEST_GENERATOR} + --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM} + --build-project LinkFlags + --build-target LinkFlags + --build-options -DTEST_CONFIG=\${CTEST_CONFIGURATION_TYPE} + ) + LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/LinkFlags") + + MACRO(ADD_LINK_FLAGS_TEST name depends) + ADD_TEST(LinkFlags-${name} + ${CMAKE_CMAKE_COMMAND} --build "${CMake_BINARY_DIR}/Tests/LinkFlags" + --target LinkFlags_${name} --config \${CTEST_CONFIGURATION_TYPE} + ) + SET_TESTS_PROPERTIES(LinkFlags-${name} PROPERTIES + PASS_REGULAR_EXPRESSION "BADFLAG" DEPENDS LinkFlags-${depends}) + ENDMACRO() + ADD_LINK_FLAGS_TEST(lib prepare) + ADD_LINK_FLAGS_TEST(dll lib) + ADD_LINK_FLAGS_TEST(exe dll) + ADD_LINK_FLAGS_TEST(lib_config exe) + ADD_LINK_FLAGS_TEST(dll_config lib_config) + ADD_LINK_FLAGS_TEST(exe_config dll_config) + + # STATIC_LIBRARY_FLAGS_<CONFIG> not yet implemented + SET_TESTS_PROPERTIES(LinkFlags-lib_config PROPERTIES WILL_FAIL 1) + # If we are running right now with a UnixMakefiles based generator, # build the "Simple" test with the ExtraGenerators, if available # This doesn't test whether the generated project files work (unfortunately), |