Fix bt-service crash issue in testhub
[platform/core/connectivity/bluetooth-frwk.git] / bt-core / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(bt-core C)
3
4 SET(SRCS
5 ../include/bt-internal-types.c
6 bt-core-main.c
7 bt-core-adapter.c
8 bt-core-dbus-handler.c
9 bt-core-noti-handler.c
10 )
11
12 SET(APP_VENDOR tizen)
13 SET(APP_NAME bt-core)
14 SET(APP_DIR ${CMAKE_INSTALL_PREFIX}/bin)
15 SET(APP_SYSCONFDIR ${CMAKE_INSTALL_PREFIX}/etc)
16
17 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
18         SET(CMAKE_BUILD_TYPE "Release")
19 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
20 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
21
22 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
23 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
24
25 INCLUDE(FindPkgConfig)
26 pkg_check_modules(pkgs REQUIRED dlog vconf gio-2.0 gio-unix-2.0 eventsystem capi-system-info libactd)
27
28 FOREACH(flag ${pkgs_CFLAGS})
29         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
30 ENDFOREACH(flag)
31
32 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror")
33 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -fPIE")
34 SET(CMAKE_C_FLAGS_RELEASE "-O2 -fPIE")
35
36 FIND_PROGRAM(UNAME NAMES uname)
37 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
38 IF("${ARCH}" STREQUAL "arm")
39         ADD_DEFINITIONS("-DTARGET")
40         MESSAGE("add -DTARGET")
41 ENDIF("${ARCH}" STREQUAL "arm")
42
43 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
44 ADD_DEFINITIONS("-DVENDOR=\"${APP_VENDOR}\"")
45 ADD_DEFINITIONS("-DAPPNAME=\"${APP_NAME}\"")
46 ADD_DEFINITIONS("-DAPP_DIR=\"${APP_DIR}\"")
47 ADD_DEFINITIONS("-DAPP_SYSCONFDIR=\"${APP_SYSCONFDIR}\"")
48 #ADD_DEFINITIONS("-DTIZEN_FEATURE_BT_HPS")
49 ADD_DEFINITIONS("-DTIZEN_FEATURE_BT_OTP")
50
51 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
52
53 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
54 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} -ldl)
55
56 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
57
58 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
59
60 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.projectx.bt_core.service DESTINATION share/dbus-1/system-services)
61 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/bluetooth-frwk-core.service DESTINATION /usr/lib/systemd/system)
62
63 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/bluetooth-frwk-core.conf DESTINATION /etc/dbus-1/system.d)