1
0
Fork 0

Don't use PUBLIC in init_target

init_target should affect only specified target
This commit is contained in:
Ilya Fedin 2021-07-29 19:59:58 +04:00 committed by John Preston
parent f7ccab0e7c
commit 3b4cffcfa7

View file

@ -18,19 +18,19 @@ endfunction()
function(init_target target_name) # init_target(my_target folder_name)
if (ARGC GREATER 1)
if (${ARGV1} STREQUAL cxx_std_14 OR ${ARGV1} STREQUAL cxx_std_11 OR ${ARGV1} STREQUAL cxx_std_17)
target_compile_features(${target_name} PUBLIC ${ARGV1})
target_compile_features(${target_name} PRIVATE ${ARGV1})
else()
target_compile_features(${target_name} PUBLIC ${MAXIMUM_CXX_STANDARD})
target_compile_features(${target_name} PRIVATE ${MAXIMUM_CXX_STANDARD})
init_target_folder(${target_name} ${ARGV1})
endif()
else()
target_compile_features(${target_name} PUBLIC ${MAXIMUM_CXX_STANDARD})
target_compile_features(${target_name} PRIVATE ${MAXIMUM_CXX_STANDARD})
endif()
if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
set_target_properties(${target_name} PROPERTIES
MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
endif()
target_link_libraries(${target_name} PUBLIC desktop-app::common_options)
target_link_libraries(${target_name} PRIVATE desktop-app::common_options)
if (NOT DESKTOP_APP_USE_PACKAGED)
set_target_properties(${target_name} PROPERTIES LINK_SEARCH_START_STATIC 1)
endif()