Add update notice and require release build secrets
All checks were successful
Release App / release-app (push) Successful in 58s

This commit is contained in:
2026-04-24 14:55:36 +03:00
parent 94fc240086
commit 5a5677a994
8 changed files with 153 additions and 11 deletions

View File

@@ -12,6 +12,8 @@ find_package(Git QUIET)
include(FetchContent)
option(TELEGRAM_TUI_USE_SYSTEM_TDLIB "Use an installed TDLib package instead of fetching it." OFF)
option(TELEGRAM_TUI_REQUIRE_BUILD_CREDENTIALS
"Fail configure if build credentials are not provided." OFF)
set(TELEGRAM_TUI_TDLIB_ROOT ""
CACHE PATH "Path to a prebuilt TDLib root containing include/ and lib/ directories.")
@@ -60,22 +62,46 @@ if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git")
set(TELEGRAM_TUI_BUILD_VERSION "${PROJECT_VERSION}+${TELEGRAM_TUI_GIT_DESCRIBE}")
endif()
endif()
if(TELEGRAM_TUI_APP_CONFIG_PATH AND EXISTS "${TELEGRAM_TUI_APP_CONFIG_PATH}")
if(DEFINED ENV{TELEGRAM_TUI_BUILD_API_ID} AND NOT "$ENV{TELEGRAM_TUI_BUILD_API_ID}" STREQUAL "")
set(TELEGRAM_TUI_BUILD_API_ID "$ENV{TELEGRAM_TUI_BUILD_API_ID}")
elseif(DEFINED ENV{TELEGRAM_API_ID} AND NOT "$ENV{TELEGRAM_API_ID}" STREQUAL "")
set(TELEGRAM_TUI_BUILD_API_ID "$ENV{TELEGRAM_API_ID}")
endif()
if(DEFINED ENV{TELEGRAM_TUI_BUILD_API_HASH} AND NOT "$ENV{TELEGRAM_TUI_BUILD_API_HASH}" STREQUAL "")
set(TELEGRAM_TUI_BUILD_API_HASH "$ENV{TELEGRAM_TUI_BUILD_API_HASH}")
elseif(DEFINED ENV{TELEGRAM_API_HASH} AND NOT "$ENV{TELEGRAM_API_HASH}" STREQUAL "")
set(TELEGRAM_TUI_BUILD_API_HASH "$ENV{TELEGRAM_API_HASH}")
endif()
if((TELEGRAM_TUI_BUILD_API_ID STREQUAL "" OR TELEGRAM_TUI_BUILD_API_HASH STREQUAL "") AND
TELEGRAM_TUI_APP_CONFIG_PATH AND EXISTS "${TELEGRAM_TUI_APP_CONFIG_PATH}")
file(READ "${TELEGRAM_TUI_APP_CONFIG_PATH}" TELEGRAM_TUI_APP_CONFIG_JSON)
string(REGEX MATCH "\"api_id\"[ \t\r\n]*:[ \t\r\n]*\"?([0-9]+)\"?"
TELEGRAM_TUI_APP_CONFIG_API_ID_MATCH "${TELEGRAM_TUI_APP_CONFIG_JSON}")
if(CMAKE_MATCH_1)
set(TELEGRAM_TUI_BUILD_API_ID "${CMAKE_MATCH_1}")
if(TELEGRAM_TUI_BUILD_API_ID STREQUAL "")
string(REGEX MATCH "\"api_id\"[ \t\r\n]*:[ \t\r\n]*\"?([0-9]+)\"?"
TELEGRAM_TUI_APP_CONFIG_API_ID_MATCH "${TELEGRAM_TUI_APP_CONFIG_JSON}")
if(CMAKE_MATCH_1)
set(TELEGRAM_TUI_BUILD_API_ID "${CMAKE_MATCH_1}")
endif()
endif()
string(REGEX MATCH "\"api_hash\"[ \t\r\n]*:[ \t\r\n]*\"([^\"]+)\""
TELEGRAM_TUI_APP_CONFIG_API_HASH_MATCH "${TELEGRAM_TUI_APP_CONFIG_JSON}")
if(CMAKE_MATCH_1)
set(TELEGRAM_TUI_BUILD_API_HASH "${CMAKE_MATCH_1}")
if(TELEGRAM_TUI_BUILD_API_HASH STREQUAL "")
string(REGEX MATCH "\"api_hash\"[ \t\r\n]*:[ \t\r\n]*\"([^\"]+)\""
TELEGRAM_TUI_APP_CONFIG_API_HASH_MATCH "${TELEGRAM_TUI_APP_CONFIG_JSON}")
if(CMAKE_MATCH_1)
set(TELEGRAM_TUI_BUILD_API_HASH "${CMAKE_MATCH_1}")
endif()
endif()
endif()
if(TELEGRAM_TUI_REQUIRE_BUILD_CREDENTIALS AND
(TELEGRAM_TUI_BUILD_API_ID STREQUAL "" OR TELEGRAM_TUI_BUILD_API_HASH STREQUAL ""))
message(FATAL_ERROR
"Build credentials are required. Set TELEGRAM_TUI_BUILD_API_ID and "
"TELEGRAM_TUI_BUILD_API_HASH (or TELEGRAM_API_ID/TELEGRAM_API_HASH).")
endif()
configure_file(
${CMAKE_SOURCE_DIR}/src/build_config.h.in
${CMAKE_CURRENT_BINARY_DIR}/build_config.h