axmol/extensions/Live2D/CMakeLists.txt

60 lines
1.7 KiB
CMake

cmake_minimum_required(VERSION 3.10)
set(LIB_NAME Live2D)
# Force static library.
add_library(${LIB_NAME} STATIC)
add_subdirectory(Framework/src)
# Add include path.
target_include_directories(${LIB_NAME}
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/Framework/src
)
# Deprecated functions
# The following expressions are written for compatibility
# and will be removed in a future release.
# Add core include.
target_include_directories(${LIB_NAME}
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/Core/include
)
# Add definitions.
# target_compile_definitions(${LIB_NAME}
# PRIVATE
# ${FRAMEWORK_DEFINITIOINS}
# )
if(NOT IS_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/Core)
message(AUTHOR_WARNING "Downloading liblive2d-core-dev ...")
file(DOWNLOAD https://github.com/axmol1/archive/releases/download/v1.0.0/Live2D-4.4-Core.zip ${CMAKE_CURRENT_LIST_DIR}/Core.zip)
file(ARCHIVE_EXTRACT INPUT ${CMAKE_CURRENT_LIST_DIR}/Core.zip DESTINATION ${CMAKE_CURRENT_LIST_DIR}/)
endif()
add_subdirectory(Core)
if (ANDROID)
target_link_libraries(${LIB_NAME} INTERFACE Live2DCubismCore)
else()
target_link_libraries(${LIB_NAME} Live2DCubismCore)
endif()
ax_find_shaders("${CMAKE_CURRENT_LIST_DIR}/Framework/src/Rendering/axmol/shaders" LIVE2D_SHADER_SOURCES)
ax_target_compile_shaders(${LIB_NAME} FILES ${LIVE2D_SHADER_SOURCES} CUSTOM)
if (ANDROID)
ax_find_shaders("${CMAKE_CURRENT_LIST_DIR}/Framework/src/Rendering/axmol/shaders_tegra" LIVE2D_TEGRA_SHADER_SOURCES)
ax_target_compile_shaders(${LIB_NAME} FILES ${LIVE2D_TEGRA_SHADER_SOURCES} CUSTOM)
endif()
if (ANDROID)
setup_ax_extension_config(${LIB_NAME} LINK_SCOPE PRIVATE)
else()
setup_ax_extension_config(${LIB_NAME})
endif()
unset(LIB_NAME)