-
Notifications
You must be signed in to change notification settings - Fork 11
/
CMakeLists.txt
29 lines (21 loc) · 922 Bytes
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
cmake_minimum_required (VERSION 3.5.1)
project(nexus)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/")
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
add_subdirectory(dependency)
add_library(address-sanitizer INTERFACE)
target_compile_options(address-sanitizer INTERFACE "-fsanitize=address,undefined")
target_link_libraries(address-sanitizer INTERFACE "-fsanitize=address,undefined")
add_library(thread-sanitizer INTERFACE)
target_compile_options(thread-sanitizer INTERFACE "-fsanitize=thread")
target_link_libraries(thread-sanitizer INTERFACE "-fsanitize=thread")
add_library(nexus-headers INTERFACE)
target_include_directories(nexus-headers INTERFACE include)
target_link_libraries(nexus-headers INTERFACE asio)
install(DIRECTORY include/nexus DESTINATION include)
add_subdirectory(examples)
add_subdirectory(src)
enable_testing()
add_subdirectory(test)