Add the base code for gtest verification
[platform/core/connectivity/bluetooth-agent.git] / ag-agent / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(bluetooth-ag-agent C CXX)
3
4 SET(SRCS bluetooth-ag-agent.c
5                         bluetooth-ag-handler.c
6                         bluetooth-ag-manager.c
7                         ../include/bluetooth-agent-profile.c)
8
9 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
10
11 SET(PKG_MODULES
12         dlog
13         vconf
14         appsvc
15         contacts-service2
16         tapi
17         capi-appfw-application
18         aul
19         capi-system-info
20         dbus-1
21         glib-2.0
22         gio-2.0
23         gio-unix-2.0
24 )
25
26 INCLUDE(FindPkgConfig)
27 pkg_check_modules(pkgs_ag_agent REQUIRED ${PKG_MODULES})
28
29 FOREACH(flag ${pkgs_ag_agent_CFLAGS})
30         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
31 ENDFOREACH(flag)
32
33 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror")
34
35 SET(APP_SYSCONFDIR /var/lib/bluetooth)
36
37 ADD_DEFINITIONS("-DAPP_SYSCONFDIR=\"${APP_SYSCONFDIR}\"")
38
39 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
40 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_ag_agent_LDFLAGS})
41
42 IF (BUILD_GTESTS)
43 # -fvisibility option should be "default" to call internal functions
44 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fvisibility=default -fPIC -Werror -Wno-deprecated-declarations -fprofile-arcs -ftest-coverage")
45
46 ADD_LIBRARY(ag-agent SHARED ${SRCS})
47 SET_TARGET_PROPERTIES(ag-agent
48         PROPERTIES
49         SOVERSION 0.1.0
50         CLEAN_DIRECT_OUTPUT 1)
51
52 TARGET_LINK_LIBRARIES(ag-agent ${pkgs_ag_agent_LDFLAGS} -lgcov)
53
54 INSTALL(TARGETS ag-agent DESTINATION lib COMPONENT RuntimeLibraries)
55 ENDIF (BUILD_GTESTS)
56
57 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
58 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.bluez.ag_agent.service
59                 DESTINATION share/dbus-1/system-services)
60
61 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/voice-recognition-blacklist
62                 DESTINATION /var/lib/bluetooth/)
63
64 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/bluetooth-ag-agent.conf.in ${CMAKE_CURRENT_SOURCE_DIR}/bluetooth-ag-agent.conf)
65 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/bluetooth-ag-agent.conf DESTINATION /etc/dbus-1/system.d)