147 lines
5.0 KiB
CMake
Executable File
147 lines
5.0 KiB
CMake
Executable File
include(FetchContent)
|
|
|
|
set(INC
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/authentication_step_interface.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/bits.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/check_application.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/configuration.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/core_handler.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/core_handler_interface.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/curl.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/ws_http.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/error_handler.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/error.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/finish.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/init.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/json.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/memory.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/EMAIL.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/method_select.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/OTP.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/passcode_based_auth.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/phone_call.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/PUSH.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/SMS.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/SmsLink.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/websocket_based_auth.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/YOTP.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/non_owning_ptr.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/pam_action.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/pam.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/pam_stub.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/rublon.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/session.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/sign.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/static_string.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/std_experimental.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/std.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/stdlib.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/utils.hpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/websockets.hpp
|
|
)
|
|
|
|
add_library(rublon-ssh-ifc
|
|
INTERFACE
|
|
)
|
|
|
|
if(${CMAKE_VERSION} VERSION_GREATER "3.19.0")
|
|
# need to be here to show up in the IDE
|
|
add_library(rublon-ssh_ide INTERFACE ${INC})
|
|
endif()
|
|
|
|
target_include_directories(rublon-ssh-ifc
|
|
INTERFACE
|
|
extern
|
|
${CMAKE_CURRENT_LIST_DIR}/include
|
|
)
|
|
|
|
install(
|
|
FILES
|
|
${INC}
|
|
DESTINATION
|
|
${CMAKE_INSTALL_INCLUDEDIR}/rublon
|
|
COMPONENT
|
|
PAM-DEV
|
|
)
|
|
|
|
set(LWS_STATIC_PIC ON)
|
|
set(LWS_WITH_SHARED OFF)
|
|
|
|
set(LWS_ROLE_RAW_FILE OFF)
|
|
set(LWS_ROLE_DBUS OFF)
|
|
|
|
set(LWS_WITHOUT_DAEMONIZE ON)
|
|
set(LWS_WITHOUT_SERVER ON)
|
|
set(LWS_WITHOUT_TESTAPPS ON)
|
|
set(LWS_WITHOUT_TEST_CLIENT ON)
|
|
set(LWS_WITHOUT_TEST_PING ON)
|
|
set(LWS_WITHOUT_TEST_SERVER ON)
|
|
set(LWS_WITHOUT_TEST_SERVER_EXTPOLL ON)
|
|
|
|
set(LWS_UNIX_SOCK OFF)
|
|
set(LWS_WITH_DIR OFF)
|
|
set(LWS_WITH_FILE_OPS OFF)
|
|
set(LWS_FOR_GITOHASHI OFF)
|
|
set(LWS_WITH_HTTP2 OFF)
|
|
set(LWS_WITH_HTTP_BASIC_AUTH OFF)
|
|
set(LWS_WITH_HTTP_DIGEST_AUTH OFF)
|
|
set(LWS_WITH_HTTP_UNCOMMON_HEADERS OFF)
|
|
set(LWS_WITH_SYS_STATE OFF)
|
|
set(LWS_WITH_SYS_SMD OFF)
|
|
|
|
set(LWS_WITH_JPEG OFF)
|
|
set(LWS_WITH_JSONRPC OFF)
|
|
set(LWS_WITH_LEJP OFF)
|
|
set(LWS_WITH_LEJP_CONF OFF)
|
|
set(LWS_WITH_CONMON OFF)
|
|
set(LWS_WITH_CACHE_NSCOOKIEJAR OFF)
|
|
set(LWS_WITH_CBOR OFF)
|
|
set(LWS_WITH_CBOR_FLOAT OFF)
|
|
set(LWS_WITH_GZINFLATE OFF)
|
|
set(LWS_WITH_SECURE_STREAMS OFF)
|
|
set(LWS_WITH_WOL OFF)
|
|
set(LWS_WITH_UPNG OFF)
|
|
set(LWS_WITH_UDP OFF)
|
|
set(LWS_WITH_HTTP_STREAM_COMPRESSION OFF)
|
|
set(LWS_WITH_HTTP_BROTLI OFF)
|
|
set(LWS_WITH_ZLIB OFF)
|
|
set(LWS_WITH_SEQUENCER OFF)
|
|
set(LWS_WITH_LWSAC OFF)
|
|
|
|
set(RAPIDJSON_BUILD_DOC OFF CACHE BOOL "" FORCE)
|
|
set(RAPIDJSON_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
|
set(RAPIDJSON_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
|
set(RAPIDJSON_BUILD_CXX17 ON CACHE BOOL "" FORCE)
|
|
set(RAPIDJSON_HAS_STDSTRING OFF)
|
|
|
|
cmake_policy(SET CMP0077 NEW)
|
|
|
|
if(${CMAKE_VERSION} VERSION_GREATER "3.23.0")
|
|
cmake_policy(SET CMP0135 NEW)
|
|
endif()
|
|
|
|
FetchContent_Declare(
|
|
libwebsockets
|
|
URL https://github.com/warmcat/libwebsockets/archive/refs/tags/v4.3.6.zip
|
|
URL_HASH MD5=1b57fde90182c8fea21a9f96df0b53eb
|
|
)
|
|
|
|
FetchContent_MakeAvailable(libwebsockets)
|
|
FetchContent_Declare(
|
|
RapidJSON
|
|
URL https://github.com/jcelerier/rapidjson/archive/refs/tags/v1.2.1.zip
|
|
URL_HASH MD5=54d53169cbd2c290076677627779636d
|
|
)
|
|
|
|
if(NOT RapidJSON_POPULATED)
|
|
FetchContent_Populate(RapidJSON)
|
|
add_subdirectory(${rapidjson_SOURCE_DIR} ${rapidjson_BINARY_DIR})
|
|
endif()
|
|
|
|
add_subdirectory(lib)
|
|
add_subdirectory(bin)
|
|
|
|
# if(${ENABLE_TESTS}):
|
|
# add_subdirectory(tests)
|
|
# endif()
|