%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %global gecko_version 1.9.2 Name: libproxy Version: 0.4.0 Release: 1%{?dist} Summary: A library handling all the details of proxy configuration Group: System Environment/Libraries License: LGPLv2+ URL: http://code.google.com/p/libproxy/ Source0: http://libproxy.googlecode.com/files/libproxy-%{version}.tar.gz Patch0: libproxy-0.4-ldflags.patch Patch1: libproxy-0.4.0-pyarch.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: python-devel BuildRequires: cmake >= 2.8.0 # gnome BuildRequires: GConf2-devel BuildRequires: libXmu-devel # mozjs BuildRequires: gecko-devel # NetworkManager BuildRequires: NetworkManager-devel BuildRequires: dbus-devel # webkit (gtk) BuildRequires: WebKit-gtk-devel # kde BuildRequires: kdelibs-devel %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 * a sublime sense of joy and accomplishment %package bin Summary: Binary to test %{name} Group: Applications/System Requires: %{name} = %{version}-%{release} %description bin The %{name}-bin package contains the proxy binary for %{name} %package python Summary: Binding for %{name} and python Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} %description python The %{name}-python package contains the python binding for %{name} %package gnome Summary: Plugin for %{name} and gnome Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} %description gnome The %{name}-gnome package contains the %{name} plugin for gnome. %package kde Summary: Plugin for %{name} and kde Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} %description kde The %{name}-kde package contains the %{name} plugin for kde. %package mozjs Summary: Plugin for %{name} and mozjs Group: System Environment/Libraries Requires: %{name} = %{version} #Tweak this according to the current gecko-libs version Requires: gecko-libs >= %{gecko_version} Provides: %{name}-pac = %{version}-%{release} %description mozjs The %{name}-mozjs package contains the %{name} plugin for mozjs. %package networkmanager Summary: Plugin for %{name} and networkmanager Group: System Environment/Libraries Requires: %{name} = %{version} %description networkmanager The %{name}-networkmanager package contains the %{name} plugin for networkmanager. %package webkit Summary: Plugin for %{name} and webkit Group: System Environment/Libraries Requires: %{name} = %{version} Provides: %{name}-pac = %{version}-%{release} %description webkit The %{name}-webkit package contains the %{name} plugin for webkit. %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: pkgconfig %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %prep %setup -q %patch0 -p1 -b .ldflags %patch1 -p1 -b .pyarch sed -i -e 's|-Werror||' CMakeLists.txt %build %{cmake} \ -Dmoduledir=%{_libdir}/%{name}/%{version}/modules \ . make VERBOSE=1 %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p" find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' #Manual install for modules mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{name}/%{version}/modules install -pm 0755 lib/libproxy.so $RPM_BUILD_ROOT%{_libdir}/libproxy.so.1.0.0 ln -s libproxy.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libproxy.so.1 ln -s libproxy.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libproxy.so for f in lib/*_*.so ; do install -pm 0755 ${f} \ $RPM_BUILD_ROOT%{_libdir}/%{name}/%{version}/modules done mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig sed -e's|@prefix@|%{_prefix}|g' \ -e's|@libdir@|%{_libdir}|g' \ -e's|@includedir@|%{_includedir}|g' \ -e's|@VERSION@|%{version}|g' \ < libproxy/libproxy-1.0.pc.in \ > $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libproxy-1.0.pc %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(-,root,root,-) %doc AUTHORS COPYING README %{_libdir}/*.so.* %dir %{_libdir}/%{name} %dir %{_libdir}/%{name}/%{version} %dir %{_libdir}/%{name}/%{version}/modules %files bin %defattr(-,root,root,-) %{_bindir}/proxy %files python %defattr(-,root,root,-) %{python_sitelib}/* %files gnome %defattr(-,root,root,-) %{_libdir}/%{name}/%{version}/modules/config_gnome.so %files kde %defattr(-,root,root,-) %{_libdir}/%{name}/%{version}/modules/config_kde4.so %files mozjs %defattr(-,root,root,-) %{_libdir}/%{name}/%{version}/modules/pacrunner_mozjs.so %files networkmanager %defattr(-,root,root,-) %{_libdir}/%{name}/%{version}/modules/network_networkmanager.so %files webkit %defattr(-,root,root,-) %{_libdir}/%{name}/%{version}/modules/pacrunner_webkit.so %files devel %defattr(-,root,root,-) %{_includedir}/proxy.h %{_libdir}/*.so %{_libdir}/pkgconfig/libproxy-1.0.pc %changelog * Wed Mar 24 2010 Nicolas Chauvet - 0.4.0-1 - Update to 0.4.0 - Switch to cmake * Thu Mar 11 2010 Nicolas Chauvet - 0.3.1-4 - Add missing libXmu-devel * Sun Feb 21 2010 Nicolas Chauvet - 0.3.1-4 - Globalism and update gecko to 1.9.2 - Avoid rpath on _libdir - Fix BR for kde4 to kdelibs-devel * Sun Dec 27 2009 Nicolas Chauvet - 0.3.1-1 - Update to 0.3.1 - Avoid dependecies on -python and -bin subpackages - Create -networkmanager sub-package. * Thu Sep 24 2009 kwizart < kwizart at gmail.com > - 0.3.0-1 - Update to 0.3.0 * Thu Sep 17 2009 kwizart < kwizart at gmail.com > - 0.2.3-12 - Remove Requirement of %%{name}-pac virtual provides from the main package - #524043 * Sat Jul 25 2009 Fedora Release Engineering - 0.2.3-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Mon Mar 9 2009 kwizart < kwizart at gmail.com > - 0.2.3-10 - Rebuild for webkit - Raise requirement for xulrunner to 1.9.1 * Wed Feb 25 2009 Fedora Release Engineering - 0.2.3-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Thu Jan 22 2009 kwizart < kwizart at gmail.com > - 0.2.3-8 - Merge NetworkManager module into the main libproxy package - Main Requires the -python and -bin subpackage (splitted for multilibs compliance). * Fri Oct 24 2008 kwizart < kwizart at gmail.com > - 0.2.3-7 - Disable Gnome/KDE default support via builtin modules. (it needs to be integrated via Gconf2/neon instead). * Tue Oct 21 2008 kwizart < kwizart at gmail.com > - 0.2.3-6 - Disable Obsoletes. - Requires ev instead of evr for optionnals sub-packages. * Tue Oct 21 2008 kwizart < kwizart at gmail.com > - 0.2.3-5 - Use conditionals build. * Mon Sep 15 2008 kwizart < kwizart at gmail.com > - 0.2.3-4 - Remove plugin- in the name of the packages * Mon Aug 4 2008 kwizart < kwizart at gmail.com > - 0.2.3-3 - Move proxy.h to libproxy/proxy.h This will prevent it to be included in the default include path - Split main to libs and util and use libproxy to install all * Mon Aug 4 2008 kwizart < kwizart at gmail.com > - 0.2.3-2 - Rename binding-python to python - Add Requires: gecko-libs >= %%{gecko_version} - Fix some descriptions - Add plugin-webkit package * Fri Jul 11 2008 kwizart < kwizart at gmail.com > - 0.2.3-1 - Convert to Fedora spec * Fri Jun 6 2008 - dominique-rpm@leuenberger.net - Updated to version 0.2.3 * Wed Jun 4 2008 - dominique-rpm@leuenberger.net - Extended spec file to build all available plugins * Tue Jun 3 2008 - dominique-rpm@leuenberger.net - Initial spec file for Version 0.2.2