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"
130 export LDFLAGS="$CFLAGS -Wl,--rpath=%{_libdir} -Wl,--as-needed -Wl,--unresolved-symbols=ignore-in-shared-libs"
132 export CFLAGS="$CFLAGS -fpie -DRFCOMM_DIRECT "
133 export LDFLAGS="$CFLAGS -Wl,--rpath=%{_libdir} -Wl,--as-needed -Wl,--unresolved-symbols=ignore-in-shared-libs -pie"
136 cmake . -DCMAKE_INSTALL_PREFIX=/usr \
137 -DCMAKE_LIB_DIR=%{_libdir} \
138 -DTZ_SYS_USER_GROUP=%TZ_SYS_USER_GROUP \
139 -DTZ_SYS_DEFAULT_USER=%TZ_SYS_DEFAULT_USER \
140 %if %{with bluetooth_frwk_libnotify}
141 -DLIBNOTIFY_SUPPORT=On \
143 -DLIBNOTIFY_SUPPORT=Off \
145 %if %{with bluetooth_frwk_libnotification}
146 -DLIBNOTIFICATION_SUPPORT=On
148 -DLIBNOTIFICATION_SUPPORT=Off
154 %if "%{?profile}" == "wearable"
155 -DTIZEN_WEARABLE=YES \
157 -DTIZEN_WEARABLE=NO \
159 %if "%{?profile}" == "common"
160 -DTIZEN_WEARABLE=NO \
167 install -D -m 0644 LICENSE %{buildroot}%{_datadir}/license/bluetooth-frwk
168 install -D -m 0644 LICENSE %{buildroot}%{_datadir}/license/bluetooth-frwk-service
169 install -D -m 0644 LICENSE %{buildroot}%{_datadir}/license/bluetooth-frwk-devel
171 mkdir -p %{buildroot}%{_libdir}/systemd/user
172 install -m 0644 bt-service/bluetooth-frwk-service.service %{buildroot}%{_libdir}/systemd/user
174 %if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
175 mkdir -p %{buildroot}%{_datadir}/icons/default
176 install -m 0644 %{SOURCE1002} %{buildroot}%{_datadir}/icons/default/bt-icon.png
179 # On IVI bt-service needs to be run as 'app' even if there is a 'guest' user.
180 %if "%{profile}"=="ivi"
181 sed -i 's/%TZ_SYS_DEFAULT_USER/app/' %{buildroot}%{_datadir}/dbus-1/system-services/org.projectx.bt.service
187 %if "%{?profile}" == "wearable"
188 vconftool set -f -t int db/bluetooth/status "1" -g 6520
190 %if "%{?profile}" == "mobile"
191 vconftool set -f -t int db/bluetooth/status "0" -g 6520
193 %if "%{?profile}" == "common"
194 vconftool set -f -t int db/bluetooth/status "0" -g 6520
197 vconftool set -f -t int db/bluetooth/status "0" -s User
198 vconftool set -f -t int db/bluetooth/lestatus "0" -s User
199 vconftool set -f -t int file/private/bt-core/flight_mode_deactivated "0" -s User
200 vconftool set -f -t int file/private/bt-core/powersaving_mode_deactivated "0" -s User
201 vconftool set -f -t int file/private/bt-service/bt_off_due_to_timeout "0" -s User
202 vconftool set -f -t string memory/bluetooth/sco_headset_name "" -g 6520 -i
203 vconftool set -f -t int memory/bluetooth/device "0" -g 6520 -i
204 vconftool set -f -t bool memory/bluetooth/btsco "0" -g 6520 -i
205 vconftool set -f -t bool memory/bluetooth/dutmode "0" -g 6520 -i
209 #mkdir -p %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
210 #ln -sf %{_libdir}/systemd/user/bluetooth-frwk.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
212 %postun -p /sbin/ldconfig
215 %manifest %{name}.manifest
216 %defattr(-, root, root)
217 %{_libdir}/libbluetooth-api.so.*
218 %{_datadir}/license/bluetooth-frwk
219 #%{_libdir}/systemd/system/%{_servicedir}/bluetooth-frwk.service
220 #%{_libdir}/systemd/system/bluetooth-frwk.service
223 %defattr(-, root, root)
224 %{_includedir}/bt-service/bluetooth-api.h
225 %{_includedir}/bt-service/bluetooth-hid-api.h
226 %{_includedir}/bt-service/bluetooth-audio-api.h
227 %{_includedir}/bt-service/bluetooth-telephony-api.h
228 %{_includedir}/bt-service/bluetooth-media-control.h
229 %{_includedir}/bt-service/bluetooth-scmst-api.h
230 %{_libdir}/pkgconfig/bluetooth-api.pc
231 %{_libdir}/libbluetooth-api.so
232 %{_datadir}/license/bluetooth-frwk-devel
235 %manifest %{name}.manifest
236 %defattr(-, root, root)
237 %{_datadir}/dbus-1/system-services/org.projectx.bt.service
239 %{_bindir}/bt-service
240 %{_libdir}/systemd/user/bluetooth-frwk-service.service
241 %{_sysconfdir}/dbus-1/system.d/bluetooth-frwk-service.conf
242 %{_bindir}/bluetooth-frwk-test
243 #%{_bindir}/bluetooth-gatt-test
244 #%{_bindir}/bluetooth-advertising-test
245 %{_varlibdir}/bluetooth
246 %{_prefix}/etc/bluetooth
247 #%attr(0666,-,-) %{_varlibdir}/bluetooth/auto-pair-blacklist
248 #%attr(0666,-,-) %{_prefix}/etc/bluetooth/stack_info
249 #%{_dumpdir}/bluetooth_log_dump.sh
250 %{_datadir}/license/bluetooth-frwk-service
251 %if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
252 %{_datadir}/icons/default/bt-icon.png
256 %manifest %{name}.manifest
257 %defattr(-, root, root)
258 %{_datadir}/dbus-1/system-services/org.projectx.bt_core.service
260 %{_sysconfdir}/dbus-1/system.d/bluetooth-frwk-core.conf
263 %manifest %{name}.manifest
264 %defattr(-, root, root)
265 %{_bindir}/bluetooth-frwk-test
266 %{_bindir}/bluetooth-gatt-test
267 %{_bindir}/bluetooth-advertising-test