summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJory Pratt <anarchy@gentoo.org>2010-09-16 11:58:12 +0000
committerJory Pratt <anarchy@gentoo.org>2010-09-16 11:58:12 +0000
commit357d6c2bef84439b690275269f04942e46890128 (patch)
tree6940edd70ba2c9c7223abbfb1b28ecf64b4b744e /net-libs
parentDon't use stderr anymore, bug 326279. Move sed to add 'svn mkdir' to the prev... (diff)
downloadhistorical-357d6c2bef84439b690275269f04942e46890128.tar.gz
historical-357d6c2bef84439b690275269f04942e46890128.tar.bz2
historical-357d6c2bef84439b690275269f04942e46890128.zip
Fix potentional crash in windowwatcher
Package-Manager: portage-2.1.9.7/cvs/Linux x86_64
Diffstat (limited to 'net-libs')
-rw-r--r--net-libs/xulrunner/ChangeLog8
-rw-r--r--net-libs/xulrunner/Manifest4
-rw-r--r--net-libs/xulrunner/files/fix_crash_in_windowwatcher.patch28
-rw-r--r--net-libs/xulrunner/xulrunner-1.9.2.9-r1.ebuild248
4 files changed, 286 insertions, 2 deletions
diff --git a/net-libs/xulrunner/ChangeLog b/net-libs/xulrunner/ChangeLog
index cb2648d2e6d7..98f099b587bc 100644
--- a/net-libs/xulrunner/ChangeLog
+++ b/net-libs/xulrunner/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-libs/xulrunner
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/xulrunner/ChangeLog,v 1.360 2010/09/14 21:20:06 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/xulrunner/ChangeLog,v 1.361 2010/09/16 11:58:12 anarchy Exp $
+
+*xulrunner-1.9.2.9-r1 (16 Sep 2010)
+
+ 16 Sep 2010; Jory A. Pratt <bambam@gentoo.org>
+ +xulrunner-1.9.2.9-r1.ebuild, +files/fix_crash_in_windowwatcher.patch:
+ Fix potentional crash in windowwatcher
14 Sep 2010; Jeroen Roovers <jer@gentoo.org> xulrunner-1.9.2.9.ebuild:
Stable for HPPA (bug #336396).
diff --git a/net-libs/xulrunner/Manifest b/net-libs/xulrunner/Manifest
index 21a9d7533f3b..baf06103992a 100644
--- a/net-libs/xulrunner/Manifest
+++ b/net-libs/xulrunner/Manifest
@@ -5,6 +5,7 @@ AUX 1002_fix-system-hunspell-dict-detections.patch 3394 RMD160 5db17109743eeff45
AUX 1009-armv4t-nanojit-v2.patch 12251 RMD160 9e9d862879d4897067605879245c1a6d50cf32fe SHA1 dcfe3da40dc822f2769e244571b721b59e59f322 SHA256 68c4df9c5313b93e8c5d7c7e8ed8375a88e9afa28c05e3965180058ba06cf05b
AUX 301-xulrunner-xpctools.diff 550 RMD160 12d370d5473de5c54233a70533cd35e37305ef86 SHA1 e3812ce6a4446b0b9d496a9dd4760d03bf0de449 SHA256 6bf510f7df5a41f47501cbdbcffc46d0c04865e3597dc6a575cd4a9cfae1def4
AUX 801-enable-x86_64-tracemonkey.patch 501 RMD160 e8341671a9ab7f05cf58735a2b862ded55d82829 SHA1 d0c194c79993c3c47a8c46726d3f024e044766a0 SHA256 20f558efbf4ed1960b390c353c7eeb94108fcdb8aaf33f1fea6caf44468aeb7c
+AUX fix_crash_in_windowwatcher.patch 1102 RMD160 d539f5d8d82b389a8b2969a294821fd2d1184dd4 SHA1 0c2a8a36cdff57ba45166c76def0950cce297470 SHA256 5dd5145c1f3c0de1267384f0d68aa48c7cf50ba080d5074144f5b706af85d737
AUX xulrunner-1.9-no_sunstudio.patch 416 RMD160 fbd1be7182ff8a7aead935cf2f2ce5432aa5f5b8 SHA1 b50c3c30485ef140a0aeeb6de3875761cd906bcb SHA256 2dce8f5a07c623701ce5ae8c2517bd8776adff6c3a371d4762570e806ccf0a34
AUX xulrunner-1.9-solaris64.patch 18082 RMD160 8d1b3e2b8a6eb191b0d775f0e96391a321d6e981 SHA1 b984870ff665613ece1af103220f7a7a2d4296cb SHA256 d6c8a8f5835aa3075f1da70aa7524dc81d4a081d9b78503ec929d22e5c742f05
AUX xulrunner-1.9.1.5-solaris-undef-regs.patch 433 RMD160 11f805b661ce8ded829b00ae5e3b134a32420ac4 SHA1 d90ef838e52c3f3d7d21e91bb2451614a9ebefbc SHA256 730150845b311b394dc0c398afb72ef74c7d220dbc6013872d922610189ab0f8
@@ -19,6 +20,7 @@ DIST firefox-3.6.9.source.tar.bz2 51240588 RMD160 530b1d64cc02ba0433c3a39d1c97c5
DIST xulrunner-1.9.2-patches-0.6.tar.bz2 16308 RMD160 6066ea0b01f8b6c9eae1a0692ad9a07f04ab7327 SHA1 ebba861e23ef36256dc29d7d04820222be8e4241 SHA256 6a9d709f9ee15d6c139a35f8a6826cd7b473188290bd5e81e56297d8f36e2235
DIST xulrunner-1.9.2-patches-0.7.tar.bz2 16366 RMD160 2bfa5f56d58d5bb4508512190cf07454814fb0b5 SHA1 2c6e2cfb0c50a5595795561126de26941dbed576 SHA256 3e25e9b8d5fe9109f03889bca9240f92acd502fd68efe0e7eda304f5487b6bf0
EBUILD xulrunner-1.9.2.8.ebuild 7748 RMD160 960a894404d2441a4209e4b26f0c2fec98eb165b SHA1 b4e4a38bf91fbdb2d95476b34bf5fd027b9711e9 SHA256 24a9947c9554dbc55d86d08a6e694751b323e840c65d3306f0253fc347a1a9c2
+EBUILD xulrunner-1.9.2.9-r1.ebuild 8013 RMD160 add08d506e9fbbe2f9f5fbda3f66a3773e34af81 SHA1 206b50b66c8025b9ac273ca319c1c1248bfa2d98 SHA256 4088534695609a105e16b457ae7eaa5c619c7dc790df09b9b2905131eb9478ee
EBUILD xulrunner-1.9.2.9.ebuild 7942 RMD160 bdc9cb18d341c345fb7a0a95ddf1aec1c5cdeda8 SHA1 c940c01cd4d9f2e59622d071ffacb7aa8b24a12b SHA256 b9ea83c25118fa0bd489c9febf69cbbe4ed320f0a565bb57f578864179fe93b5
-MISC ChangeLog 49308 RMD160 43c168176a574281aff705f3329e7bfd26eb1a6c SHA1 544c985ee9788d3d9df643a61a2447b7596a6630 SHA256 e0820683c723e6ba4c8f1e78f3605f2423ed938cb1fabec91141b0001428dfb7
+MISC ChangeLog 49513 RMD160 73406fd7f67ad4e64813983225a7797c924b798d SHA1 a5f30277c9fa8ea7e3c4fec291ffcd9e33484c3b SHA256 c4cad960cfbd443a5939e2138683964468588f2406f804ea3b483bc574ed20b3
MISC metadata.xml 534 RMD160 6f9915565c51559c0e4726fed4e43cffce894306 SHA1 7ababd8846ab59b3ea43ac0153750584aa792055 SHA256 60f561d9e9846e96bfa0d6a9161058986c65dba93879073e7138477b6ce61978
diff --git a/net-libs/xulrunner/files/fix_crash_in_windowwatcher.patch b/net-libs/xulrunner/files/fix_crash_in_windowwatcher.patch
new file mode 100644
index 000000000000..774e43ae4e59
--- /dev/null
+++ b/net-libs/xulrunner/files/fix_crash_in_windowwatcher.patch
@@ -0,0 +1,28 @@
+# HG changeset patch
+# Parent e981d93d6534b48a75655ad886d494bd3bbe3ff2
+# User Blake Kaplan <mrbkap@gmail.com>
+Bug 594699 - Null check this to return to pre-bug 532730 behavior in pathological cases.
+
+diff --git a/embedding/components/windowwatcher/src/nsWindowWatcher.cpp b/embedding/components/windowwatcher/src/nsWindowWatcher.cpp
+--- a/embedding/components/windowwatcher/src/nsWindowWatcher.cpp
++++ b/embedding/components/windowwatcher/src/nsWindowWatcher.cpp
+@@ -517,17 +517,17 @@ nsWindowWatcher::OpenWindowJSInternal(ns
+ nsCOMPtr<nsIDocShellTreeItem> newDocShellItem; // from the new window
+ JSContextAutoPopper callerContextGuard;
+
+ NS_ENSURE_ARG_POINTER(_retval);
+ *_retval = 0;
+
+ nsCOMPtr<nsIContentUtils> utils =
+ do_GetService("@mozilla.org/content/contentutils;1");
+- if (!utils->IsSafeToRunScript()) {
++ if (utils && !utils->IsSafeToRunScript()) {
+ return NS_ERROR_FAILURE;
+ }
+
+ GetWindowTreeOwner(aParent, getter_AddRefs(parentTreeOwner));
+
+ if (aUrl) {
+ rv = URIfromURL(aUrl, aParent, getter_AddRefs(uriToLoad));
+ if (NS_FAILED(rv))
+
diff --git a/net-libs/xulrunner/xulrunner-1.9.2.9-r1.ebuild b/net-libs/xulrunner/xulrunner-1.9.2.9-r1.ebuild
new file mode 100644
index 000000000000..5a3cda746439
--- /dev/null
+++ b/net-libs/xulrunner/xulrunner-1.9.2.9-r1.ebuild
@@ -0,0 +1,248 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/xulrunner/xulrunner-1.9.2.9-r1.ebuild,v 1.1 2010/09/16 11:58:12 anarchy Exp $
+
+EAPI="3"
+WANT_AUTOCONF="2.1"
+
+inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib java-pkg-opt-2 autotools python prefix pax-utils
+
+MY_PV="${PV/_rc/rc}" # Handle beta
+MY_PV="${MY_PV/1.9.2/3.6}"
+MAJ_PV="1.9.2" # from mozilla-* branch name
+PATCH="${PN}-1.9.2-patches-0.7"
+
+DESCRIPTION="Mozilla runtime package that can be used to bootstrap XUL+XPCOM applications"
+HOMEPAGE="http://developer.mozilla.org/en/docs/XULRunner"
+SRC_URI="http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${MY_PV}/source/firefox-${MY_PV}.source.tar.bz2
+ http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.bz2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris"
+SLOT="1.9"
+LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
+IUSE="+alsa +cups debug +ipc libnotify system-sqlite wifi"
+
+RDEPEND="
+ >=sys-devel/binutils-2.16.1
+ >=dev-libs/nss-3.12.7
+ >=dev-libs/nspr-4.8.6
+ system-sqlite? ( >=dev-db/sqlite-3.6.22-r2[fts3,secure-delete] )
+ alsa? ( media-libs/alsa-lib )
+ >=app-text/hunspell-1.2
+ >=x11-libs/cairo-1.8.8[X]
+ x11-libs/pango[X]
+ x11-libs/libXt
+ x11-libs/pixman
+ >=dev-libs/libevent-1.4.7
+ wifi? ( net-wireless/wireless-tools )
+ libnotify? ( >=x11-libs/libnotify-0.4 )
+ cups? ( net-print/cups[gnutls] )"
+
+DEPEND="java? ( >=virtual/jdk-1.4 )
+ ${RDEPEND}
+ =dev-lang/python-2*[threads]
+ dev-util/pkgconfig"
+
+# virtual/jre should not be in DEPEND. bug 325981
+RDEPEND="java? ( >=virtual/jre-1.4 ) ${RDEPEND}"
+
+S="${WORKDIR}/mozilla-${MAJ_PV}"
+
+pkg_setup() {
+ # Ensure we always build with C locale.
+ export LANG="C"
+ export LC_ALL="C"
+ export LC_MESSAGES="C"
+ export LC_CTYPE="C"
+
+ java-pkg-opt-2_pkg_setup
+
+ python_set_active_version 2
+}
+
+src_prepare() {
+ # Apply our patches
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"
+
+ epatch "${FILESDIR}/fix_crash_in_windowwatcher.patch"
+
+ eprefixify \
+ extensions/java/xpcom/interfaces/org/mozilla/xpcom/Mozilla.java \
+ xpcom/build/nsXPCOMPrivate.h \
+ xulrunner/installer/Makefile.in \
+ xulrunner/app/nsRegisterGREUnix.cpp
+
+ # fix double symbols due to double -ljemalloc
+ sed -i -e '/^LIBS += $(JEMALLOC_LIBS)/s/^/#/' \
+ xulrunner/stub/Makefile.in || die
+
+ # Allow user to apply additional patches without modifing ebuild
+ epatch_user
+
+ # Same as in config/autoconf.mk.in
+ MOZLIBDIR="/usr/$(get_libdir)/${PN}-${MAJ_PV}"
+ SDKDIR="/usr/$(get_libdir)/${PN}-devel-${MAJ_PV}/sdk"
+
+ # Gentoo install dirs
+ sed -i -e "s:@PV@:${MAJ_PV}:" "${S}"/config/autoconf.mk.in \
+ || die "${MAJ_PV} sed failed!"
+
+ # Enable gnomebreakpad
+ if use debug ; then
+ sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
+ "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
+ fi
+
+ eautoreconf
+
+ cd js/src
+ eautoreconf
+}
+
+src_configure() {
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ mozconfig_config
+
+ MEXTENSIONS="default"
+
+ MOZLIBDIR="/usr/$(get_libdir)/${PN}-${MAJ_PV}"
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ mozconfig_annotate '' --with-default-mozilla-five-home="${MOZLIBDIR}"
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+ mozconfig_annotate '' --enable-application=xulrunner
+ mozconfig_annotate '' --disable-mailnews
+ mozconfig_annotate 'broken' --disable-crashreporter
+ mozconfig_annotate '' --enable-image-encoder=all
+ mozconfig_annotate '' --enable-canvas
+ mozconfig_annotate 'gtk' --enable-default-toolkit=cairo-gtk2
+ # Bug 60668: Galeon doesn't build without oji enabled, so enable it
+ # regardless of java setting.
+ mozconfig_annotate '' --enable-oji --enable-mathml
+ mozconfig_annotate 'places' --enable-storage --enable-places
+ mozconfig_annotate '' --enable-safe-browsing
+
+ # Build mozdevelop permately
+ mozconfig_annotate '' --enable-jsd --enable-xpctools
+
+ # System-wide install specs
+ mozconfig_annotate '' --disable-installer
+ mozconfig_annotate '' --disable-updater
+ mozconfig_annotate '' --disable-strip
+ mozconfig_annotate '' --disable-install-strip
+
+ # Use system libraries
+ mozconfig_annotate '' --enable-system-cairo
+ mozconfig_annotate '' --enable-system-hunspell
+ mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --with-system-nss --with-nss-prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --x-includes="${EPREFIX}"/usr/include --x-libraries="${EPREFIX}"/usr/$(get_libdir)
+ mozconfig_annotate '' --with-system-bz2
+ mozconfig_annotate '' --with-system-libevent="${EPREFIX}"/usr
+
+ mozconfig_use_enable ipc # +ipc, upstream default
+ mozconfig_use_enable libnotify
+ mozconfig_use_enable java javaxpcom
+ mozconfig_use_enable wifi necko-wifi
+ mozconfig_use_enable alsa ogg
+ mozconfig_use_enable alsa wave
+ mozconfig_use_enable system-sqlite
+ mozconfig_use_enable cups printing
+
+ # Debug
+ if use debug ; then
+ mozconfig_annotate 'debug' --disable-optimize
+ mozconfig_annotate 'debug' --enable-debug=-ggdb
+ mozconfig_annotate 'debug' --enable-debug-modules=all
+ mozconfig_annotate 'debug' --enable-debugger-info-modules
+ fi
+
+ # Finalize and report settings
+ mozconfig_final
+
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ append-flags -fno-stack-protector
+ fi
+
+ ####################################
+ #
+ # Configure and build
+ #
+ ####################################
+
+ # Disable no-print-directory
+ MAKEOPTS=${MAKEOPTS/--no-print-directory/}
+
+ # Ensure that are plugins dir is enabled as default
+ sed -i -e "s:/usr/lib/mozilla/plugins:/usr/$(get_libdir)/nsbrowser/plugins:" \
+ "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path!"
+
+ # hack added to workaround bug 299905 on hosts with libc that doesn't
+ # support tls, (probably will only hit this condition with Gentoo Prefix)
+ tc-has-tls -l || export ac_cv_thread_keyword=no
+
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" PYTHON="$(PYTHON)" econf
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ rm "${ED}"/usr/bin/xulrunner
+
+ MOZLIBDIR="/usr/$(get_libdir)/${PN}-${MAJ_PV}"
+ SDKDIR="/usr/$(get_libdir)/${PN}-devel-${MAJ_PV}/sdk"
+
+ if has_multilib_profile; then
+ local config
+ for config in "${ED}"/etc/gre.d/*.system.conf ; do
+ mv "${config}" "${config%.conf}.${CHOST}.conf"
+ done
+ fi
+
+ dodir /usr/bin
+ dosym "${MOZLIBDIR}/xulrunner" "/usr/bin/xulrunner-${MAJ_PV}" || die
+
+ # env.d file for ld search path
+ dodir /etc/env.d
+ echo "LDPATH=${EPREFIX}/${MOZLIBDIR}" > "${ED}"/etc/env.d/08xulrunner || die "env.d failed"
+
+ # Add our defaults to xulrunner and out of firefox
+ cp "${FILESDIR}"/xulrunner-default-prefs.js \
+ "${ED}/${MOZLIBDIR}/defaults/pref/all-gentoo.js" || \
+ die "failed to cp xulrunner-default-prefs.js"
+
+ pax-mark m "${D}"/${MOZLIBDIR}/plugin-container
+
+ if use java ; then
+ java-pkg_regjar "${ED}/${MOZLIBDIR}/javaxpcom.jar"
+ java-pkg_regso "${ED}/${MOZLIBDIR}/libjavaxpcomglue.so"
+ java-pkg_regjar "${ED}/${SDKDIR}/lib/MozillaGlue.jar"
+ java-pkg_regjar "${ED}/${SDKDIR}/lib/MozillaInterfaces.jar"
+ fi
+}
+
+pkg_postinst() {
+ ewarn "If firefox fails to start with \"failed to load xpcom\", run revdep-rebuild"
+ ewarn "If that does not fix the problem, rebuild dev-libs/nss"
+ ewarn "Try dev-util/lafilefixer if you get build failures related to .la files"
+
+ einfo
+ einfo "All prefs can be overridden by the user. The preferences are to make"
+ einfo "use of xulrunner out of the box on an average system without the user"
+ einfo "having to go through and enable the basics."
+
+ einfo
+ ewarn "Any package that requires xulrunner:1.9 slot could and most likely will"
+ ewarn "have issues. These issues should be reported to maintainer, and mozilla herd"
+ ewarn "should be cc'd on the bug report. Thank you anarchy@gentoo.org ."
+}