diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2013-03-15 15:30:34 +0000 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2013-03-15 15:30:34 +0000 |
commit | edda4957d3e9577d72662de297efb39f6b0a5346 (patch) | |
tree | eab0523458a896d8ac855b17cf67a25e78b33b9c /www-client/seamonkey | |
parent | Stable for HPPA (bug #461610). (diff) | |
download | gentoo-2-edda4957d3e9577d72662de297efb39f6b0a5346.tar.gz gentoo-2-edda4957d3e9577d72662de297efb39f6b0a5346.tar.bz2 gentoo-2-edda4957d3e9577d72662de297efb39f6b0a5346.zip |
Big cleanup requested by ago. All old, non-working and/or vulnerable versions are now gone
(Portage version: 2.2.0_alpha166/cvs/Linux x86_64, signed Manifest commit with key 0x981CA6FC)
Diffstat (limited to 'www-client/seamonkey')
11 files changed, 12 insertions, 1334 deletions
diff --git a/www-client/seamonkey/ChangeLog b/www-client/seamonkey/ChangeLog index ddcca37e8f83..561451cb85d4 100644 --- a/www-client/seamonkey/ChangeLog +++ b/www-client/seamonkey/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for www-client/seamonkey # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/ChangeLog,v 1.442 2013/03/13 17:03:51 ago Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/ChangeLog,v 1.443 2013/03/15 15:30:33 polynomial-c Exp $ + + 15 Mar 2013; Lars Wendler <polynomial-c@gentoo.org> + -seamonkey-2.0.14-r1.ebuild, + -files/seamonkey-2.0.14-curl7217-includes-fix.patch, + -files/seamonkey-2.3.1-scrollbar-mouse-interaction-improvement.patch, + -seamonkey-2.16.ebuild, -files/enigmail/70_enigmail-fix.patch, + -files/seamonkey-2.2-curl7217-includes-fix.patch, -seamonkey-2.4.1-r1.ebuild, + -files/firefox-15.0-fix-gstreamer-html5-crash.patch, + -files/Copy_xpcshell_only_if_tests_are_enabled.patch, metadata.xml: + Big cleanup requested by ago. All old, non-working and/or vulnerable versions + are now gone. 13 Mar 2013; Agostino Sarubbo <ago@gentoo.org> seamonkey-2.16.2.ebuild: Stable for x86, wrt bug #460818 diff --git a/www-client/seamonkey/files/Copy_xpcshell_only_if_tests_are_enabled.patch b/www-client/seamonkey/files/Copy_xpcshell_only_if_tests_are_enabled.patch deleted file mode 100644 index 342f7de80797..000000000000 --- a/www-client/seamonkey/files/Copy_xpcshell_only_if_tests_are_enabled.patch +++ /dev/null @@ -1,71 +0,0 @@ -# HG changeset patch -# User Takanori MATSUURA <t.matsuu@gmail.com> -# Date 1311059208 -32400 -# Node ID 6d8318b1709e2259c1077ba1f80374bfc45af9ba -# Parent 6596041bb85c5106dc474767bc481c6522f926f3 -Bug 672286 - Copy xpcshell.ini only if ENABLE_TESTS is set; r=Standard8 - -diff --git a/mail/app/Makefile.in b/mail/app/Makefile.in ---- a/mail/app/Makefile.in -+++ b/mail/app/Makefile.in -@@ -252,24 +252,27 @@ LIBS += -lphexlib - endif - - libs:: $(srcdir)/profile/prefs.js - $(INSTALL) $(IFLAGS1) $^ $(DIST)/bin/defaults/profile - - libs:: blocklist.xml - $(INSTALL) $(IFLAGS1) $^ $(DIST)/bin - -+ifdef ENABLE_TESTS - # XXX This is a hack to ensure that we get the right xpcshell.ini for our tests - # and that we can share the core mozilla-central xpcshell.ini. - # mozilla-central does this in testing/xpcshell-tests which means that it is - # very hard for anyone to specify anything else. - libs:: -+ $(NSINSTALL) -D $(MOZDEPTH)/_tests/xpcshell - cp $(MOZILLA_SRCDIR)/testing/xpcshell/xpcshell.ini $(MOZDEPTH)/_tests/xpcshell/xpcshell-core.ini - $(INSTALL) $(topsrcdir)/mail/test/xpcshell.ini $(MOZDEPTH)/_tests/xpcshell - cp $(topsrcdir)/mail/test/xpcshell.ini $(MOZDEPTH)/_tests/xpcshell/all-test-dirs.list -+endif - - ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) - - AB := $(firstword $(subst -, ,$(AB_CD))) - - APP_NAME = $(MOZ_APP_DISPLAYNAME) - - LOWER_APP_NAME = $(shell echo $(APP_NAME) | tr '[A-Z]' '[a-z]') -diff --git a/suite/app/Makefile.in b/suite/app/Makefile.in ---- a/suite/app/Makefile.in -+++ b/suite/app/Makefile.in -@@ -216,24 +216,27 @@ ifeq ($(OS_ARCH),WINNT) - $(PERL) -pe 's/(?<!\r)\n/\r\n/g;' < $(topsrcdir)/suite/installer/license.txt > $(DIST)/bin/license.txt - else - $(INSTALL) $(topsrcdir)/suite/installer/license.txt $(DIST)/bin/ - endif - - libs:: blocklist.xml - $(INSTALL) $(IFLAGS1) $^ $(DIST)/bin - -+ifdef ENABLE_TESTS - # XXX This is a hack to ensure that we get the right xpcshell.ini for our tests - # and that we can share the core mozilla-central xpcshell.ini. - # mozilla-central does this in testing/xpcshell-tests which means that it is - # very hard for anyone to specify anything else. - libs:: -+ $(NSINSTALL) -D $(MOZDEPTH)/_tests/xpcshell - cp $(MOZILLA_SRCDIR)/testing/xpcshell/xpcshell.ini $(MOZDEPTH)/_tests/xpcshell/xpcshell-core.ini - $(INSTALL) $(topsrcdir)/suite/test/xpcshell.ini $(MOZDEPTH)/_tests/xpcshell - cp $(topsrcdir)/suite/test/xpcshell.ini $(MOZDEPTH)/_tests/xpcshell/all-test-dirs.list -+endif - - ifdef MOZ_OMNIJAR - # Make extensions end up as XPIs instead of flat chrome when doing omni.jar. - # APP_EXTENSIONS exist only bundled with the application, - # PROFILE_EXTENSIONS will be copied to the profile in installed builds. - # NOTE: This is a hack to run this at the end of compilation, would be nicer - # if this was done right away for built-in extensions in omnijar mode. - # Listed extension GUIDs: - - diff --git a/www-client/seamonkey/files/enigmail/70_enigmail-fix.patch b/www-client/seamonkey/files/enigmail/70_enigmail-fix.patch deleted file mode 100644 index 0acf0c8760ed..000000000000 --- a/www-client/seamonkey/files/enigmail/70_enigmail-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- mozilla/extensions/enigmail/package/Makefile.in 14 Mar 2004 16:39:18 -0000 1.73 -+++ mozilla/extensions/enigmail/package/Makefile.in 20 Mar 2004 18:20:08 -0000 -@@ -48,6 +48,8 @@ - - XPIDLSRCS = nsIEnigmail.idl - -+PREF_JS_EXPORTS=prefs/enigmail.js -+ - include $(topsrcdir)/config/rules.mk - - XPIFILE = $(XPI_MODULE)-$(XPI_MODULE_VERS).xpi diff --git a/www-client/seamonkey/files/firefox-15.0-fix-gstreamer-html5-crash.patch b/www-client/seamonkey/files/firefox-15.0-fix-gstreamer-html5-crash.patch deleted file mode 100644 index 85d699903d1e..000000000000 --- a/www-client/seamonkey/files/firefox-15.0-fix-gstreamer-html5-crash.patch +++ /dev/null @@ -1,26 +0,0 @@ -https://bugzilla.mozilla.org/show_bug.cgi?id=761030 - -Went into Fx 16, but not 15 - -diff -r 07d362aa2c1b content/media/gstreamer/nsGStreamerReader.cpp ---- a/content/media/gstreamer/nsGStreamerReader.cpp Sun Jun 03 12:04:40 2012 -0700 -+++ b/content/media/gstreamer/nsGStreamerReader.cpp Sun Jun 03 14:37:55 2012 -0700 -@@ -447,16 +447,18 @@ bool nsGStreamerReader::DecodeVideoFrame - for(int i = 0; i < 3; i++) { - b.mPlanes[i].mData = data + gst_video_format_get_component_offset(format, i, - width, height); - b.mPlanes[i].mStride = gst_video_format_get_row_stride(format, i, width); - b.mPlanes[i].mHeight = gst_video_format_get_component_height(format, - i, height); - b.mPlanes[i].mWidth = gst_video_format_get_component_width(format, - i, width); -+ b.mPlanes[i].mOffset = 0; -+ b.mPlanes[i].mSkip = 0; - } - - bool isKeyframe = !GST_BUFFER_FLAG_IS_SET(buffer, - GST_BUFFER_FLAG_DELTA_UNIT); - /* XXX ? */ - PRInt64 offset = 0; - VideoData *video = VideoData::Create(mInfo, - mDecoder->GetImageContainer(), diff --git a/www-client/seamonkey/files/seamonkey-2.0.14-curl7217-includes-fix.patch b/www-client/seamonkey/files/seamonkey-2.0.14-curl7217-includes-fix.patch deleted file mode 100644 index 26b3130f3e0d..000000000000 --- a/www-client/seamonkey/files/seamonkey-2.0.14-curl7217-includes-fix.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- comm-1.9.1/mozilla/config/system-headers -+++ comm-1.9.1/mozilla/config/system-headers -@@ -200,7 +200,6 @@ - ctype.h - curl/curl.h - curl/easy.h --curl/types.h - curses.h - cxxabi.h - DateTimeUtils.h ---- comm-1.9.1/mozilla/js/src/config/system-headers -+++ comm-1.9.1/mozilla/js/src/config/system-headers -@@ -200,7 +200,6 @@ - ctype.h - curl/curl.h - curl/easy.h --curl/types.h - curses.h - cxxabi.h - DateTimeUtils.h ---- comm-1.9.1/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc -+++ comm-1.9.1/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc -@@ -31,7 +31,6 @@ - #include <dlfcn.h> - #include <curl/curl.h> - #include <curl/easy.h> --#include <curl/types.h> - - #include "common/linux/http_upload.h" - diff --git a/www-client/seamonkey/files/seamonkey-2.2-curl7217-includes-fix.patch b/www-client/seamonkey/files/seamonkey-2.2-curl7217-includes-fix.patch deleted file mode 100644 index 63d9a6ff4762..000000000000 --- a/www-client/seamonkey/files/seamonkey-2.2-curl7217-includes-fix.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- comm-release/mozilla/config/system-headers -+++ comm-release/mozilla/config/system-headers -@@ -207,7 +207,6 @@ - ctype.h - curl/curl.h - curl/easy.h --curl/types.h - curses.h - cxxabi.h - DateTimeUtils.h ---- comm-release/mozilla/js/src/config/system-headers -+++ comm-release/mozilla/js/src/config/system-headers -@@ -207,7 +207,6 @@ - ctype.h - curl/curl.h - curl/easy.h --curl/types.h - curses.h - cxxabi.h - DateTimeUtils.h ---- comm-release/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc -+++ comm-release/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc -@@ -33,7 +33,6 @@ - #include <dlfcn.h> - #include <curl/curl.h> - #include <curl/easy.h> --#include <curl/types.h> - - namespace { - ---- comm-release/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc -+++ comm-release/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc -@@ -29,7 +29,6 @@ - - #include <curl/curl.h> - #include <curl/easy.h> --#include <curl/types.h> - #include <dlfcn.h> - - #include <iostream> diff --git a/www-client/seamonkey/files/seamonkey-2.3.1-scrollbar-mouse-interaction-improvement.patch b/www-client/seamonkey/files/seamonkey-2.3.1-scrollbar-mouse-interaction-improvement.patch deleted file mode 100644 index 64da373e31f8..000000000000 --- a/www-client/seamonkey/files/seamonkey-2.3.1-scrollbar-mouse-interaction-improvement.patch +++ /dev/null @@ -1,105 +0,0 @@ -# HG changeset patch -# User Philip Chee <philip.chee@gmail.com> -# Date 1314371784 -28800 -# Node ID bce6138fb07449887e0e791965f90af87c28ca98 -# Parent a11ec626d4ab7088f8d9753e8fec90197e6b899b -Bug 673878 Use SHIFT+DOMMouseScroll to advance the selected tab. -This will allow plain DOMMouseScroll to scroll the tabbar without changing the selected tab. - -diff --git a/suite/browser/browser-prefs.js b/suite/browser/browser-prefs.js ---- a/suite/browser/browser-prefs.js -+++ b/suite/browser/browser-prefs.js -@@ -279,16 +279,21 @@ pref("browser.tabs.tabClipWidth", 140); - - // Where to show tab close buttons: - // 0 on active tab only - // 1 on all tabs until tabClipWidth is reached, then active tab only - // 2 no close buttons at all - // 3 at the end of the tabstrip - pref("browser.tabs.closeButtons", 3); - -+// Mouse wheel action when over the tab bar: -+// false The mouse wheel scrolls the whole tab bar like Firefox (default). -+// true The mouse wheel advances the selected tab. -+pref("browser.tabs.mouseScrollAdvance", false); -+ - // lets new tab/window load something different than first window - // -1 - use navigator startup preference - // 0 - loads blank page - // 1 - loads home page - // 2 - loads last page visited - pref("browser.tabs.loadOnNewTab", 0); - pref("browser.windows.loadOnNewWindow", 1); - -diff --git a/suite/browser/tabbrowser.xml b/suite/browser/tabbrowser.xml ---- a/suite/browser/tabbrowser.xml -+++ b/suite/browser/tabbrowser.xml -@@ -2999,16 +2999,17 @@ - <constructor> - <![CDATA[ - var tab = this.firstChild; - // set the tabstrip's minWidth too, otherwise it immediately overflows - this.mTabstrip.style.minWidth = - tab.style.minWidth = this.mPrefs.getIntPref("browser.tabs.tabMinWidth") + "px"; - tab.style.maxWidth = this.mPrefs.getIntPref("browser.tabs.tabMaxWidth") + "px"; - window.addEventListener("resize", this, false); -+ this.mScrollSelectedTab = this.mPrefs.getBoolPref("browser.tabs.mouseScrollAdvance"); - ]]> - </constructor> - - <destructor> - <![CDATA[ - window.removeEventListener("resize", this, false); - ]]> - </destructor> -@@ -3116,32 +3117,48 @@ - * if a tab was inserted to the overflow area or removed from it - * without any scrolling and when the tabbar has already - * overflowed. - */ - this.mTabstrip._updateScrollButtonsDisabledState(); - ]]> - </body> - </method> -+ -+ <field name="mScrollSelectedTab"> -+ false -+ </field> -+ -+ <method name="_handleMouseScroll"> -+ <parameter name="aEvent"/> -+ <body> -+ <![CDATA[ -+ // Javascript does not have a logical XOR operator. -+ if (aEvent.shiftKey != this.mScrollSelectedTab) { -+ this.advanceSelectedTab(aEvent.detail < 0 ? -1 : 1); -+ aEvent.stopPropagation(); -+ } -+ ]]> -+ </body> -+ </method> - </implementation> - - <handlers> - <handler event="TabSelect" action="this._handleTabSelect();"/> - - <handler event="transitionend"> - <![CDATA[ - if (event.propertyName == "max-width") - this._handleNewTab(event.target); - ]]> - </handler> - - <handler event="DOMMouseScroll" phase="capturing"> - <![CDATA[ -- this.advanceSelectedTab(event.detail < 0 ? -1 : 1); -- event.stopPropagation(); -+ this._handleMouseScroll(event); - ]]> - </handler> - </handlers> - </binding> - - <binding id="tabbrowser-alltabs-popup" - extends="chrome://global/content/bindings/popup.xml#popup"> - <implementation implements="nsIDOMEventListener"> diff --git a/www-client/seamonkey/metadata.xml b/www-client/seamonkey/metadata.xml index bb77653acd77..f738b6184578 100644 --- a/www-client/seamonkey/metadata.xml +++ b/www-client/seamonkey/metadata.xml @@ -10,19 +10,12 @@ <flag name='chatzilla'>Build Mozilla's IRC client (default on)</flag> <flag name='custom-optimization'>Fine-tune custom compiler optimizations</flag> - <flag name='composer'>Build Mozilla's HTML editor component (default on)</flag> <flag name="ipc">Use inter-process communication between tabs and plugins. Allows for greater stability in case of plugin crashes</flag> - <flag name='mailclient'>Build Mozilla's Mail client (default on)</flag> - <flag name="methodjit">Enable JIT for JavaScript using MethodJIT for faster - JS performance. Hardened users can disable this USE-flag to use MPROTECT - on grsecurity kernels.</flag> <flag name='roaming'>Build roaming extension support (default on)</flag> <flag name="system-jpeg">Use the system-wide <pkg>media-libs/libjpeg-turbo</pkg> Use system jpeg instead of bundled.</flag> <flag name='system-sqlite'>Use the system-wide <pkg>dev-db/sqlite</pkg> installation with secure-delete enabled</flag> - <flag name="webm">Use system <pkg>media-libs/libvpx</pkg> for HTML5 WebM - video support.</flag> </use> </pkgmetadata> diff --git a/www-client/seamonkey/seamonkey-2.0.14-r1.ebuild b/www-client/seamonkey/seamonkey-2.0.14-r1.ebuild deleted file mode 100644 index 765922c8a8f7..000000000000 --- a/www-client/seamonkey/seamonkey-2.0.14-r1.ebuild +++ /dev/null @@ -1,338 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/seamonkey-2.0.14-r1.ebuild,v 1.8 2013/01/16 19:02:13 mgorny Exp $ - -EAPI="2" -WANT_AUTOCONF="2.1" - -inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib fdo-mime autotools mozextension java-pkg-opt-2 - -PATCH="${PN}-2.0.11-patches-01" -EMVER="1.0.1" - -LANGS="be ca cs de en-GB en-US es-AR es-ES fi fr gl hu it ja ka lt nb-NO nl pl pt-PT ru sk sv-SE tr zh-CN" -NOSHORTLANGS="en-GB es-AR" - -MY_PV="${PV/_pre*}" -MY_PV="${MY_PV/_alpha/a}" -MY_PV="${MY_PV/_beta/b}" -MY_PV="${MY_PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" - -# release versions usually have language packs. So be careful with changing this. -HAS_LANGS="true" -if [[ ${PV} == *_pre* ]] ; then - # pre-releases. No need for arch teams to change KEYWORDS here. - - REL_URI="ftp://ftp.mozilla.org/pub/mozilla.org/${PN}/nightly/${MY_PV}-candidates/build${PV##*_pre}" - KEYWORDS="" - #HAS_LANGS="false" -else - # This is where arch teams should change the KEYWORDS. - - REL_URI="http://releases.mozilla.org/pub/mozilla.org/${PN}/releases/${MY_PV}" - KEYWORDS="alpha arm ia64 ppc64 sparc" - [[ ${PV} == *alpha* ]] && HAS_LANGS="false" -fi - -DESCRIPTION="Seamonkey Web Browser" -HOMEPAGE="http://www.seamonkey-project.org" - -SLOT="0" -LICENSE="MPL-1.1 GPL-2 LGPL-2.1" -IUSE="+alsa +chatzilla +composer +crypt gnome java ldap +mailclient +roaming system-sqlite" - -SRC_URI="${REL_URI}/source/${MY_P}.source.tar.bz2 - http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.bz2 - crypt? ( mailclient? ( http://www.mozilla-enigmail.org/download/source/enigmail-${EMVER}.tar.gz ) )" - -if ${HAS_LANGS} ; then - for X in ${LANGS} ; do - if [ "${X}" != "en" ] && [ "${X}" != "en-US" ]; then - SRC_URI="${SRC_URI} - linguas_${X/-/_}? ( ${REL_URI}/langpack/${MY_P}.${X}.langpack.xpi -> ${MY_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%%-*}? ( ${REL_URI}/langpack/${MY_P}.${X}.langpack.xpi -> ${MY_P}-${X}.xpi )" - fi - IUSE="${IUSE} linguas_${X%%-*}" - fi - done -fi - -RDEPEND="java? ( virtual/jre ) - >=sys-devel/binutils-2.16.1 - >=dev-libs/nss-3.12.8 - >=dev-libs/nspr-4.8.6 - alsa? ( media-libs/alsa-lib ) - system-sqlite? ( >=dev-db/sqlite-3.6.22-r2[fts3,secure-delete] ) - >=app-text/hunspell-1.2 - >=x11-libs/gtk+-2.10.0:2 - >=x11-libs/pango-1.14.0[X] - crypt? ( mailclient? ( >=app-crypt/gnupg-1.4 ) ) - 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 )" - -DEPEND="${RDEPEND} - virtual/pkgconfig - java? ( >=virtual/jdk-1.4 )" - -S="${WORKDIR}/comm-1.9.1" - -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 -} - -src_unpack() { - unpack ${A} - - if ${HAS_LANGS} ; then - linguas - for X in ${linguas}; do - # FIXME: Add support for unpacking xpis to portage - [[ ${X} != "en" ]] && xpi_unpack "${MY_P}-${X}.xpi" - done - if [[ ${linguas} != "" && ${linguas} != "en" ]]; then - einfo "Selected language packs (first will be default): ${linguas}" - fi - fi -} - -pkg_setup() { - if [[ ${PV} == *_pre* ]] ; then - ewarn "You're using an unofficial release of ${PN}. Don't file any bug in" - ewarn "Gentoo's Bugtracker against this package in case it breaks for you." - ewarn "Those belong to upstream: https://bugzilla.mozilla.org" - fi - - # Ensure we always build with C locale. - export LANG="C" - export LC_ALL="C" - export LC_MESSAGES="C" - export LC_CTYPE="C" - - export BUILD_OFFICIAL=1 - export MOZILLA_OFFICIAL=1 - - java-pkg-opt-2_pkg_setup - - # why not moz_pkgsetup? - python-any-r1_pkg_setup -} - -src_prepare() { - java-pkg-opt-2_src_prepare - - # Apply our patches - EPATCH_EXCLUDE="1008-seamonkey-cups-1.4.4-fixup.patch" \ - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/patch" - - epatch "${FILESDIR}"/${PN}-2.0.14-curl7217-includes-fix.patch - - if use crypt && use mailclient ; then - mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail - cd "${S}"/mailnews/extensions/enigmail || die - epatch "${FILESDIR}"/enigmail/70_enigmail-fix.patch - makemake2 - cd "${S}" - fi - - eautoreconf -} - -src_configure() { - declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - MEXTENSIONS="" - - #################################### - # - # mozconfig, CFLAGS and CXXFLAGS setup - # - #################################### - - mozconfig_init - mozconfig_config - - # seamonkey has issues with >=x11-libs/cairo-1.10.0 (bug #337813). - # If you don't like this blame upstream as they don't care about - # anything than their damned bundled shit!!! - sed '/--enable-system-cairo/s:enable:disable:' -i "${S}"/.mozconfig \ - || die - - # It doesn't compile on alpha without this LDFLAGS - use alpha && append-ldflags "-Wl,--no-relax" - - if ! use chatzilla ; then - MEXTENSIONS="${MEXTENSIONS},-irc" - fi - if ! use roaming ; then - MEXTENSIONS="${MEXTENSIONS},-sroaming" - fi - - if ! use gnome ; then - MEXTENSIONS="${MEXTENSIONS},-gnomevfs" - fi - - if ! use composer ; then - if ! use chatzilla && ! use mailclient ; then - mozconfig_annotate '-composer' --disable-composer - fi - fi - - mozconfig_annotate '' --enable-crypto - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" - mozconfig_annotate '' --enable-application=suite - mozconfig_annotate 'broken' --disable-mochitest - mozconfig_annotate 'broken' --disable-crashreporter - mozconfig_annotate '' --enable-system-hunspell - mozconfig_annotate '' --enable-jsd - mozconfig_annotate '' --enable-image-encoder=all - mozconfig_annotate '' --enable-canvas - mozconfig_annotate '' --with-system-nspr - mozconfig_annotate '' --with-system-nss - mozconfig_annotate '' --with-system-bz2 - mozconfig_annotate '' --enable-oji --enable-mathml - mozconfig_annotate 'places' --enable-storage --enable-places --enable-places_bookmarks - mozconfig_annotate '' --disable-installer - mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} - mozconfig_annotate '' --enable-printing - - # Enable/Disable based on USE flags - mozconfig_use_enable alsa ogg - mozconfig_use_enable alsa wave - mozconfig_use_enable gnome gnomevfs - mozconfig_use_enable gnome gnomeui - mozconfig_use_enable java javaxpcom - mozconfig_use_enable ldap - mozconfig_use_enable ldap ldap-experimental - mozconfig_use_enable mailclient mailnews - mozconfig_use_enable system-sqlite - - # Finalize and report settings - mozconfig_final - - if [[ $(gcc-major-version) -lt 4 ]]; then - append-cxxflags -fno-stack-protector - fi - - #################################### - # - # Configure and build - # - #################################### - - # Work around breakage in makeopts with --no-print-directory - MAKEOPTS="${MAKEOPTS/--no-print-directory/}" - - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" 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 - - # Only build enigmail extension if conditions are met. - if use crypt && use mailclient ; then - emake -C "${S}"/mailnews/extensions/enigmail || die "make enigmail failed" - emake -j1 -C "${S}"/mailnews/extensions/enigmail xpi || die "make enigmail xpi failed" - fi -} - -src_install() { - declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - declare emid - - emake DESTDIR="${D}" install || die "emake install failed" - cp -f "${FILESDIR}"/icon/seamonkey.desktop "${T}" || die - - if use crypt && use mailclient ; then - cd "${T}" || die - unzip "${S}"/mozilla/dist/bin/enigmail*.xpi install.rdf || die - emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) - - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die - cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die - unzip "${S}"/mozilla/dist/bin/enigmail*.xpi || die - fi - - if use mailclient ; then - sed 's|^\(MimeType=.*\)$|\1text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;|' \ - -i "${T}"/${PN}.desktop || die - sed 's|^\(Categories=.*\)$|\1Email;|' -i "${T}"/${PN}.desktop \ - || die - fi - - if ${HAS_LANGS} ; then - linguas - for X in ${linguas}; do - [[ ${X} != "en" ]] && xpi_install "${WORKDIR}"/"${MY_P}-${X}" - done - fi - - # Add StartupNotify=true bug 290401 - if use startup-notification ; then - echo "StartupNotify=true" >> "${T}"/${PN}.desktop - fi - - # Install icon and .desktop for menu entry - newicon "${S}"/suite/branding/content/icon64.png seamonkey.png || die - domenu "${T}"/${PN}.desktop || die - - # Add our default prefs - sed "s|SEAMONKEY_PVR|${PVR}|" "${FILESDIR}"/all-gentoo.js \ - > "${D}"${MOZILLA_FIVE_HOME}/defaults/pref/all-gentoo.js - - # Plugins dir - rm -rf "${D}"${MOZILLA_FIVE_HOME}/plugins || die "failed to remove existing plugins dir" - dosym ../nsbrowser/plugins "${MOZILLA_FIVE_HOME}"/plugins || die - - # shiny new man page - doman "${S}"/suite/app/${PN}.1 || die -} - -pkg_preinst() { - declare MOZILLA_FIVE_HOME="${ROOT}/usr/$(get_libdir)/${PN}" - - if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then - rm ${MOZILLA_FIVE_HOME}/plugins -rf - fi -} - -pkg_postinst() { - declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # Update mimedb for the new .desktop file - fdo-mime_desktop_database_update - - if use chatzilla ; then - elog "chatzilla is now an extension which can be en-/disabled and configured via" - elog "the Add-on manager." - fi -} diff --git a/www-client/seamonkey/seamonkey-2.16.ebuild b/www-client/seamonkey/seamonkey-2.16.ebuild deleted file mode 100644 index 6d2acabd25be..000000000000 --- a/www-client/seamonkey/seamonkey-2.16.ebuild +++ /dev/null @@ -1,354 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/seamonkey-2.16.ebuild,v 1.8 2013/02/25 10:14:38 ago Exp $ - -EAPI="3" -WANT_AUTOCONF="2.1" - -# This list can be updated with scripts/get_langs.sh from the mozilla overlay -MOZ_LANGS=(be ca cs de en en-GB en-US es-AR es-ES fi fr gl hu it ja lt nb-NO nl - pl pt-PT ru sk sv-SE tr uk zh-CN zh-TW) - -MOZ_PV="${PV/_pre*}" -MOZ_PV="${MOZ_PV/_alpha/a}" -MOZ_PV="${MOZ_PV/_beta/b}" -MOZ_PV="${MOZ_PV/_rc/rc}" -MOZ_P="${P}" -MY_MOZ_P="${PN}-${MOZ_PV}" - -if [[ ${PV} == *_pre* ]] ; then - MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_pre}" - MOZ_LANGPACK_PREFIX="linux-i686/xpi/" - # And the langpack stuff stays at eclass defaults -else - MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/${MOZ_PV}" - MOZ_LANGPACK_PREFIX="langpack/${MY_MOZ_P}." - MOZ_LANGPACK_SUFFIX=".langpack.xpi" -fi - -inherit check-reqs flag-o-matic toolchain-funcs eutils mozconfig-3 multilib pax-utils fdo-mime autotools mozextension nsplugins mozlinguas - -PATCHFF="firefox-19.0-patches-0.3" -PATCH="${PN}-2.14-patches-01" -EMVER="1.5.0" - -DESCRIPTION="Seamonkey Web Browser" -HOMEPAGE="http://www.seamonkey-project.org" - -if [[ ${PV} == *_pre* ]] ; then - # pre-releases. No need for arch teams to change KEYWORDS here. - - KEYWORDS="" -else - # This is where arch teams should change the KEYWORDS. - - KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86" -fi - -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="+chatzilla +crypt gstreamer +ipc +jit +roaming system-jpeg system-sqlite" - -SRC_URI+="${SRC_URI} - ${MOZ_FTP_URI}/source/${MY_MOZ_P}.source.tar.bz2 -> ${P}.source.tar.bz2 - http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCHFF}.tar.xz - http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz - crypt? ( http://www.mozilla-enigmail.org/download/source/enigmail-${EMVER}.tar.gz )" - -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.14.1 - >=dev-libs/nspr-4.9.4 - >=dev-libs/glib-2.26:2 - >=media-libs/mesa-7.10 - >=media-libs/libpng-1.5.13[apng] - >=media-libs/libvpx-1.0.0 - >=x11-libs/cairo-1.10 - >=x11-libs/pango-1.14.0 - >=x11-libs/gtk+-2.14:2 - virtual/libffi - gstreamer? ( - >=media-libs/gstreamer-0.10.33:0.10 - >=media-libs/gst-plugins-base-0.10.33:0.10 - ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) - system-sqlite? ( >=dev-db/sqlite-3.7.14.1[fts3,secure-delete,threadsafe,unlock-notify,debug=] ) - crypt? ( >=app-crypt/gnupg-1.4 ) - kernel_linux? ( media-libs/alsa-lib ) - selinux? ( sec-policy/selinux-mozilla )" - -DEPEND="${RDEPEND} - !elibc_glibc? ( dev-libs/libexecinfo ) - virtual/pkgconfig - amd64? ( ${ASM_DEPEND} - virtual/opengl ) - x86? ( ${ASM_DEPEND} - virtual/opengl )" - -if [[ ${PV} == *beta* ]] ; then - S="${WORKDIR}/comm-beta" -else - S="${WORKDIR}/comm-release" -fi - -src_unpack() { - unpack ${A} - - # Unpack language packs - mozlinguas_src_unpack -} - -pkg_setup() { - if [[ ${PV} == *_pre* ]] ; then - ewarn "You're using an unofficial release of ${PN}. Don't file any bug in" - ewarn "Gentoo's Bugtracker against this package in case it breaks for you." - ewarn "Those belong to upstream: https://bugzilla.mozilla.org" - fi - - moz_pkgsetup - - # Ensure we have enough disk space to compile - if use debug || use test ; then - CHECKREQS_DISK_BUILD="8G" - else - CHECKREQS_DISK_BUILD="4G" - fi - check-reqs_pkg_setup -} - -src_prepare() { - # Apply our patches - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/seamonkey" - - # browser patches go here - pushd "${S}"/mozilla &>/dev/null || die - EPATCH_EXCLUDE="2000-firefox_gentoo_install_dirs.patch" \ - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/firefox" - popd &>/dev/null || die - - # Shell scripts sometimes contain DOS line endings; bug 391889 - grep -rlZ --include="*.sh" $'\r$' . | - while read -r -d $'\0' file ; do - einfo edos2unix "${file}" - edos2unix "${file}" || die - done - - # Allow user to apply any additional patches without modifing ebuild - epatch_user - - if use crypt ; then - mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail - #cd "${S}"/mailnews/extensions/enigmail || die - #cd "${S}" - fi - - local ms="${S}/mozilla" - - # Enable gnomebreakpad - if use debug ; then - sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ - "${ms}"/build/unix/run-mozilla.sh || die "sed failed!" - fi - - # Disable gnomevfs extension - sed -i -e "s:gnomevfs::" "${S}"/suite/confvars.sh \ - -e "s:gnomevfs::" "${ms}"/browser/confvars.sh \ - -e "s:gnomevfs::" "${ms}"/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:" \ - "${ms}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path!" - - # Don't exit with error when some libs are missing which we have in - # system. - sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ - -i "${S}"/suite/installer/Makefile.in || die - # Don't error out when there's no files to be removed: - sed 's@\(xargs rm\)$@\1 -f@' \ - -i "${ms}"/toolkit/mozapps/installer/packager.mk || die - - eautoreconf - cd "${S}"/mozilla - eautoconf -} - -src_configure() { - 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" - - if use chatzilla ; then - MEXTENSIONS+=",irc" - else - MEXTENSIONS+=",-irc" - fi - if ! use roaming ; then - MEXTENSIONS+=",-sroaming" - fi - - # We must force enable jemalloc 3 threw .mozconfig - echo "export MOZ_JEMALLOC=1" >> ${S}/.mozconfig - - mozconfig_annotate '' --prefix="${EPREFIX}"/usr - mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir) - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" - mozconfig_annotate '' --disable-gconf - mozconfig_annotate '' --enable-jsd - mozconfig_annotate '' --enable-canvas - mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} - mozconfig_annotate '' --enable-system-ffi - mozconfig_annotate '' --with-system-png - mozconfig_annotate '' --target="${CTARGET:-${CHOST}}" - mozconfig_annotate '' --enable-safe-browsing - mozconfig_annotate '' --build="${CTARGET:-${CHOST}}" - mozconfig_annotate '' --enable-jemalloc - mozconfig_annotate '' --enable-replace-malloc - - mozconfig_use_enable gstreamer - mozconfig_use_enable system-sqlite - mozconfig_use_with system-jpeg - # Feature is know to cause problems on hardened - mozconfig_use_enable jit methodjit - mozconfig_use_enable jit tracejit - - # Use an objdir to keep things organized. - echo "mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/seamonk" \ - >> "${S}"/.mozconfig - - # Finalize and report settings - mozconfig_final - - # Work around breakage in makeopts with --no-print-directory - MAKEOPTS="${MAKEOPTS/--no-print-directory/}" - - 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() { - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - MOZ_MAKE_FLAGS="${MAKEOPTS}" \ - emake -f client.mk || die - - # Only build enigmail extension if conditions are met. - if use crypt ; then - cd "${S}"/mailnews/extensions/enigmail || die - ./makemake -r 2&> /dev/null - cd "${S}"/seamonk/mailnews/extensions/enigmail - emake || die "make enigmail failed" - emake xpi || die "make enigmail xpi failed" - fi -} - -src_install() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - local emid obj_dir="seamonk" - cd "${S}/${obj_dir}" - - # Copy our preference before omnijar is created. - sed "s|SEAMONKEY_PVR|${PVR}|" "${FILESDIR}"/all-gentoo-1.js > \ - "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ - || die - - echo 'pref("extensions.autoDisableScopes", 3);' >> \ - "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ - || die - - # Without methodjit and tracejit there's no conflict with PaX - if use jit ; then - # Pax mark xpcshell for hardened support, only used for startupcache creation. - pax-mark m "${S}"/mozilla/dist/bin/xpcshell - fi - - MOZ_MAKE_FLAGS="${MAKEOPTS}" \ - emake DESTDIR="${D}" install || die "emake install failed" - cp -f "${FILESDIR}"/icon/${PN}.desktop "${T}" || die - - if use crypt ; then - cd "${T}" || die - unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi install.rdf || die - emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) - - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die - cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die - unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi || die - - cd "${S}" || die - fi - - sed 's|^\(MimeType=.*\)$|\1text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;|' \ - -i "${T}"/${PN}.desktop || die - sed 's|^\(Categories=.*\)$|\1Email;|' -i "${T}"/${PN}.desktop \ - || die - - # Install language packs - mozlinguas_src_install - - # Add StartupNotify=true bug 290401 - if use startup-notification ; then - echo "StartupNotify=true" >> "${T}"/${PN}.desktop - fi - - # Install icon and .desktop for menu entry - newicon "${S}"/suite/branding/nightly/content/icon64.png ${PN}.png \ - || die - domenu "${T}"/${PN}.desktop || die - - # Without methodjit and tracejit there's no conflict with PaX - if use jit ; then - # Required in order to use plugins and even run firefox on hardened. - pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{seamonkey,seamonkey-bin} - fi - - # Plugin-container needs to be pax-marked for hardened to ensure plugins such as flash - # continue to work as expected. - pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/plugin-container - - # Handle plugins dir through nsplugins.eclass - share_plugins_dir - - doman "${S}"/${obj_dir}/suite/app/${PN}.1 || die -} - -pkg_preinst() { - MOZILLA_FIVE_HOME="${ROOT}/usr/$(get_libdir)/${PN}" - - if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then - rm ${MOZILLA_FIVE_HOME}/plugins -rf - fi -} - -pkg_postinst() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # Update mimedb for the new .desktop file - fdo-mime_desktop_database_update - - if use chatzilla ; then - elog "chatzilla is now an extension which can be en-/disabled and configured via" - elog "the Add-on manager." - fi -} diff --git a/www-client/seamonkey/seamonkey-2.4.1-r1.ebuild b/www-client/seamonkey/seamonkey-2.4.1-r1.ebuild deleted file mode 100644 index 23f73576de48..000000000000 --- a/www-client/seamonkey/seamonkey-2.4.1-r1.ebuild +++ /dev/null @@ -1,351 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/seamonkey-2.4.1-r1.ebuild,v 1.11 2013/02/18 16:06:02 polynomial-c Exp $ - -EAPI="3" -WANT_AUTOCONF="2.1" - -inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib fdo-mime autotools mozextension - -PATCH="${PN}-2.4.1-patches-01" -EMVER="1.3.2" - -LANGS="be ca cs de en en-GB en-US es-AR es-ES fi fr gl hu it ja lt nb-NO nl pl pt-PT ru sk sv-SE tr zh-CN" -NOSHORTLANGS="en-GB en-US es-AR" - -MY_PV="${PV/_pre*}" -MY_PV="${MY_PV/_alpha/a}" -MY_PV="${MY_PV/_beta/b}" -MY_PV="${MY_PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" - -# release versions usually have language packs. So be careful with changing this. -HAS_LANGS="true" -LANGPACK_PREFIX="${MY_P}." -LANGPACK_SUFFIX=".langpack" -if [[ ${PV} == *_pre* ]] ; then - # pre-releases. No need for arch teams to change KEYWORDS here. - - REL_URI="ftp://ftp.mozilla.org/pub/mozilla.org/${PN}/nightly/${MY_PV}-candidates/build${PV##*_pre}" - #LANG_URI="${REL_URI}/langpack" - LANG_URI="${REL_URI}/linux-i686/xpi" - LANGPACK_PREFIX="" - LANGPACK_SUFFIX="" - KEYWORDS="" - #HAS_LANGS="false" -else - # This is where arch teams should change the KEYWORDS. - - #REL_URI="http://releases.mozilla.org/pub/mozilla.org/${PN}/releases/${MY_PV}" - REL_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/${MY_PV}" - LANG_URI="${REL_URI}/langpack" - KEYWORDS="ppc" - [[ ${PV} == *alpha* ]] && HAS_LANGS="false" -fi - -DESCRIPTION="Seamonkey Web Browser" -HOMEPAGE="http://www.seamonkey-project.org" - -SLOT="0" -LICENSE="MPL-1.1 GPL-2 LGPL-2.1" -IUSE="+alsa +chatzilla +crypt +ipc +methodjit +roaming system-sqlite +webm" - -SRC_URI="${REL_URI}/source/${MY_P}.source.tar.bz2 -> ${P}.source.tar.bz2 - http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz - crypt? ( http://www.mozilla-enigmail.org/download/source/enigmail-${EMVER}.tar.gz )" - -if ${HAS_LANGS} ; then - for X in ${LANGS} ; do - if [ "${X}" != "en" ] ; then - SRC_URI="${SRC_URI} - linguas_${X/-/_}? ( ${LANG_URI}/${LANGPACK_PREFIX}${X}${LANGPACK_SUFFIX}.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%%-*}? ( ${LANG_URI}/${LANGPACK_PREFIX}${X}${LANGPACK_SUFFIX}.xpi -> ${P}-${X}.xpi )" - #fi - IUSE="${IUSE} linguas_${X%%-*}" - fi - done -fi - -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-1.4.1[apng] - >=x11-libs/cairo-1.10 - >=x11-libs/pango-1.14.0 - >=x11-libs/gtk+-2.14:2 - virtual/libffi - system-sqlite? ( >=dev-db/sqlite-3.7.5[fts3,secure-delete,unlock-notify,debug=] ) - crypt? ( >=app-crypt/gnupg-1.4 ) - webm? ( media-libs/libvpx - media-libs/alsa-lib )" - -DEPEND="${RDEPEND} - virtual/pkgconfig - webm? ( amd64? ( ${ASM_DEPEND} ) - x86? ( ${ASM_DEPEND} ) )" - -if [[ ${PV} == *beta* ]] ; then - S="${WORKDIR}/comm-beta" -else - S="${WORKDIR}/comm-release" -fi - -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 -} - -src_unpack() { - unpack ${A} - - if ${HAS_LANGS} ; then - linguas - for X in ${linguas}; do - # FIXME: Add support for unpacking xpis to portage - [[ ${X} != "en" ]] && xpi_unpack "${P}-${X}.xpi" - done - if [[ ${linguas} != "" && ${linguas} != "en" ]]; then - einfo "Selected language packs (first will be default): ${linguas}" - fi - fi -} - -pkg_setup() { - if [[ ${PV} == *_pre* ]] ; then - ewarn "You're using an unofficial release of ${PN}. Don't file any bug in" - ewarn "Gentoo's Bugtracker against this package in case it breaks for you." - ewarn "Those belong to upstream: https://bugzilla.mozilla.org" - fi - - moz_pkgsetup - - 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 -} - -src_prepare() { - # Apply our patches - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/_seamonkey" - - # browser patches go here - pushd "${S}"/mozilla &>/dev/null || die - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/_mozilla" - popd &>/dev/null || die - - # mailnews patches go here - pushd "${S}"/mailnews &>/dev/null || die - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/_mailnews" - popd &>/dev/null || die - - epatch "${FILESDIR}"/${PN}-2.2-curl7217-includes-fix.patch \ - "${FILESDIR}"/${PN}-2.3.1-scrollbar-mouse-interaction-improvement.patch \ - "${FILESDIR}"/Copy_xpcshell_only_if_tests_are_enabled.patch - - # Allow user to apply any additional patches without modifing ebuild - epatch_user - - if use crypt ; then - mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail - cd "${S}"/mailnews/extensions/enigmail || die - ./makemake -r 2&>/dev/null - sed -e 's:@srcdir@:${S}/mailnews/extensions/enigmail:' \ - -i Makefile.in || die - cd "${S}" - fi - - #Ensure we disable javaxpcom by default to prevent configure breakage - sed -i -e s:MOZ_JAVAXPCOM\=1::g "${S}"/mozilla/xulrunner/confvars.sh \ - || die "sed javaxpcom" - - # Disable gnomevfs extension - sed -i -e "s:gnomevfs::" "${S}/"suite/confvars.sh \ - || die "Failed to remove gnomevfs extension" - - eautoreconf - cd "${S}"/mozilla || die - eautoreconf - cd "${S}"/mozilla/js/src || die - eautoreconf -} - -src_configure() { - declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - MEXTENSIONS="" - - #################################### - # - # 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" - - if ! use chatzilla ; then - MEXTENSIONS+=",-irc" - fi - if ! use roaming ; then - MEXTENSIONS+=",-sroaming" - fi - - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" - mozconfig_annotate '' --disable-gconf - mozconfig_annotate '' --enable-jsd - mozconfig_annotate '' --enable-canvas - mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} - mozconfig_annotate '' --enable-system-ffi - - mozconfig_annotate '' --target="${CTARGET:-${CHOST}}" - - mozconfig_use_enable system-sqlite - mozconfig_use_enable methodjit - - if use crypt ; then - mozconfig_annotate "mail crypt" --enable-chrome-format=jar - fi - - mozconfig_annotate '' --with-system-png - - # 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 - - #################################### - # - # Configure and build - # - #################################### - - # Work around breakage in makeopts with --no-print-directory - MAKEOPTS="${MAKEOPTS/--no-print-directory/}" - - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" PYTHON="$(PYTHON)" econf -} - -src_compile() { - emake || die - - # Only build enigmail extension if conditions are met. - if use crypt ; then - emake -C "${S}"/mailnews/extensions/enigmail || die "make enigmail failed" - emake -j1 -C "${S}"/mailnews/extensions/enigmail xpi || die "make enigmail xpi failed" - fi -} - -src_install() { - declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - declare emid - - emake DESTDIR="${D}" install || die "emake install failed" - cp -f "${FILESDIR}"/icon/${PN}.desktop "${T}" || die - - if use crypt ; then - cd "${T}" || die - unzip "${S}"/mozilla/dist/bin/enigmail*.xpi install.rdf || die - emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) - - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die - cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die - unzip "${S}"/mozilla/dist/bin/enigmail*.xpi || die - fi - - sed 's|^\(MimeType=.*\)$|\1text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;|' \ - -i "${T}"/${PN}.desktop || die - sed 's|^\(Categories=.*\)$|\1Email;|' -i "${T}"/${PN}.desktop \ - || die - - if ${HAS_LANGS} ; then - linguas - for X in ${linguas}; do - [[ ${X} != "en" ]] && xpi_install "${WORKDIR}"/"${P}-${X}" - done - fi - - # Add StartupNotify=true bug 290401 - if use startup-notification ; then - echo "StartupNotify=true" >> "${T}"/${PN}.desktop - fi - - # Install icon and .desktop for menu entry - newicon "${S}"/suite/branding/nightly/content/icon64.png ${PN}.png \ - || die - domenu "${T}"/${PN}.desktop || die - - # Add our default prefs - sed "s|SEAMONKEY_PVR|${PVR}|" "${FILESDIR}"/all-gentoo.js \ - > "${D}"${MOZILLA_FIVE_HOME}/defaults/pref/all-gentoo.js \ - || die - - # Plugins dir - rm -rf "${D}"${MOZILLA_FIVE_HOME}/plugins || die "failed to remove existing plugins dir" - dosym ../nsbrowser/plugins "${MOZILLA_FIVE_HOME}"/plugins || die - - doman "${S}"/suite/app/${PN}.1 || die -} - -pkg_preinst() { - declare MOZILLA_FIVE_HOME="${ROOT}/usr/$(get_libdir)/${PN}" - - if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then - rm ${MOZILLA_FIVE_HOME}/plugins -rf - fi -} - -pkg_postinst() { - declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # Update mimedb for the new .desktop file - fdo-mime_desktop_database_update - - if use chatzilla ; then - elog "chatzilla is now an extension which can be en-/disabled and configured via" - elog "the Add-on manager." - fi -} |