diff --git a/.libproxy.metadata b/.libproxy.metadata new file mode 100644 index 0000000..68e191a --- /dev/null +++ b/.libproxy.metadata @@ -0,0 +1 @@ +c037969434095bc65d29437e11a7c9e0293a5149 SOURCES/libproxy-0.4.11.tar.gz diff --git a/README.md b/README.md deleted file mode 100644 index 0e7897f..0000000 --- a/README.md +++ /dev/null @@ -1,5 +0,0 @@ -The master branch has no content - -Look at the c7 branch if you are working with CentOS-7, or the c4/c5/c6 branch for CentOS-4, 5 or 6 - -If you find this file in a distro specific branch, it means that no content has been checked in yet diff --git a/SOURCES/0001-pacrunner_mozjs-Also-support-mozjs-17.0.patch b/SOURCES/0001-pacrunner_mozjs-Also-support-mozjs-17.0.patch new file mode 100644 index 0000000..217b843 --- /dev/null +++ b/SOURCES/0001-pacrunner_mozjs-Also-support-mozjs-17.0.patch @@ -0,0 +1,90 @@ +From cccc44ce0c8a251d987d0d83f05e93d31aa659d7 Mon Sep 17 00:00:00 2001 +From: Colin Walters +Date: Mon, 3 Jun 2013 17:09:25 -0400 +Subject: [PATCH] pacrunner_mozjs: Also support mozjs-17.0 + +GNOME 3.10 is moving to hard require mozjs-17.0, so we should support +it too. See also: + +https://bugs.freedesktop.org/show_bug.cgi?id=59830 +https://bugzilla.gnome.org/show_bug.cgi?id=690982 +--- + libproxy/cmake/modules/pacrunner_mozjs.cmk | 8 +++++++- + libproxy/modules/pacrunner_mozjs.cpp | 16 +++++++++++++--- + 2 files changed, 20 insertions(+), 4 deletions(-) + +diff --git a/libproxy/cmake/modules/pacrunner_mozjs.cmk b/libproxy/cmake/modules/pacrunner_mozjs.cmk +index 21072db..49856a6 100644 +--- a/libproxy/cmake/modules/pacrunner_mozjs.cmk ++++ b/libproxy/cmake/modules/pacrunner_mozjs.cmk +@@ -14,7 +14,13 @@ elseif(NOT APPLE) + include_directories(${MOZJS_INCLUDE_DIRS}) + link_directories(${MOZJS_LIBRARY_DIRS}) + else() +- set(MOZJS_FOUND 0) ++ pkg_search_module(MOZJS mozjs-17.0) ++ if(MOZJS_FOUND) ++ include_directories(${MOZJS_INCLUDE_DIRS}) ++ link_directories(${MOZJS_LIBRARY_DIRS}) ++ else() ++ set(MOZJS_FOUND 0) ++ endif() + endif() + else() + set(MOZJS_FOUND 0) +diff --git a/libproxy/modules/pacrunner_mozjs.cpp b/libproxy/modules/pacrunner_mozjs.cpp +index abb4b9d..f5e678c 100644 +--- a/libproxy/modules/pacrunner_mozjs.cpp ++++ b/libproxy/modules/pacrunner_mozjs.cpp +@@ -19,6 +19,7 @@ + + #include // ? + #include // gethostname ++#include + + #include "../extension_pacrunner.hpp" + using namespace libproxy; +@@ -76,12 +77,12 @@ static JSBool dnsResolve_(JSContext *cx, jsval hostname, jsval *vp) { + return true; + } + +-static JSBool dnsResolve(JSContext *cx, uintN /*argc*/, jsval *vp) { ++static JSBool dnsResolve(JSContext *cx, uint32_t /*argc*/, jsval *vp) { + jsval *argv = JS_ARGV(cx, vp); + return dnsResolve_(cx, argv[0], vp); + } + +-static JSBool myIpAddress(JSContext *cx, uintN /*argc*/, jsval *vp) { ++static JSBool myIpAddress(JSContext *cx, uint32_t /*argc*/, jsval *vp) { + char *hostname = (char *) JS_malloc(cx, 1024); + if (!gethostname(hostname, 1023)) { + JSString *myhost = JS_NewStringCopyN(cx, hostname, strlen(hostname)); +@@ -98,7 +99,12 @@ static JSBool myIpAddress(JSContext *cx, uintN /*argc*/, jsval *vp) { + static JSClass cls = { + "global", JSCLASS_GLOBAL_FLAGS, + JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, +- JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, JS_FinalizeStub, ++ JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, ++#if JS_VERSION == 186 ++ NULL, ++#else ++ JS_FinalizeStub, ++#endif + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL + }; + +@@ -117,7 +123,11 @@ public: + //JS_SetOptions(this->jsctx, JSOPTION_VAROBJFIX); + //JS_SetVersion(this->jsctx, JSVERSION_LATEST); + //JS_SetErrorReporter(cx, reportError); ++#if JS_VERSION == 186 ++ if (!(this->jsglb = JS_NewGlobalObject(this->jsctx, &cls, NULL))) goto error; ++#else + if (!(this->jsglb = JS_NewCompartmentAndGlobalObject(this->jsctx, &cls, NULL))) goto error; ++#endif + if (!JS_InitStandardClasses(this->jsctx, this->jsglb)) goto error; + + // Define Javascript functions +-- +1.7.1 + diff --git a/SOURCES/libproxy-0.4.10-mozjs.patch b/SOURCES/libproxy-0.4.10-mozjs.patch new file mode 100644 index 0000000..88b1c19 --- /dev/null +++ b/SOURCES/libproxy-0.4.10-mozjs.patch @@ -0,0 +1,12 @@ +diff -up libproxy-0.4.10/libproxy/cmake/modules/pacrunner_mozjs.cmk.orig libproxy-0.4.10/libproxy/cmake/modules/pacrunner_mozjs.cmk +--- libproxy-0.4.10/libproxy/cmake/modules/pacrunner_mozjs.cmk.orig 2012-10-02 16:20:40.000000000 +0200 ++++ libproxy-0.4.10/libproxy/cmake/modules/pacrunner_mozjs.cmk 2012-10-17 00:36:43.645579472 +0200 +@@ -9,7 +9,7 @@ if(WIN32) + elseif(NOT APPLE) + option(WITH_MOZJS "Search for MOZJS package" ON) + if (WITH_MOZJS) +- pkg_search_module(MOZJS mozjs185>=1.8.5) ++ pkg_search_module(MOZJS mozjs185) + if(MOZJS_FOUND) + include_directories(${MOZJS_INCLUDE_DIRS}) + link_directories(${MOZJS_LIBRARY_DIRS}) diff --git a/SPECS/libproxy.spec b/SPECS/libproxy.spec new file mode 100644 index 0000000..d276cc1 --- /dev/null +++ b/SPECS/libproxy.spec @@ -0,0 +1,427 @@ + +#0 to bootstrap libproxy circle dependencies - 1 normal case +%if 1 +%global _with_webkitgtk3 1 +%global _with_gnome3 1 +%global _with_mozjs 1 +%global _with_gnome 1 +%global _with_kde 1 +%global _with_networkmanager 1 +%global _with_python 1 +%endif + +Name: libproxy +Version: 0.4.11 +Release: 4%{?svn}%{?dist}.1 +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}%{?svn}.tar.gz +Patch0: libproxy-0.4.10-mozjs.patch +Patch1: 0001-pacrunner_mozjs-Also-support-mozjs-17.0.patch + +BuildRequires: python-devel +BuildRequires: libmodman-devel >= 2.0.1 +BuildRequires: cmake >= 2.6.0 + +# gnome +%{?_with_gnome: +BuildRequires: GConf2-devel +BuildRequires: libXmu-devel +} +# mozjs +%{?_with_mozjs:BuildRequires: mozjs17-devel} +# NetworkManager +%{?_with_networkmanager: +BuildRequires: NetworkManager-devel +BuildRequires: dbus-devel +} +# webkit (gtk) +%{?_with_webkit:BuildRequires: WebKit-gtk-devel} +# webkit (gtk3) +%{?_with_webkitgtk3:BuildRequires: webkitgtk3-devel} +# kde +%{?_with_kde:BuildRequires: kdelibs-devel} + +#Obsoletes of disabled subpackages +%{!?_with_mozjs: +Provides: %{name}-mozjs = %{version}-%{release} +Obsoletes: %{name}-mozjs < %{version}-%{release} +} +%{!?_with_webkit: +Provides: %{name}-webkit = %{version}-%{release} +Obsoletes: %{name}-webkit < %{version}-%{release} +} +%{!?_with_webkitgtk3: +Provides: %{name}-webkitgtk3 = %{version}-%{release} +Obsoletes: %{name}-webkitgtk3 < %{version}-%{release} +} + + +%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} + +%{?_with_python: +%package python +Summary: Binding for %{name} and python +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + +%description python +The %{name}-python package contains the python binding for %{name} +} + +%{?_with_gnome: +%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. +} + +%{?_with_kde: +%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. +} + +%{?_with_mozjs: +%package mozjs +Summary: Plugin for %{name} and mozjs +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +Provides: %{name}-pac = %{version}-%{release} + +%description mozjs +The %{name}-mozjs package contains the %{name} plugin for mozjs. +} + +%{?_with_networkmanager: +%package networkmanager +Summary: Plugin for %{name} and networkmanager +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} + +%description networkmanager +The %{name}-networkmanager package contains the %{name} plugin +for networkmanager. +} + +%{?_with_webkit: +%package webkit +Summary: Plugin for %{name} and webkit +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +Provides: %{name}-pac = %{version}-%{release} + +%description webkit +The %{name}-webkit package contains the %{name} plugin for +webkit. +} + +%{?_with_webkitgtk3: +%package webkitgtk3 +Summary: Plugin for %{name} and webkitgtk3 +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +Provides: %{name}-pac = %{version}-%{release} + +%description webkitgtk3 +The %{name}-webkit package contains the %{name} plugin for +webkitgtk3. +} + + +%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 .orig +%patch1 -p1 -b .orig + +%build +%{cmake} \ + -DMODULE_INSTALL_DIR=%{_libdir}/%{name}/%{version}/modules \ + -DWITH_PERL=OFF \ + %{!?_with_gnome3:-DWITH_GNOME3=OFF}\ + %{?_with_webkitgtk3:-DWITH_WEBKIT3=ON}\ + %{?_with_mozjs:-DWITH_MOZJS=ON}\ + . +make VERBOSE=1 %{?_smp_mflags} + + +%install +make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p" + +#In case all modules are disabled +mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{name}/%{version}/modules + +%{?_with_test: +%check +make test +} + +%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 + +%{?_with_python: +%files python +%defattr(-,root,root,-) +%{python_sitelib}/* +} + +%{?_with_gnome: +%files gnome +%defattr(-,root,root,-) +%{!?_with_gnome3: +%{_libdir}/%{name}/%{version}/modules/config_gnome.so +%{_libexecdir}/pxgconf} +%{?_with_gnome3: +%{_libdir}/%{name}/%{version}/modules/config_gnome3.so +%{_libexecdir}/pxgsettings} +} + +%{?_with_kde: +%files kde +%defattr(-,root,root,-) +%{_libdir}/%{name}/%{version}/modules/config_kde4.so +} + +%{?_with_mozjs: +%files mozjs +%defattr(-,root,root,-) +%{_libdir}/%{name}/%{version}/modules/pacrunner_mozjs.so +} + +%{?_with_networkmanager: +%files networkmanager +%defattr(-,root,root,-) +%{_libdir}/%{name}/%{version}/modules/network_networkmanager.so +} + +%{?_with_webkit: +%files webkit +%defattr(-,root,root,-) +%{_libdir}/%{name}/%{version}/modules/pacrunner_webkit.so +} + +%{?_with_webkitgtk3: +%files webkitgtk3 +%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 +%{_datadir}/cmake/Modules/Findlibproxy.cmake + + +%changelog +* Mon Jul 8 2013 Dan Winship - 0.4.11-4.el7.1 +- Rebuild to fix RPM changelog + +* Mon Jun 03 2013 Colin Walters - 0.4.11-4 +- Add patch to build with mozjs17, use it by default + +* Thu Feb 14 2013 Fedora Release Engineering - 0.4.11-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jan 3 2013 Dan Winship - 0.4.11-2 +- Minor dependency fixes + +* Mon Dec 03 2012 Nicolas Chauvet - 0.4.11-1 +- Update to 0.4.11 - CVE-2012-5580 + +* Tue Oct 16 2012 Nicolas Chauvet - 0.4.10-1 +- Update to 0.4.10 +- Fix CVE-2012-4504 + +* Thu Jul 19 2012 Fedora Release Engineering - 0.4.7-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Feb 27 2012 Peter Robinson - 0.4.7-4 +- Add upstream patches to use js rather than xulrunner +- Add patch to fix FTBFS on gcc 4.7 +- Cleanup spec for latest updates and remove obsolete bits + +* Fri Jan 13 2012 Fedora Release Engineering - 0.4.7-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Dec 06 2011 Adam Jackson - 0.4.7-2 +- Rebuild for new libpng + +* Tue Jun 07 2011 Nicolas Chauvet - 0.4.7-1 +- Update to 0.4.7 +- libproxy-1.0.pc is now reliable starting with 0.4.7 + +* Tue Apr 12 2011 Nicolas Chauvet - 0.4.7-0.1svn20110412 +- Update to 0.4.7 svn20110412 +- Add support for webkitgtk3 +- Add support for xulrunner 2.0 +- fix #683015 - libproxy fails with autoconfiguration +- fix #683018 - libproxy needs BR: NetworkManager-glib-devel (f14) +- Manually fix libproxy-1.0.pc version field - #664781 / #674854 + +* Wed Nov 24 2010 Nicolas Chauvet - 0.4.6-3 +- Fix mozjs/webkit obsoletion - rhbz#656849 +- Workaround unreliable Version field in pkg-config - rhbz#656484 + +* Sun Nov 07 2010 Nicolas Chauvet - 0.4.6-1 +- Update to 0.4.6 +- Fix python module not arch dependant + +* Mon Sep 06 2010 Nicolas Chauvet - 0.4.5-2 +- Update to 0.4.5 +- Disable mozjs on fedora >= 15 +- Disable webkit +- Add libproxy bootstrap option to disable modules. + +* Wed Jul 21 2010 David Malcolm - 0.4.4-7 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Tue Jul 13 2010 Nicolas Chauvet - 0.4.4-6 +- Fix libproxy-1.0.pc + +* Mon Jul 05 2010 Nathaniel McCallum - 0.4.4-5 +- Re-enable mozjs and webkit + +* Mon Jul 05 2010 Nathaniel McCallum - 0.4.4-4 +- Disable mozjs to get around a build error temporarily + +* Mon Jul 05 2010 Nathaniel McCallum - 0.4.4-3 +- Disable webkit subpackage in order to resolve circular dep + +* Sat Jul 03 2010 Nathaniel McCallum - 0.4.4-2 +- Fix missing BuildRequires: libmodman-devel + +* Sun Jun 13 2010 Nathaniel McCallum - 0.4.4-1 +- Update to 0.4.4 +- Removed install workarounds (fixed upstream) +- Removed patches (fixed upstream) +- Moved -python to noarch +- Downgrade cmake requirement (upstream change) +- Disabled perl bindings +- Run tests + +* 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 +