cmake/Tests/RunCMake/ObjectLibrary/CheckTargetObjects.cmake
2019-11-11 23:01:05 +01:00

33 lines
946 B
CMake

add_library(StaticLib STATIC a.c)
add_custom_command(TARGET StaticLib POST_BUILD
VERBATIM
COMMAND ${CMAKE_COMMAND}
"-DTARGET_OBJECTS=$<TARGET_OBJECTS:StaticLib>"
-DEXPECTED_NUM_OBJECTFILES=2
-P "${CMAKE_CURRENT_SOURCE_DIR}/check_object_files.cmake"
)
add_library(SharedLib SHARED a.c b.c)
target_compile_definitions(SharedLib PRIVATE REQUIRED)
add_custom_command(TARGET SharedLib POST_BUILD
VERBATIM
COMMAND ${CMAKE_COMMAND}
"-DTARGET_OBJECTS:STRING=$<TARGET_OBJECTS:SharedLib>"
-DEXPECTED_NUM_OBJECTFILES=2
-P "${CMAKE_CURRENT_SOURCE_DIR}/check_object_files.cmake"
)
add_executable(ExecObjs a.c b.c exe.c)
target_compile_definitions(ExecObjs PRIVATE REQUIRED)
add_custom_target(check_exec_objs ALL
VERBATIM
COMMAND ${CMAKE_COMMAND}
"-DTARGET_OBJECTS=$<TARGET_OBJECTS:ExecObjs>"
-DEXPECTED_NUM_OBJECTFILES=3
-P "${CMAKE_CURRENT_SOURCE_DIR}/check_object_files.cmake"
DEPENDS ExecObjs
)