17 lines
755 B
CMake
17 lines
755 B
CMake
cmake_minimum_required(VERSION 3.16)
|
|
file(STRINGS ${CMAKE_SOURCE_DIR}/VERSION DOOS_VERSION LIMIT_COUNT 1)
|
|
project(doos VERSION ${DOOS_VERSION} LANGUAGES CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
if(NOT CMAKE_BUILD_TYPE)
|
|
set(CMAKE_BUILD_TYPE Release)
|
|
endif()
|
|
|
|
add_executable(doos
|
|
src/main.cpp src/hardening.cpp src/idmap.cpp src/image.cpp src/cgroup.cpp src/cli.cpp src/container.cpp src/network.cpp src/sandbox.cpp src/util.cpp)
|
|
target_compile_options(doos PRIVATE -Wall -Wextra -Wpedantic -Werror -D_FORTIFY_SOURCE=3 -fstack-protector-strong -O2)
|
|
target_link_options(doos PRIVATE -Wl,-z,relro -Wl,-z,now)
|
|
target_compile_definitions(doos PRIVATE DOOS_VERSION="${DOOS_VERSION}")
|
|
install(TARGETS doos RUNTIME DESTINATION bin)
|