[WGID-159165] Fixed unreachable code
[platform/core/connectivity/net-config.git] / packaging / net-config.spec
1 Name:           net-config
2 Summary:        TIZEN Network Configuration service
3 Version:        1.1.113
4 Release:        2
5 Group:          System/Network
6 License:        Apache-2.0
7 Source0:        %{name}-%{version}.tar.gz
8 BuildRequires:  pkgconfig(dlog)
9 BuildRequires:  pkgconfig(vconf)
10 BuildRequires:  pkgconfig(gio-2.0)
11 BuildRequires:  pkgconfig(glib-2.0)
12 BuildRequires:  pkgconfig(capi-system-info)
13 BuildRequires:  pkgconfig(capi-vpnsvc)
14 BuildRequires:  cmake
15 BuildRequires:  pkgconfig(sqlite3)
16 BuildRequires:  pkgconfig(libtzplatform-config)
17 Requires:               vconf
18 Requires:               connman
19 Requires:               systemd
20 Requires(post):         systemd
21 Requires(preun):        systemd
22 Requires(postun):       systemd
23 Provides:       %{name}-profile_common = %{version}-%{release}
24 Provides:       %{name}-profile_mobile = %{version}-%{release}
25 Provides:       %{name}-profile_wearable = %{version}-%{release}
26 Provides:       %{name}-profile_ivi = %{version}-%{release}
27
28 %define upgrade_script_path /usr/share/upgrade/scripts
29
30 %description
31 TIZEN Network Configuration service
32
33 %package profile_tv
34 Summary:        net-config extension for TV profile
35 Requires:       %{name} = %{version}-%{release}
36 %description profile_tv
37 TIZEN Network Configuration service extension for Tizen TV profile.
38
39 %package plugin-headed
40 Summary:        net-config extension for headed profile
41 BuildRequires:  pkgconfig(bundle)
42 BuildRequires:  pkgconfig(eventsystem)
43 BuildRequires:  pkgconfig(alarm-service)
44 BuildRequires:  pkgconfig(syspopup-caller)
45 BuildRequires:  pkgconfig(capi-appfw-application)
46 Requires:       %{name} = %{version}-%{release}
47 %description plugin-headed
48 TIZEN Network Configuration service extension for headed profile.
49
50 %package plugin-telephony
51 Summary:        net-config extension for telephony FW
52 BuildRequires:  pkgconfig(tapi)
53 Requires:       %{name} = %{version}-%{release}
54 %description plugin-telephony
55 TIZEN Network Configuration service extension for telephony FW.
56
57 %prep
58 %setup -q
59
60 # NOTE: the following macros are undefined.
61 # PLEASE DO NOT USE model_build_features in the future with Tizen 4.0+.
62 #{?model_build_feature_wlan_concurrent_mode}
63 #{?model_build_feature_wlan_p2p_disable}
64 #{?model_build_feature_network_tethering_disable}
65 #{?model_build_feature_wlan_wearable}
66 # In case, we have commercializing team using such unwelcomed
67 # macros in their productin build, we are keeping those.
68 # However, it is recommended to remove all if/endif with model_build_feature
69
70 # NOTE: Are we really going to make "mobile" == "SPRD"?
71
72 %build
73 cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
74         -DTIZEN_WLAN_PASSPOINT=1 \
75         -DTIZEN_WLAN_USE_P2P_INTERFACE=1 \
76 %if 0%{?model_build_feature_wlan_concurrent_mode}
77         -DWLAN_CONCURRENT_MODE=1 \
78 %endif
79 %if ! 0%{?model_build_feature_wlan_p2p_disable}
80         -DTIZEN_P2P_ENABLE=1 \
81 %endif
82 %if ! 0%{?model_build_feature_network_tethering_disable}
83         -DTIZEN_TETHERING_ENABLE=1 \
84 %endif
85 %if 0%{?model_build_feature_wlan_wearable} == 1
86         -DTIZEN_WEARABLE=1 \
87         -DTIZEN_CAPTIVE_PORTAL=1 \
88 %endif
89          -DLIB_PATH=%{_lib} \
90         .
91
92 make %{?_smp_mflags}
93
94
95 %install
96 %make_install
97
98 #Systemd service file
99 mkdir -p %{buildroot}%{_libdir}/systemd/system/
100 %if "%{?_lib}" == "lib64"
101 mkdir -p %{buildroot}%{_unitdir}
102 %endif
103
104 cp resources/usr/lib/systemd/system/net-config_tv.service %{buildroot}%{_libdir}/systemd/system/net-config.service.tv
105 mkdir -p %{buildroot}%{_libdir}/udev/rules.d/
106 cp resources/usr/lib/udev/rules.d/99-wifiusb-dev.rules %{buildroot}%{_libdir}/udev/rules.d/99-wifiusb-dev.rules
107 %if "%{?_lib}" == "lib64"
108 cp resources/usr/lib/systemd/system/net-config_tv.service %{buildroot}%{_unitdir}/net-config.service.tv
109 %endif
110 cp resources/usr/lib/systemd/system/net-config.service %{buildroot}%{_libdir}/systemd/system/net-config.service
111 %if "%{?_lib}" == "lib64"
112 cp resources/usr/lib/systemd/system/net-config.service %{buildroot}%{_unitdir}/net-config.service
113 %endif
114
115 mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/
116 ln -s ../net-config.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/net-config.service
117 %if "%{?_lib}" == "lib64"
118 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants/
119 ln -s ../net-config.service %{buildroot}%{_unitdir}/multi-user.target.wants/net-config.service
120 %endif
121
122 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
123 cp resources/usr/share/dbus-1/system-services/net.netconfig.service %{buildroot}%{_datadir}/dbus-1/system-services/net.netconfig.service
124
125 mkdir -p %{buildroot}%{TZ_SYS_ETC}
126 cp resources/etc/resolv.conf %{buildroot}%{TZ_SYS_ETC}/resolv.conf
127 mkdir -p %{buildroot}/usr/share/upgrade/data/
128 cp resources/etc/resolv.conf %{buildroot}/usr/share/upgrade/data/resolv.conf
129
130 mkdir -p %{buildroot}%{_sysconfdir}
131 ln -s %{TZ_SYS_ETC}/resolv.conf %{buildroot}%{_sysconfdir}/resolv.conf
132
133 #DBus DAC (net-config.manifest enables DBus SMACK)
134 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
135 cp resources/etc/dbus-1/system.d/net-config.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/net-config.conf
136
137 %if 0%{?model_build_feature_wlan_wearable} == 1
138 #softreset scripts
139 mkdir -p %{buildroot}/usr/system/RestoreDir/softreset
140 cp resources/usr/system/RestoreDir/softreset/network_softreset.sh %{buildroot}/usr/system/RestoreDir/softreset/network_softreset.sh
141 %endif
142
143 #OS Upgrade
144 mkdir -p %{buildroot}%{upgrade_script_path}
145 cp -f scripts/500.netconfig_upgrade.sh %{buildroot}%{upgrade_script_path}
146
147 %post
148 chsmack -a 'System::Shared' %{_sysconfdir}/resolv.conf
149 chsmack -a 'System::Shared' %{TZ_SYS_ETC}/resolv.conf
150
151 #Network logs
152 mkdir -p /opt/usr/data/network
153 chmod 755 /opt/usr/data/network
154 chown network_fw:network_fw /opt/usr/data/network
155 #chsmack -a 'System' /opt/usr/data/network
156
157 #Add net-config.service to systemd extra default dependency ignore list
158 mkdir -p %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
159 ln -sf %{_libdir}/systemd/system/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
160 %if "%{?_lib}" == "lib64"
161 ln -sf %{_unitdir}/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
162 %endif
163
164 #systemctl daemon-reload
165 #systemctl restart net-config.service
166
167 %preun
168 #systemctl stop net-config.service
169
170 %postun
171 #systemctl daemon-reload
172
173
174 %files
175 %manifest net-config.manifest
176 %attr(500,network_fw,network_fw) %{_bindir}/*
177 %attr(644,network_fw,network_fw) %{_sysconfdir}/resolv.conf
178 %attr(644,network_fw,network_fw) %{TZ_SYS_ETC}/resolv.conf
179 %attr(644,network_fw,network_fw) /usr/share/upgrade/data/resolv.conf
180 %attr(644,network_fw,network_fw) %{_datadir}/dbus-1/system-services/*
181 #DBus DAC
182 %attr(644,network_fw,network_fw) %{_sysconfdir}/dbus-1/system.d/*
183 %attr(644,network_fw,network_fw) %{_libdir}/systemd/system/net-config.service
184 %attr(644,network_fw,network_fw) %{_libdir}/systemd/system/multi-user.target.wants/net-config.service
185 %if "%{?_lib}" == "lib64"
186 %attr(644,network_fw,network_fw) %{_unitdir}/net-config.service
187 %attr(644,network_fw,network_fw) %{_unitdir}/multi-user.target.wants/net-config.service
188 %endif
189 %license LICENSE
190 %if 0%{?model_build_feature_wlan_wearable} == 1
191 %attr(700,network_fw,network_fw) /usr/system/RestoreDir/softreset/network_softreset.sh
192 %endif
193 %{upgrade_script_path}/500.netconfig_upgrade.sh
194
195 %post profile_tv
196 mv %{_libdir}/systemd/system/net-config.service.tv %{_libdir}/systemd/system/net-config.service
197 %if "%{?_lib}" == "lib64"
198 mv %{_unitdir}/net-config.service.tv %{_unitdir}/net-config.service
199 %endif
200 %files profile_tv
201 %attr(644,network_fw,network_fw) %{_libdir}/udev/rules.d/99-wifiusb-dev.rules
202 %attr(644,network_fw,network_fw) %{_libdir}/systemd/system/net-config.service.tv
203 %if "%{?_lib}" == "lib64"
204 %attr(644,network_fw,network_fw) %{_unitdir}/net-config.service.tv
205 %endif
206
207 %files plugin-headed
208 %manifest net-config.manifest
209 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-headed.so
210 %attr(644,network_fw,network_fw) /usr/lib/tmpfiles.d/security-network-config.conf
211
212 %files plugin-telephony
213 %manifest net-config.manifest
214 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-telephony.so