From fcac1ec496a6300c2dcf00adc37308246ed4a3ab1a4c132f037426db65ece8de Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Sat, 9 Jun 2012 14:22:53 +0000 Subject: [PATCH] Accepting request 124317 from home:dimstar:branches:GNOME:Factory - Add libproxy-force-bipr.patch: Force building pacrunner as module This is required as libproxy, when building only one pacrunner, links the module internal. But as we only temporarly disable the mozjs, we do need to keep the webkit runner as an external module. - Also pass -DBIPR=0 to cmake, to enable the patch above. - Temporaryly disable the mozjs pacrunner: it casues crashes due to symbol conflicts in Firefox (bnc#759123): + Introduce build_mozjs defnies, currently set to 0 + Conditionally build the pacrunner-mozjs package + conditionally buildrequire pkgconfig(mozjs185) + When not building mozjs pacrunner, obsolete the package by libproxy1. - Add libproxy-force-bipr.patch: Force building pacrunner as module This is required as libproxy, when building only one pacrunner, links the module internal. But as we only temporarly disable the mozjs, we do need to keep the webkit runner as an external module. - Also pass -DBIPR=0 to cmake, to enable the patch above. - Temporaryly disable the mozjs pacrunner: it casues crashes due to symbol conflicts in Firefox (bnc#759123): + Introduce build_mozjs defnies, currently set to 0 + Conditionally build the pacrunner-mozjs package + conditionally buildrequire pkgconfig(mozjs185) + When not building mozjs pacrunner, obsolete the package by libproxy1. OBS-URL: https://build.opensuse.org/request/show/124317 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/libproxy?expand=0&rev=78 --- libproxy-force-bipr.patch | 13 +++++++++++++ libproxy-plugins.changes | 21 +++++++++++++++++++++ libproxy-plugins.spec | 15 ++++++++++++++- libproxy.changes | 21 +++++++++++++++++++++ libproxy.spec | 15 ++++++++++++++- 5 files changed, 83 insertions(+), 2 deletions(-) create mode 100644 libproxy-force-bipr.patch diff --git a/libproxy-force-bipr.patch b/libproxy-force-bipr.patch new file mode 100644 index 0000000..711cb16 --- /dev/null +++ b/libproxy-force-bipr.patch @@ -0,0 +1,13 @@ +Index: libproxy-0.4.7/libproxy/cmake/modules.cmk +=================================================================== +--- libproxy-0.4.7.orig/libproxy/cmake/modules.cmk ++++ libproxy-0.4.7/libproxy/cmake/modules.cmk +@@ -19,7 +19,7 @@ include(cmake/modules/pacrunner_natus.cm + include(cmake/modules/pacrunner_webkit.cmk) + + # Build the pacrunner into libproxy unless we are building for multiple engines +-set(BIPR 1) ++set(BIPR 1 CACHE BOOL "Build internal pacrunner? (Always false when building more than one PR") + if((MOZJS_FOUND AND WEBKIT_FOUND) OR (MOZJS_FOUND AND NATUS_FOUND) OR (WEBKIT_FOUND AND NATUS_FOUND)) + set(BIPR 0) + endif() diff --git a/libproxy-plugins.changes b/libproxy-plugins.changes index 625a2b8..a3558ee 100644 --- a/libproxy-plugins.changes +++ b/libproxy-plugins.changes @@ -1,3 +1,24 @@ +------------------------------------------------------------------- +Sat Jun 9 10:11:55 UTC 2012 - dimstar@opensuse.org + +- Add libproxy-force-bipr.patch: Force building pacrunner as module + This is required as libproxy, when building only one pacrunner, + links the module internal. But as we only temporarly disable + the mozjs, we do need to keep the webkit runner as an external + module. +- Also pass -DBIPR=0 to cmake, to enable the patch above. + +------------------------------------------------------------------- +Wed Jun 6 12:26:57 UTC 2012 - dimstar@opensuse.org + +- Temporaryly disable the mozjs pacrunner: it casues crashes due + to symbol conflicts in Firefox (bnc#759123): + + Introduce build_mozjs defnies, currently set to 0 + + Conditionally build the pacrunner-mozjs package + + conditionally buildrequire pkgconfig(mozjs185) + + When not building mozjs pacrunner, obsolete the package by + libproxy1. + ------------------------------------------------------------------- Tue Mar 13 21:19:29 UTC 2012 - dimstar@opensuse.org diff --git a/libproxy-plugins.spec b/libproxy-plugins.spec index 9791cb1..e8e5462 100644 --- a/libproxy-plugins.spec +++ b/libproxy-plugins.spec @@ -17,6 +17,7 @@ %define build_core_not_modules 0 +%define build_mozjs 0 %if 0%{?suse_version} %ifnarch %arm ppc64 %define have_mono 1 @@ -53,6 +54,8 @@ Patch1: libproxy-mozjs185.patch Patch2: libproxy-trim-ignores.patch # PATCH-FIX-UPSTREAM libproxy-gcc47.patch dimstar@opensuse.org -- Fix build with gcc 4.7. Taken from upstream svn, r833. Patch3: libproxy-gcc47.patch +# PATCH-FIX-UPSTREAM libproxy-force-bipr.patch bnc#759123 dimstar@opensuse.org -- Allow to forcibly build pacrunners as modules, upstream r834 +Patch4: libproxy-force-bipr.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: cmake BuildRequires: gcc-c++ @@ -78,8 +81,10 @@ BuildRequires: pkgconfig(webkitgtk-3.0) BuildRequires: NetworkManager-devel BuildRequires: libkde4-devel BuildRequires: libqt4-devel +%if %{build_mozjs} BuildRequires: pkgconfig(mozjs185) %endif +%endif %else %if 0%{?have_mono} BuildRequires: mono-devel @@ -135,6 +140,9 @@ libproxy offers the following features: * extremely small core %package -n libproxy1 Summary: Libproxy provides consistent proxy configuration to applications Group: System/Libraries +%if !%{build_mozjs} +Obsoletes: libproxy1-pacrunner-mozjs <= %{version} +%endif %description -n libproxy1 libproxy offers the following features: * extremely small core @@ -259,6 +267,7 @@ A module to extend libproxy with capabilities to query KDE4 about proxy settings. +%if %{build_mozjs} %package -n libproxy1-pacrunner-mozjs Summary: Libproxy module to support wpad/pac parsing via Mozilla JavaScript Engine Group: System/Libraries @@ -272,7 +281,7 @@ Provides: libproxy1-pacrunner = %{version} %description -n libproxy1-pacrunner-mozjs A module to extend libproxy with capabilities to pass addresses to a WPAD/PAC script and have it find the correct proxy. - +%endif %package -n libproxy1-pacrunner-webkit Summary: Libproxy module to support WPAD/PAC parsing via WebKit JavaScript Engine @@ -312,6 +321,7 @@ about network configuration changes. %patch1 -p1 %patch2 -p0 %patch3 -p1 +%patch4 -p1 mkdir build %build @@ -343,6 +353,7 @@ cmake \ -DSHARE_INSTALL_PREFIX=%{_datadir} \ -DINCLUDE_INSTALL_DIR=%{_includedir} \ -DPERL_VENDORINSTALL=yes \ + -DBIPR=0 \ %if ! %build_core_not_modules -DWITH_DOTNET=OFF \ %endif @@ -485,10 +496,12 @@ make test %defattr(-, root, root) %{_libdir}/libproxy-%{version}/modules/pacrunner_webkit.so +%if %{build_mozjs} %files -n libproxy1-pacrunner-mozjs %defattr(-, root, root) %{_libdir}/libproxy-%{version}/modules/pacrunner_mozjs.so %endif %endif +%endif %changelog diff --git a/libproxy.changes b/libproxy.changes index 625a2b8..a3558ee 100644 --- a/libproxy.changes +++ b/libproxy.changes @@ -1,3 +1,24 @@ +------------------------------------------------------------------- +Sat Jun 9 10:11:55 UTC 2012 - dimstar@opensuse.org + +- Add libproxy-force-bipr.patch: Force building pacrunner as module + This is required as libproxy, when building only one pacrunner, + links the module internal. But as we only temporarly disable + the mozjs, we do need to keep the webkit runner as an external + module. +- Also pass -DBIPR=0 to cmake, to enable the patch above. + +------------------------------------------------------------------- +Wed Jun 6 12:26:57 UTC 2012 - dimstar@opensuse.org + +- Temporaryly disable the mozjs pacrunner: it casues crashes due + to symbol conflicts in Firefox (bnc#759123): + + Introduce build_mozjs defnies, currently set to 0 + + Conditionally build the pacrunner-mozjs package + + conditionally buildrequire pkgconfig(mozjs185) + + When not building mozjs pacrunner, obsolete the package by + libproxy1. + ------------------------------------------------------------------- Tue Mar 13 21:19:29 UTC 2012 - dimstar@opensuse.org diff --git a/libproxy.spec b/libproxy.spec index cef0a63..7d0be5a 100644 --- a/libproxy.spec +++ b/libproxy.spec @@ -17,6 +17,7 @@ %define build_core_not_modules 1 +%define build_mozjs 0 %if 0%{?suse_version} %ifnarch %arm ppc64 %define have_mono 1 @@ -53,6 +54,8 @@ Patch1: libproxy-mozjs185.patch Patch2: libproxy-trim-ignores.patch # PATCH-FIX-UPSTREAM libproxy-gcc47.patch dimstar@opensuse.org -- Fix build with gcc 4.7. Taken from upstream svn, r833. Patch3: libproxy-gcc47.patch +# PATCH-FIX-UPSTREAM libproxy-force-bipr.patch bnc#759123 dimstar@opensuse.org -- Allow to forcibly build pacrunners as modules, upstream r834 +Patch4: libproxy-force-bipr.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: cmake BuildRequires: gcc-c++ @@ -78,8 +81,10 @@ BuildRequires: pkgconfig(webkitgtk-3.0) BuildRequires: NetworkManager-devel BuildRequires: libkde4-devel BuildRequires: libqt4-devel +%if %{build_mozjs} BuildRequires: pkgconfig(mozjs185) %endif +%endif %else %if 0%{?have_mono} BuildRequires: mono-devel @@ -135,6 +140,9 @@ libproxy offers the following features: * extremely small core %package -n libproxy1 Summary: Libproxy provides consistent proxy configuration to applications Group: System/Libraries +%if !%{build_mozjs} +Obsoletes: libproxy1-pacrunner-mozjs <= %{version} +%endif %description -n libproxy1 libproxy offers the following features: * extremely small core @@ -259,6 +267,7 @@ A module to extend libproxy with capabilities to query KDE4 about proxy settings. +%if %{build_mozjs} %package -n libproxy1-pacrunner-mozjs Summary: Libproxy module to support wpad/pac parsing via Mozilla JavaScript Engine Group: System/Libraries @@ -272,7 +281,7 @@ Provides: libproxy1-pacrunner = %{version} %description -n libproxy1-pacrunner-mozjs A module to extend libproxy with capabilities to pass addresses to a WPAD/PAC script and have it find the correct proxy. - +%endif %package -n libproxy1-pacrunner-webkit Summary: Libproxy module to support WPAD/PAC parsing via WebKit JavaScript Engine @@ -312,6 +321,7 @@ about network configuration changes. %patch1 -p1 %patch2 -p0 %patch3 -p1 +%patch4 -p1 mkdir build %build @@ -343,6 +353,7 @@ cmake \ -DSHARE_INSTALL_PREFIX=%{_datadir} \ -DINCLUDE_INSTALL_DIR=%{_includedir} \ -DPERL_VENDORINSTALL=yes \ + -DBIPR=0 \ %if ! %build_core_not_modules -DWITH_DOTNET=OFF \ %endif @@ -485,10 +496,12 @@ make test %defattr(-, root, root) %{_libdir}/libproxy-%{version}/modules/pacrunner_webkit.so +%if %{build_mozjs} %files -n libproxy1-pacrunner-mozjs %defattr(-, root, root) %{_libdir}/libproxy-%{version}/modules/pacrunner_mozjs.so %endif %endif +%endif %changelog