Merge "Updated connman.socket file" into tizen
[platform/upstream/connman.git] / packaging / connman.spec
1 %bcond_with     connman_openconnect
2 %bcond_without  connman_openvpn
3 %bcond_without  connman_vpnd
4
5 Name:           connman
6 Version:        1.29
7 Release:        21
8 License:        GPL-2.0+
9 Summary:        Connection Manager
10 Url:            http://connman.net
11 Group:          Network & Connectivity/Connection Management
12 Source0:        %{name}-%{version}.tar.gz
13 BuildRequires:  systemd-devel
14 BuildRequires:  pkgconfig(dbus-1)
15 BuildRequires:  pkgconfig(glib-2.0)
16 BuildRequires:  pkgconfig(libiptc)
17 BuildRequires:  pkgconfig(xtables)
18 BuildRequires:  pkgconfig(libsmack)
19 BuildRequires:  pkgconfig(tpkp-gnutls)
20 BuildRequires:  pkgconfig(libsystemd-daemon)
21 %if %{with connman_openconnect}
22 BuildRequires:  openconnect
23 %endif
24 %if %{with connman_openvpn}
25 BuildRequires:  openvpn
26 %endif
27 BuildRequires:  ca-certificates-devel
28 BuildRequires:  readline-devel
29 #%systemd_requires
30 Requires:       iptables
31 Requires:         systemd
32 Requires(post):   systemd
33 Requires(preun):  systemd
34 Requires(postun): systemd
35 Requires:         net-config
36 Provides:       %{name}-profile_common = %{version}-%{release}
37 Provides:       %{name}-profile_mobile = %{version}-%{release}
38 Provides:       %{name}-profile_wearable = %{version}-%{release}
39
40 %define upgrade_script_filename 500.connman_upgrade.sh
41 %define upgrade_script_path /usr/share/upgrade/scripts
42
43 %description
44 Connection Manager provides a daemon for managing Internet connections
45 within embedded devices running the Linux operating system.
46
47 %if %{with connman_openconnect}
48 %package plugin-openconnect
49 Summary:        Openconnect Support for Connman
50 Requires:       %{name} = %{version}
51 Requires:       openconnect
52
53 %description plugin-openconnect
54 Openconnect Support for Connman.
55 %endif
56
57 %if %{with connman_openvpn}
58 %package plugin-openvpn
59 Summary:        Openvpn Support for Connman
60 Requires:       %{name} = %{version}
61 Requires:       openvpn
62
63 %description plugin-openvpn
64 OpenVPN support for Connman.
65 %endif
66
67 %if %{with connman_vpnd}
68 %package connman-vpnd
69 Summary:        VPN Support for Connman
70 #BuildRequires:  %{name} = %{version}
71 Requires:       %{name} = %{version}
72
73 %description connman-vpnd
74 Provides VPN support for Connman
75 %endif
76
77 %package test
78 Summary:        Test Scripts for Connection Manager
79 Group:          Development/Tools
80 Requires:       %{name} = %{version}
81 Requires:       dbus-python
82 Requires:       pygobject
83 Requires:       python-xml
84
85 %description test
86 Scripts for testing Connman and its functionality
87
88 %package devel
89 Summary:        Development Files for connman
90 Group:          Development/Tools
91 Requires:       %{name} = %{version}
92
93 %description devel
94 Header files and development files for connman.
95
96 %package extension-tv
97 Summary:        Connman service script for TV profile
98 Requires:       %{name} = %{version}-%{release}
99 Provides:       %{name}-profile_tv = %{version}-%{release}
100 Conflicts:      %{name}-extension-ivi
101 %description extension-tv
102 Supplies Tizen TV profile systemd service scripts instead of the default one.
103 This overwrites service script of %{name}.
104
105 %package extension-ivi
106 Summary:        Connman configuration for IVI profile
107 Requires:       %{name} = %{version}-%{release}
108 Provides:       %{name}-profile_ivi = %{version}-%{release}
109 Conflicts:      %{name}-extension-tv
110 %description extension-ivi
111 Supplies Tizen IVI profile configuration instead of the default one.
112 This overwrites conf file of %{name}.
113
114 %prep
115 %setup -q
116
117
118 %build
119 CFLAGS+=" -DTIZEN_EXT -lsmack -Werror"
120 CFLAGS+=" -DTIZEN_SYS_CA_BUNDLE=\"%TZ_SYS_RO_CA_BUNDLE\""
121
122 %if %{with connman_vpnd}
123 VPN_CFLAGS+=" -DTIZEN_EXT -lsmack -Werror"
124 %endif
125
126 chmod +x bootstrap
127 ./bootstrap
128 %configure \
129             --sysconfdir=/etc \
130             --enable-client \
131             --enable-pacrunner \
132             --enable-wifi=builtin \
133 %if %{with connman_openconnect}
134             --enable-openconnect \
135 %endif
136 %if %{with connman_openvpn}
137             --enable-openvpn \
138 %endif
139 %if 0%{?enable_connman_features}
140             %connman_features \
141 %endif
142             --disable-ofono \
143             --enable-telephony=builtin \
144             --enable-test \
145                         --enable-loopback \
146                         --enable-ethernet \
147             --with-systemdunitdir=%{_libdir}/systemd/system \
148             --enable-pie \
149                         --disable-wispr
150
151 make %{?_smp_mflags}
152
153 %install
154 %make_install
155
156 #Systemd service file
157 mkdir -p %{buildroot}%{_libdir}/systemd/system/
158 %if "%{?_lib}" == "lib64"
159 mkdir -p %{buildroot}%{_unitdir}
160 %endif
161
162 %if "%{?_lib}" == "lib64"
163 cp src/connman_tv.service %{buildroot}%{_unitdir}/connman.service.tv
164 cp src/connman.service %{buildroot}%{_unitdir}/connman.service
165 cp vpn/connman-vpn.service %{buildroot}%{_unitdir}/connman-vpn.service
166 %else
167 cp src/connman_tv.service %{buildroot}%{_libdir}/systemd/system/connman.service.tv
168 %endif
169
170 mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants
171 ln -s ../connman.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/connman.service
172 %if "%{?_lib}" == "lib64"
173 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
174 ln -s ../connman.service %{buildroot}%{_unitdir}/multi-user.target.wants/connman.service
175 %endif
176
177 #Systemd socket file for DNS proxy
178 %if "%{?_lib}" == "lib64"
179 cp src/connman.socket %{buildroot}%{_unitdir}/connman.socket
180 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants
181 ln -s ../connman.socket %{buildroot}%{_unitdir}/sockets.target.wants/connman.socket
182 %else
183 cp src/connman.socket %{buildroot}%{_libdir}/systemd/system/connman.socket
184 mkdir -p %{buildroot}%{_libdir}/systemd/system/sockets.target.wants
185 ln -s ../connman.socket %{buildroot}%{_libdir}/systemd/system/sockets.target.wants/connman.socket
186 %endif
187
188 mkdir -p %{buildroot}/%{_localstatedir}/lib/connman
189 cp resources/var/lib/connman/settings %{buildroot}/%{_localstatedir}/lib/connman/settings
190 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services
191 cp resources/usr/share/dbus-1/system-services/net.connman.service %{buildroot}%{_datadir}/dbus-1/system-services/net.connman.service
192 mkdir -p %{buildroot}/etc/connman
193
194 cp src/main_ivi.conf %{buildroot}/etc/connman/main.conf.ivi
195 cp src/main_tv.conf %{buildroot}/etc/connman/main.conf.tv
196 cp src/main.conf %{buildroot}/etc/connman/main.conf
197
198 rm %{buildroot}%{_sysconfdir}/dbus-1/system.d/*.conf
199 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d/
200 cp src/connman.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/
201
202 %if %{with connman_vpnd}
203 cp vpn/vpn-dbus.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/connman-vpn-dbus.conf
204 %endif
205
206 #OS Upgrade
207 mkdir -p %{buildroot}%{upgrade_script_path}
208 cp -f scripts/%{upgrade_script_filename} %{buildroot}%{upgrade_script_path}
209
210 %post
211 chsmack -a 'System' /%{_localstatedir}/lib/connman
212 chsmack -a 'System' /%{_localstatedir}/lib/connman/settings
213
214 %preun
215
216 %postun
217 systemctl daemon-reload
218
219 %docs_package
220
221 %files
222 %manifest connman.manifest
223 %attr(500,root,root) %{_sbindir}/*
224 %attr(500,root,root) %{_bindir}/connmanctl
225 %attr(600,root,root) /%{_localstatedir}/lib/connman/settings
226 #%{_libdir}/connman/plugins/*.so
227 %attr(644,root,root) %{_datadir}/dbus-1/system-services/*
228 #%{_datadir}/dbus-1/services/*
229 %{_sysconfdir}/dbus-1/system.d/*
230 %attr(644,root,root) %{_sysconfdir}/connman/main.conf
231 %{_sysconfdir}/dbus-1/system.d/*.conf
232 %attr(644,root,root) %{_libdir}/systemd/system/connman.service
233 %attr(644,root,root) %{_libdir}/systemd/system/multi-user.target.wants/connman.service
234 %attr(644,root,root) %{_libdir}/systemd/system/connman-vpn.service
235 %if "%{?_lib}" == "lib64"
236 %attr(644,root,root) %{_unitdir}/connman.service
237 %attr(644,root,root) %{_unitdir}/multi-user.target.wants/connman.service
238 %attr(644,root,root) %{_unitdir}/connman-vpn.service
239 %attr(644,root,root) %{_unitdir}/connman.socket
240 %attr(644,root,root) %{_unitdir}/sockets.target.wants/connman.socket
241 %else
242 %attr(644,root,root) %{_libdir}/systemd/system/connman.socket
243 %attr(644,root,root) %{_libdir}/systemd/system/sockets.target.wants/connman.socket
244 %endif
245 %license COPYING
246 %{upgrade_script_path}/%{upgrade_script_filename}
247
248 %files test
249 %manifest connman.manifest
250 %{_libdir}/%{name}/test/*
251
252 %files devel
253 %manifest connman.manifest
254 %{_includedir}/*
255 %{_libdir}/pkgconfig/*.pc
256
257 %if %{with connman_openconnect}
258 %files plugin-openconnect
259 %manifest %{name}.manifest
260 %{_libdir}/connman/plugins-vpn/openconnect.so
261 %{_libdir}/connman/scripts/openconnect-script
262 %{_datadir}/dbus-1/system-services/net.connman.vpn.service
263 %license COPYING
264 %endif
265
266 %if %{with connman_openvpn}
267 %files plugin-openvpn
268 %manifest %{name}.manifest
269 %{_libdir}/%{name}/plugins-vpn/openvpn.so
270 %{_libdir}/%{name}/scripts/openvpn-script
271 %{_datadir}/dbus-1/system-services/net.connman.vpn.service
272 %license COPYING
273 %endif
274
275 %if %{with connman_vpnd}
276 %files connman-vpnd
277 %manifest %{name}.manifest
278 #%{_sbindir}/connman-vpnd
279 %dir %{_libdir}/%{name}
280 %dir %{_libdir}/%{name}/scripts
281 %dir %{_libdir}/%{name}/plugins-vpn
282 %config %{_sysconfdir}/dbus-1/system.d/connman-vpn-dbus.conf
283 %{_datadir}/dbus-1/system-services/net.connman.vpn.service
284 %license COPYING
285 %endif
286
287 %post extension-tv
288 mv -f %{_libdir}/systemd/system/connman.service.tv %{_libdir}/systemd/system/connman.service
289 mv -f %{_sysconfdir}/connman/main.conf.tv %{_sysconfdir}/connman/main.conf
290 %files extension-tv
291 %attr(644,root,root) %{_sysconfdir}/connman/main.conf.tv
292 %license COPYING
293 %if "%{?_lib}" == "lib64"
294 %attr(644,root,root) %{_unitdir}/connman.service.tv
295 %else
296 %attr(644,root,root) %{_libdir}/systemd/system/connman.service.tv
297 %endif
298 %post extension-ivi
299 mv -f %{_sysconfdir}/connman/main.conf.ivi %{_sysconfdir}/connman/main.conf
300 %files extension-ivi
301 %attr(644,root,root) %{_sysconfdir}/connman/main.conf.ivi
302 %license COPYING
303