Remove files unnecessarily included in the package
[platform/core/connectivity/net-config.git] / packaging / net-config.spec
1 Name:           net-config
2 Summary:        TIZEN Network Configuration service
3 Version:        1.2.10
4 Release:        1
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 BuildRequires:  pkgconfig(key-manager)
18 BuildRequires:  pkgconfig(libnl-3.0)
19 BuildRequires:  pkgconfig(libnl-genl-3.0)
20 BuildRequires:  pkgconfig(hal-api-wifi)
21 Requires:               vconf
22 Requires:               connman
23 Requires:               systemd
24 Requires:               security-config
25 Requires:               iproute2
26 Requires:               iptables
27 Requires:               tcpdump
28 Requires(post):         systemd
29 Requires(preun):        systemd
30 Requires(postun):       systemd
31 Provides:       %{name}-profile_common = %{version}-%{release}
32 Provides:       %{name}-profile_mobile = %{version}-%{release}
33 Provides:       %{name}-profile_wearable = %{version}-%{release}
34 Provides:       %{name}-profile_ivi = %{version}-%{release}
35
36 %description
37 TIZEN Network Configuration service
38
39 %package profile_tv
40 Summary:        net-config extension for TV profile
41 Requires:       %{name} = %{version}-%{release}
42 %description profile_tv
43 TIZEN Network Configuration service extension for Tizen TV profile.
44
45 %package profile_wearable
46 Summary:        net-config extension for wearable profile
47 Requires:       %{name} = %{version}-%{release}
48 %description profile_wearable
49 TIZEN Network Configuration service extension for Tizen wearable profile.
50
51 %package plugin-headed
52 Summary:        net-config extension for headed profile
53 BuildRequires:  pkgconfig(bundle)
54 BuildRequires:  pkgconfig(eventsystem)
55 BuildRequires:  pkgconfig(alarm-service)
56 BuildRequires:  pkgconfig(syspopup-caller)
57 BuildRequires:  pkgconfig(capi-appfw-application)
58 Requires:       %{name} = %{version}-%{release}
59 %description plugin-headed
60 TIZEN Network Configuration service extension for headed profile.
61
62 %package plugin-telephony
63 Summary:        net-config extension for telephony FW
64 BuildRequires:  pkgconfig(tapi)
65 Requires:       %{name} = %{version}-%{release}
66 %description plugin-telephony
67 TIZEN Network Configuration service extension for telephony FW.
68
69 %package plugin-stc
70 Summary:        net-config extension for STC FW
71 BuildRequires:  pkgconfig(capi-network-stc)
72 Requires:       %{name} = %{version}-%{release}
73 %description plugin-stc
74 TIZEN Network Configuration service extension for STC FW.
75
76 %package plugin-battery
77 Summary:        net-config extension for battery FW
78 Requires:       %{name} = %{version}-%{release}
79 %description plugin-battery
80 TIZEN Network Configuration service extension for battery FW.
81
82 %package haltests
83 Summary:        net-config extension for HAL test
84 BuildRequires:  pkgconfig(gmock)
85 BuildRequires:  pkgconfig(capi-network-wifi-manager)
86 BuildRequires:  pkgconfig(capi-network-wifi-direct)
87 BuildRequires:  pkgconfig(capi-network-softap)
88 Requires:       %{name} = %{version}-%{release}
89 %description haltests
90 TIZEN Network Configuration service extension for HAL test.
91
92 %prep
93 %setup -q
94
95 %build
96 # Build for wearable
97 cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
98         -DTIZEN_WLAN_PASSPOINT=1 \
99         -DTIZEN_WLAN_USE_P2P_INTERFACE=1 \
100         -DTIZEN_DEBUG_ENABLE=0 \
101         -DTIZEN_WEARABLE=1 \
102         -DTIZEN_CAPTIVE_PORTAL=1 \
103         -DLIB_PATH=%{_lib} \
104         -DBIN_DIR=%{_bindir} \
105         -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0} \
106         -DBUILD_GCOV=%{?gcov:1}%{!?gcov:0} \
107         .
108
109 %make_install
110 mv %{buildroot}%{_bindir}/net-config %{_builddir}/%{name}-%{version}/net-config.wearable
111
112 make %{?_smp_mflags}
113
114
115 # Build for common packages
116 cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
117         -DTIZEN_WLAN_PASSPOINT=1 \
118         -DTIZEN_WLAN_USE_P2P_INTERFACE=1 \
119         -DTIZEN_DEBUG_ENABLE=0 \
120         -DTIZEN_WEARABLE=0 \
121         -DTIZEN_CAPTIVE_PORTAL=0 \
122         -DLIB_PATH=%{_lib} \
123         -DBIN_DIR=%{_bindir} \
124         -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0} \
125         -DBUILD_GCOV=%{?gcov:1}%{!?gcov:0} \
126         .
127
128 make %{?_smp_mflags}
129
130
131 %install
132 %make_install
133
134 #Settings file
135 mkdir -p %{buildroot}/%{_localstatedir}/lib/net-config
136 cp resources/var/lib/net-config/settings %{buildroot}/%{_localstatedir}/lib/net-config/settings
137
138 #Systemd service file
139 mkdir -p %{buildroot}%{_unitdir}
140
141 mkdir -p %{buildroot}%{_libdir}/udev/rules.d/
142 cp resources/usr/lib/udev/rules.d/99-wifiusb-dev.rules %{buildroot}%{_libdir}/udev/rules.d/99-wifiusb-dev.rules
143 cp resources/usr/lib/systemd/system/net-config_tv.service %{buildroot}%{_unitdir}/net-config.service.tv
144 cp resources/usr/lib/systemd/system/net-config.service %{buildroot}%{_unitdir}/net-config.service
145
146 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants/
147 ln -s ../net-config.service %{buildroot}%{_unitdir}/multi-user.target.wants/net-config.service
148
149 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
150 cp resources/usr/share/dbus-1/system-services/net.netconfig.service %{buildroot}%{_datadir}/dbus-1/system-services/net.netconfig.service
151
152 mkdir -p %{buildroot}%{TZ_SYS_ETC}
153 cp resources/etc/resolv.conf %{buildroot}%{TZ_SYS_ETC}/resolv.conf
154
155 mkdir -p %{buildroot}%{_sysconfdir}
156 ln -s %{TZ_SYS_ETC}/resolv.conf %{buildroot}%{_sysconfdir}/resolv.conf
157
158 #DBus DAC (net-config.manifest enables DBus SMACK)
159 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
160 cp resources/etc/dbus-1/system.d/net-config.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/net-config.conf
161
162 #log dump
163 mkdir -p %{buildroot}/opt/etc/dump.d/module.d/
164 cp resources/opt/etc/dump.d/module.d/network_dump.sh %{buildroot}/opt/etc/dump.d/module.d/network_dump.sh
165 cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}/opt/etc/dump.d/module.d/network_log_dump.sh
166 mkdir -p %{buildroot}/opt/var/lib/net-config/
167 cp resources/opt/etc/dump.d/module.d/network_dump.sh %{buildroot}/opt/var/lib/net-config/network_dump.sh
168 cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}/opt/var/lib/net-config/network_log_dump.sh
169
170 #softreset scripts
171 mkdir -p %{buildroot}/usr/system/RestoreDir/softreset
172 cp resources/usr/system/RestoreDir/softreset/network_softreset.sh %{buildroot}/usr/system/RestoreDir/softreset/network_softreset.sh
173
174 mv %{_builddir}/%{name}-%{version}/net-config.wearable %{buildroot}%{_bindir}
175
176 %post
177 chsmack -a 'System::Shared' %{_sysconfdir}/resolv.conf
178 chsmack -a 'System::Shared' %{TZ_SYS_ETC}/resolv.conf
179
180 #Network logs
181 mkdir -p /opt/usr/data/network
182 chmod 755 /opt/usr/data/network
183 chown network_fw:network_fw /opt/usr/data/network
184 #chsmack -a 'System' /opt/usr/data/network
185
186 #systemctl daemon-reload
187 #systemctl restart net-config.service
188
189 %preun
190 #systemctl stop net-config.service
191
192 %postun
193 #systemctl daemon-reload
194
195
196 %files
197 %manifest net-config.manifest
198 %attr(500,network_fw,network_fw) %{_bindir}/net-config
199 %attr(644,network_fw,network_fw) %{_sysconfdir}/resolv.conf
200 %attr(644,network_fw,network_fw) %{TZ_SYS_ETC}/resolv.conf
201 %attr(644,root,root) %{_datadir}/dbus-1/system-services/*
202 #DBus DAC
203 %attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*
204 %attr(644,root,root) /usr/lib/tmpfiles.d/security-network-config.conf
205 %attr(644,root,root) %{_unitdir}/net-config.service
206 %attr(644,root,root) %{_unitdir}/multi-user.target.wants/net-config.service
207 %attr(644,root,root) /var/lib/net-config/settings
208 %license LICENSE
209 %attr(750,network_fw,network_fw) /opt/etc/dump.d/module.d/network_dump.sh
210 %attr(750,network_fw,network_fw) /opt/var/lib/net-config/network_dump.sh
211 %attr(750,network_fw,network_fw) /opt/etc/dump.d/module.d/network_log_dump.sh
212 %attr(750,network_fw,network_fw) /opt/var/lib/net-config/network_log_dump.sh
213
214 #### tv profile ####
215 %post profile_tv
216 mv %{_unitdir}/net-config.service.tv %{_unitdir}/net-config.service
217
218 %files profile_tv
219 %attr(644,root,root) %{_libdir}/udev/rules.d/99-wifiusb-dev.rules
220 %attr(644,root,root) %{_unitdir}/net-config.service.tv
221
222 #### wearable profile ####
223 %preun profile_wearable
224 rm %{_bindir}/net-config
225
226 %post profile_wearable
227 pushd %{_bindir}
228 mv net-config.wearable net-config
229
230 %files profile_wearable
231 %attr(500,network_fw,network_fw) %{_bindir}/net-config.wearable
232 %attr(644,network_fw,network_fw) /usr/system/RestoreDir/softreset/network_softreset.sh
233
234 #### plugin ####
235 %files plugin-headed
236 %manifest net-config.manifest
237 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-headed.so
238
239 %files plugin-telephony
240 %manifest net-config.manifest
241 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-telephony.so
242
243 %files plugin-stc
244 %manifest net-config.manifest
245 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-stc.so
246
247 %files plugin-battery
248 %manifest net-config.manifest
249 %attr(500,network_fw,network_fw) %{_libdir}/net-config-plugin-battery.so
250
251 %files haltests
252 %manifest net-config.manifest
253 %{_bindir}/hal/*haltests
254