+# Do not create provides fro profile-tv because the main package
+# should anchor any reverse-dependencies
+%global __provides_exclude_from ^(.*\\.tv)$
+
%define major 0
-%define minor 2
-%define patchlevel 98
+%define minor 4
+%define patchlevel 12
Name: tel-plugin-packetservice
Version: %{major}.%{minor}.%{patchlevel}
Release: 0
-License: Apache
+License: Apache-2.0
Summary: Telephony Packet Service library
Group: System/Libraries
Source0: tel-plugin-packetservice-%{version}.tar.gz
+Source1: tel-plugin-ps.conf
BuildRequires: cmake
BuildRequires: python
BuildRequires: python-xml
BuildRequires: pkgconfig(tcore)
BuildRequires: pkgconfig(db-util)
BuildRequires: pkgconfig(vconf)
-BuildRequires: pkgconfig(alarm-service)
-BuildRequires: pkgconfig(cynara-client)
-BuildRequires: pkgconfig(cynara-session)
+BuildRequires: pkgconfig(alarm-service)
+BuildRequires: pkgconfig(capi-system-device)
+BuildRequires: pkgconfig(libtzplatform-config)
+BuildRequires: pkgconfig(capi-system-info)
+BuildRequires: pkgconfig(tfeature)
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig
+Requires: %{name}-dbinit = %{version}-%{release}
+Recommends: %{name}-dbinit-profile_common = %{version}-%{release}
%description
Telephony Packet Service library
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
+# if tv || "undefined"
+%if "%{?profile}" != "wearable" && "%{?profile}" != "mobile" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
+# Extension for TV
+%package profile_tv
+Summary: Extension for TV
+Requires: %{name} = %{version}-%{release}
+
+%description profile_tv
+Telephony Packet Service library Extension for TV
+%endif # End of extension for TV
+
+%package dbinit-profile_common
+SUmmary: DB Init Script for non-IVI (tel-plugin-packageservice)
+Provides: %{name}-dbinit = %{version}-%{release}
+Provides: %{name}-dbinit-profile_mobile = %{version}-%{release}
+Provides: %{name}-dbinit-profile_wearable = %{version}-%{release}
+Conflicts: %{name}-dbinit-profile_tv
+Conflicts: %{name}-dbinit-profile_ivi
+%description dbinit-profile_common
+Default DB init script for %{name} installation.
+Common for common/mobile/wearable profiles.
+
+%package dbinit-profile_tv
+Summary: DB Init Script for TV (tel-plugin-packetservice)
+Provides: %{name}-dbinit = %{version}-%{release}
+Conflicts: %{name}-dbinit-profile_common
+%description dbinit-profile_tv
+DB init script for %{name} installation specialized for tv profile.
+
+%package dbinit-profile_ivi
+Summary: DB Init Script for IVI (tel-plugin-packetservice)
+Provides: %{name}-dbinit = %{version}-%{release}
+Conflicts: %{name}-dbinit-profile_common
+%description dbinit-profile_ivi
+DB init script for %{name} installation specialized for ivi profile.
+
%prep
%setup -q
%build
+
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
+# if tv || "undefined"
+%if "%{?profile}" != "wearable" && "%{?profile}" != "mobile" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
+# Extension for TV
+
+%cmake . -DSYSCONFDIR=%{_sysconfdir} \
+ -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+ -DLIB_INSTALL_DIR=%{_libdir} \
+ -DPREPAID_SIM_APN_SUPPORT=1 \
+
+make %{?_smp_mflags}
+
+mkdir -p build_tv
+
+%make_install
+
+cp -a %{buildroot}%{_libdir}/telephony/plugins/ps-plugin* build_tv/
+
+%endif # End of extension for TV
+
%cmake . -DSYSCONFDIR=%{_sysconfdir} \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
- -DLIB_INSTALL_DIR=%{_libdir}
-make %{?jobs:-j%jobs}
+ -DLIB_INSTALL_DIR=%{_libdir} \
+ -DPREPAID_SIM_APN_SUPPORT=0 \
+
+make %{?_smp_mflags}
%post
/sbin/ldconfig
#create db
-mkdir -p /opt/dbspace
+mkdir -p %TZ_SYS_DB
-if [ ! -f /opt/dbspace/.dnet.db ]
+if [ ! -f %TZ_SYS_DB/.dnet.db ]
then
- sqlite3 /opt/dbspace/.dnet.db < /usr/share/ps-plugin/dnet_db.sql
- sqlite3 /opt/dbspace/.dnet.db < /usr/share/ps-plugin/dnet_db_init.sql
+ sqlite3 %TZ_SYS_DB/.dnet.db < %{_datadir}/ps-plugin/dnet_db.sql
+ sqlite3 %TZ_SYS_DB/.dnet.db < %{_datadir}/ps-plugin/dnet_db_init.sql
fi
-if [ ! -f /opt/dbspace/.dnet2.db ]
+if [ ! -f %TZ_SYS_DB/.dnet2.db ]
then
- sqlite3 /opt/dbspace/.dnet2.db < /usr/share/ps-plugin/dnet_db.sql
- sqlite3 /opt/dbspace/.dnet2.db < /usr/share/ps-plugin/dnet_db_init.sql
+ sqlite3 %TZ_SYS_DB/.dnet2.db < %{_datadir}/ps-plugin/dnet_db.sql
+ sqlite3 %TZ_SYS_DB/.dnet2.db < %{_datadir}/ps-plugin/dnet_db_init.sql
fi
-rm -f /usr/share/ps-plugin/dnet_db.sql
+rm -f %{_datadir}/ps-plugin/dnet_db.sql
#change file permission
-if [ -f /opt/dbspace/.dnet.db ]
+if [ -f %TZ_SYS_DB/.dnet.db ]
then
- chmod 660 /opt/dbspace/.dnet.db
- chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet.db
+ chmod 660 %TZ_SYS_DB/.dnet.db
+ chown telephony:telephony %TZ_SYS_DB/.dnet.db
+ chsmack -a System %TZ_SYS_DB/.dnet.db
fi
-if [ -f /opt/dbspace/.dnet.db-journal ]
+if [ -f %TZ_SYS_DB/.dnet.db-journal ]
then
- chmod 664 /opt/dbspace/.dnet.db-journal
- chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet.db-journal
+ chmod 664 %TZ_SYS_DB/.dnet.db-journal
+ chown telephony:telephony %TZ_SYS_DB/.dnet.db-journal
+ chsmack -a System %TZ_SYS_DB/.dnet.db-journal
fi
-if [ -f /opt/dbspace/.dnet2.db ]
+if [ -f %TZ_SYS_DB/.dnet2.db ]
then
- chmod 660 /opt/dbspace/.dnet2.db
- chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet2.db
+ chmod 660 %TZ_SYS_DB/.dnet2.db
+ chown telephony:telephony %TZ_SYS_DB/.dnet2.db
+ chsmack -a System %TZ_SYS_DB/.dnet2.db
fi
-if [ -f /opt/dbspace/.dnet2.db-journal ]
+if [ -f %TZ_SYS_DB/.dnet2.db-journal ]
then
- chmod 664 /opt/dbspace/.dnet2.db-journal
- chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet2.db-journal
+ chmod 664 %TZ_SYS_DB/.dnet2.db-journal
+ chown telephony:telephony %TZ_SYS_DB/.dnet2.db-journal
+ chsmack -a System %TZ_SYS_DB/.dnet2.db-journal
fi
-if [ -f /etc/opt/upgrade/520.tel-plugin-packetservice.patch.sh ]
-then
- chmod 700 /etc/opt/upgrade/520.tel-plugin-packetservice.patch.sh
-fi
+%postun -p /sbin/ldconfig
-if [ -f /opt/etc/dump.d/module.d/dump_packetservice.sh ]
-then
- chmod 700 /opt/etc/dump.d/module.d/dump_packetservice.sh
-fi
+%post dbinit-profile_tv
+mv %{_datadir}/ps-plugin/dnet_db_init.sql.tv %{_datadir}/ps-plugin/dnet_db_init.sql
+%preun dbinit-profile_tv
+mv %{_datadir}/ps-plugin/dnet_db_init.sql %{_datadir}/ps-plugin/dnet_db_init.sql.tv
-%postun -p /sbin/ldconfig
+%post dbinit-profile_ivi
+mv %{_datadir}/ps-plugin/dnet_db_init.sql.ivi %{_datadir}/ps-plugin/dnet_db_init.sql
+%preun dbinit-profile_ivi
+mv %{_datadir}/ps-plugin/dnet_db_init.sql %{_datadir}/ps-plugin/dnet_db_init.sql.ivi
%install
%make_install
-mkdir -p %{buildroot}%{_datadir}/license
+mkdir -p %{buildroot}/etc/dbus-1/system.d/
+cp %{SOURCE1} %{buildroot}/etc/dbus-1/system.d/tel-plugin-ps.conf
+cp resources/tv/dnet_db_init.sql %{buildroot}%{_datadir}/ps-plugin/dnet_db_init.sql.tv
+cp resources/ivi/dnet_db_init.sql %{buildroot}%{_datadir}/ps-plugin/dnet_db_init.sql.ivi
+
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
+# if tv || "undefined"
+%if "%{?profile}" != "wearable" && "%{?profile}" != "mobile" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
+# Extension for TV
+mv build_tv/ps-plugin.so %{buildroot}%{_libdir}/telephony/plugins/ps-plugin.so.tv
+
+%post profile_tv
+mv %{_libdir}/telephony/plugins/ps-plugin.so.tv %{_libdir}/telephony/plugins/ps-plugin.so
+/sbin/ldconfig
+
+%preun profile_tv
+case "$1" in
+ 0)
+ # This is an un-installation.
+ rm %{_libdir}/telephony/plugins/ps-plugin.so
+ /sbin/ldconfig
+ ;;
+ 1)
+ # This is an upgrade.
+ # Do nothing.
+ :
+ ;;
+esac
+
+%files profile_tv
+%manifest tel-plugin-packetservice.manifest
+%{_libdir}/telephony/plugins/ps-plugin*.tv
+%license LICENSE
+%endif # End of extension for TV
%files
%manifest tel-plugin-packetservice.manifest
-%defattr(-,root,root,-)
-/opt/etc/dump.d/module.d/dump_packetservice.sh
+%defattr(644,root,root,-)
#%doc COPYING
%{_datadir}/ps-plugin/dnet_db.sql
-%{_datadir}/ps-plugin/dnet_db_init.sql
-%{_datadir}/ps-plugin/apns-conf.xml
-%{_sysconfdir}/opt/upgrade/*
+%{_datadir}/ps-plugin/dnet_db_upgrade_30_40.sql
+%{_datadir}/upgrade/scripts/500.dnet_db_upgrade_30_40.sh
+#%{_datadir}/ps-plugin/apns-conf.xml
%{_libdir}/telephony/plugins/ps-plugin*
-%{_datadir}/license/tel-plugin-packetservice
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
+# if tv || "undefined"
+%if "%{?profile}" != "wearable" && "%{?profile}" != "mobile" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
+# Extension for TV
+%exclude %{_libdir}/telephony/plugins/ps-plugin*.tv
+%endif # End of extension for TV
+%license LICENSE
+/etc/dbus-1/system.d/tel-plugin-ps.conf
+
+%files dbinit-profile_common
+%{_datadir}/ps-plugin/dnet_db_init.sql
+%license LICENSE
+
+%files dbinit-profile_tv
+%{_datadir}/ps-plugin/dnet_db_init.sql.tv
+%license LICENSE
+
+%files dbinit-profile_ivi
+%{_datadir}/ps-plugin/dnet_db_init.sql.ivi
+%license LICENSE