Revert "Use endpoints provided by socket activation"
[sdk/target/sdbd.git] / packaging / sdbd.spec
index 15eb808..8bba6c1 100644 (file)
@@ -2,7 +2,7 @@
 
 Name:       sdbd
 Summary:    SDB daemon
-Version:    3.0.13
+Version:    3.0.48
 Release:    0
 License:    Apache-2.0
 Summary:    SDB daemon
@@ -23,14 +23,38 @@ BuildRequires: pkgconfig(libsmack)
 BuildRequires: pkgconfig(capi-system-info)
 BuildRequires: pkgconfig(vconf)
 BuildRequires: pkgconfig(glib-2.0)
-BuildRequires: pkgconfig(dbus-1)
-BuildRequires: pkgconfig(dbus-glib-1)
+BuildRequires: pkgconfig(gio-2.0)
 BuildRequires: pkgconfig(dlog)
 Requires: dbus
+Provides:      %{name}-profile_common = %{version}-%{release}
+Provides:      %{name}-profile_mobile = %{version}-%{release}
+Provides:      %{name}-profile_ivi = %{version}-%{release}
+Provides:      %{name}-profile_wearable = %{version}-%{release}
 
 %description
 Description: SDB daemon.
 
+%package profile_tv
+Summary:   SDB daemon extension for TV
+Requires:  %{name} = %{version}-%{release}
+%description profile_tv
+SDB daemon extension for TV.
+This changes the service unit files of the default SDB daemon service files.
+
+%ifarch %{ix86} x86_64
+%package extension-emulator
+Summary:    SDB daemon for emulator
+Requires:   %{name} = %{version}-%{release}
+%description extension-emulator
+SDB daemon for emulator
+
+%package extension-tv-emulator
+Summary:    SDB daemon for tv emulator
+Requires:   %{name}-profile_tv = %{version}-%{release}
+%description extension-tv-emulator
+SDB daemon for tv emulator
+%endif // ifarch %{ix86} x86_64
+
 %package -n sdbd-devel
 Summary:       SDBD plugin API
 Group:         Development/Libraries
@@ -43,48 +67,31 @@ SDBD plugin API library
 cp %{SOURCE1003} .
 
 %build
-%if "%{?tizen_profile_name}" == "wearable"
-%define wearable_profile on
-%else
-%define wearable_profile off
-%endif
-%if %{with emulator}
-%define target_arch x86
-%else
-%define target_arch arm
-%endif
-cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-       -DWEARABLE_PROFILE=%{wearable_profile} \
-       -DTARGET_ARCH=%{target_arch}
+cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} %{?asan:-DCMAKE_EXE_LINKER_FLAGS="-pthread"}
 
 make %{?jobs:-j%jobs}
 
 %install
-mkdir -p %{buildroot}/usr/share/license
-cp LICENSE %{buildroot}/usr/share/license/%{name}
-
-%make_install
 mkdir -p %{buildroot}%{_unitdir}
 
-%if %{with emulator}
-%if "%{profile}" == "tv"
-install -m 0644 %SOURCE1006 %{buildroot}%{_unitdir}/sdbd.service
-%else
-install -m 0644 %SOURCE1002 %{buildroot}%{_unitdir}/sdbd.service
-%endif
+# extension-*-emulator
+%ifarch %{ix86} x86_64
+install -m 0644 %SOURCE1006 %{buildroot}%{_unitdir}/sdbd.service.tv.emulator
+install -m 0644 %SOURCE1002 %{buildroot}%{_unitdir}/sdbd.service.emulator
 mkdir -p %{buildroot}/%{_unitdir}/emulator_preinit.target.wants
 ln -s %{_unitdir}/sdbd.service %{buildroot}/%{_unitdir}/emulator_preinit.target.wants/
+%endif // ifarch %{ix86} x86_64
 
-%else
-%if "%{profile}" == "tv"
-install -m 0644 %SOURCE1005 %{buildroot}%{_unitdir}/sdbd.service
-%else
+%make_install
+
+install -m 0644 %SOURCE1005 %{buildroot}%{_unitdir}/sdbd.service.tv
 install -m 0644 %SOURCE1001 %{buildroot}%{_unitdir}/sdbd.service
-%endif
 install -m 0644 %SOURCE1004 %{buildroot}%{_unitdir}/sdbd_tcp.service
 mkdir -p %{buildroot}/%{_unitdir}/multi-user.target.wants
 ln -s %{_unitdir}/sdbd.service %{buildroot}/%{_unitdir}/multi-user.target.wants/
-%endif
+
+mkdir -p %{buildroot}%{_prefix}/lib/udev/rules.d/
+install -m 644 rules/99-sdbd.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
 
 mkdir -p %{buildroot}%{_prefix}/sbin
 install -m 755 script/sdk_launch %{buildroot}%{_prefix}/sbin/
@@ -109,26 +116,56 @@ if ! getent passwd "${TZ_SDK_USER_NAME}" > /dev/null; then
   done
 fi
 
-cp -f /bin/sh /bin/sh-user
-chsmack -a "_" /bin/sh-user
-chsmack -e "User::Shell" /bin/sh-user
+chsmack -a "_" /sbin/sdbd-user
+chsmack -e "User::Shell" /sbin/sdbd-user
 
 %files
 %manifest sdbd.manifest
 %license LICENSE
 %defattr(-,root,root,-)
 %{_prefix}/sbin/sdbd
+%{_prefix}/sbin/sdbd-user
 %{_prefix}/sbin/sdk_launch
 %attr(0755, root, root) %{_sysconfdir}/init.d/sdbd
 %{_unitdir}/sdbd.service
-%if %{with emulator}
-%{_unitdir}/emulator_preinit.target.wants/sdbd.service
-%else
 %{_unitdir}/sdbd_tcp.service
 %{_unitdir}/multi-user.target.wants/sdbd.service
-%endif
-/usr/share/license/%{name}
+%{_prefix}/lib/udev/rules.d/99-sdbd.rules
 %{TZ_SYS_BIN}/profile_command
+%{_sysconfdir}/sdbd/descs
+%{_sysconfdir}/sdbd/strs
+
+%ifarch %{ix86} x86_64
+%post  extension-emulator
+mv %{_unitdir}/sdbd.service.emulator %{_unitdir}/sdbd.service
+%preun extension-emulator
+mv %{_unitdir}/sdbd.service %{_unitdir}/sdbd.service.emulator
+%files extension-emulator
+%manifest sdbd.manifest
+%{_unitdir}/sdbd.service.emulator
+%{_unitdir}/emulator_preinit.target.wants/sdbd.service
+
+%post  extension-tv-emulator
+mv %{_unitdir}/sdbd.service.tv.emulator %{_unitdir}/sdbd.service
+%preun extension-tv-emulator
+mv %{_unitdir}/sdbd.service %{_unitdir}/sdbd.service.tv.emulator
+%files extension-tv-emulator
+%manifest sdbd.manifest
+%{_unitdir}/sdbd.service.tv.emulator
+%{_unitdir}/emulator_preinit.target.wants/sdbd.service
+%endif // ifarch %{ix86} x86_64
+
+%post profile_tv
+pushd %{_unitdir}
+mv sdbd.service.tv sdbd.service
+popd
+%preun profile_tv
+pushd %{_unitdir}
+cp sdbd.service sdbd.service.tv
+echo For correct bahavior of %{name} after uninstalling %{name}-profile_tv, you need to reinstall %{name}
+popd
+%files profile_tv
+%{_unitdir}/sdbd.service.tv
 
 %files -n sdbd-devel
 %{_includedir}/sdb/sdbd_plugin.h