1 %bcond_with connman_openconnect
2 %bcond_without connman_openvpn
3 %bcond_without connman_ipsec
4 %bcond_without connman_vpnd
10 Summary: Connection Manager
11 Url: http://connman.net
12 Group: Network & Connectivity/Connection Management
13 Source0: %{name}-%{version}.tar.gz
14 BuildRequires: systemd-devel
15 BuildRequires: pkgconfig(dbus-1)
16 BuildRequires: pkgconfig(glib-2.0)
17 BuildRequires: pkgconfig(gio-2.0)
18 BuildRequires: pkgconfig(libiptc)
19 BuildRequires: pkgconfig(xtables)
20 BuildRequires: pkgconfig(libsmack)
21 BuildRequires: pkgconfig(libnl-3.0)
22 BuildRequires: pkgconfig(libnl-genl-3.0)
23 BuildRequires: pkgconfig(libsystemd-daemon)
24 %if %{with connman_openconnect}
25 BuildRequires: openconnect
27 %if %{with connman_openvpn}
28 BuildRequires: openvpn
30 %if %{with connman_ipsec}
31 BuildRequires: strongswan
33 BuildRequires: readline-devel
37 Requires(post): systemd
38 Requires(preun): systemd
39 Requires(postun): systemd
41 Requires: security-config
42 Provides: %{name}-profile_common = %{version}-%{release}
43 Provides: %{name}-profile_mobile = %{version}-%{release}
44 Provides: %{name}-profile_wearable = %{version}-%{release}
47 Connection Manager provides a daemon for managing Internet connections
48 within embedded devices running the Linux operating system.
50 %if %{with connman_openconnect}
51 %package plugin-openconnect
52 Summary: Openconnect Support for Connman
53 Requires: %{name} = %{version}
56 %description plugin-openconnect
57 Openconnect Support for Connman.
60 %if %{with connman_openvpn}
61 %package plugin-openvpn
62 Summary: Openvpn Support for Connman
63 Requires: %{name} = %{version}
66 %description plugin-openvpn
67 OpenVPN support for Connman.
70 %if %{with connman_ipsec}
72 Summary: IPsec Support for Connman
73 Requires: %{name} = %{version}
76 %description plugin-ipsec
77 OpenVPN support for Connman.
80 %if %{with connman_vpnd}
82 Summary: VPN Support for Connman
83 #BuildRequires: %{name} = %{version}
84 Requires: %{name} = %{version}
86 %description connman-vpnd
87 Provides VPN support for Connman
91 Summary: Test Scripts for Connection Manager
92 Group: Development/Tools
93 Requires: %{name} = %{version}
99 Scripts for testing Connman and its functionality
102 Summary: Development Files for connman
103 Group: Development/Tools
104 Requires: %{name} = %{version}
107 Header files and development files for connman.
109 %package extension-tv
110 Summary: Connman service script for TV profile
111 Requires: %{name} = %{version}-%{release}
112 Provides: %{name}-profile_tv = %{version}-%{release}
113 Conflicts: %{name}-extension-ivi
114 Conflicts: %{name}-extension-disable-eth
115 %description extension-tv
116 Supplies Tizen TV profile systemd service scripts instead of the default one.
117 This overwrites service script of %{name}.
119 %package extension-ivi
120 Summary: Connman configuration for IVI profile
121 Requires: %{name} = %{version}-%{release}
122 Provides: %{name}-profile_ivi = %{version}-%{release}
123 Conflicts: %{name}-extension-tv
124 Conflicts: %{name}-extension-disable-eth
125 %description extension-ivi
126 Supplies Tizen IVI profile configuration instead of the default one.
127 This overwrites conf file of %{name}.
129 %package extension-disable-eth
130 Summary: Connman configuration for testing which requires the ethernet to be disabled
131 Requires: %{name} = %{version}-%{release}
132 Conflicts: %{name}-extension-tv
133 Conflicts: %{name}-extension-ivi
134 %description extension-disable-eth
135 Connman without ethernet support
136 This overwrites conf file of %{name}.
143 %if %{with connman_vpnd}
144 VPN_CFLAGS+=" -DTIZEN_EXT -lsmack -Werror"
153 --disable-tizen-ext-ins \
154 --enable-tizen-ext-eap-on-ethernet \
156 --enable-wifi=builtin \
157 %if %{with connman_openconnect}
158 --enable-openconnect \
160 %if %{with connman_openvpn}
163 %if %{with connman_ipsec}
166 %if 0%{?enable_connman_features}
170 --enable-telephony=builtin \
174 --with-systemdunitdir=%{_unitdir} \
177 --disable-backtrace \
185 #Systemd service file
186 mkdir -p %{buildroot}%{_unitdir}
188 cp src/connman_tv.service %{buildroot}%{_unitdir}/connman.service.tv
189 cp src/connman.service %{buildroot}%{_unitdir}/connman.service
190 cp vpn/connman-vpn.service %{buildroot}%{_unitdir}/connman-vpn.service
192 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
193 ln -s ../connman.service %{buildroot}%{_unitdir}/multi-user.target.wants/connman.service
195 #Systemd socket file for DNS proxy
196 cp src/connman.socket %{buildroot}%{_unitdir}/connman.socket
197 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants
198 ln -s ../connman.socket %{buildroot}%{_unitdir}/sockets.target.wants/connman.socket
200 mkdir -p %{buildroot}/%{_localstatedir}/lib/connman
201 cp resources/var/lib/connman/settings %{buildroot}/%{_localstatedir}/lib/connman/settings
202 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services
203 cp resources/usr/share/dbus-1/system-services/net.connman.service %{buildroot}%{_datadir}/dbus-1/system-services/net.connman.service
204 mkdir -p %{buildroot}/etc/connman
206 cp src/main_ivi.conf %{buildroot}/etc/connman/main.conf.ivi
207 cp src/main_tv.conf %{buildroot}/etc/connman/main.conf.tv
208 cp src/main_disable_eth.conf %{buildroot}/etc/connman/main.conf.disable.eth
209 cp src/main.conf %{buildroot}/etc/connman/main.conf
211 rm %{buildroot}%{_sysconfdir}/dbus-1/system.d/*.conf
212 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d/
213 cp src/connman.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/
215 %if %{with connman_vpnd}
216 cp vpn/vpn-dbus.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/connman-vpn-dbus.conf
220 #chsmack -a 'System' /%{_localstatedir}/lib/connman
221 #chsmack -a 'System' /%{_localstatedir}/lib/connman/settings
226 systemctl daemon-reload
231 %manifest connman.manifest
232 %attr(500,network_fw,network_fw) %{_bindir}/connmand
233 %attr(500,network_fw,network_fw) %{_bindir}/connmanctl
234 %attr(755,network_fw,network_fw) /%{_localstatedir}/lib/connman
235 %attr(600,network_fw,network_fw) /%{_localstatedir}/lib/connman/settings
236 %attr(644,root,root) %{_datadir}/dbus-1/system-services/net.connman.service
237 %attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*
238 %attr(644,network_fw,network_fw) %{_sysconfdir}/connman/main.conf
239 %attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*.conf
240 %attr(644,root,root) %{_unitdir}/connman.service
241 %attr(644,root,root) %{_unitdir}/multi-user.target.wants/connman.service
242 %attr(644,root,root) %{_unitdir}/connman.socket
243 %attr(644,root,root) %{_unitdir}/sockets.target.wants/connman.socket
247 %manifest connman.manifest
248 %{_libdir}/%{name}/test/*
251 %manifest connman.manifest
253 %{_libdir}/pkgconfig/*.pc
255 %if %{with connman_openconnect}
256 %files plugin-openconnect
257 %manifest %{name}.manifest
258 %{_libdir}/connman/plugins-vpn/openconnect.so
259 %{_libdir}/connman/scripts/openconnect-script
263 %if %{with connman_openvpn}
264 %files plugin-openvpn
265 %manifest %{name}.manifest
266 %{_libdir}/%{name}/plugins-vpn/openvpn.so
267 %{_libdir}/%{name}/scripts/openvpn-script
271 %if %{with connman_ipsec}
273 %manifest %{name}.manifest
274 %{_libdir}/%{name}/plugins-vpn/ipsec.so
275 %{_libdir}/%{name}/scripts/ipsec-script
279 %if %{with connman_vpnd}
281 %manifest %{name}.manifest
282 %{_bindir}/connman-vpnd
283 %dir %{_libdir}/%{name}
284 %dir %{_libdir}/%{name}/scripts
285 %dir %{_libdir}/%{name}/plugins-vpn
286 %attr(644,root,root) %config %{_sysconfdir}/dbus-1/system.d/connman-vpn-dbus.conf
287 %{_datadir}/dbus-1/system-services/net.connman.vpn.service
289 %attr(644,root,root) %{_unitdir}/connman-vpn.service
293 mv -f %{_unitdir}/connman.service.tv %{_unitdir}/connman.service
294 mv -f %{_sysconfdir}/connman/main.conf.tv %{_sysconfdir}/connman/main.conf
296 %attr(644,network_fw,network_fw) %{_sysconfdir}/connman/main.conf.tv
298 %attr(644,root,root) %{_unitdir}/connman.service.tv
300 mv -f %{_sysconfdir}/connman/main.conf.ivi %{_sysconfdir}/connman/main.conf
302 %attr(644,network_fw,network_fw) %{_sysconfdir}/connman/main.conf.ivi
304 %post extension-disable-eth
305 mv -f %{_sysconfdir}/connman/main.conf.disable.eth %{_sysconfdir}/connman/main.conf
306 %files extension-disable-eth
307 %attr(644,network_fw,network_fw) %{_sysconfdir}/connman/main.conf.disable.eth