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)