1 DESCRIPTION = "Bluetooth framework for BlueZ and Obexd"
2 HOMEPAGE = "http://nohomepage.org"
3 SECTION = "Network & Connectivity/Bluetooth"
11 inherit manifest autotools-brokensep
16 #PROVIDES by bluetooth-frwk-core
17 PROVIDES += "bluetooth-frwk-core"
20 #PROVIDES by bluetooth-frwk-dev
21 PROVIDES += "bluetooth-frwk-dev"
24 #PROVIDES by bluetooth-frwk-service
25 PROVIDES += "bluetooth-frwk-service"
28 #PROVIDES by bluetooth-frwk
32 #RDEPENDS of bluetooth-frwk-core (${PN}-core)
33 RDEPENDS_${PN}-core += "connman"
34 RDEPENDS_${PN}-core += "bluetooth-frwk"
36 #RDEPENDS of bluetooth-frwk-dev (${PN}-dev)
37 RDEPENDS_${PN}-dev += "bluetooth-frwk"
39 #RDEPENDS of bluetooth-frwk-service (${PN}-service)
40 RDEPENDS_${PN}-service += "bluetooth-frwk"
42 #RDEPENDS of bluetooth-frwk (${PN})
43 RDEPENDS_${PN} += "dbus"
44 RDEPENDS_${PN} += "bluetooth-tools"
45 RDEPENDS_${PN} += "vconf"
46 RDEPENDS_${PN} += "glibc"
50 #DEPENDS of bluetooth-frwk
55 DEPENDS += "tizen-platform-config"
59 DEPENDS += "capi-network-tethering"
61 DEPENDS += "security-server"
62 DEPENDS += "notification"
63 DEPENDS += "alarm-manager"
64 DEPENDS += "libprivilege-control"
66 DEPENDS += "dbus-glib"
70 chmod -Rf a+rX,u+w,g-w,o-w ${S}
72 cp ${S}/packaging/bluetooth-frwk.manifest .
78 bb.build.exec_func('do_prep', d)
89 LD_AS_NEEDED=1; export LD_AS_NEEDED ;
92 export CFLAGS="${CFLAGS} -Wall -g -fvisibility=hidden -fPIC"
93 export LDFLAGS="${LDFLAGS} -Wl,--rpath=${prefix}/lib -Wl,--as-needed -Wl,--unresolved-symbols=ignore-in-shared-libs"
97 -DCMAKE_VERBOSE_MAKEFILE=ON \
98 -DCMAKE_INSTALL_PREFIX:PATH=${prefix} \
99 -DCMAKE_INSTALL_LIBDIR:PATH=${prefix}/lib \
100 -DINCLUDE_INSTALL_DIR:PATH=${prefix}/include \
101 -DLIB_INSTALL_DIR:PATH=${prefix}/lib \
102 -DSYSCONF_INSTALL_DIR:PATH=${sysconfdir} \
103 -DSHARE_INSTALL_PREFIX:PATH=${prefix}/share \
104 -DCMAKE_SKIP_RPATH:BOOL=ON \
105 -DBUILD_SHARED_LIBS:BOOL=ON \
106 -DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain.cmake \
108 -DTZ_SYS_USER_GROUP=users \
109 -DTZ_SYS_DEFAULT_USER=app \
110 -DLIBNOTIFY_SUPPORT=Off \
111 -DLIBNOTIFICATION_SUPPORT=On
120 export RPM_BUILD_ROOT=${D}
133 BINDIR=${prefix}/bin \
135 rm -f ${D}${infodir}/dir
136 find ${D} -regex ".*\.la$" | xargs rm -f --
137 find ${D} -regex ".*\.a$" | xargs rm -f --
139 mkdir -p ${D}${prefix}/lib/systemd/user
140 mkdir -p ${D}${prefix}/lib/systemd/user/tizen-middleware.target.wants
141 install -m 0644 bt-service/bluetooth-frwk-service.service ${D}${prefix}/lib/systemd/user
142 ln -s ../bluetooth-frwk-service.service ${D}${prefix}/lib/systemd/user/tizen-middleware.target.wants/bluetooth-frwk-service.service
144 mkdir -p ${D}${prefix}/share/icons/default
145 install -m 0644 ${S}/packaging/bt-icon.png ${D}${prefix}/share/icons/default/bt-icon.png
147 # On IVI bt-service needs to be run as 'app' even if there is a 'guest' user.
152 pkg_postinst_${PN}() {
155 [ "x$D" == "x" ] && ldconfig
156 vconftool set -tf int db/bluetooth/status "0" -g 6520
157 vconftool set -tf int file/private/bt-service/flight_mode_deactivated "0" -g 6520 -i
158 vconftool set -tf string memory/bluetooth/sco_headset_name "" -g 6520 -i
159 vconftool set -tf int memory/bluetooth/device "0" -g 6520 -i
160 vconftool set -tf int memory/bluetooth/btsco "0" -g 6520 -i
161 # set 'User' smack label to vconf keys in order to allow bt-service to access them.
162 chsmack -a 'User' $D${prefix}/kdb/db/bluetooth/status
163 chsmack -a 'User' $D${prefix}/kdb/file/private/bt-service/flight_mode_deactivated
164 chsmack -a 'User' $D${prefix}/kdb/memory_init/memory/bluetooth/sco_headset_name
165 chsmack -a 'User' $D${prefix}/kdb/memory_init/memory/bluetooth/device
166 chsmack -a 'User' $D${prefix}/kdb/memory_init/memory/bluetooth/btsco
173 [ "x$D" == "x" ] && ldconfig
176 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale"
177 PACKAGES += " bluetooth-frwk-dev "
178 PACKAGES += " bluetooth-frwk-core "
179 PACKAGES += " bluetooth-frwk-service "
180 PACKAGES += " bluetooth-frwk "
182 bluetooth-frwk-dev_files = ""
183 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-api.h"
184 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-hid-api.h"
185 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-audio-api.h"
186 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-telephony-api.h"
187 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-media-control.h"
188 bluetooth-frwk-dev_files += "${prefix}/lib/pkgconfig/bluetooth-api.pc"
189 bluetooth-frwk-dev_files += "${prefix}/lib/libbluetooth-api.so"
190 MANIFESTFILES_${PN}-dev = "bluetooth-frwk.manifest"
192 bluetooth-frwk-core_files = ""
193 bluetooth-frwk-core_files += "${prefix}/share/dbus-1/system-services/org.projectx.bt_core.service"
194 bluetooth-frwk-core_files += "${prefix}/bin/bt-core"
195 bluetooth-frwk-core_files += "${sysconfdir}/dbus-1/system.d/bluetooth-frwk-core.conf"
196 MANIFESTFILES_${PN}-core = "bluetooth-frwk.manifest"
198 bluetooth-frwk-service_files = ""
199 bluetooth-frwk-service_files += "${prefix}/share/dbus-1/system-services/org.projectx.bt.service"
200 bluetooth-frwk-service_files += "${prefix}/bin/bt-service"
201 bluetooth-frwk-service_files += "${prefix}/lib/systemd/user/tizen-middleware.target.wants/bluetooth-frwk-service.service"
202 bluetooth-frwk-service_files += "${prefix}/lib/systemd/user/bluetooth-frwk-service.service"
203 bluetooth-frwk-service_files += "/opt/var/lib/bluetooth/auto-pair-blacklist"
204 bluetooth-frwk-service_files += "${sysconfdir}/dbus-1/system.d/bluetooth-frwk-service.conf"
205 bluetooth-frwk-service_files += "${prefix}/share/icons/default/bt-icon.png"
206 MANIFESTFILES_${PN}-service = "bluetooth-frwk.manifest"
208 bluetooth-frwk_files = ""
209 bluetooth-frwk_files += "${prefix}/lib/libbluetooth-api.so.*"
210 MANIFESTFILES_${PN} = "bluetooth-frwk.manifest"
212 FILES_${PN}-dev = "${bluetooth-frwk-dev_files}"
213 FILES_${PN}-core = "${bluetooth-frwk-core_files}"
214 FILES_${PN}-service = "${bluetooth-frwk-service_files}"
215 FILES_${PN} = "${bluetooth-frwk_files}"
217 PKG_bluetooth-frwk-dev= "bluetooth-frwk-dev"
218 PKG_bluetooth-frwk-core= "bluetooth-frwk-core"
219 PKG_bluetooth-frwk-service= "bluetooth-frwk-service"
220 PKG_bluetooth-frwk= "bluetooth-frwk"
222 require bluetooth-frwk-extraconf.inc