2 %define _dumpdir /opt/etc/dump.d/module.d
3 %define _varlibdir /opt/var/lib
6 Summary: Bluetooth framework for BlueZ and Obexd. This package is Bluetooth framework based on BlueZ and Obexd stack.
9 Group: Network & Connectivity/Bluetooth
11 Source0: %{name}-%{version}.tar.gz
12 Source1001: bluetooth-frwk.manifest
13 %if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
14 Source1002: bt-icon.png
20 %if "%{?profile}" != "mobile"
21 Requires: bluetooth-tools
23 BuildRequires: pkgconfig(aul)
24 BuildRequires: pkgconfig(dbus-glib-1)
25 BuildRequires: pkgconfig(dlog)
26 BuildRequires: pkgconfig(glib-2.0)
27 BuildRequires: pkgconfig(gio-2.0)
28 BuildRequires: pkgconfig(gio-unix-2.0)
29 %if %{with bluetooth_frwk_libnotify}
30 BuildRequires: pkgconfig(libnotify)
31 BuildRequires: pkgconfig(gdk-pixbuf-2.0)
32 BuildRequires: pkgconfig(gtk+-3.0)
33 %elif %{without bluetooth_frwk_libnotification}
34 BuildRequires: pkgconfig(syspopup-caller)
37 BuildRequires: pkgconfig(syspopup-caller)
39 BuildRequires: pkgconfig(vconf)
40 BuildRequires: pkgconfig(libxml-2.0)
41 BuildRequires: pkgconfig(dbus-1)
43 BuildRequires: pkgconfig(utilX)
45 BuildRequires: pkgconfig(capi-network-connection)
46 BuildRequires: pkgconfig(alarm-service)
47 BuildRequires: pkgconfig(capi-content-mime-type)
48 BuildRequires: pkgconfig(appcore-efl)
49 BuildRequires: pkgconfig(pkgmgr)
50 #BuildRequires: pkgconfig(journal)
51 #BuildRequires: pkgconfig(eventsystem)
52 %if "%{?profile}" == "mobile"
53 BuildRequires: pkgconfig(capi-network-tethering)
56 BuildRequires: pkgconfig(libprivilege-control)
57 BuildRequires: pkgconfig(cynara-client)
58 BuildRequires: pkgconfig(cynara-creds-gdbus)
60 Requires(post): /usr/bin/vconftool
61 Requires(post): /sbin/ldconfig
62 Requires(postun): /sbin/ldconfig
66 Bluetooth framework for BlueZ and Obexd. This package is Bluetooth framework based on BlueZ and Obexd stack.
67 This package contains API set for BT GAP, BT SDP, and BT RFCOMM.
71 Summary: Bluetooth framework for BlueZ and Obexd
72 Group: Development/Libraries
73 Requires: %{name} = %{version}-%{release}
76 This package is development files for Bluetooth framework based on BlueZ and Obexd stack.
77 This package contains API set for BT GAP, BT SDP, and BT RFCOMM.
80 Summary: Bluetooth Service daemon
81 Group: Network & Connectivity/Bluetooth
82 Requires: %{name} = %{version}-%{release}
85 This package is Bluetooth Service daemon to manage BT services.
88 Summary: Bluetooth Core daemon
89 Group: Network & Connectivity/Bluetooth
90 Requires: %{name} = %{version}-%{release}
93 This package is Bluetooth core daemon to manage activation / deactivation.
96 Summary: Bluetooth test application
97 Group: Network & Connectivity/Bluetooth
98 Requires: %{name} = %{version}-%{release}
101 This package is Bluetooth test application.
109 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
110 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
111 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
113 %if "%{?profile}" == "mobile"
115 export CFLAGS="$CFLAGS -DTIZEN_NETWORK_TETHERING_ENABLE -DTIZEN_BT_FLIGHTMODE_ENABLED -D__TIZEN_MOBILE__ -DTIZEN_TELEPHONY_ENABLED"
118 %if "%{?profile}" == "wearable"
120 export CFLAGS="$CFLAGS -DTIZEN_WEARABLE"
123 %if "%{?profile}" == "tv"
125 export CFLAGS="$CFLAGS -DUSB_BLUETOOTH -DTIZEN_TV"
129 export CFLAGS="$CFLAGS -Wall -g -fvisibility=hidden -fPIC"
131 export CFLAGS="$CFLAGS -fpie"
132 export LDFLAGS="$CFLAGS -pie"
135 export CFLAGS="$CFLAGS -DRFCOMM_DIRECT"
136 export LDFLAGS="$CFLAGS -Wl,--rpath=%{_libdir} -Wl,--as-needed -Wl,--unresolved-symbols=ignore-in-shared-libs"
138 cmake . -DCMAKE_INSTALL_PREFIX=/usr \
139 -DCMAKE_LIB_DIR=%{_libdir} \
140 -DTZ_SYS_USER_GROUP=%TZ_SYS_USER_GROUP \
141 -DTZ_SYS_DEFAULT_USER=%TZ_SYS_DEFAULT_USER \
142 %if %{with bluetooth_frwk_libnotify}
143 -DLIBNOTIFY_SUPPORT=On \
145 -DLIBNOTIFY_SUPPORT=Off \
147 %if %{with bluetooth_frwk_libnotification}
148 -DLIBNOTIFICATION_SUPPORT=On
150 -DLIBNOTIFICATION_SUPPORT=Off
156 %if "%{?profile}" == "wearable"
157 -DTIZEN_WEARABLE=YES \
159 -DTIZEN_WEARABLE=NO \
161 %if "%{?profile}" == "common"
162 -DTIZEN_WEARABLE=NO \
169 install -D -m 0644 LICENSE %{buildroot}%{_datadir}/license/bluetooth-frwk
170 install -D -m 0644 LICENSE %{buildroot}%{_datadir}/license/bluetooth-frwk-service
171 install -D -m 0644 LICENSE %{buildroot}%{_datadir}/license/bluetooth-frwk-devel
173 mkdir -p %{buildroot}%{_libdir}/systemd/user
174 install -m 0644 bt-service/bluetooth-frwk-service.service %{buildroot}%{_libdir}/systemd/user
176 %if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
177 mkdir -p %{buildroot}%{_datadir}/icons/default
178 install -m 0644 %{SOURCE1002} %{buildroot}%{_datadir}/icons/default/bt-icon.png
181 # On IVI bt-service needs to be run as 'app' even if there is a 'guest' user.
182 %if "%{profile}"=="ivi"
183 sed -i 's/%TZ_SYS_DEFAULT_USER/app/' %{buildroot}%{_datadir}/dbus-1/system-services/org.projectx.bt.service
189 %if "%{?profile}" == "wearable"
190 vconftool set -f -t int db/bluetooth/status "1" -g 6520
192 %if "%{?profile}" == "mobile"
193 vconftool set -f -t int db/bluetooth/status "0" -g 6520
195 %if "%{?profile}" == "common"
196 vconftool set -f -t int db/bluetooth/status "0" -g 6520
199 vconftool set -f -t int db/bluetooth/status "0" -s User
200 vconftool set -f -t int db/bluetooth/lestatus "0" -s User
201 vconftool set -f -t int file/private/bt-core/flight_mode_deactivated "0" -s User
202 vconftool set -f -t int file/private/bt-core/powersaving_mode_deactivated "0" -s User
203 vconftool set -f -t int file/private/bt-service/bt_off_due_to_timeout "0" -s User
204 vconftool set -f -t string memory/bluetooth/sco_headset_name "" -g 6520 -i
205 vconftool set -f -t int memory/bluetooth/device "0" -g 6520 -i
206 vconftool set -f -t bool memory/bluetooth/btsco "0" -g 6520 -i
207 vconftool set -f -t bool memory/bluetooth/dutmode "0" -g 6520 -i
211 #mkdir -p %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
212 #ln -sf %{_libdir}/systemd/user/bluetooth-frwk.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
214 %postun -p /sbin/ldconfig
217 %manifest %{name}.manifest
218 %defattr(-, root, root)
219 %{_libdir}/libbluetooth-api.so.*
220 %{_datadir}/license/bluetooth-frwk
221 #%{_libdir}/systemd/system/%{_servicedir}/bluetooth-frwk.service
222 #%{_libdir}/systemd/system/bluetooth-frwk.service
225 %defattr(-, root, root)
226 %{_includedir}/bt-service/bluetooth-api.h
227 %{_includedir}/bt-service/bluetooth-hid-api.h
228 %{_includedir}/bt-service/bluetooth-audio-api.h
229 %{_includedir}/bt-service/bluetooth-telephony-api.h
230 %{_includedir}/bt-service/bluetooth-media-control.h
231 %{_includedir}/bt-service/bluetooth-scmst-api.h
232 %{_libdir}/pkgconfig/bluetooth-api.pc
233 %{_libdir}/libbluetooth-api.so
234 %{_datadir}/license/bluetooth-frwk-devel
237 %manifest %{name}.manifest
238 %defattr(-, root, root)
239 %{_datadir}/dbus-1/system-services/org.projectx.bt.service
241 %{_bindir}/bt-service
242 %{_libdir}/systemd/user/bluetooth-frwk-service.service
243 %{_sysconfdir}/dbus-1/system.d/bluetooth-frwk-service.conf
244 %{_bindir}/bluetooth-frwk-test
245 #%{_bindir}/bluetooth-gatt-test
246 #%{_bindir}/bluetooth-advertising-test
247 %{_varlibdir}/bluetooth
248 %{_prefix}/etc/bluetooth
249 #%attr(0666,-,-) %{_varlibdir}/bluetooth/auto-pair-blacklist
250 #%attr(0666,-,-) %{_prefix}/etc/bluetooth/stack_info
251 #%{_dumpdir}/bluetooth_log_dump.sh
252 %{_datadir}/license/bluetooth-frwk-service
253 %if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
254 %{_datadir}/icons/default/bt-icon.png
258 %manifest %{name}.manifest
259 %defattr(-, root, root)
260 %{_datadir}/dbus-1/system-services/org.projectx.bt_core.service
262 %{_sysconfdir}/dbus-1/system.d/bluetooth-frwk-core.conf
265 %manifest %{name}.manifest
266 %defattr(-, root, root)
267 %{_bindir}/bluetooth-frwk-test
268 %{_bindir}/bluetooth-gatt-test
269 %{_bindir}/bluetooth-advertising-test