]> git.pld-linux.org Git - packages/libproxy.git/blob - libproxy.spec
- bcond for NetworkManager module
[packages/libproxy.git] / libproxy.spec
1 # TODO:
2 # - natus-based pacrunner (doesn't build with natus 0.2.1)
3 # - ruby binding (not finished as of 0.4.8 - no buildsystem)
4 #
5 # Conditional build:
6 %bcond_without  kde             # KDE 4/5 config plugin
7 %bcond_without  duktape         # Duktape pacrunner plugin
8 %bcond_without  mozjs           # MozJS pacrunner plugin
9 %bcond_with     natus           # Natus pacrunner plugin [doesn't build with natus 0.2.1]
10 %bcond_without  webkit          # WebKit pacrunner plugin
11 %bcond_without  mono            # Mono C# bindings
12
13 %ifarch x32
14 %undefine       with_mono
15 %endif
16 Summary:        Library for automatic proxy configuration management
17 Summary(pl.UTF-8):      Biblioteka do automatycznego zarządzania konfiguracją proxy
18 Name:           libproxy
19 Version:        0.4.18
20 Release:        2
21 License:        LGPL v2.1+
22 Group:          Libraries
23 #Source0Download: https://github.com/libproxy/libproxy/releases
24 Source0:        https://github.com/libproxy/libproxy/archive/%{version}/%{name}-%{version}.tar.gz
25 # Source0-md5:  21d13e5d699c3c21ab5eb2260ed9247a
26 Patch0:         %{name}-pac-modules.patch
27 URL:            https://libproxy.github.io/libproxy/
28 BuildRequires:  NetworkManager-devel
29 BuildRequires:  cmake >= 2.6
30 BuildRequires:  dbus-devel
31 %{?with_duktape:BuildRequires:  duktape-devel}
32 BuildRequires:  glib2-devel >= 1:2.26
33 %{?with_webkit:BuildRequires:   gtk-webkit4-devel >= 2.6}
34 BuildRequires:  libstdc++-devel >= 6:7
35 %{?with_mono:BuildRequires:     mono-csharp}
36 %{?with_mozjs:BuildRequires:    mozjs68-devel}
37 %{?with_natus:BuildRequires:    natus-devel}
38 BuildRequires:  perl-devel >= 1:5.8.0
39 BuildRequires:  pkgconfig
40 BuildRequires:  python-devel >= 1:2.5
41 BuildRequires:  python-modules >= 1:2.5
42 BuildRequires:  python3-devel >= 1:3.2
43 BuildRequires:  python3-modules >= 1:3.2
44 BuildRequires:  rpm-perlprov >= 4.1-13
45 BuildRequires:  rpm-pythonprov
46 BuildRequires:  rpmbuild(macros) >= 1.752
47 BuildRequires:  sed >= 4.0
48 BuildRequires:  xorg-lib-libX11-devel
49 BuildRequires:  xorg-lib-libXmu-devel
50 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51
52 %description
53 Library for automatic proxy configuration management.
54
55 %description -l pl.UTF-8
56 Biblioteka do automatycznego zarządzania konfiguracją proxy.
57
58 %package devel
59 Summary:        Header files for libproxy library
60 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki libproxy
61 Group:          Development/Libraries
62 Requires:       %{name} = %{version}-%{release}
63 Requires:       libstdc++-devel
64 Obsoletes:      libproxy-static < 0.4
65
66 %description devel
67 Header files for libproxy library.
68
69 %description devel -l pl.UTF-8
70 Pliki nagłówkowe biblioteki libproxy.
71
72 %package -n dotnet-libproxy-sharp
73 Summary:        Libproxy# - libproxy .NET bindings
74 Summary(pl.UTF-8):      Libproxy# - wiązania libproxy dla .NET
75 Group:          Libraries
76 Requires:       %{name} = %{version}-%{release}
77
78 %description -n dotnet-libproxy-sharp
79 Libproxy# - libproxy .NET bindings.
80
81 %description -n dotnet-libproxy-sharp -l pl.UTF-8
82 Libproxy# - wiązania libproxy dla .NET.
83
84 %package -n dotnet-libproxy-sharp-devel
85 Summary:        libproxy .NET bindings - development files
86 Summary(pl.UTF-8):      Wiązania libproxy dla .NET - pliki programistyczne
87 Group:          Development/Libraries
88 Requires:       dotnet-libproxy-sharp = %{version}-%{release}
89
90 %description -n dotnet-libproxy-sharp-devel
91 Development files for libproxy .NET bindings.
92
93 %description -n dotnet-libproxy-sharp-devel -l pl.UTF-8
94 Pliki programistyczne wiązań libproxy dla .NET.
95
96 %package -n perl-Net-Libproxy
97 Summary:        libproxy Perl bindings
98 Summary(pl.UTF-8):      Wiązania libproxy dla Perla
99 Group:          Development/Languages/Perl
100 Requires:       %{name} = %{version}-%{release}
101
102 %description -n perl-Net-Libproxy
103 libproxy Perl bindings.
104
105 %description -n perl-Net-Libproxy -l pl.UTF-8
106 Wiązania libproxy dla Perla.
107
108 %package -n python-libproxy
109 Summary:        libproxy Python bindings
110 Summary(pl.UTF-8):      Wiązania libproxy dla Pythona
111 Group:          Libraries/Python
112 # uses libproxy shared library
113 Requires:       %{name} = %{version}-%{release}
114 Requires:       python-libs >= 1:2.5
115 BuildArch:      noarch
116
117 %description -n python-libproxy
118 libproxy Python bindings.
119
120 %description -n python-libproxy -l pl.UTF-8
121 Wiązania libproxy dla Pythona.
122
123 %package -n python3-libproxy
124 Summary:        libproxy Python 3 bindings
125 Summary(pl.UTF-8):      Wiązania libproxy dla Pythona 3
126 Group:          Libraries/Python
127 # uses libproxy shared library
128 Requires:       %{name} = %{version}-%{release}
129 Requires:       python3-libs >= 1:3.2
130 BuildArch:      noarch
131
132 %description -n python3-libproxy
133 libproxy Python 3 bindings.
134
135 %description -n python3-libproxy -l pl.UTF-8
136 Wiązania libproxy dla Pythona 3.
137
138 %package -n vala-libproxy
139 Summary:        Vala bindings for libproxy API
140 Summary(pl.UTF-8):      Wiązania API libproxy dla języka Vala
141 Group:          Development/Languages
142 Requires:       %{name}-devel = %{version}-%{release}
143 BuildArch:      noarch
144
145 %description -n vala-libproxy
146 Vala bindings for libproxy API.
147
148 %description -n vala-libproxy -l pl.UTF-8
149 Wiązania API libproxy dla języka Vala.
150
151 %package networkmanager
152 Summary:        NetworkManager network plugin for libproxy
153 Summary(pl.UTF-8):      Wtyczka sieci NetworkManager dla libproxy
154 Group:          Libraries
155 Requires:       %{name} = %{version}-%{release}
156
157 %description networkmanager
158 NetworkManager network plugin for libproxy, to query NetworkManager
159 about network configuration changes.
160
161 %description networkmanager -l pl.UTF-8
162 Wtyczka sieci NetworkManager dla libproxy, do odpytywania
163 NetworkManagera o zmiany konfiguracji sieci.
164
165 %package gnome
166 Summary:        GNOME configuration plugin for libproxy
167 Summary(pl.UTF-8):      Wtyczka konfiguracji GNOME dla libproxy
168 Group:          Libraries
169 Requires:       %{name} = %{version}-%{release}
170 Requires:       glib2 >= 1:2.26
171
172 %description gnome
173 GNOME (gsettings) configuration plugin for libproxy, to query GNOME
174 about proxy settings.
175
176 %description gnome -l pl.UTF-8
177 Wtyczka konfiguracji GNOME (gsettings) dla libproxy, do odczytu
178 ustawień proxy z GNOME.
179
180 %package kde
181 Summary:        KDE configuration plugin for libproxy
182 Summary(pl.UTF-8):      Wtyczka konfiguracji KDE dla libproxy
183 Group:          Libraries
184 Requires:       %{name} = %{version}-%{release}
185 #Requires:      kreadconfig (KDE4) or kreadconfig5 (KF5)
186
187 %description kde
188 KDE configuration plugin for libproxy, to query KDE about proxy
189 settings.
190
191 %description kde -l pl.UTF-8
192 Wtyczka konfiguracji KDE dla libproxy, do odczytu ustawień proxy z
193 KDE.
194
195 %package pacrunner
196 Summary:        Pacrunner configuration plugin for libproxy
197 Summary(pl.UTF-8):      Wtyczka konfiguracji pacrunner dla libproxy
198 Group:          Libraries
199 Requires:       %{name} = %{version}-%{release}
200
201 %description pacrunner
202 Pacrunner configuration plugin for libproxy, to query pacrunner about
203 proxy settings.
204
205 %description pacrunner -l pl.UTF-8
206 Wtyczka konfiguracji pacrunner dla libproxy, do odczytu ustawień proxy
207 z pacrunnera.
208
209 %package duktape
210 Summary:        Duktape pacrunner plugin for libproxy
211 Summary(pl.UTF-8):      Wtyczka pacrunner Duktape dla libproxy
212 Group:          Libraries
213 Requires:       %{name} = %{version}-%{release}
214
215 %description duktape
216 Duktape pacrunner plugin for libproxy, to get proxy from WPAD/PAC
217 script using Duktype engine.
218
219 %description duktape -l pl.UTF-8
220 Wtyczka pacrunner Duktape dla libproxy, do pobierania proxy ze skryptu
221 WPAD/PAC przy użyciu silnika Duktype.
222
223 %package mozjs
224 Summary:        MozJS pacrunner plugin for libproxy
225 Summary(pl.UTF-8):      Wtyczka pacrunner MozJS dla libproxy
226 Group:          Libraries
227 Requires:       %{name} = %{version}-%{release}
228
229 %description mozjs
230 MozJS (XULrunner/JavaScript) pacrunner plugin for libproxy, to get
231 proxy from WPAD/PAC script using MozJS engine.
232
233 %description mozjs -l pl.UTF-8
234 Wtyczka pacrunner MozJS (XULrunner/JavaScript) dla libproxy, do
235 pobierania proxy ze skryptu WPAD/PAC przy użyciu silnika MozJS.
236
237 %package webkit
238 Summary:        WebKit pacrunner plugin for libproxy
239 Summary(pl.UTF-8):      Wtyczka pacrunner WebKit dla libproxy
240 Group:          Libraries
241 Requires:       %{name} = %{version}-%{release}
242 Requires:       gtk-webkit4 >= 2.6
243
244 %description webkit
245 WebKit (JavaScriptCore) pacrunner plugin for libproxy, to get proxy
246 from WPAD/PAC script using WebKit engine.
247
248 %description webkit -l pl.UTF-8
249 Wtyczka pacrunner WebKit (JavaScriptCore) dla libproxy, do pobierania
250 ustawień proxy ze skryptu WPAD/PAC, przy użyciu silnika WebKit.
251
252 %prep
253 %setup -q
254 %patch0 -p1
255
256 %if %{without natus}
257 echo 'set(NATUS_FOUND 0)' > libproxy/cmake/modules/pacrunner_natus.cmk
258 %endif
259
260 %build
261 install -d build
262 cd build
263 %cmake .. \
264         -DLIB_INSTALL_DIR=%{_libdir} \
265         -DLIBEXEC_INSTALL_DIR=%{_libdir}/libproxy \
266         -DPERL_VENDORINSTALL=ON \
267         -DPYTHON2_SITEPKG_DIR=%{py_sitescriptdir} \
268         -DPYTHON3_SITEPKG_DIR=%{py3_sitescriptdir} \
269         %{?with_mono:-DWITH_DOTNET=ON -DGMCS_EXECUTABLE=/usr/bin/mcs} \
270         %{!?with_duktape:-DWITH_DUKTAPE=OFF} \
271         %{!?with_kde:-DWITH_KDE=OFF} \
272         %{?with_mozjs:-DWITH_MOZJS=ON} \
273         -DWITH_VALA=ON \
274         %{!?with_webkit:-DWITH_WEBKIT=OFF} \
275         %{?with_webkit:-DWITH_WEBKIT3=ON}
276
277 %{__make}
278
279 %install
280 rm -rf $RPM_BUILD_ROOT
281
282 %{__make} -C build install \
283         DESTDIR=$RPM_BUILD_ROOT
284
285 %py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
286 %py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
287 %py_postclean
288
289 %py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
290 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
291
292 %clean
293 rm -rf $RPM_BUILD_ROOT
294
295 %post   -p /sbin/ldconfig
296 %postun -p /sbin/ldconfig
297
298 %files
299 %defattr(644,root,root,755)
300 %doc AUTHORS ChangeLog NEWS README
301 %attr(755,root,root) %{_bindir}/proxy
302 %attr(755,root,root) %{_libdir}/libproxy.so.*.*.*
303 %attr(755,root,root) %ghost %{_libdir}/libproxy.so.1
304 %dir %{_libdir}/%{name}
305 %dir %{_libdir}/%{name}/%{version}
306 %dir %{_libdir}/%{name}/%{version}/modules
307
308 %files devel
309 %defattr(644,root,root,755)
310 %attr(755,root,root) %{_libdir}/libproxy.so
311 %{_includedir}/proxy.h
312 %{_pkgconfigdir}/libproxy-1.0.pc
313 %{_datadir}/cmake/Modules/Findlibproxy.cmake
314
315 %if %{with mono}
316 %files -n dotnet-libproxy-sharp
317 %defattr(644,root,root,755)
318 %{_prefix}/lib/mono/gac/libproxy-sharp
319
320 %files -n dotnet-libproxy-sharp-devel
321 %defattr(644,root,root,755)
322 %{_prefix}/lib/mono/libproxy-sharp
323 %{_pkgconfigdir}/libproxy-sharp-1.0.pc
324 %endif
325
326 %files -n perl-Net-Libproxy
327 %defattr(644,root,root,755)
328 %{perl_vendorarch}/Net/Libproxy.pm
329 %dir %{perl_vendorarch}/auto/Net/Libproxy
330 %attr(755,root,root) %{perl_vendorarch}/auto/Net/Libproxy/Libproxy.so
331
332 %files -n python-libproxy
333 %defattr(644,root,root,755)
334 %{py_sitescriptdir}/libproxy.py[co]
335
336 %files -n python3-libproxy
337 %defattr(644,root,root,755)
338 %{py3_sitescriptdir}/libproxy.py
339 %{py3_sitescriptdir}/__pycache__/libproxy.cpython-*.py[co]
340
341 %files -n vala-libproxy
342 %defattr(644,root,root,755)
343 %{_datadir}/vala/vapi/libproxy-1.0.vapi
344
345 %files networkmanager
346 %defattr(644,root,root,755)
347 %attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/network_networkmanager.so
348
349 %files gnome
350 %defattr(644,root,root,755)
351 %attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/config_gnome3.so
352 %attr(755,root,root) %{_libdir}/%{name}/pxgsettings
353
354 %if %{with kde}
355 %files kde
356 %defattr(644,root,root,755)
357 %attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/config_kde.so
358 %endif
359
360 %files pacrunner
361 %defattr(644,root,root,755)
362 %attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/config_pacrunner.so
363
364 %if %{with duktape}
365 %files duktape
366 %defattr(644,root,root,755)
367 %attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/pacrunner_duktape.so
368 %endif
369
370 %if %{with mozjs}
371 %files mozjs
372 %defattr(644,root,root,755)
373 %attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/pacrunner_mozjs.so
374 %endif
375
376 %if %{with webkit}
377 %files webkit
378 %defattr(644,root,root,755)
379 %attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/pacrunner_webkit.so
380 %endif
This page took 0.103037 seconds and 3 git commands to generate.