diff --git a/baselibs.conf b/baselibs.conf index a2c9836..fd1795d 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,12 +1,12 @@ libproxy0 -libproxy0-gnome +libproxy0-config-gnome supplements "packageand(libproxy0-:libproxy0-gnome)" -libproxy0-kde +libproxy0-config-kde supplements "packageand(libproxy0-:libproxy0-kde)" -libproxy0-mozjs +libproxy0-pacrunner-mozjs supplements "packageand(libproxy0-:libproxy0-mozjs)" libproxy0-networkmanager supplements "packageand(libproxy0-:libproxy0-networkmanager)" -libproxy0-webkit +libproxy0-pacrunner-webkit supplements "packageand(libproxy0-:libproxy0-webkit)" diff --git a/libproxy-0.2.3-dbus.diff b/libproxy-0.2.3-dbus.diff deleted file mode 100644 index 8a31611..0000000 --- a/libproxy-0.2.3-dbus.diff +++ /dev/null @@ -1,13 +0,0 @@ -diff -up libproxy-0.2.3/configure.ac.dbus libproxy-0.2.3/configure.ac ---- libproxy-0.2.3/configure.ac.dbus 2008-07-11 12:12:43.000000000 +0200 -+++ libproxy-0.2.3/configure.ac 2008-07-11 12:12:58.000000000 +0200 -@@ -19,7 +19,7 @@ PKG_CHECK_MODULES(webkit, webkit-1.0, ha - PKG_CHECK_MODULES(mozjs, xulrunner-js, have_mozjs=yes, - [PKG_CHECK_MODULES(mozjs, firefox-js, have_mozjs=yes, - [PKG_CHECK_MODULES(mozjs, mozilla-js, have_mozjs=yes, have_mozjs=no)])]) --PKG_CHECK_MODULES(NetworkManager, NetworkManager, -+PKG_CHECK_MODULES(NetworkManager, NetworkManager dbus-1, - have_networkmanager=yes, have_networkmanager=no) - - # Environmental Variable - diff --git a/libproxy-0.2.3.tar.bz2 b/libproxy-0.2.3.tar.bz2 deleted file mode 100644 index 3b290ef..0000000 --- a/libproxy-0.2.3.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:83633e21eea02bfdad962268decbe403c6e475569d31e9578065c3cd475f8580 -size 272084 diff --git a/libproxy-0.3.0.tar.bz2 b/libproxy-0.3.0.tar.bz2 new file mode 100644 index 0000000..5a5c681 --- /dev/null +++ b/libproxy-0.3.0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b685bd90ef0803ff0b96308a973396dbe9edda34d06b5f593306a1957ab546f5 +size 278556 diff --git a/libproxy-plugins.changes b/libproxy-plugins.changes index b47dad7..94ac728 100644 --- a/libproxy-plugins.changes +++ b/libproxy-plugins.changes @@ -1,3 +1,32 @@ +------------------------------------------------------------------- +Mon Aug 17 00:10:04 CEST 2009 - dominique-obs@leuenberger.net + +- Update to version 0.3.0 + + WARNING!!! Slight API change!!! see docs for + px_proxy_factory_get_proxies() + + Credentials support (see API change above) + + A complete rewrite of the module manager + + file:// as valid PAC URLs + + Sample Mono application + + Automake 1.11 shaved output + + gnome backend rewrite (now w/o thread issues) + + Test suite base functionality exists + + Many solaris build fixes + + Seamonkey support as JS pacrunner + + Bugfixes + + Compiles for MS Windows using Mingw +- Split additional modules out in separate packages. + +------------------------------------------------------------------- +Wed Aug 12 12:54:22 CEST 2009 - dominique-obs@leuenberger.net + +- Use new python macros on openSUSE <= 11.1 + +------------------------------------------------------------------- +Sun Aug 9 12:43:26 CEST 2009 - coolo@novell.com + +- use new python macros + ------------------------------------------------------------------- Mon Jun 22 12:46:40 CEST 2009 - dominique-obs@leuenberger.net diff --git a/libproxy-plugins.spec b/libproxy-plugins.spec index 1f988be..d0ca5c6 100644 --- a/libproxy-plugins.spec +++ b/libproxy-plugins.spec @@ -1,5 +1,5 @@ # -# spec file for package libproxy-plugins (Version 0.2.3) +# spec file for package libproxy-plugins (Version 0.3.0) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -17,7 +17,7 @@ # norootforbuild -%define build_core_not_plugins 0 +%define build_core_not_modules 0 %if 0%{suse_version} > 1110 %define xulrunner_ver 191 %else @@ -32,24 +32,18 @@ Url: http://code.google.com/p/libproxy/ Name: libproxy-plugins Group: System/Libraries -Summary: libproxy is a library that provides automatic proxy configuration management -Version: 0.2.3 -Release: 3 +Summary: Libproxy provides consistent proxy configuration to applications +Version: 0.3.0 +Release: 1 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 -# PATCH-FIX-UPSTREAM libproxy-svn-303_as-needed.patch dominique-obs@leuenberger.net -- Taken from upstream svn -Patch2: libproxy-svn-303_as-needed.patch License: LGPL v2.1 or later BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: pkg-config BuildRequires: python-devel -%if !%build_core_not_plugins +%if !%build_core_not_modules BuildRequires: dbus-1-devel BuildRequires: gconf2-devel -# For directory ownership, but also because we want to rebuild the plugins if +# For directory ownership, but also because we want to rebuild the modules if # the library changed BuildRequires: libproxy0 BuildRequires: libwebkit-devel @@ -57,12 +51,15 @@ BuildRequires: mozilla-xulrunner%{xulrunner_ver}-devel BuildRequires: NetworkManager-devel BuildRequires: xorg-x11-libXmu-devel %endif +%if %suse_version <= 1110 +%define python_sitelib %{py_sitedir} +%endif %description libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -72,16 +69,10 @@ libproxy offers the following features: * extremely small core * a standard way of dealing with proxy settings across all scenarios - -Authors: --------- - Nathaniel McCallum - Alex Panait - -%if %build_core_not_plugins +%if %build_core_not_modules %package tools -License: GPL v2 or later; LGPL v2.1 or later +License: GPL v2 or later ; LGPL v2.1 or later Summary: A simple application using libproxy Group: System/Libraries Requires: libproxy0 = %{version} @@ -92,15 +83,9 @@ 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 +%package devel +License: GPL v2 or later ; LGPL v2.1 or later +Summary: Libproxy provides consistent proxy configuration to applications - Development Files Group: Development/Libraries/C and C++ Requires: libproxy0 = %{version} @@ -108,7 +93,7 @@ Requires: libproxy0 = %{version} libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -118,22 +103,16 @@ libproxy offers the following features: * extremely small core * 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 +Summary: Libproxy provides consistent proxy configuration to applications Group: System/Libraries %description -n libproxy0 libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -143,12 +122,6 @@ libproxy offers the following features: * extremely small core * 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 @@ -160,7 +133,7 @@ Requires: libproxy0 = %{version} libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -170,97 +143,103 @@ libproxy offers the following features: * extremely small core * a standard way of dealing with proxy settings across all scenarios +%package -n libproxy-sharp +License: GPL v2 or later ; LGPL v2.1 or later +Summary: .Net bindings for libproxy +Group: Development/Languages/Mono +Requires: libproxy0 = %{version} + +%description -n libproxy-sharp +libproxy offers the following features: * extremely small core + footprint (< 35K) + +* no external dependencies within libproxy core (libproxy modules + 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 +%package -n libproxy0-config-gnome License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin for GNOME configuration +Summary: Libproxy module for GNOME configuration Group: System/Libraries Requires: libproxy0 = %{version} +Recommends: libproxy0-pacrunner = %{version} +Recommends: libproxy0-wpad-dns = %{version} Supplements: packageand(libproxy0:gconf2) Provides: libproxy-gnome = %{version} Obsoletes: libproxy-gnome < %{version} +Provides: libproxy0-gnome = %{version} +Obsoletes: libproxy0-gnome < %{version} -%description -n libproxy0-gnome -A plugin to extend libproxy with capabilities to query GNOME about +%description -n libproxy0-config-gnome +A module to extend libproxy with capabilities to query GNOME about proxy settings. - -Authors: --------- - Nathaniel McCallum - Alex Panait - -%package -n libproxy0-kde +%package -n libproxy0-config-kde License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin for KDE configuration +Summary: Libproxy module for KDE configuration Group: System/Libraries Requires: libproxy0 = %{version} +Recommends: libproxy0-pacrunner = %{version} +Recommends: libproxy0-wpad-dns = %{version} Supplements: packageand(libproxy0:libkde4) Provides: libproxy-kde = %{version} Obsoletes: libproxy-kde < %{version} +Provides: libproxy0-kde = %{version} +Obsoletes: libproxy0-kde < %{version} -%description -n libproxy0-kde -A plugin to extend libproxy with capabilities to query KDE about proxy +%description -n libproxy0-config-kde +A module to extend libproxy with capabilities to query KDE about proxy settings. - -Authors: --------- - Nathaniel McCallum - Alex Panait - -%package -n libproxy0-mozjs +%package -n libproxy0-pacrunner-mozjs License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin to support wpad/pac parsing via Mozilla JavaScript Engine +Summary: Libproxy module to support wpad/pac parsing via Mozilla JavaScript Engine Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:mozilla-xulrunner%{xulrunner_ver}) +# A virtual symbol to identify that this is a pacrunner. +Provides: libproxy0-pacrunner = %{version} Provides: libproxy-mozjs = %{version} Obsoletes: libproxy-mozjs < %{version} +Provides: libproxy0-mozjs = %{version} +Obsoletes: libproxy0-mozjs < %{version} -%description -n libproxy0-mozjs -A plugin to extend libproxy with capabilities to pass addresses to a +%description -n libproxy0-pacrunner-mozjs +A module 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 +%package -n libproxy0-pacrunner-webkit License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin to support WPAD/PAC parsing via WebKit JavaScript Engine +Summary: Libproxy module to support WPAD/PAC parsing via WebKit JavaScript Engine Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:libwebkit-1) +# A virtual symbol to identify that this is a pacrunner. +Provides: libproxy0-pacrunner = %{version} Provides: libproxy-webkit = %{version} Obsoletes: libproxy-webkit < %{version} +Provides: libproxy0-webkit = %{version} +Obsoletes: libproxy0-webkit < %{version} -%description -n libproxy0-webkit -A plugin to extend libproxy with capabilities to pass addresses to a +%description -n libproxy0-pacrunner-webkit +A module 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 +Summary: Libproxy module for NetworkManager configuration Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:NetworkManager) @@ -268,45 +247,87 @@ 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. +A module to extend libproxy with capabilities to query NetworkManager +about network configuration changes. +%package -n libproxy0-config-wpad +License: GPL v2 or later ; LGPL v2.1 or later +Summary: Libproxy module for WPAD autofallback +Group: System/Libraries +Requires: libproxy0 = %{version} +Requires: libproxy0-wpad-dns = %{version} + +%description -n libproxy0-config-wpad +A module to extend libproxy with capabilities to query wpad:// +in case no other module returns valid configuration. + +This might not be wanted in tight security environments. + + +%package -n libproxy0-wpad-dns +License: GPL v2 or later ; LGPL v2.1 or later +Summary: Libproxy module for WPAD Autofallback +Group: System/Libraries +Requires: libproxy0 = %{version} +Requires: libproxy0-pacrunner = %{version} +Recommends: libproxy-wpad-dns-devolution = %{version} + +%description -n libproxy0-wpad-dns +This modules performs the DNS queries needed to find the wpad:// +configuration. + +The module is needed whenever automatic proxy configuration is used. + + +%package -n libproxy0-wpad-dns-devolution +License: GPL v2 or later ; LGPL v2.1 or later +Summary: Libproxy module for WPAD Autofallback +Group: System/Libraries +Requires: libproxy0 = %{version} +Requires: libproxy0-pacrunner = %{version} +Requires: libproxy0-wpad-dns = %{version} + +%description -n libproxy0-wpad-dns-devolution +A module to extend wpad:// capabilities of libproxy with DNS +devolution. + +The module is written with care and it will never fall back to the +.TLD domains. -Authors: --------- - Nathaniel McCallum - Alex Panait %endif %prep %setup -q -n %{_name}-%{version} -%patch0 -p1 -%patch1 -p1 -%patch2 %build -autoreconf -f -i -%configure --with-python --disable-static +%configure \ +%if %build_core_not_modules + --without-wpad \ +%endif + --with-python \ + --disable-static %{__make} %{?jobs:-j%jobs} %install -%if %build_core_not_plugins +%if %build_core_not_modules %makeinstall -rm $RPM_BUILD_ROOT%{_libdir}/*.la +rm %{buildroot}%{_libdir}/*.la %else cd src/lib %makeinstall -cd ../plugins +cd ../modules %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 +rm %{buildroot}%{_includedir}/*.h +rm %{buildroot}%{_libdir}/libproxy.* +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/config_envvar.so +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/config_file.so +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/config_direct.so +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/ignore_*.so %endif -%if %build_core_not_plugins +%if %build_core_not_modules %post -n libproxy0 -p /sbin/ldconfig @@ -321,9 +342,11 @@ rm $RPM_BUILD_ROOT%{_libdir}/libproxy/%{version}/plugins/file.so %{_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 +%dir %{_libdir}/libproxy/%{version}/modules +%{_libdir}/libproxy/%{version}/modules/config_envvar.so +%{_libdir}/libproxy/%{version}/modules/config_file.so +%{_libdir}/libproxy/%{version}/modules/config_direct.so +%{_libdir}/libproxy/%{version}/modules/ignore_*.so %files devel %defattr(-, root, root) @@ -333,28 +356,40 @@ rm $RPM_BUILD_ROOT%{_libdir}/libproxy/%{version}/plugins/file.so %files -n python-libproxy %defattr(-, root, root) -%{py_sitedir}/*.py +%{python_sitelib}/*.py %else -%files -n libproxy0-kde +%files -n libproxy0-config-kde %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/kde.so +%{_libdir}/libproxy/%{version}/modules/config_kde.so -%files -n libproxy0-gnome +%files -n libproxy0-config-gnome %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/gnome.so +%{_libdir}/libproxy/%{version}/modules/config_gnome.so + +%files -n libproxy0-config-wpad +%defattr(-, root, root) +%{_libdir}/libproxy/%{version}/modules/config_wpad.so + +%files -n libproxy0-wpad-dns +%defattr(-, root, root) +%{_libdir}/libproxy/%{version}/modules/wpad_dns.so + +%files -n libproxy0-wpad-dns-devolution +%defattr(-, root, root) +%{_libdir}/libproxy/%{version}/modules/wpad_dnsdevolution.so %files -n libproxy0-networkmanager %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/networkmanager.so +%{_libdir}/libproxy/%{version}/modules/network_networkmanager.so -%files -n libproxy0-webkit +%files -n libproxy0-pacrunner-webkit %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/webkit.so +%{_libdir}/libproxy/%{version}/modules/pacrunner_webkit.so -%files -n libproxy0-mozjs +%files -n libproxy0-pacrunner-mozjs %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/mozjs.so +%{_libdir}/libproxy/%{version}/modules/pacrunner_mozjs.so %endif %changelog diff --git a/libproxy-svn-277.patch b/libproxy-svn-277.patch deleted file mode 100644 index ae447a2..0000000 --- a/libproxy-svn-277.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur libproxy-0.2.3/src/plugins/networkmanager.c libproxy-0.2.3.patched/src/plugins/networkmanager.c ---- libproxy-0.2.3/src/plugins/networkmanager.c 2008-12-19 13:24:08.000000000 +0100 -+++ libproxy-0.2.3.patched/src/plugins/networkmanager.c 2008-12-19 13:22:56.000000000 +0100 -@@ -84,7 +84,7 @@ - bool - on_proxy_factory_instantiate(pxProxyFactory *self) - { -- px_proxy_factory_on_get_proxy_add(self, nm_on_get_proxy); -+ return px_proxy_factory_on_get_proxy_add(self, nm_on_get_proxy); - } - - void diff --git a/libproxy-svn-303_as-needed.patch b/libproxy-svn-303_as-needed.patch deleted file mode 100644 index 09f7039..0000000 --- a/libproxy-svn-303_as-needed.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: configure.ac -=================================================================== ---- configure.ac (revision 302) -+++ configure.ac (revision 303) -@@ -185,6 +185,7 @@ - - ### Checks for library functions. - AC_FUNC_MALLOC -+AC_SEARCH_LIBS([dlopen], [dl]) - #AC_CHECK_FUNCS([gethostbyname gethostname memset socket strdup strstr]) - - AC_CONFIG_FILES([libproxy-1.0.pc Makefile libproxy.spec src/Makefile src/lib/Makefile diff --git a/libproxy.changes b/libproxy.changes index b47dad7..94ac728 100644 --- a/libproxy.changes +++ b/libproxy.changes @@ -1,3 +1,32 @@ +------------------------------------------------------------------- +Mon Aug 17 00:10:04 CEST 2009 - dominique-obs@leuenberger.net + +- Update to version 0.3.0 + + WARNING!!! Slight API change!!! see docs for + px_proxy_factory_get_proxies() + + Credentials support (see API change above) + + A complete rewrite of the module manager + + file:// as valid PAC URLs + + Sample Mono application + + Automake 1.11 shaved output + + gnome backend rewrite (now w/o thread issues) + + Test suite base functionality exists + + Many solaris build fixes + + Seamonkey support as JS pacrunner + + Bugfixes + + Compiles for MS Windows using Mingw +- Split additional modules out in separate packages. + +------------------------------------------------------------------- +Wed Aug 12 12:54:22 CEST 2009 - dominique-obs@leuenberger.net + +- Use new python macros on openSUSE <= 11.1 + +------------------------------------------------------------------- +Sun Aug 9 12:43:26 CEST 2009 - coolo@novell.com + +- use new python macros + ------------------------------------------------------------------- Mon Jun 22 12:46:40 CEST 2009 - dominique-obs@leuenberger.net diff --git a/libproxy.spec b/libproxy.spec index 2564b0b..4d1df23 100644 --- a/libproxy.spec +++ b/libproxy.spec @@ -1,5 +1,5 @@ # -# spec file for package libproxy (Version 0.2.3) +# spec file for package libproxy (Version 0.3.0) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -17,7 +17,7 @@ # norootforbuild -%define build_core_not_plugins 1 +%define build_core_not_modules 1 %if 0%{suse_version} > 1110 %define xulrunner_ver 191 %else @@ -32,24 +32,18 @@ Url: http://code.google.com/p/libproxy/ Name: libproxy Group: System/Libraries -Summary: libproxy is a library that provides automatic proxy configuration management -Version: 0.2.3 -Release: 8 +Summary: Libproxy provides consistent proxy configuration to applications +Version: 0.3.0 +Release: 1 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 -# PATCH-FIX-UPSTREAM libproxy-svn-303_as-needed.patch dominique-obs@leuenberger.net -- Taken from upstream svn -Patch2: libproxy-svn-303_as-needed.patch License: LGPL v2.1 or later BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: pkg-config BuildRequires: python-devel -%if !%build_core_not_plugins +%if !%build_core_not_modules BuildRequires: dbus-1-devel BuildRequires: gconf2-devel -# For directory ownership, but also because we want to rebuild the plugins if +# For directory ownership, but also because we want to rebuild the modules if # the library changed BuildRequires: libproxy0 BuildRequires: libwebkit-devel @@ -57,12 +51,15 @@ BuildRequires: mozilla-xulrunner%{xulrunner_ver}-devel BuildRequires: NetworkManager-devel BuildRequires: xorg-x11-libXmu-devel %endif +%if %suse_version <= 1110 +%define python_sitelib %{py_sitedir} +%endif %description libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -72,13 +69,7 @@ libproxy offers the following features: * extremely small core * a standard way of dealing with proxy settings across all scenarios - -Authors: --------- - Nathaniel McCallum - Alex Panait - -%if %build_core_not_plugins +%if %build_core_not_modules %package tools License: GPL v2 or later ; LGPL v2.1 or later @@ -92,15 +83,9 @@ expect from other applications. It can be used to debug what would happen in various cases. - -Authors: --------- - Nathaniel McCallum - Alex Panait - -%package devel +%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 +Summary: Libproxy provides consistent proxy configuration to applications - Development Files Group: Development/Libraries/C and C++ Requires: libproxy0 = %{version} @@ -108,7 +93,7 @@ Requires: libproxy0 = %{version} libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -118,22 +103,16 @@ libproxy offers the following features: * extremely small core * 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 +Summary: Libproxy provides consistent proxy configuration to applications Group: System/Libraries %description -n libproxy0 libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -143,12 +122,6 @@ libproxy offers the following features: * extremely small core * 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 @@ -160,7 +133,7 @@ Requires: libproxy0 = %{version} libproxy offers the following features: * extremely small core footprint (< 35K) -* no external dependencies within libproxy core (libproxy plugins +* no external dependencies within libproxy core (libproxy modules may have dependencies) * only 3 functions in the stable external API @@ -170,97 +143,103 @@ libproxy offers the following features: * extremely small core * a standard way of dealing with proxy settings across all scenarios +%package -n libproxy-sharp +License: GPL v2 or later ; LGPL v2.1 or later +Summary: .Net bindings for libproxy +Group: Development/Languages/Mono +Requires: libproxy0 = %{version} + +%description -n libproxy-sharp +libproxy offers the following features: * extremely small core + footprint (< 35K) + +* no external dependencies within libproxy core (libproxy modules + 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 +%package -n libproxy0-config-gnome License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin for GNOME configuration +Summary: Libproxy module for GNOME configuration Group: System/Libraries Requires: libproxy0 = %{version} +Recommends: libproxy0-pacrunner = %{version} +Recommends: libproxy0-wpad-dns = %{version} Supplements: packageand(libproxy0:gconf2) Provides: libproxy-gnome = %{version} Obsoletes: libproxy-gnome < %{version} +Provides: libproxy0-gnome = %{version} +Obsoletes: libproxy0-gnome < %{version} -%description -n libproxy0-gnome -A plugin to extend libproxy with capabilities to query GNOME about +%description -n libproxy0-config-gnome +A module to extend libproxy with capabilities to query GNOME about proxy settings. - -Authors: --------- - Nathaniel McCallum - Alex Panait - -%package -n libproxy0-kde +%package -n libproxy0-config-kde License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin for KDE configuration +Summary: Libproxy module for KDE configuration Group: System/Libraries Requires: libproxy0 = %{version} +Recommends: libproxy0-pacrunner = %{version} +Recommends: libproxy0-wpad-dns = %{version} Supplements: packageand(libproxy0:libkde4) Provides: libproxy-kde = %{version} Obsoletes: libproxy-kde < %{version} +Provides: libproxy0-kde = %{version} +Obsoletes: libproxy0-kde < %{version} -%description -n libproxy0-kde -A plugin to extend libproxy with capabilities to query KDE about proxy +%description -n libproxy0-config-kde +A module to extend libproxy with capabilities to query KDE about proxy settings. - -Authors: --------- - Nathaniel McCallum - Alex Panait - -%package -n libproxy0-mozjs +%package -n libproxy0-pacrunner-mozjs License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin to support wpad/pac parsing via Mozilla JavaScript Engine +Summary: Libproxy module to support wpad/pac parsing via Mozilla JavaScript Engine Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:mozilla-xulrunner%{xulrunner_ver}) +# A virtual symbol to identify that this is a pacrunner. +Provides: libproxy0-pacrunner = %{version} Provides: libproxy-mozjs = %{version} Obsoletes: libproxy-mozjs < %{version} +Provides: libproxy0-mozjs = %{version} +Obsoletes: libproxy0-mozjs < %{version} -%description -n libproxy0-mozjs -A plugin to extend libproxy with capabilities to pass addresses to a +%description -n libproxy0-pacrunner-mozjs +A module 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 +%package -n libproxy0-pacrunner-webkit License: GPL v2 or later ; LGPL v2.1 or later -Summary: Libproxy plugin to support WPAD/PAC parsing via WebKit JavaScript Engine +Summary: Libproxy module to support WPAD/PAC parsing via WebKit JavaScript Engine Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:libwebkit-1) +# A virtual symbol to identify that this is a pacrunner. +Provides: libproxy0-pacrunner = %{version} Provides: libproxy-webkit = %{version} Obsoletes: libproxy-webkit < %{version} +Provides: libproxy0-webkit = %{version} +Obsoletes: libproxy0-webkit < %{version} -%description -n libproxy0-webkit -A plugin to extend libproxy with capabilities to pass addresses to a +%description -n libproxy0-pacrunner-webkit +A module 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 +Summary: Libproxy module for NetworkManager configuration Group: System/Libraries Requires: libproxy0 = %{version} Supplements: packageand(libproxy0:NetworkManager) @@ -268,45 +247,87 @@ 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. +A module to extend libproxy with capabilities to query NetworkManager +about network configuration changes. +%package -n libproxy0-config-wpad +License: GPL v2 or later ; LGPL v2.1 or later +Summary: Libproxy module for WPAD autofallback +Group: System/Libraries +Requires: libproxy0 = %{version} +Requires: libproxy0-wpad-dns = %{version} + +%description -n libproxy0-config-wpad +A module to extend libproxy with capabilities to query wpad:// +in case no other module returns valid configuration. + +This might not be wanted in tight security environments. + + +%package -n libproxy0-wpad-dns +License: GPL v2 or later ; LGPL v2.1 or later +Summary: Libproxy module for WPAD Autofallback +Group: System/Libraries +Requires: libproxy0 = %{version} +Requires: libproxy0-pacrunner = %{version} +Recommends: libproxy-wpad-dns-devolution = %{version} + +%description -n libproxy0-wpad-dns +This modules performs the DNS queries needed to find the wpad:// +configuration. + +The module is needed whenever automatic proxy configuration is used. + + +%package -n libproxy0-wpad-dns-devolution +License: GPL v2 or later ; LGPL v2.1 or later +Summary: Libproxy module for WPAD Autofallback +Group: System/Libraries +Requires: libproxy0 = %{version} +Requires: libproxy0-pacrunner = %{version} +Requires: libproxy0-wpad-dns = %{version} + +%description -n libproxy0-wpad-dns-devolution +A module to extend wpad:// capabilities of libproxy with DNS +devolution. + +The module is written with care and it will never fall back to the +.TLD domains. -Authors: --------- - Nathaniel McCallum - Alex Panait %endif %prep %setup -q -n %{_name}-%{version} -%patch0 -p1 -%patch1 -p1 -%patch2 %build -autoreconf -f -i -%configure --with-python --disable-static +%configure \ +%if %build_core_not_modules + --without-wpad \ +%endif + --with-python \ + --disable-static %{__make} %{?jobs:-j%jobs} %install -%if %build_core_not_plugins +%if %build_core_not_modules %makeinstall -rm $RPM_BUILD_ROOT%{_libdir}/*.la +rm %{buildroot}%{_libdir}/*.la %else cd src/lib %makeinstall -cd ../plugins +cd ../modules %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 +rm %{buildroot}%{_includedir}/*.h +rm %{buildroot}%{_libdir}/libproxy.* +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/config_envvar.so +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/config_file.so +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/config_direct.so +rm %{buildroot}%{_libdir}/libproxy/%{version}/modules/ignore_*.so %endif -%if %build_core_not_plugins +%if %build_core_not_modules %post -n libproxy0 -p /sbin/ldconfig @@ -321,9 +342,11 @@ rm $RPM_BUILD_ROOT%{_libdir}/libproxy/%{version}/plugins/file.so %{_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 +%dir %{_libdir}/libproxy/%{version}/modules +%{_libdir}/libproxy/%{version}/modules/config_envvar.so +%{_libdir}/libproxy/%{version}/modules/config_file.so +%{_libdir}/libproxy/%{version}/modules/config_direct.so +%{_libdir}/libproxy/%{version}/modules/ignore_*.so %files devel %defattr(-, root, root) @@ -333,28 +356,40 @@ rm $RPM_BUILD_ROOT%{_libdir}/libproxy/%{version}/plugins/file.so %files -n python-libproxy %defattr(-, root, root) -%{py_sitedir}/*.py +%{python_sitelib}/*.py %else -%files -n libproxy0-kde +%files -n libproxy0-config-kde %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/kde.so +%{_libdir}/libproxy/%{version}/modules/config_kde.so -%files -n libproxy0-gnome +%files -n libproxy0-config-gnome %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/gnome.so +%{_libdir}/libproxy/%{version}/modules/config_gnome.so + +%files -n libproxy0-config-wpad +%defattr(-, root, root) +%{_libdir}/libproxy/%{version}/modules/config_wpad.so + +%files -n libproxy0-wpad-dns +%defattr(-, root, root) +%{_libdir}/libproxy/%{version}/modules/wpad_dns.so + +%files -n libproxy0-wpad-dns-devolution +%defattr(-, root, root) +%{_libdir}/libproxy/%{version}/modules/wpad_dnsdevolution.so %files -n libproxy0-networkmanager %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/networkmanager.so +%{_libdir}/libproxy/%{version}/modules/network_networkmanager.so -%files -n libproxy0-webkit +%files -n libproxy0-pacrunner-webkit %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/webkit.so +%{_libdir}/libproxy/%{version}/modules/pacrunner_webkit.so -%files -n libproxy0-mozjs +%files -n libproxy0-pacrunner-mozjs %defattr(-, root, root) -%{_libdir}/libproxy/%{version}/plugins/mozjs.so +%{_libdir}/libproxy/%{version}/modules/pacrunner_mozjs.so %endif %changelog diff --git a/pre_checkin.sh b/pre_checkin.sh index 1c8cf76..e4e52e2 100644 --- a/pre_checkin.sh +++ b/pre_checkin.sh @@ -1,5 +1,5 @@ #!/bin/sh cp libproxy.spec libproxy-plugins.spec -sed -i "s/\(%define *build_core_not_plugins *\)1/\10/;s/\(Name: *\)libproxy/\1libproxy-plugins/" libproxy-plugins.spec +sed -i "s/\(%define *build_core_not_modules *\)1/\10/;s/\(Name: *\)libproxy/\1libproxy-plugins/" libproxy-plugins.spec cp libproxy.changes libproxy-plugins.changes