Replace deprecated APIs of Glib v2.62.3 with suggested GLib APIs
[platform/core/connectivity/net-config.git] / packaging / net-config.spec
index 4b1b85b..58d8bda 100755 (executable)
@@ -1,7 +1,7 @@
 Name:          net-config
 Summary:       TIZEN Network Configuration service
-Version:       1.1.118
-Release:       2
+Version:       1.1.148
+Release:       3
 Group:         System/Network
 License:       Apache-2.0
 Source0:       %{name}-%{version}.tar.gz
@@ -14,11 +14,16 @@ BuildRequires:      pkgconfig(capi-vpnsvc)
 BuildRequires: cmake
 BuildRequires: pkgconfig(sqlite3)
 BuildRequires: pkgconfig(libtzplatform-config)
-BuildRequires:  pkgconfig(libnl-2.0)
+BuildRequires: pkgconfig(key-manager)
+BuildRequires: pkgconfig(libnl-3.0)
+BuildRequires: pkgconfig(libnl-genl-3.0)
 Requires:              vconf
 Requires:              connman
 Requires:              systemd
 Requires:              security-config
+Requires:              iproute2
+Requires:              iptables
+Requires:              tcpdump
 Requires(post):                systemd
 Requires(preun):       systemd
 Requires(postun):      systemd
@@ -36,6 +41,12 @@ Requires:       %{name} = %{version}-%{release}
 %description profile_tv
 TIZEN Network Configuration service extension for Tizen TV profile.
 
+%package profile_wearable
+Summary:        net-config extension for wearable profile
+Requires:       %{name} = %{version}-%{release}
+%description profile_wearable
+TIZEN Network Configuration service extension for Tizen wearable profile.
+
 %package plugin-headed
 Summary:        net-config extension for headed profile
 BuildRequires: pkgconfig(bundle)
@@ -54,40 +65,63 @@ Requires:       %{name} = %{version}-%{release}
 %description plugin-telephony
 TIZEN Network Configuration service extension for telephony FW.
 
-%prep
-%setup -q
+%package plugin-stc
+Summary:        net-config extension for STC FW
+BuildRequires: pkgconfig(capi-network-stc)
+Requires:       %{name} = %{version}-%{release}
+%description plugin-stc
+TIZEN Network Configuration service extension for STC FW.
 
-# NOTE: the following macros are undefined.
-# PLEASE DO NOT USE model_build_features in the future with Tizen 4.0+.
-#{?model_build_feature_wlan_concurrent_mode}
-#{?model_build_feature_wlan_p2p_disable}
-#{?model_build_feature_network_tethering_disable}
-#{?model_build_feature_wlan_wearable}
-# In case, we have commercializing team using such unwelcomed
-# macros in their productin build, we are keeping those.
-# However, it is recommended to remove all if/endif with model_build_feature
+%package plugin-battery
+Summary:        net-config extension for battery FW
+Requires:       %{name} = %{version}-%{release}
+%description plugin-battery
+TIZEN Network Configuration service extension for battery FW.
 
-# NOTE: Are we really going to make "mobile" == "SPRD"?
+%package haltests
+Summary:        net-config extension for HAL test
+BuildRequires: pkgconfig(gmock)
+BuildRequires: pkgconfig(capi-network-wifi-manager)
+BuildRequires: pkgconfig(capi-network-wifi-direct)
+BuildRequires: pkgconfig(capi-network-softap)
+Requires:       %{name} = %{version}-%{release}
+%description haltests
+TIZEN Network Configuration service extension for HAL test.
+
+%prep
+%setup -q
 
 %build
+# Build for wearable
 cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
        -DTIZEN_WLAN_PASSPOINT=1 \
        -DTIZEN_WLAN_USE_P2P_INTERFACE=1 \
-       -DTIZEN_DEBUG_ENABLE=1 \
-%if 0%{?model_build_feature_wlan_concurrent_mode}
-       -DWLAN_CONCURRENT_MODE=1 \
-%endif
-%if ! 0%{?model_build_feature_wlan_p2p_disable}
-       -DTIZEN_P2P_ENABLE=1 \
-%endif
-%if ! 0%{?model_build_feature_network_tethering_disable}
-       -DTIZEN_TETHERING_ENABLE=1 \
-%endif
-%if 0%{?model_build_feature_wlan_wearable} == 1
+       -DTIZEN_DEBUG_ENABLE=0 \
        -DTIZEN_WEARABLE=1 \
        -DTIZEN_CAPTIVE_PORTAL=1 \
-%endif
-        -DLIB_PATH=%{_lib} \
+       -DLIB_PATH=%{_lib} \
+       -DBIN_DIR=%{_bindir} \
+       -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0} \
+       -DBUILD_GCOV=%{?gcov:1}%{!?gcov:0} \
+       .
+
+%make_install
+mv %{buildroot}%{_bindir}/net-config %{_builddir}/%{name}-%{version}/net-config.wearable
+
+make %{?_smp_mflags}
+
+
+# Build for common packages
+cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+       -DTIZEN_WLAN_PASSPOINT=1 \
+       -DTIZEN_WLAN_USE_P2P_INTERFACE=1 \
+       -DTIZEN_DEBUG_ENABLE=0 \
+       -DTIZEN_WEARABLE=0 \
+       -DTIZEN_CAPTIVE_PORTAL=0 \
+       -DLIB_PATH=%{_lib} \
+       -DBIN_DIR=%{_bindir} \
+       -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0} \
+       -DBUILD_GCOV=%{?gcov:1}%{!?gcov:0} \
        .
 
 make %{?_smp_mflags}
@@ -136,14 +170,16 @@ cp resources/etc/dbus-1/system.d/net-config.conf %{buildroot}%{_sysconfdir}/dbus
 #log dump
 mkdir -p %{buildroot}/opt/etc/dump.d/module.d/
 cp resources/opt/etc/dump.d/module.d/network_dump.sh %{buildroot}/opt/etc/dump.d/module.d/network_dump.sh
+cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}/opt/etc/dump.d/module.d/network_log_dump.sh
 mkdir -p %{buildroot}/opt/var/lib/net-config/
 cp resources/opt/etc/dump.d/module.d/network_dump.sh %{buildroot}/opt/var/lib/net-config/network_dump.sh
+cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}/opt/var/lib/net-config/network_log_dump.sh
 
-%if 0%{?model_build_feature_wlan_wearable} == 1
 #softreset scripts
 mkdir -p %{buildroot}/usr/system/RestoreDir/softreset
 cp resources/usr/system/RestoreDir/softreset/network_softreset.sh %{buildroot}/usr/system/RestoreDir/softreset/network_softreset.sh
-%endif
+
+mv %{_builddir}/%{name}-%{version}/net-config.wearable %{buildroot}%{_bindir}
 
 %post
 chsmack -a 'System::Shared' %{_sysconfdir}/resolv.conf
@@ -155,13 +191,6 @@ chmod 755 /opt/usr/data/network
 chown network_fw:network_fw /opt/usr/data/network
 #chsmack -a 'System' /opt/usr/data/network
 
-#Add net-config.service to systemd extra default dependency ignore list
-mkdir -p %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
-ln -sf %{_libdir}/systemd/system/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
-%if "%{?_lib}" == "lib64"
-ln -sf %{_unitdir}/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
-%endif
-
 #systemctl daemon-reload
 #systemctl restart net-config.service
 
@@ -175,6 +204,8 @@ ln -sf %{_unitdir}/net-config.service %{_sysconfdir}/systemd/default-extra-depen
 %files
 %manifest net-config.manifest
 %attr(500,network_fw,network_fw) %{_bindir}/*
+%exclude %{_bindir}/net-config.wearable
+%exclude %{_bindir}/net-config-haltests
 %attr(644,network_fw,network_fw) %{_sysconfdir}/resolv.conf
 %attr(644,network_fw,network_fw) %{TZ_SYS_ETC}/resolv.conf
 %attr(644,root,root) %{_datadir}/dbus-1/system-services/*
@@ -182,30 +213,44 @@ ln -sf %{_unitdir}/net-config.service %{_sysconfdir}/systemd/default-extra-depen
 %attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*
 %attr(644,root,root) %{_libdir}/systemd/system/net-config.service
 %attr(644,root,root) %{_libdir}/systemd/system/multi-user.target.wants/net-config.service
-%attr(644,network_fw,network_fw) /usr/lib/tmpfiles.d/security-network-config.conf
+%attr(644,root,root) /usr/lib/tmpfiles.d/security-network-config.conf
 %if "%{?_lib}" == "lib64"
 %attr(644,root,root) %{_unitdir}/net-config.service
 %attr(644,root,root) %{_unitdir}/multi-user.target.wants/net-config.service
 %endif
 %license LICENSE
-%attr(500,root,root) /opt/etc/dump.d/module.d/network_dump.sh
-%attr(500,network_fw,network_fw) /opt/var/lib/net-config/network_dump.sh
-%if 0%{?model_build_feature_wlan_wearable} == 1
-%attr(700,network_fw,network_fw) /usr/system/RestoreDir/softreset/network_softreset.sh
-%endif
+%attr(750,network_fw,network_fw) /opt/etc/dump.d/module.d/network_dump.sh
+%attr(750,network_fw,network_fw) /opt/var/lib/net-config/network_dump.sh
+%attr(750,network_fw,network_fw) /opt/etc/dump.d/module.d/network_log_dump.sh
+%attr(750,network_fw,network_fw) /opt/var/lib/net-config/network_log_dump.sh
 
+#### tv profile ####
 %post profile_tv
 mv %{_libdir}/systemd/system/net-config.service.tv %{_libdir}/systemd/system/net-config.service
 %if "%{?_lib}" == "lib64"
 mv %{_unitdir}/net-config.service.tv %{_unitdir}/net-config.service
 %endif
+
 %files profile_tv
-%attr(644,network_fw,network_fw) %{_libdir}/udev/rules.d/99-wifiusb-dev.rules
+%attr(644,root,root) %{_libdir}/udev/rules.d/99-wifiusb-dev.rules
 %attr(644,root,root) %{_libdir}/systemd/system/net-config.service.tv
 %if "%{?_lib}" == "lib64"
 %attr(644,root,root) %{_unitdir}/net-config.service.tv
 %endif
 
+#### wearable profile ####
+%preun profile_wearable
+rm %{_bindir}/net-config
+
+%post profile_wearable
+pushd %{_bindir}
+mv net-config.wearable net-config
+
+%files profile_wearable
+%attr(500,network_fw,network_fw) %{_bindir}/net-config.wearable
+%attr(644,network_fw,network_fw) /usr/system/RestoreDir/softreset/network_softreset.sh
+
+#### plugin ####
 %files plugin-headed
 %manifest net-config.manifest
 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-headed.so
@@ -213,3 +258,16 @@ mv %{_unitdir}/net-config.service.tv %{_unitdir}/net-config.service
 %files plugin-telephony
 %manifest net-config.manifest
 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-telephony.so
+
+%files plugin-stc
+%manifest net-config.manifest
+%attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-stc.so
+
+%files plugin-battery
+%manifest net-config.manifest
+%attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-battery.so
+
+%files haltests
+%manifest net-config.manifest
+%{_bindir}/*haltests
+