26 lines
908 B
CMake
26 lines
908 B
CMake
cmake_minimum_required(VERSION 3.15)
|
|
project(pam_usercontainer LANGUAGES CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
|
|
|
add_library(pam_usercontainer SHARED src/pam_module.cpp src/auth_client.cpp)
|
|
set_target_properties(pam_usercontainer PROPERTIES
|
|
OUTPUT_NAME "pam_usercontainer"
|
|
PREFIX ""
|
|
)
|
|
target_compile_options(pam_usercontainer PRIVATE
|
|
$<$<CXX_COMPILER_ID:GNU>:-Wall -Wextra>
|
|
$<$<CXX_COMPILER_ID:Clang>:-Wall -Wextra>
|
|
)
|
|
target_include_directories(pam_usercontainer PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include)
|
|
|
|
# Link to Rust staticlib
|
|
add_dependencies(pam_usercontainer rust_backend_build)
|
|
set(RUST_STATICLIB "${CMAKE_BINARY_DIR}/rust-backend/target/release/librust_backend.a")
|
|
target_link_libraries(pam_usercontainer PRIVATE ${RUST_STATICLIB})
|
|
|
|
# Install target
|
|
install(TARGETS pam_usercontainer DESTINATION lib/security)
|