# # spec file for package libproxy (Version 0.2.3) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild %define build_core_not_plugins 1 %if 0%{suse_version} > 1110 %define xulrunner_ver 191 %else %if 0%{suse_version} >= 1100 %define xulrunner_ver 190 %else %define xulrunner_ver 181 %endif %endif Url: http://code.google.com/p/libproxy/ %define _name libproxy Name: libproxy Group: System/Libraries Summary: libproxy is a library that provides automatic proxy configuration management Version: 0.2.3 Release: 7 Source: http://libproxy.googlecode.com/files/%{_name}-%{version}.tar.bz2 # PATCH-FIX-UPSTREAM libproxy-0.2.3-dbus.diff -- Taken from upstream svn Patch0: libproxy-0.2.3-dbus.diff # PATCH-FIX-UPSTREAM libproxy-svn-277.patch -- Taken from upstream svn Patch1: libproxy-svn-277.patch License: LGPL v2.1 or later BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: pkg-config BuildRequires: python-devel %if !%build_core_not_plugins BuildRequires: dbus-1-devel BuildRequires: gconf2-devel # For directory ownership, but also because we want to rebuild the plugins if # the library changed BuildRequires: libproxy0 BuildRequires: libwebkit-devel BuildRequires: mozilla-xulrunner%{xulrunner_ver}-devel BuildRequires: NetworkManager-devel BuildRequires: xorg-x11-libXmu-devel %endif %description libproxy offers the following features: * extremely small core footprint (< 35K) * no external dependencies within libproxy core (libproxy plugins may have dependencies) * only 3 functions in the stable external API * dynamic adjustment to changing network topology * a standard way of dealing with proxy settings across all scenarios Authors: -------- Nathaniel McCallum Alex Panait %if %build_core_not_plugins %package tools License: GPL v2 or later; LGPL v2.1 or later Summary: A simple application using libproxy Group: System/Libraries Requires: libproxy0 = %{version} %description tools A simple application that will use libproxy to give the results you can expect from other applications. It can be used to debug what would happen in various cases. Authors: -------- Nathaniel McCallum Alex Panait %package devel License: GPL v2 or later; LGPL v2.1 or later Summary: libproxy is a library that provides automatic proxy configuration management - development files Group: Development/Libraries/C and C++ Requires: libproxy0 = %{version} %description devel libproxy offers the following features: * extremely small core footprint (< 35K) * no external dependencies within libproxy core (libproxy plugins may have dependencies) * only 3 functions in the stable external API * dynamic adjustment to changing network topology * a standard way of dealing with proxy settings across all scenarios Authors: -------- Nathaniel McCallum Alex Panait %package -n libproxy0 License: GPL v2 or later; LGPL v2.1 or later Summary: libproxy is a library that provides automatic proxy configuration management Group: System/Libraries %description -n libproxy0 libproxy offers the following features: * extremely small core footprint (< 35K) * no external dependencies within libproxy core (libproxy plugins may have dependencies) * only 3 functions in the stable external API * dynamic adjustment to changing network topology * a standard way of dealing with proxy settings across all scenarios Authors: -------- Nathaniel McCallum Alex Panait %package -n python-libproxy License: GPL v2 or later; LGPL v2.1 or later Summary: Python bindings for libproxy Group: System/Libraries Requires: libproxy0 = %{version} %py_requires %description -n python-libproxy libproxy offers the following features: * extremely small core footprint (< 35K) * no external dependencies within libproxy core (libproxy plugins may have dependencies) * only 3 functions in the stable external API * dynamic adjustment to changing network topology * a standard way of dealing with proxy settings across all scenarios Authors: -------- Nathaniel McCallum Alex Panait %else %package -n libproxy0-gnome License: GPL v2 or later; LGPL v2.1 or later Summary: Libproxy plugin for GNOME configuration Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:gconf2) Provides: libproxy-gnome = %{version} Obsoletes: libproxy-gnome < %{version} %description -n libproxy0-gnome A plugin to extend libproxy with capabilities to query GNOME about proxy settings. Authors: -------- Nathaniel McCallum Alex Panait %package -n libproxy0-kde License: GPL v2 or later; LGPL v2.1 or later Summary: Libproxy plugin for KDE configuration Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:libkde4) Provides: libproxy-kde = %{version} Obsoletes: libproxy-kde < %{version} %description -n libproxy0-kde A plugin to extend libproxy with capabilities to query KDE about proxy settings. Authors: -------- Nathaniel McCallum Alex Panait %package -n libproxy0-mozjs License: GPL v2 or later; LGPL v2.1 or later Summary: Libproxy plugin to support wpad/pac parsing via Mozilla JavaScript Engine Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:mozilla-xulrunner%{xulrunner_ver}) Provides: libproxy-mozjs = %{version} Obsoletes: libproxy-mozjs < %{version} %description -n libproxy0-mozjs A plugin to extend libproxy with capabilities to pass addresses to a WPAD/PAC script and have it find the correct proxy. Authors: -------- Nathaniel McCallum Alex Panait %package -n libproxy0-webkit License: GPL v2 or later; LGPL v2.1 or later Summary: Libproxy plugin to support WPAD/PAC parsing via WebKit JavaScript Engine Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:libwebkit-1) Provides: libproxy-webkit = %{version} Obsoletes: libproxy-webkit < %{version} %description -n libproxy0-webkit A plugin to extend libproxy with capabilities to pass addresses to a WPAD/PAC script and have it find the correct proxy. Authors: -------- Nathaniel McCallum Alex Panait %package -n libproxy0-networkmanager License: GPL v2 or later; LGPL v2.1 or later Summary: Libproxy plugin for NetworkManager configuration Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:NetworkManager) Provides: libproxy-networkmanager = %{version} Obsoletes: libproxy-networkmanager < %{version} %description -n libproxy0-networkmanager A plugin to extend libproxy with capabilities to query NetworkManager about proxy settings. Authors: -------- Nathaniel McCallum Alex Panait %endif %prep %setup -q -n %{_name}-%{version} %patch0 -p1 %patch1 -p1 %build autoreconf -f -i %configure --with-python --disable-static %{__make} %{?jobs:-j%jobs} %install %if %build_core_not_plugins %makeinstall rm $RPM_BUILD_ROOT%{_libdir}/*.la %else cd src/lib %makeinstall cd ../plugins %makeinstall # remove files that are part of the core rm $RPM_BUILD_ROOT%{_includedir}/*.h rm $RPM_BUILD_ROOT%{_libdir}/libproxy.* rm $RPM_BUILD_ROOT%{_libdir}/libproxy/%{version}/plugins/envvar.so rm $RPM_BUILD_ROOT%{_libdir}/libproxy/%{version}/plugins/file.so %endif %if %build_core_not_plugins %post -n libproxy0 -p /sbin/ldconfig %postun -n libproxy0 -p /sbin/ldconfig %files tools %defattr(-, root, root) %{_bindir}/proxy %files -n libproxy0 %defattr(-, root, root) %{_libdir}/*.so.* %dir %{_libdir}/libproxy %dir %{_libdir}/libproxy/%{version} %dir %{_libdir}/libproxy/%{version}/plugins %{_libdir}/libproxy/%{version}/plugins/envvar.so %{_libdir}/libproxy/%{version}/plugins/file.so %files devel %defattr(-, root, root) %{_includedir}/*.h %{_libdir}/*.so %{_libdir}/pkgconfig/*.pc %files -n python-libproxy %defattr(-, root, root) %{py_sitedir}/*.py %else %files -n libproxy0-kde %defattr(-, root, root) %{_libdir}/libproxy/%{version}/plugins/kde.so %files -n libproxy0-gnome %defattr(-, root, root) %{_libdir}/libproxy/%{version}/plugins/gnome.so %files -n libproxy0-networkmanager %defattr(-, root, root) %{_libdir}/libproxy/%{version}/plugins/networkmanager.so %files -n libproxy0-webkit %defattr(-, root, root) %{_libdir}/libproxy/%{version}/plugins/webkit.so %files -n libproxy0-mozjs %defattr(-, root, root) %{_libdir}/libproxy/%{version}/plugins/mozjs.so %endif %changelog * Wed May 13 2009 vuntz@novell.com - Tag patches. * Wed May 06 2009 vuntz@novell.com - Build libproxy-plugins against mozilla-xulrunner191 on openSUSE > 11.1. * Thu Apr 23 2009 vuntz@novell.com - Change Name to libproxy-plugins in libproxy-plugins.spec. * Thu Apr 16 2009 vuntz@novell.com - Split the build in two steps, libproxy and libproxy-plugins, to avoid a build loop: libproxy depends on libwebkit which depends on libsoup which depends on libproxy. So we now have a new spec file for libproxy-plugins where the libwebkit dependency is. * Sun Mar 15 2009 vuntz@novell.com - Review changes. * Sat Mar 14 2009 wr@rosenauer.org - use correct mozilla/xulrunner dependencies * Mon Feb 23 2009 vuntz@novell.com - Revert the use of %%{libproxy_shnum}: there are places where the macro cannot be used (%%files, eg), and we want don't want to mix libproxy0 and libproxy%%{libproxy_shnum} -- too likely to forget to update one of the two instances. * Sun Feb 22 2009 vuntz@novell.com - Review changes. - Add Provides/Obsoletes after plugin packages renaming. - Don't use %%{name} everywhere: in some places, it doesn't help with clarity; in some others, it could be wrong in the future (in Supplements). * Tue Feb 17 2009 domninique-obs@leuenberger.net - Replace the %%{name}0 all over by %%{name}%%{libproxy_shnum}, makes it easier for future updates by linking to variables. * Tue Feb 17 2009 vuntz@novell.com - Review changes. * Tue Feb 17 2009 dominique-obs@leuenberger.net - Have the plugin sub-packages follow the shlib name. The plugins are depending on a specific version of the lib and should be installable in parallel together with multiple libs. The plugins live in a versioned directory, so no conflicts can happen. * Mon Feb 16 2009 ro@suse.de - added baselibs.conf (libproxy0-32bit needed by libsoup-2_4-1-32bit) * Fri Feb 06 2009 vuntz@novell.com - Add missing Requires on libproxy0 for the subpackages. * Tue Feb 03 2009 hfiguiere@suse.de - Initial packaging.