cmake_minimum_required(VERSION 3.9) project(skill_cpp_common) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -pedantic -fPIC") ################################ # Build common lib ################################ file(GLOB_RECURSE SOURCE_FILES LIST_DIRECTORIES false skill/*.cpp) # The resulting library to be used by generated code ADD_LIBRARY(skill_cpp_common STATIC ${SOURCE_FILES}) ################################ # GTest ################################ ADD_SUBDIRECTORY(lib/gtest) enable_testing() include_directories(${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR}) ################################ # OpenMP ################################ find_package(OpenMP) if (OPENMP_FOUND) set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") endif() ################################ # Unit Tests ################################ file(GLOB_RECURSE TEST_FILES LIST_DIRECTORIES false test/*.cpp) add_executable(runTests ${SOURCE_FILES} ${TEST_FILES}) # Link test executable against gtest & gtest_main target_link_libraries(runTests gtest gtest_main) add_test(runTests runTests) set_property(TARGET runTests PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)