CMake/Tests/PositionIndependentTargets/global/CMakeLists.txt

38 lines
888 B
CMake

set(CMAKE_POSITION_INDEPENDENT_CODE True)
add_executable(test_target_executable_global
"${CMAKE_CURRENT_SOURCE_DIR}/../pic_main.cpp"
)
add_library(test_target_shared_library_global
SHARED "${CMAKE_CURRENT_SOURCE_DIR}/../pic_lib.cpp"
)
set_target_properties(test_target_shared_library_global
PROPERTIES DEFINE_SYMBOL PIC_TEST_BUILD_DLL
)
add_library(test_target_static_library_global
STATIC "${CMAKE_CURRENT_SOURCE_DIR}/../pic_lib.cpp"
)
set_target_properties(test_target_static_library_global
PROPERTIES COMPILE_DEFINITIONS PIC_TEST_STATIC_BUILD
)
file(READ
"${CMAKE_CURRENT_SOURCE_DIR}/../pic_test.h"
PIC_HEADER_CONTENT
)
check_cxx_source_compiles(
"
${PIC_HEADER_CONTENT}
int main(int,char**) { return 0; }\n"
PIC_TRY_COMPILE_RESULT
)
if (NOT PIC_TRY_COMPILE_RESULT)
message(SEND_ERROR "TRY_COMPILE with content requiring __PIC__ failed. ${OUTPUT}")
endif()