6d6f284baac8c60f6ca55838520ee54e92f7402f
[platform/core/connectivity/bluetooth-frwk.git] / bt-oal / bluez_hal / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(bluetooth.default C)
3
4 SET(SRCS
5 ./src/bt-hal-bluetooth.c
6 ./src/bt-hal-adapter-dbus-handler.c
7 ./src/bt-hal-dbus-common-utils.c
8 ./src/bt-hal-event-receiver.c
9 ./src/bt-hal-utils.c
10 )
11
12 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
13 SET(EXEC_PREFIX "\${prefix}")
14 SET(LIBDIR "\${prefix}/lib")
15 SET(INCLUDEDIR "\${prefix}/include")
16 SET(VERSION_MAJOR 1)
17 SET(VERSION ${VERSION_MAJOR}.0.0)
18 SET(APP_SYSCONFDIR /opt/var/lib/bluetooth)
19
20 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/hardware/)
21 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/)
22 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src/)
23 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc/)
24
25 SET(PKG_MODULES
26         dbus-glib-1
27         glib-2.0
28         gio-2.0
29         syspopup-caller
30 )
31
32 FIND_PROGRAM(MARSHALTOOL NAMES glib-genmarshal)
33 EXEC_PROGRAM("${MARSHALTOOL}" ARGS "--prefix=marshal ${CMAKE_CURRENT_SOURCE_DIR}/marshal.list --header > ${CMAKE_CURRENT_SOURCE_DIR}/include/marshal.h")
34 EXEC_PROGRAM("${MARSHALTOOL}" ARGS "--prefix=marshal ${CMAKE_CURRENT_SOURCE_DIR}/marshal.list --body > ${CMAKE_CURRENT_SOURCE_DIR}/marshal.c")
35
36 FIND_PROGRAM(DBUS_BINDING_TOOL NAMES dbus-binding-tool)
37
38 FOREACH(flag ${packages_CFLAGS})
39         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
40 ENDFOREACH(flag)
41
42 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g ")
43
44 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
45
46 FIND_PROGRAM(UNAME NAMES uname)
47
48 FIND_PROGRAM(DBUS_BINDING_TOOL NAMES dbus-binding-tool)
49
50 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
51 IF("${ARCH}" STREQUAL "arm")
52         ADD_DEFINITIONS("-DTARGET")
53         MESSAGE("add -DTARGET")
54 ENDIF("${ARCH}" STREQUAL "arm")
55
56 ADD_DEFINITIONS("-DAPP_SYSCONFDIR=\"${APP_SYSCONFDIR}\"")
57
58 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
59 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
60 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${VERSION})
61 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -ldlog)
62 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -lpthread)
63 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -ldl)
64 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -lgio-2.0)
65 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -lglib-2.0)
66 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -ldbus-1)
67 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -lgobject-2.0)
68 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -lsyspopup_caller)
69 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -lbundle)
70
71 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION lib COMPONENT RuntimeLibraries)