Use manual TDLib bundle for app releases
Some checks failed
Release App / release-app (push) Has been cancelled

This commit is contained in:
2026-04-24 14:25:10 +03:00
parent 48d1aae186
commit e5ae44cb3a
4 changed files with 91 additions and 7 deletions

View File

@@ -11,6 +11,8 @@ find_program(CLANG_FORMAT_BIN clang-format)
include(FetchContent)
option(TELEGRAM_TUI_USE_SYSTEM_TDLIB "Use an installed TDLib package instead of fetching it." OFF)
set(TELEGRAM_TUI_TDLIB_ROOT ""
CACHE PATH "Path to a prebuilt TDLib root containing include/ and lib/ directories.")
set(CURSES_NEED_WIDE TRUE)
find_package(Curses REQUIRED)
@@ -46,7 +48,27 @@ configure_file(
@ONLY
)
if(TELEGRAM_TUI_USE_SYSTEM_TDLIB)
if(TELEGRAM_TUI_TDLIB_ROOT)
find_path(TELEGRAM_TUI_TDLIB_INCLUDE_DIR
NAMES td/telegram/td_json_client.h
PATHS "${TELEGRAM_TUI_TDLIB_ROOT}/include"
NO_DEFAULT_PATH
REQUIRED
)
find_library(TELEGRAM_TUI_TDLIB_LIBRARY
NAMES tdjson libtdjson.so
PATHS "${TELEGRAM_TUI_TDLIB_ROOT}/lib"
NO_DEFAULT_PATH
REQUIRED
)
add_library(TdJsonPrebuilt SHARED IMPORTED GLOBAL)
set_target_properties(TdJsonPrebuilt PROPERTIES
IMPORTED_LOCATION "${TELEGRAM_TUI_TDLIB_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${TELEGRAM_TUI_TDLIB_INCLUDE_DIR}"
)
add_library(Td::TdJson ALIAS TdJsonPrebuilt)
elseif(TELEGRAM_TUI_USE_SYSTEM_TDLIB)
find_package(Td REQUIRED)
else()
set(TD_ENABLE_JNI OFF CACHE BOOL "" FORCE)