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/error.hpp ${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/error_handler.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/PUSH.hpp ${CMAKE_CURRENT_SOURCE_DIR}/include/rublon/method/phone_call.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/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_WITH_HTTP2 OFF) set(LWS_WITH_HTTP_BASIC_AUTH 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(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) 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.3.zip URL_HASH MD5=96ad80a3283825a9af6a2d9d1acbd132 ) FetchContent_MakeAvailable(libwebsockets) FetchContent_Declare( RapidJSON URL https://github.com/Tencent/rapidjson/archive/refs/tags/v1.1.0.zip URL_HASH MD5=ceb1cf16e693a3170c173dc040a9d2bd ) 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()