1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT("Tizen Bluetooth Framework" C)
4 SET(TEST_INSTALL_DIR "${LIB_INSTALL_DIR}/bluetooth-frwk-test/")
5 SET(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/bluetooth-service/plugins/")
6 SET(CMAKE_C_FLAGS "-O3 -Wall -Werror -DPLUGINDIR=\\\"${PLUGIN_INSTALL_DIR}\\\"")
10 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include/)
12 INCLUDE(FindPkgConfig)
13 pkg_check_modules(${TEST} REQUIRED
19 FOREACH(flag ${${TEST}_CFLAGS})
20 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
23 IF(platform STREQUAL "Mobile")
24 SET(MOBILE_FLAGS "mobile-flags")
25 pkg_check_modules(${MOBILE_FLAGS} REQUIRED
29 FOREACH(flag ${${MOBILE_FLAGS}_CFLAGS})
30 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
33 FOREACH(flag ${${MOBILE_FLAGS}_LDFLAGS})
34 SET(${TEST}_LDFLAGS "${${TEST}_LDFLAGS} ${flag}")
37 ADD_DEFINITIONS(-DMOBILE)
40 IF(platform STREQUAL "GEEK" OR platform STREQUAL "IVI")
41 SET(TIZEN_FLAGS "tizen-flags")
42 pkg_check_modules(${TIZEN_FLAGS} REQUIRED
48 FOREACH(flag ${${TIZEN_FLAGS}_CFLAGS})
49 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
52 FOREACH(flag ${${TIZEN_FLAGS}_LDFLAGS})
53 SET(${TEST}_LDFLAGS "${${TEST}_LDFLAGS} ${flag}")
56 ADD_DEFINITIONS(-DTIZEN)
61 SET(BLUETOOTH-SERVICE "bluetooth-service")
63 IF(platform STREQUAL "Mobile")
64 SET(SOURCES_BLUETOOTH_SERVICE
74 src/bluetooth_map_agent.c
81 SET(SOURCES_BLUETOOTH_SERVICE
96 ADD_EXECUTABLE(${BLUETOOTH-SERVICE} ${SOURCES_BLUETOOTH_SERVICE})
97 TARGET_LINK_LIBRARIES(${BLUETOOTH-SERVICE} ${${TEST}_LDFLAGS} -ldl)
98 SET_TARGET_PROPERTIES(${BLUETOOTH-SERVICE} PROPERTIES
99 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/src)
100 INSTALL(TARGETS ${BLUETOOTH-SERVICE} DESTINATION bin)
101 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/bluezlib.conf
102 DESTINATION /etc/dbus-1/system.d)
103 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/bluezobex.conf
104 DESTINATION /etc/dbus-1/system.d)
105 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/bluetooth-service.conf
106 DESTINATION /etc/dbus-1/system.d)
107 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/org.tizen.comms.service
108 DESTINATION share/dbus-1/system-services)
111 SET(BLUEZ-TEST "bluez-lib-test")
113 SET(SOURCES_BLUEZ_TEST
117 test/bluez-lib-test.c
120 ADD_EXECUTABLE(${BLUEZ-TEST} ${SOURCES_BLUEZ_TEST})
121 TARGET_LINK_LIBRARIES(${BLUEZ-TEST} ${${TEST}_LDFLAGS})
122 SET_TARGET_PROPERTIES(${BLUEZ-TEST} PROPERTIES
123 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/test)
124 INSTALL(TARGETS ${BLUEZ-TEST} DESTINATION ${TEST_INSTALL_DIR})
125 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/bluez-lib-test.conf
126 DESTINATION /etc/dbus-1/system.d)
129 SET(OBEX-TEST "obex-lib-test")
131 SET(SOURCES_OBEX_TEST
137 ADD_EXECUTABLE(${OBEX-TEST} ${SOURCES_OBEX_TEST})
138 TARGET_LINK_LIBRARIES(${OBEX-TEST} ${${TEST}_LDFLAGS})
139 SET_TARGET_PROPERTIES(${OBEX-TEST} PROPERTIES
140 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/test)
141 INSTALL(TARGETS ${OBEX-TEST} DESTINATION ${TEST_INSTALL_DIR})
144 SET(BT-SERVICE-TEST "bt-serivce-lib-test")
146 SET(SOURCES_BT_SERVICE_TEST
148 lib/bluetooth-service.c
149 test/bt-service-lib-test.c
152 ADD_EXECUTABLE(${BT-SERVICE-TEST} ${SOURCES_BT_SERVICE_TEST})
153 TARGET_LINK_LIBRARIES(${BT-SERVICE-TEST} ${${TEST}_LDFLAGS})
154 SET_TARGET_PROPERTIES(${BT-SERVICE-TEST} PROPERTIES
155 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/test)
156 INSTALL(TARGETS ${BT-SERVICE-TEST} DESTINATION ${TEST_INSTALL_DIR})
159 SET(CAPI-BLUETOOTH "capi-network-bluetooth")
161 SET(SOURCE_CAPI_BLUETOOTH
167 capi/bluetooth-obex.c
168 lib/bluetooth-service.c
171 ADD_LIBRARY(${CAPI-BLUETOOTH} SHARED ${SOURCE_CAPI_BLUETOOTH})
172 TARGET_LINK_LIBRARIES(${CAPI-BLUETOOTH} ${${TEST}_LDFALGS})
174 SET_TARGET_PROPERTIES(${CAPI-BLUETOOTH}
177 SOVERSION ${MAJORVER}
178 CLEAN_DIRECT_OUTPUT 1
179 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/capi
182 INSTALL(FILES include/bluetooth.h DESTINATION include/network)
184 INSTALL(TARGETS ${CAPI-BLUETOOTH} DESTINATION ${LIB_INSTALL_DIR})
186 capi-network-bluetooth.pc.in
187 ${CMAKE_CURRENT_SOURCE_DIR}/${CAPI-BLUETOOTH}.pc
190 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${CAPI-BLUETOOTH}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
193 SET(BLUEZ-CAPI-TEST "bluez-capi-test")
195 SET(SOURCE_BLUEZ_CAPI_TEST
196 test/bluez-capi-test.c
199 ADD_EXECUTABLE(${BLUEZ-CAPI-TEST} ${SOURCE_BLUEZ_CAPI_TEST})
200 TARGET_LINK_LIBRARIES(${BLUEZ-CAPI-TEST} ${CAPI-BLUETOOTH} ${${TEST}_LDFLAGS})
201 SET_TARGET_PROPERTIES(${BLUEZ-CAPI-TEST} PROPERTIES
202 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/test)
204 IF(platform STREQUAL "GEEK")
205 ADD_DEFINITIONS("-DGEEK")
207 SET(PLUGIN_BLUETOOTH_MOBILE "bluetooth-geek")
209 SET(SOURCE_PLUGIN_BLUETOOTH_MOBILE
210 plugins/bluetooth-geek.c
211 plugins/brcm_patchram_plus.c
214 ADD_LIBRARY(${PLUGIN_BLUETOOTH_MOBILE} SHARED ${SOURCE_PLUGIN_BLUETOOTH_MOBILE})
215 TARGET_LINK_LIBRARIES(${PLUGIN_BLUETOOTH_MOBILE} ${CAPI-BLUETOOTH} ${${TEST}_LDFLAGS})
216 SET_TARGET_PROPERTIES(${PLUGIN_BLUETOOTH_MOBILE} PROPERTIES PREFIX "")
217 SET_TARGET_PROPERTIES(${PLUGIN_BLUETOOTH_MOBILE} PROPERTIES
218 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/plugins)
219 INSTALL(TARGETS ${PLUGIN_BLUETOOTH_MOBILE} DESTINATION ${PLUGIN_INSTALL_DIR})
222 IF(platform STREQUAL "IVI")
224 SET(PLUGIN_BLUETOOTH_MOBILE "bluetooth-mobile")
226 SET(SOURCE_PLUGIN_BLUETOOTH_MOBILE
227 plugins/bluetooth-mobile.c
230 ADD_LIBRARY(${PLUGIN_BLUETOOTH_MOBILE} SHARED ${SOURCE_PLUGIN_BLUETOOTH_MOBILE})
231 TARGET_LINK_LIBRARIES(${PLUGIN_BLUETOOTH_MOBILE} ${${TEST}_LDFLAGS})
232 SET_TARGET_PROPERTIES(${PLUGIN_BLUETOOTH_MOBILE} PROPERTIES PREFIX "")
233 SET_TARGET_PROPERTIES(${PLUGIN_BLUETOOTH_MOBILE} PROPERTIES
234 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/plugins)
236 INSTALL(TARGETS ${BLUEZ-CAPI-TEST} DESTINATION ${TEST_INSTALL_DIR})