cmake_minimum_required(VERSION 3.5)
|
|
# set the project name and version
|
project(B_BUS VERSION 2.2)
|
|
# specify the C++ standard
|
set(CMAKE_CXX_STANDARD 14)
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
|
if(CMAKE_GENERATOR MATCHES "Ninja")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-color=always")
|
endif()
|
# control where the static and shared libraries are built so that on windows
|
# we don't need to tinker with the path to run the executable
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib")
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib")
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin")
|
|
option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
|
|
include_directories(${PROJECT_SOURCE_DIR}/include)
|
|
add_subdirectory(${PROJECT_SOURCE_DIR}/src)
|
add_subdirectory(${PROJECT_SOURCE_DIR}/utest)
|