CMake/Tests/ExportImport/CMakeLists.txt

69 lines
2.6 KiB
CMake
Raw Normal View History

project(ExportImport C)
# Wipe out the install tree to make sure the exporter works.
add_custom_command(
OUTPUT ${ExportImport_BINARY_DIR}/CleanupProject
COMMAND ${CMAKE_COMMAND} -E remove_directory ${ExportImport_BINARY_DIR}/Root
)
add_custom_target(CleanupTarget ALL DEPENDS ${ExportImport_BINARY_DIR}/CleanupProject)
# Build and install the exporter.
if(CMAKE_CONFIGURATION_TYPES)
set(Export_CONFIG_TYPE -C "${CMAKE_CFG_INTDIR}")
else(CMAKE_CONFIGURATION_TYPES)
set(Export_CONFIG_TYPE)
endif(CMAKE_CONFIGURATION_TYPES)
add_custom_command(
OUTPUT ${ExportImport_BINARY_DIR}/ExportProject
COMMAND ${CMAKE_CTEST_COMMAND} ${Export_CONFIG_TYPE}
--build-and-test
${ExportImport_SOURCE_DIR}/Export
${ExportImport_BINARY_DIR}/Export
--build-noclean
--build-project Export
--build-target install
--build-generator ${CMAKE_GENERATOR}
--build-makeprogram ${CMAKE_MAKE_PROGRAM}
--build-options
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS}
-DCMAKE_C_FLAGS_DEBUG:STRING=${CMAKE_C_FLAGS_DEBUG}
-DCMAKE_C_FLAGS_RELEASE:STRING=${CMAKE_C_FLAGS_RELEASE}
-DCMAKE_C_FLAGS_MINSIZEREL:STRING=${CMAKE_C_FLAGS_MINSIZEREL}
-DCMAKE_C_FLAGS_RELWITHDEBINFO:STRING=${CMAKE_C_FLAGS_RELWITHDEBINFO}
-DCMAKE_INSTALL_PREFIX=${ExportImport_BINARY_DIR}/Root
)
add_custom_target(ExportTarget ALL DEPENDS ${ExportImport_BINARY_DIR}/ExportProject)
add_dependencies(ExportTarget CleanupTarget)
# Build and install the importer.
if(CMAKE_CONFIGURATION_TYPES)
set(Import_CONFIG_TYPE -C "${CMAKE_CFG_INTDIR}")
else(CMAKE_CONFIGURATION_TYPES)
set(Import_CONFIG_TYPE)
endif(CMAKE_CONFIGURATION_TYPES)
add_custom_command(
OUTPUT ${ExportImport_BINARY_DIR}/ImportProject
COMMAND ${CMAKE_CTEST_COMMAND} ${Import_CONFIG_TYPE}
--build-and-test
${ExportImport_SOURCE_DIR}/Import
${ExportImport_BINARY_DIR}/Import
--build-noclean
--build-project Import
--build-generator ${CMAKE_GENERATOR}
--build-makeprogram ${CMAKE_MAKE_PROGRAM}
--build-options
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS}
-DCMAKE_C_FLAGS_DEBUG:STRING=${CMAKE_C_FLAGS_DEBUG}
-DCMAKE_C_FLAGS_RELEASE:STRING=${CMAKE_C_FLAGS_RELEASE}
-DCMAKE_C_FLAGS_MINSIZEREL:STRING=${CMAKE_C_FLAGS_MINSIZEREL}
-DCMAKE_C_FLAGS_RELWITHDEBINFO:STRING=${CMAKE_C_FLAGS_RELWITHDEBINFO}
-DCMAKE_INSTALL_PREFIX=${ExportImport_BINARY_DIR}/Root
)
add_custom_target(ImportTarget ALL DEPENDS ${ExportImport_BINARY_DIR}/ImportProject)
add_dependencies(ImportTarget ExportTarget)
add_executable(ExportImport main.c)
add_dependencies(ExportImport ImportTarget)