Fix issues in the merged Tizen 3.0 code
[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 bt-core-main.c
6 bt-core-adapter.c
7 bt-core-dbus-handler.c
8 bt-core-noti-handler.c
9 )
10
11 SET(APP_VENDOR tizen)
12 SET(APP_NAME bt-core)
13 SET(APP_DIR ${CMAKE_INSTALL_PREFIX}/bin)
14 SET(APP_SYSCONFDIR ${CMAKE_INSTALL_PREFIX}/etc)
15
16 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
17         SET(CMAKE_BUILD_TYPE "Release")
18 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
19 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
20
21 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
22 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
23
24 INCLUDE(FindPkgConfig)
25 pkg_check_modules(pkgs REQUIRED dbus-glib-1 dlog vconf gio-2.0 gio-unix-2.0)
26
27 FOREACH(flag ${pkgs_CFLAGS})
28         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
29 ENDFOREACH(flag)
30
31 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
32 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
33 SET(CMAKE_C_FLAGS_RELEASE "-O2")
34
35 FIND_PROGRAM(UNAME NAMES uname)
36 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
37 IF("${ARCH}" STREQUAL "arm")
38         ADD_DEFINITIONS("-DTARGET")
39         MESSAGE("add -DTARGET")
40 ENDIF("${ARCH}" STREQUAL "arm")
41
42 FIND_PROGRAM(DBUS_BINDING_TOOL NAMES dbus-binding-tool)
43 EXEC_PROGRAM("${DBUS_BINDING_TOOL}" ARGS "--prefix=bt ${CMAKE_CURRENT_SOURCE_DIR}/bt-request-service.xml --mode=glib-client --output=${CMAKE_CURRENT_SOURCE_DIR}/include/bt-request-service.h")
44 EXEC_PROGRAM("${DBUS_BINDING_TOOL}" ARGS "--prefix=bt_core ${CMAKE_CURRENT_SOURCE_DIR}/bt-core-adapter.xml --mode=glib-server --output=${CMAKE_CURRENT_SOURCE_DIR}/include/bt-core-adapter-method.h")
45
46 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
47 ADD_DEFINITIONS("-DVENDOR=\"${APP_VENDOR}\"")
48 ADD_DEFINITIONS("-DAPPNAME=\"${APP_NAME}\"")
49 ADD_DEFINITIONS("-DAPP_DIR=\"${APP_DIR}\"")
50 ADD_DEFINITIONS("-DAPP_SYSCONFDIR=\"${APP_SYSCONFDIR}\"")
51
52 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
53
54 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
55 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
56
57 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
58
59 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
60
61 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.projectx.bt_core.service DESTINATION share/dbus-1/system-services)
62
63 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/bluetooth-frwk-core.conf DESTINATION /etc/dbus-1/system.d)