summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2011-09-26 15:58:51 +0000
committerLars Wendler <polynomial-c@gentoo.org>2011-09-26 15:58:51 +0000
commit038da117d2bae458b9c220888bbf2dddf4097847 (patch)
treeef991ebcfeb519de7e2ac366e4e20cb7b8e65549 /www-client
parentDrop maintainer due bug #45816 (diff)
downloadgentoo-2-038da117d2bae458b9c220888bbf2dddf4097847.tar.gz
gentoo-2-038da117d2bae458b9c220888bbf2dddf4097847.tar.bz2
gentoo-2-038da117d2bae458b9c220888bbf2dddf4097847.zip
Security bump. Removed old
(Portage version: 2.2.0_alpha59/cvs/Linux x86_64)
Diffstat (limited to 'www-client')
-rw-r--r--www-client/icecat/ChangeLog8
-rw-r--r--www-client/icecat/icecat-3.6.16-r1.ebuild285
-rw-r--r--www-client/icecat/icecat-6.0.2.ebuild326
3 files changed, 333 insertions, 286 deletions
diff --git a/www-client/icecat/ChangeLog b/www-client/icecat/ChangeLog
index d646d6c62ae6..21e32e7fba50 100644
--- a/www-client/icecat/ChangeLog
+++ b/www-client/icecat/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for www-client/icecat
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v 1.102 2011/09/04 00:32:00 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v 1.103 2011/09/26 15:58:51 polynomial-c Exp $
+
+*icecat-6.0.2 (26 Sep 2011)
+
+ 26 Sep 2011; Lars Wendler <polynomial-c@gentoo.org> -icecat-3.6.16-r1.ebuild,
+ +icecat-6.0.2.ebuild:
+ Security bump. Removed old.
04 Sep 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> icecat-3.6.16-r3.ebuild:
x86 stable wrt security bug #379549
diff --git a/www-client/icecat/icecat-3.6.16-r1.ebuild b/www-client/icecat/icecat-3.6.16-r1.ebuild
deleted file mode 100644
index 2430b1a5b28e..000000000000
--- a/www-client/icecat/icecat-3.6.16-r1.ebuild
+++ /dev/null
@@ -1,285 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/icecat-3.6.16-r1.ebuild,v 1.7 2011/08/23 19:32:15 polynomial-c Exp $
-EAPI="3"
-WANT_AUTOCONF="2.1"
-
-inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib pax-utils fdo-mime autotools mozextension java-pkg-opt-2 python
-
-LANGS="af ar as ast be bg bn-BD bn-IN ca cs cy da de el en en-GB en-US eo es-AR
-es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gl gu-IN he hi-IN hr hu id is it
-ja ka kk kn ko ku lt lv mk ml mr nb-NO nl nn-NO oc or pa-IN pl pt-BR pt-PT rm ro
-ru si sk sl sq sr sv-SE ta ta-LK te th tr uk vi zh-CN zh-TW"
-# Malformed install.rdf: ta-LK
-
-NOSHORTLANGS="en-GB es-AR es-CL es-MX pt-BR zh-CN zh-TW"
-
-MAJ_XUL_PV="1.9.2"
-MAJ_PV="${PV/_*/}" # Without the _rc and _beta stuff
-DESKTOP_PV="3.6"
-MY_PV="${PV/_rc/rc}" # Handle beta for SRC_URI
-#XUL_PV="${MAJ_XUL_PV}${MAJ_PV/${DESKTOP_PV}/}" # Major + Minor version no.s
-XUL_PV="${MAJ_XUL_PV}.17"
-FIREFOX_PN="firefox"
-FIREFOX_P="${FIREFOX_PN}-${PV}"
-PATCH="${FIREFOX_PN}-3.6-patches-0.4"
-
-DESCRIPTION="GNU project's edition of Mozilla Firefox"
-HOMEPAGE="http://www.gnu.org/software/gnuzilla/"
-
-KEYWORDS="amd64 ppc ppc64 x86"
-SLOT="0"
-LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
-IUSE="+alsa +ipc gnome java libnotify system-sqlite wifi"
-
-SRC_URI="mirror://gnu/gnuzilla/${MY_PV}/${PN}-${MY_PV}.tar.bz2
- http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.bz2
- http://dev.gentoo.org/~polynomial-c/mozilla/ff3617.diff.xz"
-LANGPACK_URI="http://gnuzilla.gnu.org/download/langpacks/${MY_PV}"
-
-for X in ${LANGS} ; do
- if [ "${X}" != "en" ] && [ "${X}" != "en-US" ]; then
- SRC_URI="${SRC_URI}
- linguas_${X/-/_}? ( ${LANGPACK_URI}/${X}.xpi -> ${P}-${X}.xpi )"
- fi
- IUSE="${IUSE} linguas_${X/-/_}"
- # english is handled internally
- if [ "${#X}" == 5 ] && ! has ${X} ${NOSHORTLANGS}; then
- if [ "${X}" != "en-US" ]; then
- SRC_URI="${SRC_URI}
- linguas_${X%%-*}? ( ${LANGPACK_URI}/${X}.xpi -> ${P}-${X}.xpi )"
- fi
- IUSE="${IUSE} linguas_${X%%-*}"
- fi
-done
-
-RDEPEND="
- >=sys-devel/binutils-2.16.1
- >=dev-libs/nss-3.12.8
- >=dev-libs/nspr-4.8.6
- >=app-text/hunspell-1.2
- system-sqlite? ( >=dev-db/sqlite-3.7.4[fts3,secure-delete] )
- alsa? ( media-libs/alsa-lib )
- >=x11-libs/cairo-1.8.8[X]
- gnome? ( >=gnome-base/gnome-vfs-2.16.3
- >=gnome-base/libgnomeui-2.16.1
- >=gnome-base/gconf-2.16.0
- >=gnome-base/libgnome-2.16.0 )
- wifi? ( net-wireless/wireless-tools )
- libnotify? ( >=x11-libs/libnotify-0.4 )
- ~net-libs/xulrunner-${XUL_PV}[ipc=,java=,wifi=,libnotify=,system-sqlite=]"
-
-DEPEND="${RDEPEND}
- java? ( >=virtual/jdk-1.4 )
- =dev-lang/python-2*[threads]
- dev-util/pkgconfig"
-
-RDEPEND="${RDEPEND} java? ( >=virtual/jre-1.4 )"
-
-# This is a copy of the launcher program installed as part of xulrunner, so has
-# already been stripped. Bug #332071 for details.
-QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/${PN}"
-
-linguas() {
- local LANG SLANG
- for LANG in ${LINGUAS}; do
- if has ${LANG} en en_US; then
- has en ${linguas} || linguas="${linguas:+"${linguas} "}en"
- continue
- elif has ${LANG} ${LANGS//-/_}; then
- has ${LANG//_/-} ${linguas} || linguas="${linguas:+"${linguas} "}${LANG//_/-}"
- continue
- elif [[ " ${LANGS} " == *" ${LANG}-"* ]]; then
- for X in ${LANGS}; do
- if [[ "${X}" == "${LANG}-"* ]] && \
- [[ " ${NOSHORTLANGS} " != *" ${X} "* ]]; then
- has ${X} ${linguas} || linguas="${linguas:+"${linguas} "}${X}"
- continue 2
- fi
- done
- fi
- ewarn "Sorry, but ${PN} does not support the ${LANG} LINGUA"
- done
-}
-
-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_unpack() {
- #xz -dc -- "${DISTDIR}/icecat-${MY_PV}.tar.xz" | tar xof - || die "failed to unpack"
- unpack ${A} #${PATCH}.tar.bz2
-
- linguas
- for X in ${linguas}; do
- # FIXME: Add support for unpacking xpis to portage
- [[ ${X} != "en" ]] && xpi_unpack "${P}-${X}.xpi"
- done
-}
-
-src_prepare() {
- # Make this a 3.6.17 version
- epatch "${DISTDIR}"/ff3617.diff.xz
-
- epatch "${FILESDIR}"/${PN}-3.6.16-curl7217-includes-fix.patch
-
- # Integrate rebranding
- sed -i "s|/firefox|/icecat|" \
- "${WORKDIR}"/001-firefox_gentoo_install_dirs.patch
-
- # Fix preferences location
- sed -i 's|defaults/pref/|defaults/preferences/|' browser/installer/packages-static || die "sed failed"
-
- # Apply our patches
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"
-
- # Fix rebranding
- sed -i 's|\$(DIST)/bin/firefox|\$(DIST)/bin/icecat|' browser/app/Makefile.in
-
- eautoreconf
-
- cd js/src
- eautoreconf
-}
-
-src_configure() {
- # We will build our own .mozconfig
- rm "${S}"/.mozconfig
-
- MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
- MEXTENSIONS="default"
-
- ####################################
- #
- # mozconfig, CFLAGS and CXXFLAGS setup
- #
- ####################################
-
- mozconfig_init
- mozconfig_config
-
- # It doesn't compile on alpha without this LDFLAGS
- use alpha && append-ldflags "-Wl,--no-relax"
-
- # Specific settings for icecat
- echo "export MOZ_PHOENIX=1" >> "${S}"/.mozconfig
- echo "mk_add_options MOZ_PHOENIX=1" "${S}"/.mozconfig
- mozconfig_annotate '' --with-branding=browser/branding/unofficial
- mozconfig_annotate '' --disable-official-branding
- mozconfig_annotate '' --with-user-appdir=.icecat
-
- mozconfig_annotate '' --enable-crypto
- mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
- mozconfig_annotate '' --enable-application=browser
- 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 '' --with-system-bz2
- mozconfig_annotate '' --with-system-libxul
- mozconfig_annotate '' --with-libxul-sdk="${EPREFIX}"/usr/$(get_libdir)/xulrunner-devel-${MAJ_XUL_PV}
-
- mozconfig_use_enable gnome gnomevfs
- mozconfig_use_enable gnome gnomeui
- 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
-
- # Other browser-specific settings
- mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
-
- # Finalize and report settings
- mozconfig_final
-
- if [[ $(gcc-major-version) -lt 4 ]]; then
- append-cxxflags -fno-stack-protector
- fi
-
- ####################################
- #
- # Configure and build
- #
- ####################################
-
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" PYTHON="$(PYTHON)" econf
-}
-
-src_compile() {
- # Should the build use multiprocessing? Not enabled by default, as it tends to break
- [ "${WANT_MP}" = "true" ] && jobs=${MAKEOPTS} || jobs="-j1"
- emake ${jobs} || die
-}
-
-src_install() {
- MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
-
- emake DESTDIR="${D}" install || die "emake install failed"
-
- linguas
- for X in ${linguas}; do
- [[ ${X} != "en" ]] && xpi_install "${WORKDIR}"/"${P}-${X}"
- done
-
- # Install icon and .desktop for menu entry
- newicon "${S}"/browser/branding/unofficial/default48.png icecat-icon.png
- newmenu "${FILESDIR}"/icon/icecat.desktop ${PN}-${DESKTOP_PV}.desktop
-
- # Add StartupNotify=true bug 237317
- if use startup-notification ; then
- echo "StartupNotify=true" >> "${ED}"/usr/share/applications/${PN}-${DESKTOP_PV}.desktop
- fi
-
- pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/${PN}
-
- # Enable very specific settings not inherited from xulrunner
- cp "${FILESDIR}"/firefox-default-prefs.js \
- "${ED}/${MOZILLA_FIVE_HOME}/defaults/preferences/all-gentoo.js" || \
- die "failed to cp icecat-default-prefs.js"
- # Plugins dir
- dosym ../nsbrowser/plugins "${MOZILLA_FIVE_HOME}"/plugins \
- || die "failed to symlink"
-}
-
-pkg_postinst() {
- ewarn "All the packages built against ${PN} won't compile,"
- ewarn "any package that fails to build warrants a bug report."
- elog
-
- # Update mimedb for the new .desktop file
- fdo-mime_desktop_database_update
-}
diff --git a/www-client/icecat/icecat-6.0.2.ebuild b/www-client/icecat/icecat-6.0.2.ebuild
new file mode 100644
index 000000000000..c2d6341eb772
--- /dev/null
+++ b/www-client/icecat/icecat-6.0.2.ebuild
@@ -0,0 +1,326 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/icecat-6.0.2.ebuild,v 1.1 2011/09/26 15:58:51 polynomial-c Exp $
+
+EAPI="3"
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+
+inherit flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-3 multilib pax-utils fdo-mime autotools mozextension versionator python virtualx
+
+MAJ_FF_PV="$(get_version_component_range 1-2)" # 3.5, 3.6, 4.0, etc.
+FF_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
+FF_PV="${FF_PV/_beta/b}" # Handle beta for SRC_URI
+FF_PV="${FF_PV/_rc/rc}" # Handle rc for SRC_URI
+PATCH="firefox-6.0-patches-0.1"
+
+DESCRIPTION="GNU project's edition of Mozilla Firefox"
+HOMEPAGE="http://www.gnu.org/software/gnuzilla/"
+
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+SLOT="0"
+LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
+IUSE="+crashreporter +methodjit +ipc pgo system-sqlite +webm"
+
+# More URIs appended below...
+SRC_URI="mirror://gnu/gnuzilla/${FF_PV}/${PN}-${FF_PV}.tar.bz2
+ http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.bz2"
+LANGPACK_URI="http://gnuzilla.gnu.org/download/langpacks/${FF_PV}"
+
+ASM_DEPEND=">=dev-lang/yasm-1.1"
+
+# Mesa 7.10 needed for WebGL + bugfixes
+RDEPEND="
+ >=sys-devel/binutils-2.16.1
+ >=dev-libs/nss-3.12.10
+ >=dev-libs/nspr-4.8.8
+ >=dev-libs/glib-2.26
+ >=media-libs/mesa-7.10
+ media-libs/libpng[apng]
+ dev-libs/libffi
+ system-sqlite? ( >=dev-db/sqlite-3.7.4[fts3,secure-delete,unlock-notify,debug=] )
+ webm? ( media-libs/libvpx
+ media-libs/alsa-lib )
+ crashreporter? ( net-misc/curl )"
+# We don't use PYTHON_DEPEND/PYTHON_USE_WITH for some silly reason
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ pgo? (
+ =dev-lang/python-2*[sqlite]
+ >=sys-devel/gcc-4.5 )
+ webm? ( x86? ( ${ASM_DEPEND} )
+ amd64? ( ${ASM_DEPEND} ) )"
+
+# No language packs for alphas
+if ! [[ ${PV} =~ alpha|beta ]]; then
+ # This list can be updated with scripts/get_langs.sh from mozilla overlay
+ LANGS="af ak ar ast be bg bn-BD bn-IN br bs ca cs cy da de
+ el en eo es-ES et eu fa fi fr fy-NL ga-IE gd gl gu-IN
+ he hi-IN hr hu hy-AM id is it ja kk kn ko ku lg lt lv mai mk
+ ml mr nb-NO nl nn-NO nso or pa-IN pl pt-PT rm ro ru si sk sl
+ son sq sr sv-SE ta ta-LK te th tr uk vi zu"
+ NOSHORTLANGS="en-GB en-ZA es-AR es-CL es-MX pt-BR zh-CN zh-TW"
+
+ for X in ${LANGS} ; do
+ if [ "${X}" != "en" ] && [ "${X}" != "en-US" ]; then
+ SRC_URI="${SRC_URI}
+ linguas_${X/-/_}? ( ${LANGPACK_URI}/${X}.xpi -> ${P}-${X}.xpi )"
+ fi
+ IUSE="${IUSE} linguas_${X/-/_}"
+ # english is handled internally
+ if [ "${#X}" == 5 ] && ! has ${X} ${NOSHORTLANGS}; then
+ if [ "${X}" != "en-US" ]; then
+ SRC_URI="${SRC_URI}
+ linguas_${X%%-*}? ( ${LANGPACK_URI}/${X}.xpi -> ${P}-${X}.xpi )"
+ fi
+ IUSE="${IUSE} linguas_${X%%-*}"
+ fi
+ done
+fi
+
+QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/${PN}"
+
+linguas() {
+ local LANG SLANG
+ for LANG in ${LINGUAS}; do
+ if has ${LANG} en en_US; then
+ has en ${linguas} || linguas="${linguas:+"${linguas} "}en"
+ continue
+ elif has ${LANG} ${LANGS//-/_}; then
+ has ${LANG//_/-} ${linguas} || linguas="${linguas:+"${linguas} "}${LANG//_/-}"
+ continue
+ elif [[ " ${LANGS} " == *" ${LANG}-"* ]]; then
+ for X in ${LANGS}; do
+ if [[ "${X}" == "${LANG}-"* ]] && \
+ [[ " ${NOSHORTLANGS} " != *" ${X} "* ]]; then
+ has ${X} ${linguas} || linguas="${linguas:+"${linguas} "}${X}"
+ continue 2
+ fi
+ done
+ fi
+ ewarn "Sorry, but ${P} does not support the ${LANG} LINGUA"
+ done
+}
+
+pkg_setup() {
+ moz_pkgsetup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XDG_SESSION_COOKIE \
+ XAUTHORITY
+
+ if ! use methodjit ; then
+ einfo
+ ewarn "You are disabling the method-based JIT in JägerMonkey."
+ ewarn "This will greatly slowdown JavaScript in ${PN}!"
+ fi
+
+ if use pgo ; then
+ einfo
+ ewarn "You will do a double build for profile guided optimization."
+ ewarn "This will result in your build taking at least twice as long as before."
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ linguas
+ for X in ${linguas}; do
+ # FIXME: Add support for unpacking xpis to portage
+ [[ ${X} != "en" ]] && xpi_unpack "${P}-${X}.xpi"
+ done
+}
+
+src_prepare() {
+ # Fix preferences location
+ sed -i 's|defaults/pref/|defaults/preferences/|' browser/installer/packages-static || die "sed failed"
+
+ # Apply our patches
+ #
+ EPATCH_EXCLUDE="2000-firefox_gentoo_install_dirs.patch" \
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"
+
+ epatch "${FILESDIR}"/2000-icecat-6_gentoo_install_dirs.patch \
+ "${FILESDIR}"/${PN}-5.0-curl7217-includes-fix.patch
+
+ # Allow user to apply any additional patches without modifing ebuild
+ epatch_user
+
+ # Fix rebranding
+ sed -i 's|\$(DIST)/bin/firefox|\$(DIST)/bin/icecat|' browser/app/Makefile.in
+
+ # 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
+
+ # Disable gnomevfs extension
+ sed -i -e "s:gnomevfs::" "${S}/"browser/confvars.sh \
+ -e "s:gnomevfs::" "${S}/"xulrunner/confvars.sh \
+ || die "Failed to remove gnomevfs extension"
+
+ # 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!"
+
+ # Fix sandbox violations during make clean, bug 372817
+ sed -e "s:\(/no-such-file\):${T}\1:g" \
+ -i "${S}"/config/rules.mk \
+ -i "${S}"/js/src/config/rules.mk \
+ -i "${S}"/nsprpub/configure{.in,} \
+ || die
+
+ eautoreconf
+
+ cd js/src
+ eautoreconf
+}
+
+src_configure() {
+ # We will build our own .mozconfig
+ rm "${S}"/.mozconfig
+
+ MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+ MEXTENSIONS="default"
+
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ mozconfig_config
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Specific settings for icecat
+ echo "export MOZ_PHOENIX=1" >> "${S}"/.mozconfig
+ echo "mk_add_options MOZ_PHOENIX=1" "${S}"/.mozconfig
+ mozconfig_annotate '' --with-branding=browser/branding/unofficial
+ mozconfig_annotate '' --disable-official-branding
+ mozconfig_annotate '' --with-user-appdir=.icecat
+
+ mozconfig_annotate '' --prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+ mozconfig_annotate '' --disable-gconf
+ mozconfig_annotate '' --disable-mailnews
+ mozconfig_annotate '' --enable-canvas
+ mozconfig_annotate '' --enable-safe-browsing
+ mozconfig_annotate '' --with-system-png
+
+ # Other browser-specific settings
+ mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
+
+ mozconfig_use_enable system-sqlite
+ mozconfig_use_enable methodjit
+
+ # Allow for a proper pgo build
+ if use pgo ; then
+ echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig
+ fi
+
+ # Finalize and report settings
+ mozconfig_final
+
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ append-cxxflags -fno-stack-protector
+ elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then
+ if use amd64 || use x86; then
+ append-flags -mno-avx
+ fi
+ fi
+}
+
+src_compile() {
+ if use pgo; then
+ addpredict /root
+ addpredict /etc/gconf
+ addpredict /dev/dri
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+ Xemake -f client.mk profiledbuild || die "Xemake failed"
+ else
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+ emake -f client.mk || die "emake failed"
+ fi
+
+}
+
+src_install() {
+ MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+ # MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc.
+ local obj_dir="$(echo */config.log)"
+ obj_dir="${obj_dir%/*}"
+ cd "${S}/${obj_dir}"
+
+ # Add our default prefs for firefox + xulrunner
+ cp "${FILESDIR}"/gentoo-default-prefs.js \
+ "${S}/${obj_dir}/dist/bin/defaults/pref/all-gentoo.js" || die
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ linguas
+ for X in ${linguas}; do
+ [[ ${X} != "en" ]] && xpi_install "${WORKDIR}/${P}-${X}"
+ done
+
+ local size sizes icon_path icon name
+ sizes="16 32 48"
+ icon_path="${S}/browser/branding/unofficial"
+
+ # Install icons and .desktop for menu entry
+ for size in ${sizes}; do
+ insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
+ newins "${icon_path}/default${size}.png" "${PN}.png" || die
+ done
+ # The 128x128 icon has a different name
+ insinto "/usr/share/icons/hicolor/128x128/apps"
+ newins "${icon_path}/mozicon128.png" "${PN}.png" || die
+ # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+ newicon "${icon_path}/content/icon48.png" "${PN}.png" || die
+ newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" || die
+ sed -e "/^Icon/s:${PN}-icon:${PN}:" -i \
+ "${ED}/usr/share/applications/${PN}.desktop" || die
+
+ # Add StartupNotify=true bug 237317
+ if use startup-notification ; then
+ echo "StartupNotify=true" >> "${ED}/usr/share/applications/${PN}.desktop"
+ fi
+
+ pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/${PN}
+ pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/plugin-container
+
+ # Plugins dir
+ dosym ../nsbrowser/plugins "${MOZILLA_FIVE_HOME}"/plugins \
+ || die "failed to symlink"
+
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ # Update mimedb for the new .desktop file
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}