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 install -m 0644 bt-service/bluetooth-frwk-service.service ${D}${prefix}/lib/systemd/user
142 mkdir -p ${D}${prefix}/share/icons/default
143 install -m 0644 ${S}/packaging/bt-icon.png ${D}${prefix}/share/icons/default/bt-icon.png
145 # On IVI bt-service needs to be run as 'app' even if there is a 'guest' user.
150 pkg_postinst_${PN}() {
153 [ "x$D" == "x" ] && ldconfig
154 vconftool set -f -t int db/bluetooth/status "0" -g 6520
155 vconftool set -f -t int file/private/bt-service/flight_mode_deactivated "0" -g 6520 -i
156 vconftool set -f -t string memory/bluetooth/sco_headset_name "" -g 6520 -i
157 vconftool set -f -t int memory/bluetooth/device "0" -g 6520 -i
158 vconftool set -f -t int memory/bluetooth/btsco "0" -g 6520 -i
159 # set 'User' smack label to vconf keys in order to allow bt-service to access them.
160 chsmack -a 'User' $D${prefix}/kdb/db/bluetooth/status
161 chsmack -a 'User' $D${prefix}/kdb/file/private/bt-service/flight_mode_deactivated
162 chsmack -a 'User' $D${prefix}/kdb/memory_init/memory/bluetooth/sco_headset_name
163 chsmack -a 'User' $D${prefix}/kdb/memory_init/memory/bluetooth/device
164 chsmack -a 'User' $D${prefix}/kdb/memory_init/memory/bluetooth/btsco
171 [ "x$D" == "x" ] && ldconfig
174 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale"
175 PACKAGES += " bluetooth-frwk-dev "
176 PACKAGES += " bluetooth-frwk-core "
177 PACKAGES += " bluetooth-frwk-service "
178 PACKAGES += " bluetooth-frwk "
180 bluetooth-frwk-dev_files = ""
181 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-api.h"
182 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-hid-api.h"
183 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-audio-api.h"
184 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-telephony-api.h"
185 bluetooth-frwk-dev_files += "${prefix}/include/bt-service/bluetooth-media-control.h"
186 bluetooth-frwk-dev_files += "${prefix}/lib/pkgconfig/bluetooth-api.pc"
187 bluetooth-frwk-dev_files += "${prefix}/lib/libbluetooth-api.so"
188 MANIFESTFILES_${PN}-dev = "bluetooth-frwk.manifest"
190 bluetooth-frwk-core_files = ""
191 bluetooth-frwk-core_files += "${prefix}/share/dbus-1/system-services/org.projectx.bt_core.service"
192 bluetooth-frwk-core_files += "${prefix}/bin/bt-core"
193 bluetooth-frwk-core_files += "${sysconfdir}/dbus-1/system.d/bluetooth-frwk-core.conf"
194 MANIFESTFILES_${PN}-core = "bluetooth-frwk.manifest"
196 bluetooth-frwk-service_files = ""
197 bluetooth-frwk-service_files += "${prefix}/share/dbus-1/system-services/org.projectx.bt.service"
198 bluetooth-frwk-service_files += "${prefix}/bin/bt-service"
199 bluetooth-frwk-service_files += "${prefix}/lib/systemd/user/bluetooth-frwk-service.service"
200 bluetooth-frwk-service_files += "/opt/var/lib/bluetooth/auto-pair-blacklist"
201 bluetooth-frwk-service_files += "${sysconfdir}/dbus-1/system.d/bluetooth-frwk-service.conf"
202 bluetooth-frwk-service_files += "${prefix}/share/icons/default/bt-icon.png"
203 MANIFESTFILES_${PN}-service = "bluetooth-frwk.manifest"
205 bluetooth-frwk_files = ""
206 bluetooth-frwk_files += "${prefix}/lib/libbluetooth-api.so.*"
207 MANIFESTFILES_${PN} = "bluetooth-frwk.manifest"
209 FILES_${PN}-dev = "${bluetooth-frwk-dev_files}"
210 FILES_${PN}-core = "${bluetooth-frwk-core_files}"
211 FILES_${PN}-service = "${bluetooth-frwk-service_files}"
212 FILES_${PN} = "${bluetooth-frwk_files}"
214 PKG_bluetooth-frwk-dev= "bluetooth-frwk-dev"
215 PKG_bluetooth-frwk-core= "bluetooth-frwk-core"
216 PKG_bluetooth-frwk-service= "bluetooth-frwk-service"
217 PKG_bluetooth-frwk= "bluetooth-frwk"
219 require bluetooth-frwk-extraconf.inc