From b8afecd8493ec8f9846795db32da86c02f8d4d39 Mon Sep 17 00:00:00 2001 From: noword Date: Tue, 6 Dec 2022 14:36:42 +0800 Subject: [PATCH] add sdl-ttf lib --- CMakeLists.txt | 5 +++++ third_party/sdlttf/CMakeLists.txt | 25 +++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 third_party/sdlttf/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 99a878f..6cb377c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -337,9 +337,11 @@ target_include_directories(${EXECUTABLE_NAME} PRIVATE ${FPATTERN_INCLUDE_DIR}) if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Linux") add_subdirectory("third_party/zlib") add_subdirectory("third_party/sdl2") + add_subdirectory("third_party/sdlttf") else() find_package(ZLIB) find_package(SDL2) + find_package(SDL2TTF) endif() target_link_libraries(${EXECUTABLE_NAME} ${ZLIB_LIBRARIES}) @@ -348,6 +350,9 @@ target_include_directories(${EXECUTABLE_NAME} PRIVATE ${ZLIB_INCLUDE_DIRS}) target_link_libraries(${EXECUTABLE_NAME} ${SDL2_LIBRARIES}) target_include_directories(${EXECUTABLE_NAME} PRIVATE ${SDL2_INCLUDE_DIRS}) +target_link_libraries(${EXECUTABLE_NAME} ${SDL2TTF_LIBRARIES}) +target_include_directories(${EXECUTABLE_NAME} PRIVATE ${SDL2TTF_INCLUDE_DIRS}) + if(APPLE) if(IOS) install(TARGETS ${EXECUTABLE_NAME} DESTINATION "Payload") diff --git a/third_party/sdlttf/CMakeLists.txt b/third_party/sdlttf/CMakeLists.txt new file mode 100644 index 0000000..c7a8098 --- /dev/null +++ b/third_party/sdlttf/CMakeLists.txt @@ -0,0 +1,25 @@ +# Build static lib only +set(CMAKE_POSITION_INDEPENDENT_CODE OFF) +set(BUILD_SHARED_LIBS OFF) + + +if (ANDROID) + set(SDL_STATIC_PIC ON) +endif() + +include(FetchContent) + +FetchContent_Declare(sdl2ttf + GIT_REPOSITORY "https://github.com/libsdl-org/SDL_ttf" + GIT_TAG "release-2.20.1" +) + +FetchContent_GetProperties(sdl2ttf) +if (NOT sdl2ttf_POPULATED) + FetchContent_Populate(sdl2ttf) +endif() + +add_subdirectory(${sdl2ttf_SOURCE_DIR} ${sdl2ttf_BINARY_DIR} EXCLUDE_FROM_ALL) + +set(SDL2TTF_INCLUDE_DIRS ${sdl2_SOURCE_DIR} ${sdl2_BINARY_DIR} PARENT_SCOPE) +set(SDL2TTF_LIBRARIES SDL2_ttf::SDL2_ttf-static PARENT_SCOPE)