Bump to .4, fixes several security issues, stability issues, and adds support for...
authorNirbheek Chauhan <nirbheek@gentoo.org>
Tue, 22 Jun 2010 21:18:09 +0000 (21:18 +0000)
committerNirbheek Chauhan <nirbheek@gentoo.org>
Tue, 22 Jun 2010 21:18:09 +0000 (21:18 +0000)
Package-Manager: portage-2.1.8.3/cvs/Linux i686

net-libs/xulrunner/ChangeLog
net-libs/xulrunner/Manifest
net-libs/xulrunner/metadata.xml
net-libs/xulrunner/xulrunner-1.9.2.4.ebuild [new file with mode: 0644]

index 241e1f44221131cde3dbe93b18c7521a4165ae4b..8481eb657471df11b5d82cce62ba28fe00d87477 100644 (file)
@@ -1,6 +1,13 @@
 # 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.316 2010/06/21 12:00:03 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/xulrunner/ChangeLog,v 1.317 2010/06/22 21:18:09 nirbheek Exp $
+
+*xulrunner-1.9.2.4 (22 Jun 2010)
+
+  22 Jun 2010; Nirbheek Chauhan <nirbheek@gentoo.org>
+  +xulrunner-1.9.2.4.ebuild, metadata.xml:
+  Bump to .4, fixes several security issues, stability issues, and adds
+  support for out-of-process plugins (USE=+ipc)
 
   21 Jun 2010; Samuli Suominen <ssuominen@gentoo.org>
   xulrunner-1.9.2.3-r1.ebuild:
index d2b279d24ebca103e0c86d52a0f21d7dd802bcb0..5b7645a4e8cfae7d9904f6dc6ba1f9ae3c1d2018 100644 (file)
@@ -13,6 +13,7 @@ AUX xulrunner.conf 113 RMD160 8be48cf5040eb5753c8eb35c048cc6b2c1a8a057 SHA1 62cc
 DIST firefox-3.5.6.source.tar.bz2 46914620 RMD160 1002ff196eb8e281c06ef451154b64a903104664 SHA1 fc1de4ddb9c20c7ba9e297737f926e9d8e32eed4 SHA256 60462020c1935702cf87928a886778b3b52e73b0121a8264630b72d370ea3fd1
 DIST firefox-3.5.8.source.tar.bz2 46954234 RMD160 97a4394d895fc0d8e7be34c090ebe75540108a90 SHA1 4bfb9a274113fb9ee590c00da69d995dc500d4cc SHA256 9b9b9b0f6e783fd4184a2f08264a3470de4cbf1c41cf9cf887a8373d220bb4db
 DIST firefox-3.6.3.source.tar.bz2 48633061 RMD160 de556e8606bbc61cb7d20fe6f308f0c5e8b9dd77 SHA1 f3bcd808356d16bdb26bfcf1a64a251488c4fd02 SHA256 35a0b35d79baa502b6c5781ed3e9c4b5eb623bdaf1940460dcf465192848a2d0
+DIST firefox-3.6.4.source.tar.bz2 51082341 RMD160 b36d31d35f2fc0d6f793b4d4e3f3069e55d9e1ad SHA1 c73e4cf4a8e55b5a192fe59d38bef1d06f43e842 SHA256 fdea684a717c3eda111060994ead9deb33d0b77a11f0f15da0ebc138ca0b2ec8
 DIST xulrunner-1.8.1.19-patches-0.1.tar.bz2 62219 RMD160 ecc59c5204090c6aa9c475bc181f745a6be84e98 SHA1 1b19bb5b4203a582d990175189b11f0215531327 SHA256 621a9e7abdfd667b05d0c8cee7b3cc284decd3ee50958ea849969f9ac3475f73
 DIST xulrunner-1.8.1.19-source.tar.bz2 38110248 RMD160 2b742243c6370a2790f48d2ceae2be756b4737ce SHA1 fb1b85088000142e24609d5ab9e6e483a82f8917 SHA256 3c1873b3e6c660acdae9e102391bbc64274cea3ed6238d9d693ab09fcf2b53ee
 DIST xulrunner-1.9.0.10-patches-0.1.tar.bz2 7077 RMD160 73612f1b619fef5d02e8c8f8318afe192e435e42 SHA1 8a48e53951216c330d4908def93a5c0201f5a890 SHA256 bc0c0d26258bc17ffa5cd513089fe94395ff8f6c17023cd363fac30cdd675410
@@ -27,5 +28,6 @@ EBUILD xulrunner-1.9.0.14.ebuild 4938 RMD160 90dab4447b3470cca3da354555665fe4b8b
 EBUILD xulrunner-1.9.1.6.ebuild 7948 RMD160 b3bca093dcb0ae36a7d493cb2990d7fe519a6a0f SHA1 9acb71f4171a6bc79c5e62732e085342ac77f7c5 SHA256 a59d74e0e3594f387d707b26277dc819d713c27d0d813024ba636fffa9aa7cff
 EBUILD xulrunner-1.9.1.8.ebuild 7951 RMD160 235df30f6c383961147c5114ab2bbc39e12aad05 SHA1 5fb4b96ba83ef678ac01faa354d4b67b53149dbd SHA256 d2d1768a7ecf76e310cfec673961605fe9c36c836dc50242541b3a46e3fc2938
 EBUILD xulrunner-1.9.2.3-r1.ebuild 7113 RMD160 a76436aea74663f110fe5a2ae60903ac09eab46e SHA1 cf7da8c677dc6e7707532c91461f0985d5185a05 SHA256 6c10a44ce7b04a689411e3eaca4c1d6e9260d29088df1b31af4999143e0efdce
-MISC ChangeLog 42803 RMD160 86556432145e46ca87549994da32e0498e0431b8 SHA1 350c505085f217c3c18586d514c0090ff4a5a2b7 SHA256 db031d9d1ca75a89055e7fe76a25aa81db476697880c53f3f0fe422a078ae1dc
-MISC metadata.xml 394 RMD160 87c4429eed631c2727f7d3372f664d39db20be7f SHA1 30b52729cbc65b0d0f683c576d3e9f8865d9e893 SHA256 c0acfe25d1d0e91b0df61729e61ce47fb8f97ec02a4eb94ca21fd48fda20102e
+EBUILD xulrunner-1.9.2.4.ebuild 7190 RMD160 ae8ca8f6bd22807853f4fb2ddf7e61f798574f8b SHA1 52d1523a9e39f5bf592b2f7d402dde4efd6e572d SHA256 bf93ac061829c30842cf80148766c3b2b7ffc0f5e7259ecaef936fdcc337ac24
+MISC ChangeLog 43054 RMD160 a4eb35c3ea13b062da7b14abfe94092ab2d4d3c8 SHA1 27775aec14936c29b1e098fa29dafe4195238705 SHA256 e347791f61f0e1fa1b63bc41a1ae6f7fa6b41786b49f9dc7b4e88a7f9f697282
+MISC metadata.xml 534 RMD160 6f9915565c51559c0e4726fed4e43cffce894306 SHA1 7ababd8846ab59b3ea43ac0153750584aa792055 SHA256 60f561d9e9846e96bfa0d6a9161058986c65dba93879073e7138477b6ce61978
index de17e907b72723b49021b35ac70a7e85a421cd4e..7691e8cbf324ef389251a1c842380f0b72cbec6c 100644 (file)
@@ -4,6 +4,8 @@
   <herd>mozilla</herd>
   <use>
     <flag name="custom-optimization">Fine-tune custom compiler optimizations</flag>
+       <flag name="ipc">Use inter-process communication between tabs and plugins.
+               Allows for greater stability in case of plugin crashes</flag>
     <flag name="system-sqlite">Use the system-wide <pkg>dev-db/sqlite</pkg>
         installation with secure-delete enabled</flag>
   </use>
diff --git a/net-libs/xulrunner/xulrunner-1.9.2.4.ebuild b/net-libs/xulrunner/xulrunner-1.9.2.4.ebuild
new file mode 100644 (file)
index 0000000..889e6e1
--- /dev/null
@@ -0,0 +1,232 @@
+# 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.4.ebuild,v 1.1 2010/06/22 21:18:09 nirbheek Exp $
+
+EAPI="2"
+WANT_AUTOCONF="2.1"
+
+inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib java-pkg-opt-2 autotools python
+
+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.4"
+
+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/dist/${PATCH}.tar.bz2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+SLOT="1.9"
+LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
+IUSE="+alsa debug +ipc libnotify system-sqlite wifi"
+
+RDEPEND="java? ( >=virtual/jre-1.4 )
+       >=sys-devel/binutils-2.16.1
+       >=dev-libs/nss-3.12.6
+       >=dev-libs/nspr-4.8
+       system-sqlite? ( >=dev-db/sqlite-3.6.22-r2[fts3,secure-delete] )
+       alsa? ( media-libs/alsa-lib )
+       >=app-text/hunspell-1.2
+       =media-libs/lcms-1*
+       >=x11-libs/cairo-1.8.8[X]
+       x11-libs/pango[X]
+       x11-libs/libXt
+       x11-libs/pixman
+       wifi? ( net-wireless/wireless-tools )
+       libnotify? ( >=x11-libs/libnotify-0.4 )"
+
+DEPEND="java? ( >=virtual/jdk-1.4 )
+       ${RDEPEND}
+       =dev-lang/python-2*[threads]
+       dev-util/pkgconfig"
+
+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}"
+
+       # Fix build error for xpctools
+       epatch "${FILESDIR}/301-xulrunner-xpctools.diff"
+
+       # Fix broken mozilla-plugin.pc
+       epatch "${FILESDIR}/${PN}-1.9.2-fix-pkgconfig-file.patch"
+
+       # Fix broken media support
+       epatch "${FILESDIR}/${PN}-1.9.2-noalsa-fixup.patch"
+
+       # Fix broken alignment
+       epatch "${FILESDIR}/1000_fix_alignment.patch"
+
+       # Ensure we find myspell dict.
+       epatch "${FILESDIR}/1002_fix-system-hunspell-dict-detections.patch"
+
+       # 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
+       mozconfig_annotate '' --with-system-nss
+       mozconfig_annotate '' --enable-system-lcms
+       mozconfig_annotate '' --with-system-bz2
+
+       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
+
+       # 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!"
+
+       CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" PYTHON="$(PYTHON)" econf
+}
+
+src_install() {
+       emake DESTDIR="${D}" install || die "emake install failed"
+
+       rm "${D}"/usr/bin/xulrunner
+
+       MOZLIBDIR="/usr/$(get_libdir)/${PN}-${MAJ_PV}"
+       SDKDIR="/usr/$(get_libdir)/${PN}-devel-${MAJ_PV}/sdk"
+
+       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=${MOZLIBDIR}" > "${D}"/etc/env.d/08xulrunner || die "env.d failed"
+
+       # Add our defaults to xulrunner and out of firefox
+       cp "${FILESDIR}"/xulrunner-default-prefs.js \
+               "${D}/${MOZLIBDIR}/defaults/pref/all-gentoo.js" || \
+                       die "failed to cp xulrunner-default-prefs.js"
+
+       if use java ; then
+               java-pkg_regjar "${D}/${MOZLIBDIR}/javaxpcom.jar"
+               java-pkg_regso "${D}/${MOZLIBDIR}/libjavaxpcomglue.so"
+               java-pkg_regjar "${D}/${SDKDIR}/lib/MozillaGlue.jar"
+               java-pkg_regjar "${D}/${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 ."
+}