* Add phone call authentication method * Remove dynamic mem allocation from error handler * Add more error handling code * Move error handling to different file * Remove Socket IO dependency * cleanup in websocket code * Add rapidjson as cmake dependency * Added Dockerfiles as primary build system for packages * Changed policy in CMakeList to work with lower version of CMake * Fix opensuse builds * Link filesystem library in gcc 8.5 or older
70 lines
2.0 KiB
CMake
Executable File
70 lines
2.0 KiB
CMake
Executable File
cmake_minimum_required(VERSION 3.5)
|
|
|
|
project(rublon-ssh LANGUAGES CXX)
|
|
|
|
include(CTest)
|
|
include(GNUInstallDirs)
|
|
|
|
set(PROJECT_VERSION_MAJOR 2)
|
|
set(PROJECT_VERSION_MINOR 1)
|
|
set(PROJECT_VERSION_PATCH 0)
|
|
set(RUBLON_VERSION_STRING "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}")
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED YES)
|
|
set(CMAKE_CXX_EXTENSIONS NO)
|
|
set(CMAKE_POSITION_INDEPENDENT_CODE YES)
|
|
|
|
add_compile_options(-Wall -Wextra -Wno-format-security)
|
|
|
|
add_compile_definitions(RUBLON_VERSION_STRING="${RUBLON_VERSION_STRING}")
|
|
|
|
option(ENABLE_TESTS "Enable tests" OFF)
|
|
add_custom_target(CONFIG_IDE SOURCES ${CMAKE_CURRENT_LIST_DIR}/rsc/rublon.config.defaults)
|
|
add_custom_target(INSTSCRIPTS_IDE SUORCES ${CMAKE_CURRENT_LIST_DIR}/service/helpers/postinst)
|
|
|
|
execute_process (
|
|
COMMAND bash -c "awk -F= '/^ID=/{print $2}' /etc/os-release |tr -d '\n' | tr -d '\"'"
|
|
OUTPUT_VARIABLE outOS
|
|
)
|
|
install(
|
|
FILES
|
|
${CMAKE_CURRENT_LIST_DIR}/rsc/rublon.config.defaults
|
|
${CMAKE_CURRENT_LIST_DIR}/service/01-rublon-ssh_pubkey.conf.default
|
|
${CMAKE_CURRENT_LIST_DIR}/service/01-rublon-ssh.conf.default
|
|
DESTINATION
|
|
share/rublon
|
|
COMPONENT
|
|
PAM
|
|
PERMISSIONS
|
|
OWNER_READ
|
|
OWNER_WRITE
|
|
GROUP_READ
|
|
)
|
|
|
|
if (NOT ${outOS} MATCHES "ubuntu" OR NOT ${outOS} MATCHES "debian" OR NOT ${outOS} MATCHES "FREEBSD")
|
|
install(
|
|
FILES
|
|
${CMAKE_CURRENT_LIST_DIR}/service/login_rublon.mod
|
|
${CMAKE_CURRENT_LIST_DIR}/service/login_rublon.pp
|
|
${CMAKE_CURRENT_LIST_DIR}/service/login_rublon.te
|
|
${CMAKE_CURRENT_LIST_DIR}/service/pam_service.txt
|
|
${CMAKE_CURRENT_LIST_DIR}/service/rublon_veritas
|
|
DESTINATION
|
|
share/rublon
|
|
COMPONENT
|
|
PAM
|
|
PERMISSIONS
|
|
OWNER_READ
|
|
OWNER_WRITE
|
|
GROUP_READ
|
|
)
|
|
endif()
|
|
|
|
if (${ENABLE_TESTS})
|
|
enable_testing()
|
|
endif()
|
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/PAM/ssh)
|
|
include(${CMAKE_CURRENT_LIST_DIR}/pack.cmake)
|