| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- 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)
- set_property(
- SOURCE ${ExportImport_BINARY_DIR}/CleanupProject
- PROPERTY SYMBOLIC 1
- )
- if(CMAKE_CONFIGURATION_TYPES)
- set(NESTED_CONFIG_TYPE -C "${CMAKE_CFG_INTDIR}")
- else(CMAKE_CONFIGURATION_TYPES)
- if(CMAKE_BUILD_TYPE)
- set(NESTED_CONFIG_TYPE -C "${CMAKE_BUILD_TYPE}")
- else(CMAKE_BUILD_TYPE)
- set(NESTED_CONFIG_TYPE)
- endif(CMAKE_BUILD_TYPE)
- endif(CMAKE_CONFIGURATION_TYPES)
- # Build and install the exporter.
- add_custom_command(
- OUTPUT ${ExportImport_BINARY_DIR}/ExportProject
- COMMAND ${CMAKE_CTEST_COMMAND} ${NESTED_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:STRING=${ExportImport_BINARY_DIR}/Root
- )
- add_custom_target(ExportTarget ALL DEPENDS ${ExportImport_BINARY_DIR}/ExportProject)
- add_dependencies(ExportTarget CleanupTarget)
- set_property(
- SOURCE ${ExportImport_BINARY_DIR}/ExportProject
- PROPERTY SYMBOLIC 1
- )
- # Build and install the importer.
- add_custom_command(
- OUTPUT ${ExportImport_BINARY_DIR}/ImportProject
- COMMAND ${CMAKE_CTEST_COMMAND} ${NESTED_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:STRING=${ExportImport_BINARY_DIR}/Root
- )
- add_custom_target(ImportTarget ALL DEPENDS ${ExportImport_BINARY_DIR}/ImportProject)
- add_dependencies(ImportTarget ExportTarget)
- set_property(
- SOURCE ${ExportImport_BINARY_DIR}/ImportProject
- PROPERTY SYMBOLIC 1
- )
- add_executable(ExportImport main.c)
- add_dependencies(ExportImport ImportTarget)
|