Add upgrade script to Tizen 4.0
[platform/core/telephony/tel-plugin-packetservice.git] / packaging / tel-plugin-packetservice.spec
index 2e624b9..8e41043 100644 (file)
@@ -1,6 +1,10 @@
+# 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}
@@ -22,27 +26,85 @@ BuildRequires:  pkgconfig(iniparser)
 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}
 
@@ -96,21 +158,79 @@ fi
 
 %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