cmake/Utilities/KWIML/test/CMakeLists.txt

57 lines
1.7 KiB
CMake
Raw Normal View History

2012-02-18 12:40:36 +02:00
#
2016-03-13 13:35:51 +01:00
# Copyright Kitware, Inc.
# Distributed under the OSI-approved BSD 3-Clause License.
# See accompanying file Copyright.txt for details.
2012-02-18 12:40:36 +02:00
#
2016-03-13 13:35:51 +01:00
if(NOT KWIML_TEST_PREFIX)
set(KWIML_TEST_PREFIX kwiml)
endif()
2012-02-18 12:40:36 +02:00
# Suppress printf/scanf format warnings; we test if the sizes match.
foreach(lang C CXX)
2015-04-27 22:25:09 +02:00
if(KWIML_LANGUAGE_${lang} AND CMAKE_${lang}_COMPILER_ID STREQUAL "GNU")
2017-04-14 19:02:05 +02:00
set(CMAKE_${lang}_FLAGS "${CMAKE_${lang}_FLAGS} -Wno-format -Wno-format-security")
2012-02-18 12:40:36 +02:00
endif()
endforeach()
if(KWIML_LANGUAGE_C)
set(test_srcs test.c)
else()
set(test_srcs test.cxx)
endif()
if(KWIML_LANGUAGE_C)
list(APPEND test_defs KWIML_LANGUAGE_C)
list(APPEND test_srcs
2016-03-13 13:35:51 +01:00
test_abi_C.c
test_int_C.c
2012-02-18 12:40:36 +02:00
test_include_C.c
)
endif()
if(KWIML_LANGUAGE_CXX)
list(APPEND test_defs KWIML_LANGUAGE_CXX)
list(APPEND test_srcs
2016-03-13 13:35:51 +01:00
test_abi_CXX.cxx
test_int_CXX.cxx
2012-02-18 12:40:36 +02:00
test_include_CXX.cxx
)
endif()
2016-03-13 13:35:51 +01:00
add_executable(kwiml_test ${test_srcs})
set_property(TARGET kwiml_test PROPERTY COMPILE_DEFINITIONS ${test_defs})
2017-07-20 19:35:53 +02:00
set_property(TARGET kwiml_test PROPERTY C_INCLUDE_WHAT_YOU_USE "")
set_property(TARGET kwiml_test PROPERTY CXX_INCLUDE_WHAT_YOU_USE "")
2016-03-13 13:35:51 +01:00
set_property(TARGET kwiml_test PROPERTY
2012-02-18 12:40:36 +02:00
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
2016-03-13 13:35:51 +01:00
add_test(NAME ${KWIML_TEST_PREFIX}.test COMMAND kwiml_test)
set_property(TEST ${KWIML_TEST_PREFIX}.test PROPERTY LABELS ${KWIML_TEST_LABELS})
2012-02-18 12:40:36 +02:00
# Xcode 2.x forgets to create the output directory before linking
# the individual architectures.
if(CMAKE_OSX_ARCHITECTURES AND XCODE
AND NOT "${XCODE_VERSION}" MATCHES "^[^12]")
add_custom_command(
2016-03-13 13:35:51 +01:00
TARGET kwiml_test
2012-02-18 12:40:36 +02:00
PRE_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CFG_INTDIR}"
)
endif()