44 lines
1.2 KiB
CMake
44 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 3.0)
|
|
|
|
if ("${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}")
|
|
message(FATAL_ERROR "In-source builds are disabled.
|
|
Please create a subfolder called build and use `cmake ..` inside it.
|
|
NOTE: cmake will now create CMakeCache.txt and CMakeFiles/*.
|
|
You must delete them, or cmake will refuse to work.")
|
|
endif()
|
|
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "bin" "doc" "CMakeFiles" "lib" "include")
|
|
|
|
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
|
#set(CMAKE_CXX_COMPILER "clang++")
|
|
|
|
set(CMAKE_C_COMPILER "clang")
|
|
set(CMAKE_CXX_COMPILER "clang++")
|
|
|
|
project(Shared_Memory)
|
|
set(CMAKE_CXX_STANDARD 14)
|
|
|
|
file(GLOB_RECURSE SOURCES src/*.cpp)
|
|
file(GLOB_RECURSE HEADERS src/*.hpp)
|
|
file(GLOB_RECURSE TESTS test/*.cpp)
|
|
|
|
set(LIB_PATH "${CMAKE_SOURCE_DIR}/../library")
|
|
|
|
include_directories(${LIB_PATH}/include)
|
|
add_executable(SharedMemory ${SOURCES} ${HEADERS} main/main.cpp)
|
|
|
|
|
|
target_link_libraries(SharedMemory ${LIB_PATH}/lib/liblibrary.a)
|
|
|
|
|
|
enable_testing()
|
|
find_package(Catch2 REQUIRED)
|
|
add_executable(UnitTests ${SOURCES} ${HEADERS} ${TESTS})
|
|
target_link_libraries(UnitTests Catch2::Catch2)
|
|
|
|
include(CTest)
|
|
include(Catch)
|
|
catch_discover_tests(UnitTests)
|
|
|
|
#toml
|
|
include_directories(lib/toml)
|