mirror of
https://github.com/ton-blockchain/ton
synced 2025-02-12 11:12:16 +00:00
* Bugfixes in TVM and node * Upgrade to C++17 * Improve GitHub builds * Fix existing tests and partially integrate them into builds --------- Co-authored-by: neodiX42 <namlem@gmail.com> Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
49 lines
1.5 KiB
CMake
49 lines
1.5 KiB
CMake
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
|
|
|
|
if (NOT OPENSSL_FOUND)
|
|
find_package(OpenSSL REQUIRED)
|
|
endif()
|
|
|
|
set(TERMINAL_SOURCE
|
|
terminal.cpp
|
|
|
|
terminal.h
|
|
terminal.hpp
|
|
)
|
|
|
|
add_library(terminal STATIC ${TERMINAL_SOURCE})
|
|
target_include_directories(terminal PUBLIC
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>/..
|
|
${OPENSSL_INCLUDE_DIR}
|
|
)
|
|
target_link_libraries(terminal PRIVATE tdutils tdactor )
|
|
|
|
if (NOT READLINE_FOUND)
|
|
find_package(Readline)
|
|
endif()
|
|
if (NOT READLINE_FOUND)
|
|
message(STATUS "Could NOT find Readline (this is NOT an error)")
|
|
else()
|
|
message(STATUS "Found Readline: ${READLINE_INCLUDE_DIR} ${READLINE_LIBRARY}")
|
|
if (NOT USABLE_READLINE_FOUND)
|
|
set(CMAKE_REQUIRED_INCLUDES "${READLINE_INCLUDE_DIR}")
|
|
set(CMAKE_REQUIRED_LIBRARIES "${READLINE_LIBRARY}")
|
|
include(CheckCXXSourceCompiles)
|
|
unset(USABLE_READLINE_FOUND CACHE)
|
|
check_cxx_source_compiles("#include <stdio.h>\n#include <readline/readline.h>\nint main() { rl_free(0); }" USABLE_READLINE_FOUND)
|
|
if (NOT USABLE_READLINE_FOUND)
|
|
message(STATUS "Found Readline is too old, ignore it (this is NOT an error)")
|
|
unset(READLINE_INCLUDE_DIR CACHE)
|
|
unset(READLINE_LIBRARY CACHE)
|
|
endif()
|
|
endif()
|
|
if (USABLE_READLINE_FOUND)
|
|
target_link_libraries(terminal PRIVATE ${READLINE_LIBRARY})
|
|
target_include_directories(terminal SYSTEM PRIVATE ${READLINE_INCLUDE_DIR})
|
|
target_compile_definitions(terminal PRIVATE -DUSE_READLINE=1)
|
|
endif()
|
|
endif()
|
|
|
|
|
|
|