+# 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 3
-%define patchlevel 30
+%define minor 4
+%define patchlevel 12
Name: tel-plugin-packetservice
Version: %{major}.%{minor}.%{patchlevel}
BuildRequires: pkgconfig(tcore)
BuildRequires: pkgconfig(db-util)
BuildRequires: pkgconfig(vconf)
-BuildRequires: pkgconfig(alarm-service)
+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} \
-#%if 0%{?model_build_feature_connect_default_connection_without_timer}
-# -DCONNECT_DEFAULT_CONNECTION_WITHOUT_TIMER=1 \
-#%endif
-#%if 0%{?prepaid_sim_apn_support}
-# -DPREPAID_SIM_APN_SUPPORT=1 \
-#%endif
+ -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} \
+ -DPREPAID_SIM_APN_SUPPORT=0 \
make %{?_smp_mflags}
%postun -p /sbin/ldconfig
+%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
+
+%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(644,root,root,-)
#%doc COPYING
%{_datadir}/ps-plugin/dnet_db.sql
-%{_datadir}/ps-plugin/dnet_db_init.sql
-%{_datadir}/ps-plugin/dnet_db_upgrade_24_30.sql
-%{_datadir}/upgrade/scripts/dnet_db_upgrade_24_30.sh
+%{_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