CMakeLists.txt (377e76abd1f1deb498e8495c61fb160675584eec) | CMakeLists.txt (421f9900c1b1d7ef81a0289c47ed3121e6377b40) |
---|---|
1# Copyright (c) Benjamin Kietzman (github.com/bkietz) 2# 3# Distributed under the Boost Software License, Version 1.0. (See accompanying 4# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 6set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH}) 7 8############### 9# CMake options 10cmake_minimum_required(VERSION 2.8) 11 12set(CMAKE_CXX_STANDARD 14) 13set(CMAKE_CXX_STANDARD_REQUIRED ON) 14 | 1# Copyright (c) Benjamin Kietzman (github.com/bkietz) 2# 3# Distributed under the Boost Software License, Version 1.0. (See accompanying 4# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 6set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH}) 7 8############### 9# CMake options 10cmake_minimum_required(VERSION 2.8) 11 12set(CMAKE_CXX_STANDARD 14) 13set(CMAKE_CXX_STANDARD_REQUIRED ON) 14 |
15 16#SET(HUNTER_STATUS_DEBUG ON) | |
17option(HUNTER_ENABLED "Enable hunter package pulling" OFF) 18 19include("cmake/HunterGate.cmake") 20HunterGate( 21 URL "https://github.com/ruslo/hunter/archive/v0.18.64.tar.gz" 22 SHA1 "baf9c8cc4f65306f0e442b5419967b4c4c04589a" 23) 24 25project(boost-dbus CXX) 26 27############### 28# C++ options | 15option(HUNTER_ENABLED "Enable hunter package pulling" OFF) 16 17include("cmake/HunterGate.cmake") 18HunterGate( 19 URL "https://github.com/ruslo/hunter/archive/v0.18.64.tar.gz" 20 SHA1 "baf9c8cc4f65306f0e442b5419967b4c4c04589a" 21) 22 23project(boost-dbus CXX) 24 25############### 26# C++ options |
29set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")#-std=c++0x") | 27set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") |
30include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) 31include_directories(${CMAKE_CURRENT_SOURCE_DIR}/test) 32 33############### 34# import Boost 35add_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY) 36add_definitions(-DBOOST_SYSTEM_NO_DEPRECATED) 37add_definitions(-DBOOST_ALL_NO_LIB) --- 6 unchanged lines hidden (view full) --- 44link_directories(${Boost_LIBRARY_DIRS}) 45 46############### 47# import D-Bus 48hunter_add_package(dbus) 49find_package(dbus REQUIRED) # Include functions provided by PkgConfig module. 50include_directories(${DBUS_INCLUDE_DIRS}) 51 | 28include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) 29include_directories(${CMAKE_CURRENT_SOURCE_DIR}/test) 30 31############### 32# import Boost 33add_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY) 34add_definitions(-DBOOST_SYSTEM_NO_DEPRECATED) 35add_definitions(-DBOOST_ALL_NO_LIB) --- 6 unchanged lines hidden (view full) --- 42link_directories(${Boost_LIBRARY_DIRS}) 43 44############### 45# import D-Bus 46hunter_add_package(dbus) 47find_package(dbus REQUIRED) # Include functions provided by PkgConfig module. 48include_directories(${DBUS_INCLUDE_DIRS}) 49 |
52 | |
53hunter_add_package(pthread-stubs) 54find_package (Threads) 55 56############## | 50hunter_add_package(pthread-stubs) 51find_package (Threads) 52 53############## |
57# import GTest 58hunter_add_package(GTest) 59find_package(GTest REQUIRED) 60include_directories(${GTEST_INCLUDE_DIRS}) | 54# Install 55add_library(boost-dbus INTERFACE) 56target_include_directories(boost-dbus INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include ${DBUS_INCLUDE_DIRS}) 57target_link_libraries(boost-dbus INTERFACE ${DBUS_LIBRARIES}) 58install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include DESTINATION include) |
61 | 59 |
62 63 | |
64############## 65# Tests 66enable_testing() 67 | 60############## 61# Tests 62enable_testing() 63 |
68 | |
69add_executable(dbustests "test/avahi.cpp" "test/message.cpp" "test/error.cpp" "test/dbusPropertiesServer.cpp") | 64add_executable(dbustests "test/avahi.cpp" "test/message.cpp" "test/error.cpp" "test/dbusPropertiesServer.cpp") |
70target_link_libraries(dbustests ${Boost_LIBRARIES}) 71target_link_libraries(dbustests ${DBUS_LIBRARIES}) | |
72 | 65 |
66############## 67# import GTest 68hunter_add_package(GTest) 69find_package(GTest REQUIRED) 70include_directories(${GTEST_INCLUDE_DIRS}) 71 |
|
73if (${HUNTER_ENABLED}) 74 find_package(GMock CONFIG REQUIRED) 75 target_link_libraries(dbustests GMock::main) 76else() 77 find_package(GMock REQUIRED) 78 target_link_libraries(dbustests ${GTEST_BOTH_LIBRARIES} gmock) 79endif() 80target_link_libraries(dbustests ${CMAKE_THREAD_LIBS_INIT}) 81add_test(dbustests dbustests "--gtest_output=xml:${test_name}.xml") 82 | 72if (${HUNTER_ENABLED}) 73 find_package(GMock CONFIG REQUIRED) 74 target_link_libraries(dbustests GMock::main) 75else() 76 find_package(GMock REQUIRED) 77 target_link_libraries(dbustests ${GTEST_BOTH_LIBRARIES} gmock) 78endif() 79target_link_libraries(dbustests ${CMAKE_THREAD_LIBS_INIT}) 80add_test(dbustests dbustests "--gtest_output=xml:${test_name}.xml") 81 |
83############## 84# Install 85Add_library(boost-dbus INTERFACE) 86target_include_directories(boost-dbus INTERFACE include/) 87install(DIRECTORY include/ DESTINATION include) 88 | 82target_link_libraries(dbustests boost-dbus) |