license and cmake

This commit is contained in:
Nishi 2026-05-25 04:53:45 +09:00
commit 51b3b89e1c
6 changed files with 316 additions and 0 deletions

20
engine/cmake/util.cmake Normal file
View file

@ -0,0 +1,20 @@
function(fb_add_dep TARGET_NAME DEP_NAME)
get_target_property(TARGET_TYPE ${TARGET_NAME} TYPE)
if(TARGET_TYPE STREQUAL "INTERFACE_LIBRARY")
set(LINK_SCOPE "INTERFACE")
else()
set(LINK_SCOPE "PRIVATE")
endif()
if(TARGET deps::${DEP_NAME})
target_link_libraries(${TARGET_NAME} ${LINK_SCOPE} deps::${DEP_NAME})
return()
endif()
include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/deps/${DEP_NAME}.cmake")
add_library(deps::${DEP_NAME} ALIAS ${DEP_NAME})
target_link_libraries(${TARGET_NAME} ${LINK_SCOPE} deps::${DEP_NAME})
endfunction()