cmake_minimum_required(VERSION 3.9.1) project(flippr-driver) set(CMAKE_BUILD_TYPE Debug) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") # enable C++11 standard set(CMAKE_BINARY_DIR ${CMAKE_SOURCE_DIR}/bin) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}) set(SOURCE_DIR ../src) set(LIB_DIR ${SOURCE_DIR}/lib) set(EASYLOGGING_INCLUDE_DIR ${LIB_DIR}/easylogging) add_library(Easylogging STATIC ${EASYLOGGING_INCLUDE_DIR}/easylogging++.cc) include_directories(${EASYLOGGING_INCLUDE_DIR}) add_library(libwiringPi SHARED IMPORTED ) set_property(TARGET libwiringPi PROPERTY IMPORTED_LOCATION ${LIB_DIR}/libwiringPi.so.2.44) set_property(TARGET libwiringPi PROPERTY INTERFACE_INCLUDE_DIRECTORIES /home/rhetenor/FlippR/flippr-code/FlippR-Driver/src/lib/wiringPi) find_package(Threads) find_package(Boost) include_directories(${SOURCE_DIR}/input) include_directories(${SOURCE_DIR}/output) include_directories(${SOURCE_DIR}/lib) include_directories(${SOURCE_DIR}/utilities) file(GLOB SOURCES ${SOURCE_DIR}/*/*.?pp) add_library(flippr_driver STATIC ${SOURCES}) target_link_libraries(flippr_driver libwiringPi) target_link_libraries(flippr_driver Easylogging) # enable_testing(TRUE) # # Prepare "Catch" library for other executables # set(CATCH_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../src/tests) # add_library(Catch INTERFACE) # target_include_directories(Catch INTERFACE ${CATCH_INCLUDE_DIR}/*) # # Make test executable # set(TEST_SOURCES ${SOURCE_DIR}/../tests) # include_directories(${TEST_SOURCES}) # # file(GLOB SOURCES ${TEST_SOURCES}/*/*.cpp) # file(GLOB HEADER_SOURCES ${TEST_SOURCES}/*/*.hpp) # # add_executable(tests ${SOURCES} ${HEADER_SOURCES}) # # target_link_libraries(tests Easylogging) # target_link_libraries(tests flippr_driver) # target_link_libraries(tests Catch)