| | |
| | | cmake_minimum_required(VERSION 3.5) |
| | | |
| | | # set the project name and version |
| | | project(B_BUS VERSION 2.2) |
| | | project(BHomeBus VERSION 1.0) |
| | | |
| | | # specify the C++ standard |
| | | set(CMAKE_CXX_STANDARD 14) |
| | | set(CMAKE_CXX_STANDARD_REQUIRED True) |
| | | include(cmake_options.cmake) |
| | | |
| | | 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) |
| | | #option(BUILD_SHARED_LIBS "Build using shared libraries" ON) |
| | | #option(BUILD_STATIC_LIBS "Build using static libraries" ON) |
| | | |
| | | include_directories(${PROJECT_SOURCE_DIR}/include) |
| | | add_subdirectory(${PROJECT_SOURCE_DIR}/proto/cpp proto) |
| | | include_directories(${CMAKE_CURRENT_BINARY_DIR}/proto) |
| | | |
| | | add_subdirectory(${PROJECT_SOURCE_DIR}/src) |
| | | add_subdirectory(${PROJECT_SOURCE_DIR}/utest) |
| | | |