xref: /openbmc/boost-dbus/CMakeLists.txt (revision 5d4bd2bd7ff12a2c2971d27dd907e86a541761f1)
191cdbe46SBenjamin Kietzman# Copyright (c) Benjamin Kietzman (github.com/bkietz)
291cdbe46SBenjamin Kietzman#
391cdbe46SBenjamin Kietzman# Distributed under the Boost Software License, Version 1.0. (See accompanying
491cdbe46SBenjamin Kietzman# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
591cdbe46SBenjamin Kietzman
6f677d0ebSRobin McCorkellproject(boost-dbus CXX)
7fc79e461SBenjamin Kietzman
8da3eeb6aSEd Tanousset(CMAKE_CXX_STANDARD 14)
9da3eeb6aSEd Tanousset(CMAKE_CXX_STANDARD_REQUIRED ON)
10da3eeb6aSEd Tanous
11fc79e461SBenjamin Kietzman###############
12fc79e461SBenjamin Kietzman# CMake options
13fc79e461SBenjamin Kietzmancmake_minimum_required(VERSION 2.8)
14fc79e461SBenjamin Kietzman
15fc79e461SBenjamin Kietzman###############
16fc79e461SBenjamin Kietzman# C++ options
17b2c2467dSBenjamin Kietzmanset(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")#-std=c++0x")
18b6e8327aSEd Tanousinclude_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
19b6e8327aSEd Tanousinclude_directories(${CMAKE_CURRENT_SOURCE_DIR}/test)
20fc79e461SBenjamin Kietzman
21fc79e461SBenjamin Kietzman###############
22fc79e461SBenjamin Kietzman# import Boost
23*5d4bd2bdSEd Tanousadd_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY)
24*5d4bd2bdSEd Tanousadd_definitions(-DBOOST_SYSTEM_NO_DEPRECATED)
25*5d4bd2bdSEd Tanousadd_definitions(-DBOOST_ALL_NO_LIB)
26b6e8327aSEd Tanousfind_package(Boost REQUIRED)
27*5d4bd2bdSEd Tanous
28fc79e461SBenjamin Kietzmaninclude_directories(${Boost_INCLUDE_DIRS})
29fc79e461SBenjamin Kietzmanlink_directories(${Boost_LIBRARY_DIRS})
30fc79e461SBenjamin Kietzman
31fc79e461SBenjamin Kietzman###############
32fc79e461SBenjamin Kietzman# import D-Bus
33a83e5951SBenjamin Kietzmanfind_package(PkgConfig REQUIRED)
34fc79e461SBenjamin Kietzmanpkg_check_modules(DBus dbus-1)
35fc79e461SBenjamin Kietzmaninclude_directories(${DBus_INCLUDE_DIRS})
36fc79e461SBenjamin Kietzmanlink_directories(${DBus_LIBRARY_DIRS})
37fc79e461SBenjamin Kietzman
38fc79e461SBenjamin Kietzman##############
39a83e5951SBenjamin Kietzman# import GTest
40a83e5951SBenjamin Kietzmanfind_package(GTest REQUIRED)
41a83e5951SBenjamin Kietzmaninclude_directories(${GTEST_INCLUDE_DIRS})
42a83e5951SBenjamin Kietzman
43a83e5951SBenjamin Kietzman##############
44a83e5951SBenjamin Kietzman# Tests
453b5db5bcSBenjamin Kietzmanenable_testing()
463b5db5bcSBenjamin Kietzman
47a83e5951SBenjamin Kietzman
48da3eeb6aSEd Tanousadd_executable(dbustests "test/avahi.cpp" "test/message.cpp")
49da3eeb6aSEd Tanoustarget_link_libraries(dbustests ${Boost_LIBRARIES})
50da3eeb6aSEd Tanoustarget_link_libraries(dbustests ${DBus_LIBRARIES})
51b6e8327aSEd Tanoustarget_link_libraries(dbustests ${GTEST_BOTH_LIBRARIES} gmock)
52*5d4bd2bdSEd Tanoustarget_link_libraries(dbustests pthread)
53da3eeb6aSEd Tanousadd_test(dbustests dbustests "--gtest_output=xml:${test_name}.xml")
54da3eeb6aSEd Tanous
55