Name: bluetooth-frwk
Summary: Bluetooth framework for BlueZ and Obexd. This package is Bluetooth framework based on BlueZ and Obexd stack.
-Version: 0.2.146
-Release: 0
+Version: 0.2.148
+Release: 1
Group: Network & Connectivity/Bluetooth
License: Apache-2.0
Source0: %{name}-%{version}.tar.gz
Source1001: bluetooth-frwk.manifest
+%if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
Source1002: bt-icon.png
-URL: https://review.tizen.org/git/?p=platform/core/connectivity/bluetooth-frwk.git;a=summary
+%endif
+
+Requires: sys-assert
Requires: dbus
Requires: syspopup
+%if "%{?profile}" != "mobile"
Requires: bluetooth-tools
+%endif
BuildRequires: pkgconfig(aul)
BuildRequires: pkgconfig(dbus-glib-1)
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(utilX)
%endif
BuildRequires: pkgconfig(capi-network-connection)
-
-BuildRequires: pkgconfig(libprivilege-control)
-BuildRequires: pkgconfig(status)
BuildRequires: pkgconfig(alarm-service)
-BuildRequires: pkgconfig(notification)
BuildRequires: pkgconfig(capi-content-mime-type)
BuildRequires: pkgconfig(appcore-efl)
BuildRequires: pkgconfig(pkgmgr)
#BuildRequires: pkgconfig(journal)
-BuildRequires: cmake
-BuildRequires: pkgconfig(libtzplatform-config)
+#BuildRequires: pkgconfig(eventsystem)
+%if "%{?tizen_profile_name}" == "mobile"
+BuildRequires: pkgconfig(capi-network-tethering)
+%endif
+BuildRequires: pkgconfig(libprivilege-control)
BuildRequires: pkgconfig(cynara-client)
BuildRequires: pkgconfig(cynara-creds-dbus)
-Requires(post): /usr/bin/vconftool
-Requires(post): /sbin/ldconfig
-Requires(postun): /sbin/ldconfig
+BuildRequires: cmake
+
+Requires(post): vconf
+Requires(postun): eglibc
Requires: psmisc
%description
Summary: Bluetooth Core daemon
Group: Network & Connectivity/Bluetooth
Requires: %{name} = %{version}-%{release}
-Requires: connman
%description core
This package is Bluetooth core daemon to manage activation / deactivation.
%prep
%setup -q
-cp %{SOURCE1001} .
%build
export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
-%ifarch x86_64
-export CFLAGS+=" -Wall -g -fvisibility=hidden -fPIC -DRFCOMM_DIRECT "
-export LDFLAGS+=" -Wl,--rpath=%{_libdir} -Wl,--as-needed -Wl,--unresolved-symbols=ignore-in-shared-libs"
+export CFLAGS="$CFLAGS -fpie -DRFCOMM_DIRECT "
+export LDFLAGS="$CFLAGS -Wl,--rpath=/usr/lib -Wl,--as-needed -Wl,--unresolved-symbols=ignore-in-shared-libs -pie"
+
+%if "%{?tizen_profile_name}" == "mobile"
+export CFLAGS="$CFLAGS -DTIZEN_NETWORK_TETHERING_ENABLE -DTIZEN_BT_FLIGHTMODE_ENABLED"
+%endif
+
+%if "%{?tizen_profile_name}" == "wearable"
+export CFLAGS="$CFLAGS -DTIZEN_WEARABLE"
+%define _servicefile packaging/bluetooth-frwk-wearable.service
+%define _servicedir multi-user.target.wants
%else
-export CFLAGS+=" -fpie -DRFCOMM_DIRECT "
-export LDFLAGS+=" -Wl,--rpath=/usr/lib -Wl,--as-needed -Wl,--unresolved-symbols=ignore-in-shared-libs -pie"
+%define _servicefile packaging/bluetooth-frwk-mobile.service
+%define _servicedir graphical.target.wants
+%endif
+%define _servicedir multi-user.target.wants
+
+%ifarch x86_64
+export CFLAGS="$CFLAGS -Wall -g -fvisibility=hidden -fPIC"
%endif
%ifarch aarch64
-export CFLAGS="${CFLAGS} -D__TIZEN_MOBILE__ -DTIZEN_TELEPHONY_ENABLED"
+export CFLAGS="$CFLAGS -D__TIZEN_MOBILE__ -DTIZEN_TELEPHONY_ENABLED"
%endif
-%cmake . \
+
+cmake . -DCMAKE_INSTALL_PREFIX=/usr \
-DTZ_SYS_USER_GROUP=%TZ_SYS_USER_GROUP \
-DTZ_SYS_DEFAULT_USER=%TZ_SYS_DEFAULT_USER \
%if %{with bluetooth_frwk_libnotify}
- -DLIBNOTIFY_SUPPORT=On \
+ -DLIBNOTIFY_SUPPORT=On \
%else
- -DLIBNOTIFY_SUPPORT=Off \
+ -DLIBNOTIFY_SUPPORT=Off \
%endif
%if %{with bluetooth_frwk_libnotification}
- -DLIBNOTIFICATION_SUPPORT=On
+ -DLIBNOTIFICATION_SUPPORT=On
%else
- -DLIBNOTIFICATION_SUPPORT=Off
+ -DLIBNOTIFICATION_SUPPORT=Off
%endif
+make
+
%cmake \
%if "%{?tizen_profile_name}" == "wearable"
-DTIZEN_WEARABLE=YES \
-%endif
-%if "%{?tizen_profile_name}" == "mobile"
+%else
-DTIZEN_WEARABLE=NO \
%endif
%if "%{?tizen_profile_name}" == "common"
- -DTIZEN_WEARABLE=NO \
+ -DTIZEN_WEARABLE=NO \
%endif
+
%install
rm -rf %{buildroot}
%make_install
mkdir -p %{buildroot}%{_unitdir_user}
install -m 0644 bt-service/bluetooth-frwk-service.service %{buildroot}%{_unitdir_user}
+mkdir -p %{buildroot}%{_dumpdir}
+install -m 0755 bluetooth_log_dump.sh %{buildroot}%{_dumpdir}
+
%if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
mkdir -p %{buildroot}%{_datadir}/icons/default
install -m 0644 %{SOURCE1002} %{buildroot}%{_datadir}/icons/default/bt-icon.png
sed -i 's/%TZ_SYS_DEFAULT_USER/app/' %{buildroot}%{_datadir}/dbus-1/system-services/org.projectx.bt.service
%endif
+
%post
/sbin/ldconfig
%if "%{?tizen_profile_name}" == "wearable"
vconftool set -f -t int db/bluetooth/status "0" -g 6520
%endif
-
vconftool set -f -t int db/bluetooth/status "0" -s User
vconftool set -f -t int db/bluetooth/lestatus "0" -s User
vconftool set -f -t int file/private/bt-core/flight_mode_deactivated "0" -s User
vconftool set -f -t bool memory/bluetooth/btsco "0" -g 6520 -i
vconftool set -f -t bool memory/bluetooth/dutmode "0" -g 6520 -i
+
#%post service
#mkdir -p %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
#ln -sf %{_libdir}/systemd/system/bluetooth-frwk.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
%postun -p /sbin/ldconfig
%files
-%manifest %{name}.manifest
%defattr(-, root, root)
%{_libdir}/libbluetooth-api.so.*
%{_datadir}/license/bluetooth-frwk
+#%{_libdir}/systemd/system/%{_servicedir}/bluetooth-frwk.service
+#%{_libdir}/systemd/system/bluetooth-frwk.service
%files devel
%defattr(-, root, root)
%{_datadir}/license/bluetooth-frwk-devel
%files service
-%manifest %{name}.manifest
+%manifest bluetooth-frwk.manifest
%defattr(-, root, root)
%{_datadir}/dbus-1/system-services/org.projectx.bt.service
-
%{_bindir}/bt-service
%{_unitdir_user}/bluetooth-frwk-service.service
%{_sysconfdir}/dbus-1/system.d/bluetooth-frwk-service.conf
#%{_bindir}/bluetooth-advertising-test
%{_varlibdir}/bluetooth
%{_prefix}/etc/bluetooth
+#%attr(0666,-,-) %{_varlibdir}/bluetooth/auto-pair-blacklist
+#%attr(0666,-,-) %{_prefix}/etc/bluetooth/stack_info
+%{_dumpdir}/bluetooth_log_dump.sh
%{_datadir}/license/bluetooth-frwk-service
%if %{with bluetooth_frwk_libnotify} || %{with bluetooth_frwk_libnotification}
%{_datadir}/icons/default/bt-icon.png
%endif
%files core
-%manifest %{name}.manifest
+%manifest bluetooth-frwk-core.manifest
%defattr(-, root, root)
%{_datadir}/dbus-1/system-services/org.projectx.bt_core.service
%{_bindir}/bt-core
-%{_sysconfdir}/dbus-1/system.d/bluetooth-frwk-core.conf
%files test
-%manifest %{name}.manifest
+%manifest bluetooth-frwk-test.manifest
%defattr(-, root, root)
%{_bindir}/bluetooth-frwk-test
-#%{_bindir}/bluetooth-gatt-test
-#%{_bindir}/bluetooth-advertising-test
+%{_bindir}/bluetooth-gatt-test
+%{_bindir}/bluetooth-advertising-test