3.0 specific patch: enable to build after tizen 2.4 code sync.
[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 -fPIE")
33 SET(CMAKE_C_FLAGS_RELEASE "-O2 -fPIE")
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 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
43 ADD_DEFINITIONS("-DVENDOR=\"${APP_VENDOR}\"")
44 ADD_DEFINITIONS("-DAPPNAME=\"${APP_NAME}\"")
45 ADD_DEFINITIONS("-DAPP_DIR=\"${APP_DIR}\"")
46 ADD_DEFINITIONS("-DAPP_SYSCONFDIR=\"${APP_SYSCONFDIR}\"")
47
48 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
49
50 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
51 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
52
53 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
54
55 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
56
57 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.projectx.bt_core.service DESTINATION share/dbus-1/system-services)
58