Conditionally add freetype and wgpu libs to packaging files
This commit is contained in:
parent
9273a6f538
commit
241f3afde3
5 changed files with 33 additions and 1 deletions
|
|
@ -18,6 +18,11 @@ if(PSEMEK_ROBUST_PREDICATES)
|
||||||
list(APPEND PSEMEK_DEFINITIONS "-DPSEMEK_ROBUST_PREDICATES=1")
|
list(APPEND PSEMEK_DEFINITIONS "-DPSEMEK_ROBUST_PREDICATES=1")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
option(PSEMEK_USE_FREETYPE "Include Freetype fonts support" OFF)
|
||||||
|
if(PSEMEK_USE_FREETYPE)
|
||||||
|
list(APPEND PSEMEK_DEFINITIONS "-DPSEMEK_USE_FREETYPE=1")
|
||||||
|
endif()
|
||||||
|
|
||||||
set(PSEMEK_CXX_FLAGS)
|
set(PSEMEK_CXX_FLAGS)
|
||||||
if((CMAKE_CXX_COMPILER_ID STREQUAL "GNU") OR (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") OR (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang"))
|
if((CMAKE_CXX_COMPILER_ID STREQUAL "GNU") OR (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") OR (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang"))
|
||||||
list(APPEND PSEMEK_CXX_FLAGS -Wall -Werror -Wextra -pedantic -Wno-narrowing -Wno-sign-compare)
|
list(APPEND PSEMEK_CXX_FLAGS -Wall -Werror -Wextra -pedantic -Wno-narrowing -Wno-sign-compare)
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,12 @@ find_package(Freetype REQUIRED)
|
||||||
file(GLOB_RECURSE PSEMEK_FONTS_HEADERS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "include/*.hpp")
|
file(GLOB_RECURSE PSEMEK_FONTS_HEADERS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "include/*.hpp")
|
||||||
file(GLOB_RECURSE PSEMEK_FONTS_SOURCES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "source/*.cpp")
|
file(GLOB_RECURSE PSEMEK_FONTS_SOURCES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "source/*.cpp")
|
||||||
|
|
||||||
|
list(REMOVE_ITEM PSEMEK_FONTS_SOURCES "source/freetype.cpp")
|
||||||
|
|
||||||
|
if(PSEMEK_USE_FREETYPE)
|
||||||
|
list(APPEND PSEMEK_FONTS_SOURCES "source/freetype.cpp")
|
||||||
|
endif()
|
||||||
|
|
||||||
psemek_add_library(psemek-fonts ${PSEMEK_FONTS_HEADERS} ${PSEMEK_FONTS_SOURCES})
|
psemek_add_library(psemek-fonts ${PSEMEK_FONTS_HEADERS} ${PSEMEK_FONTS_SOURCES})
|
||||||
target_include_directories(psemek-fonts PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include" ${FREETYPE_INCLUDE_DIRS})
|
target_include_directories(psemek-fonts PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include" ${FREETYPE_INCLUDE_DIRS})
|
||||||
target_link_libraries(psemek-fonts PUBLIC psemek-util psemek-geom psemek-gfx rapidjson ${FREETYPE_LIBRARY})
|
target_link_libraries(psemek-fonts PUBLIC psemek-util psemek-geom psemek-gfx rapidjson ${FREETYPE_LIBRARY})
|
||||||
|
|
|
||||||
|
|
@ -77,10 +77,21 @@ function(psemek_add_executable_impl target is_application)
|
||||||
|
|
||||||
if(NOT ANDROID)
|
if(NOT ANDROID)
|
||||||
get_filename_component(_OUTPUT_DIRECTORY "${_OUTPUT_PATH}" DIRECTORY)
|
get_filename_component(_OUTPUT_DIRECTORY "${_OUTPUT_PATH}" DIRECTORY)
|
||||||
|
|
||||||
|
set(_COPY_FILES $<TARGET_FILE:${target}> ${PSEMEK_PACKAGE_COPY_FILES})
|
||||||
|
|
||||||
|
if(PSEMEK_GRAPHICS_API STREQUAL WEBGPU)
|
||||||
|
list(APPEND _COPY_FILES ${PSEMEK_PACKAGE_COPY_FILES_WEBGPU})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(PSEMEK_USE_FREETYPE)
|
||||||
|
list(APPEND _COPY_FILES ${PSEMEK_PACKAGE_COPY_FILES_FREETYPE})
|
||||||
|
endif()
|
||||||
|
|
||||||
add_custom_command(TARGET ${target} POST_BUILD
|
add_custom_command(TARGET ${target} POST_BUILD
|
||||||
COMMAND echo Packaging target ${target} into ${_OUTPUT_PATH}
|
COMMAND echo Packaging target ${target} into ${_OUTPUT_PATH}
|
||||||
COMMAND mkdir -pv "${_OUTPUT_DIRECTORY}"
|
COMMAND mkdir -pv "${_OUTPUT_DIRECTORY}"
|
||||||
COMMAND zip -v "${_OUTPUT_PATH}" -j $<TARGET_FILE:${target}> ${PSEMEK_PACKAGE_COPY_FILES}
|
COMMAND zip -v "${_OUTPUT_PATH}" -j ${_COPY_FILES}
|
||||||
COMMAND echo Packaged target ${target} into ${_OUTPUT_PATH}
|
COMMAND echo Packaged target ${target} into ${_OUTPUT_PATH}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,9 @@ set(PSEMEK_PACKAGE_TARGET ON)
|
||||||
|
|
||||||
set(PSEMEK_PACKAGE_COPY_FILES
|
set(PSEMEK_PACKAGE_COPY_FILES
|
||||||
${PSEMEK_PACKAGE_ROOT}/sdl2/install/lib/libSDL2-2.0.so.0
|
${PSEMEK_PACKAGE_ROOT}/sdl2/install/lib/libSDL2-2.0.so.0
|
||||||
|
)
|
||||||
|
|
||||||
|
set(PSEMEK_PACKAGE_COPY_FILES_FREETYPE
|
||||||
${PSEMEK_PACKAGE_ROOT}/libfreetype.so.6
|
${PSEMEK_PACKAGE_ROOT}/libfreetype.so.6
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,13 @@ set(PSEMEK_PACKAGE_COPY_FILES
|
||||||
${PSEMEK_PACKAGE_ROOT}/sdl2/install/bin/SDL2.dll
|
${PSEMEK_PACKAGE_ROOT}/sdl2/install/bin/SDL2.dll
|
||||||
/usr/x86_64-w64-mingw32/lib/libwinpthread-1.dll
|
/usr/x86_64-w64-mingw32/lib/libwinpthread-1.dll
|
||||||
${PSEMEK_PACKAGE_ROOT}/wgpu-native/install/target/wgpu_native.dll
|
${PSEMEK_PACKAGE_ROOT}/wgpu-native/install/target/wgpu_native.dll
|
||||||
|
)
|
||||||
|
|
||||||
|
set(PSEMEK_PACKAGE_COPY_FILES_WGPU
|
||||||
|
${PSEMEK_PACKAGE_ROOT}/wgpu-native/install/target/wgpu_native.dll
|
||||||
|
)
|
||||||
|
|
||||||
|
set(PSEMEK_PACKAGE_COPY_FILES_FREETYPE
|
||||||
${PSEMEK_PACKAGE_ROOT}/freetype/install/bin/*
|
${PSEMEK_PACKAGE_ROOT}/freetype/install/bin/*
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue