diff options
author | Brad King <brad.king@kitware.com> | 2016-09-01 19:22:05 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-09-05 13:45:42 (GMT) |
commit | fc3dab0ea956db618fe2b77778ac413db846b422 (patch) | |
tree | de71447ff4c14e7a2d204ed94445f162a49d9266 /Tests/Module/GenerateExportHeader/CMakeLists.txt | |
parent | 4feba34d02fe42fd20209e5b247f91d8e0f7a2ac (diff) | |
download | CMake-fc3dab0ea956db618fe2b77778ac413db846b422.zip CMake-fc3dab0ea956db618fe2b77778ac413db846b422.tar.gz CMake-fc3dab0ea956db618fe2b77778ac413db846b422.tar.bz2 |
Tests: Port GenerateExportHeader test to RunCMake infrastructure
This will allow build failure cases to be added later.
Diffstat (limited to 'Tests/Module/GenerateExportHeader/CMakeLists.txt')
-rw-r--r-- | Tests/Module/GenerateExportHeader/CMakeLists.txt | 139 |
1 files changed, 0 insertions, 139 deletions
diff --git a/Tests/Module/GenerateExportHeader/CMakeLists.txt b/Tests/Module/GenerateExportHeader/CMakeLists.txt deleted file mode 100644 index 56f0f28..0000000 --- a/Tests/Module/GenerateExportHeader/CMakeLists.txt +++ /dev/null @@ -1,139 +0,0 @@ -cmake_minimum_required(VERSION 2.8.5 FATAL_ERROR) -cmake_policy(SET CMP0054 NEW) - -project(GenerateExportHeader) - -# Prevent timeout on Watcom by not running the tests. -if ("${CMAKE_CXX_COMPILER_ID}" MATCHES Watcom) - file(WRITE - "${CMAKE_CURRENT_BINARY_DIR}/main.cxx" - "int main() { return 0; } - " - ) - - add_executable( - GenerateExportHeader - "${CMAKE_CURRENT_BINARY_DIR}/main.cxx" - ) - return() -endif() - -include(CheckCXXCompilerFlag) - -set( CMAKE_INCLUDE_CURRENT_DIR ON ) - -macro(TEST_FAIL value msg) - if (${value}) - message (SEND_ERROR "Test fail:" "${msg}\n" ${Out} ) - endif () -endmacro() - -macro(TEST_PASS value msg) - if (NOT ${value}) - message (SEND_ERROR "Test fail:" "${msg}\n" ${Out} ) - endif () -endmacro() - -check_cxx_compiler_flag(-Werror HAS_WERROR_FLAG) - -if(HAS_WERROR_FLAG) - set(ERROR_FLAG "-Werror") -else() - # MSVC - # And intel on windows? - # http://software.intel.com/en-us/articles/how-to-handle-warnings-message-in-compiler/?wapkw=%28compiler+warning+message%29 - check_cxx_compiler_flag("/WX" HAS_WX_FLAG) - if(HAS_WX_FLAG) - set(ERROR_FLAG "/WX") - else() - # Sun CC - # http://www.acsu.buffalo.edu/~charngda/sunstudio.html - check_cxx_compiler_flag("-errwarn=%all" HAS_ERRWARN_ALL) - if (HAS_ERRWARN_ALL) - set(ERROR_FLAG "-errwarn=%all") - else() - endif() - endif() -endif() - -include(GenerateExportHeader) - -set(CMAKE_CXX_STANDARD 98) - -# Those versions of the HP compiler that need a flag to get proper C++98 -# template support also need a flag to use the newer C++ library. -if (CMAKE_CXX_COMPILER_ID STREQUAL HP AND - CMAKE_CXX98_STANDARD_COMPILE_OPTION STREQUAL "+hpxstd98") - string(APPEND CMAKE_CXX_FLAGS " -AA") -endif () - -# Clang/C2 in C++98 mode cannot properly handle some of MSVC headers -if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND - CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC") - set(CMAKE_CXX_STANDARD 11) -endif() - -add_subdirectory(lib_shared_and_static) - -add_compiler_export_flags() - -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) - -message("#### COMPILER_HAS_DEPRECATED: " ${COMPILER_HAS_DEPRECATED}) -message("#### COMPILER_HAS_HIDDEN_VISIBILITY: " ${COMPILER_HAS_HIDDEN_VISIBILITY}) -message("#### WIN32: " ${WIN32}) -message("#### HAS_WERROR_FLAG: " ${HAS_WERROR_FLAG}) - -set(link_libraries) -macro(macro_add_test_library name) - add_subdirectory(${name}) - include_directories(${name} - ${${name}_BINARY_DIR} # For the export header. - ) - list(APPEND link_libraries ${name}) -endmacro() - -macro_add_test_library(libshared) -macro_add_test_library(libstatic) - -add_subdirectory(nodeprecated) -if(NOT BORLAND) - add_subdirectory(c_identifier) -endif() - -if (CMAKE_COMPILER_IS_GNUCXX OR (${CMAKE_CXX_COMPILER_ID} MATCHES Clang)) - # No need to clutter the test output with warnings. - string(APPEND CMAKE_CXX_FLAGS " -Wno-deprecated-declarations") -endif() - -if(MSVC AND COMPILER_HAS_DEPRECATED) - add_definitions(/wd4996) -endif() - -add_executable(GenerateExportHeader exportheader_test.cpp) - -target_link_libraries(GenerateExportHeader ${link_libraries}) -if (WIN32 OR CYGWIN) - if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND - CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC") - set(_platform Win32-Clang) - elseif(MSVC AND COMPILER_HAS_DEPRECATED) - set(_platform Win32) - elseif((MINGW OR CYGWIN) AND COMPILER_HAS_DEPRECATED) - set(_platform MinGW) - else() - set(_platform WinEmpty) - endif() -elseif(COMPILER_HAS_HIDDEN_VISIBILITY AND USE_COMPILER_HIDDEN_VISIBILITY) - set(_platform UNIX) -elseif(COMPILER_HAS_DEPRECATED) - set(_platform UNIX_DeprecatedOnly) -else() - set(_platform Empty) -endif() -message("#### Testing reference: ${_platform}") -target_compile_definitions(GenerateExportHeader - PRIVATE - "SRC_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}/reference/${_platform}\"" - "BIN_DIR=\"${CMAKE_CURRENT_BINARY_DIR}\"" -) |