69 lines
1.5 KiB
CMake
Executable File
69 lines
1.5 KiB
CMake
Executable File
add_library(rublon-ssh
|
|
SHARED
|
|
pam.cpp
|
|
)
|
|
|
|
set_target_properties(rublon-ssh PROPERTIES PREFIX "")
|
|
set_target_properties(rublon-ssh PROPERTIES OUTPUT_NAME "pam_rublon")
|
|
|
|
target_compile_options(rublon-ssh
|
|
PUBLIC
|
|
-flto
|
|
)
|
|
|
|
target_link_options(rublon-ssh
|
|
PUBLIC
|
|
-fpic
|
|
-flto
|
|
)
|
|
|
|
target_include_directories(rublon-ssh
|
|
PUBLIC
|
|
SYSTEM ${rapidjson_SOURCE_DIR}/include
|
|
)
|
|
|
|
target_link_libraries(rublon-ssh
|
|
PUBLIC
|
|
rublon-ssh-ifc
|
|
websockets
|
|
-lssl
|
|
-lcrypto
|
|
)
|
|
|
|
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS_EQUAL 8.5)
|
|
target_link_libraries(rublon-ssh
|
|
PUBLIC
|
|
-lstdc++fs
|
|
)
|
|
endif()
|
|
|
|
execute_process (
|
|
COMMAND bash -c "awk -F= '/^ID=/{print $2}' /etc/os-release |tr -d '\n' | tr -d '\"'"
|
|
OUTPUT_VARIABLE outOS
|
|
)
|
|
|
|
if(${outOS} MATCHES "centos|rhel|alma|rocky" )
|
|
message(INFO " detected rhel base system")
|
|
set(_destination /usr/lib64/security/)
|
|
elseif(${outOS} MATCHES "opensuse-leap" )
|
|
message(INFO " detected suse base system")
|
|
set(_destination /lib64/security/)
|
|
elseif(${outOS} MATCHES "debian|ubuntu")
|
|
if(TARGET_ARCH STREQUAL "ARM64")
|
|
message(INFO " detected debian arm64 based system")
|
|
set(_destination /usr/lib/security/)
|
|
else()
|
|
message(INFO " detected debian based system")
|
|
set(_destination /usr/lib/x86_64-linux-gnu/security/)
|
|
endif()
|
|
endif()
|
|
|
|
install(
|
|
TARGETS
|
|
rublon-ssh
|
|
DESTINATION
|
|
${_destination}
|
|
COMPONENT
|
|
PAM
|
|
)
|