fix build error on building gcov mode
[platform/core/connectivity/bluetooth-agent.git] / pb-agent / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(bluetooth-pb-agent C CXX)
3
4 SET(SRCS bluetooth_pb_agent.c bluetooth_pb_vcard.c
5         ../include/bluetooth-agent-profile.c)
6
7 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
8
9 INCLUDE(FindPkgConfig)
10 pkg_check_modules(pkgs_pb_agent
11                 REQUIRED
12                 gio-2.0 dlog contacts-service2 tapi vconf capi-media-image-util libexif
13                 capi-system-info)
14
15 FOREACH(flag ${pkgs_pb_agent_CFLAGS})
16         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
17 ENDFOREACH(flag)
18 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror")
19
20 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
21 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_pb_agent_LDFLAGS})
22
23 IF (BUILD_GTESTS)
24         # -fvisibility option should be "default" to call internal functions
25         SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fvisibility=default -Werror -Wno-deprecated-declarations")
26
27         ADD_LIBRARY(pb-agent SHARED ${SRCS})
28         SET_TARGET_PROPERTIES(pb-agent
29                 PROPERTIES
30                 SOVERSION 0.1.0
31                 CLEAN_DIRECT_OUTPUT 1)
32
33         TARGET_LINK_LIBRARIES(pb-agent ${pkgs_pb_agent_LDFLAGS})
34
35         INSTALL(TARGETS pb-agent DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
36 ENDIF (BUILD_GTESTS)
37
38 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
39 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.bluez.pb_agent.service
40                 DESTINATION share/dbus-1/system-services)
41 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/bluetooth_pb_agent.conf DESTINATION /etc/dbus-1/system.d)