diff options
author | Jory Pratt <anarchy@gentoo.org> | 2011-10-01 01:45:31 +0000 |
---|---|---|
committer | Jory Pratt <anarchy@gentoo.org> | 2011-10-01 01:45:31 +0000 |
commit | 972fb900714fbeba6e18d1ec11085c1e5bc72e4e (patch) | |
tree | 85e6f32927097d3cc04ed0d1ae96d3ebc8f5890d /mail-client/thunderbird | |
parent | *calibre-0.8.21 (01 Oct 2011) (diff) | |
download | gentoo-2-972fb900714fbeba6e18d1ec11085c1e5bc72e4e.tar.gz gentoo-2-972fb900714fbeba6e18d1ec11085c1e5bc72e4e.tar.bz2 gentoo-2-972fb900714fbeba6e18d1ec11085c1e5bc72e4e.zip |
Security bump with addon updater fixed
(Portage version: 2.1.10.20/cvs/Linux x86_64)
Diffstat (limited to 'mail-client/thunderbird')
-rw-r--r-- | mail-client/thunderbird/ChangeLog | 10 | ||||
-rw-r--r-- | mail-client/thunderbird/files/Copy_xpcshell_only_if_tests_are_enabled.patch | 71 | ||||
-rw-r--r-- | mail-client/thunderbird/files/fix-thunderbird-calender-support.patch | 33 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-6.0.2.ebuild | 291 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-7.0.1.ebuild (renamed from mail-client/thunderbird/thunderbird-6.0.ebuild) | 79 |
5 files changed, 119 insertions, 365 deletions
diff --git a/mail-client/thunderbird/ChangeLog b/mail-client/thunderbird/ChangeLog index e969303e0be2..714f63b0a8a2 100644 --- a/mail-client/thunderbird/ChangeLog +++ b/mail-client/thunderbird/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for mail-client/thunderbird # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.95 2011/09/26 15:50:46 polynomial-c Exp $ +# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.96 2011/10/01 01:45:31 anarchy Exp $ + +*thunderbird-7.0.1 (01 Oct 2011) + + 01 Oct 2011; Jory A. Pratt <anarchy@gentoo.org> -thunderbird-6.0.ebuild, + -thunderbird-6.0.2.ebuild, +thunderbird-7.0.1.ebuild, + +files/Copy_xpcshell_only_if_tests_are_enabled.patch, + -files/fix-thunderbird-calender-support.patch: + Security bump with addon updater fixed *thunderbird-6.0.2 (26 Sep 2011) *thunderbird-3.1.14 (26 Sep 2011) diff --git a/mail-client/thunderbird/files/Copy_xpcshell_only_if_tests_are_enabled.patch b/mail-client/thunderbird/files/Copy_xpcshell_only_if_tests_are_enabled.patch new file mode 100644 index 000000000000..342f7de80797 --- /dev/null +++ b/mail-client/thunderbird/files/Copy_xpcshell_only_if_tests_are_enabled.patch @@ -0,0 +1,71 @@ +# 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/mail-client/thunderbird/files/fix-thunderbird-calender-support.patch b/mail-client/thunderbird/files/fix-thunderbird-calender-support.patch deleted file mode 100644 index 8e6e85a1c0e3..000000000000 --- a/mail-client/thunderbird/files/fix-thunderbird-calender-support.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- a/calendar/lightning/install.rdf 2011-08-20 08:32:23.000000000 -0500 -+++ b/calendar/lightning/install.rdf 2011-08-20 08:32:36.000000000 -0500 -@@ -12,7 +12,7 @@ - <!-- thunderbird --> - <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> - <em:minVersion>5.0b1</em:minVersion> -- <em:maxVersion>5.*</em:maxVersion> -+ <em:maxVersion>6.*</em:maxVersion> - </Description> - </em:targetApplication> - ---- a/calendar/providers/gdata/install.rdf 2011-08-20 08:32:58.000000000 -0500 -+++ b/calendar/providers/gdata/install.rdf 2011-08-20 08:33:12.000000000 -0500 -@@ -59,7 +59,7 @@ - <!-- Thunderbird --> - <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> - <em:minVersion>5.0b1</em:minVersion> -- <em:maxVersion>5.*</em:maxVersion> -+ <em:maxVersion>6.*</em:maxVersion> - </Description> - </em:targetApplication> - <em:targetApplication> ---- a/calendar/timezones/install.rdf 2011-08-20 08:33:26.000000000 -0500 -+++ b/calendar/timezones/install.rdf 2011-08-20 08:33:45.000000000 -0500 -@@ -59,7 +59,7 @@ - <!-- Thunderbird --> - <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> - <em:minVersion>2.0</em:minVersion> -- <em:maxVersion>5.*</em:maxVersion> -+ <em:maxVersion>6.*</em:maxVersion> - </Description> - </em:targetApplication> - <em:targetApplication> diff --git a/mail-client/thunderbird/thunderbird-6.0.2.ebuild b/mail-client/thunderbird/thunderbird-6.0.2.ebuild deleted file mode 100644 index 12ade0388cca..000000000000 --- a/mail-client/thunderbird/thunderbird-6.0.2.ebuild +++ /dev/null @@ -1,291 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-6.0.2.ebuild,v 1.1 2011/09/26 15:50:46 polynomial-c Exp $ - -EAPI="3" -WANT_AUTOCONF="2.1" - -inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib mozextension autotools pax-utils python - -TB_PV="${PV/_beta/b}" -TB_P="${PN}-${TB_PV}" -EMVER="1.3" - -DESCRIPTION="Thunderbird Mail Client" -HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" - -KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" -SLOT="0" -LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )" -IUSE="bindist gconf +crashreporter +crypt +ipc +lightning mozdom" -PATCH="${PN}-5.0-patches-0.1" - -FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" -SRC_URI="${FTP_URI}/${TB_PV}/source/${TB_P}.source.tar.bz2 - crypt? ( http://www.mozilla-enigmail.org/download/source/enigmail-${EMVER}.tar.gz ) - http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.bz2" - -if ! [[ ${PV} =~ alpha|beta ]]; then - # This list can be updated using get_langs.sh from the mozilla overlay - # Not supported yet bn-BD ro id zh-CN be af el pa-IN bg - LANGS=(ar be bn-BD br ca cs da de el en en-GB en-US es-AR es-ES et eu fi fr - fy-NL ga-IE gd gl he hu id is it ja ko lt nb-NO nl nn-NO pl pt-BR pt-PT rm - ru si sk sl sq sv-SE ta-LK tr uk) - - for X in "${LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${X} != en ]] && [[ ${X} != en-US ]]; then - SRC_URI="${SRC_URI} - linguas_${X/-/_}? ( ${FTP_URI}/${TB_PV}/linux-i686/xpi/${X}.xpi -> ${P}-${X}.xpi )" - fi - IUSE="${IUSE} linguas_${X/-/_}" - # Install all the specific locale xpis if there's no generic locale xpi - # Example: there's no pt.xpi, so install all pt-*.xpi - if ! has ${X%%-*} "${LANGS[@]}"; then - SRC_URI="${SRC_URI} - linguas_${X%%-*}? ( ${FTP_URI}/${TB_PV}/linux-i686/xpi/${X}.xpi -> ${P}-${X}.xpi )" - IUSE="${IUSE} linguas_${X%%-*}" - fi - done -fi - -RDEPEND=">=sys-devel/binutils-2.16.1 - >=dev-libs/nss-3.12.10 - >=dev-libs/nspr-4.8.8 - gconf? ( >=gnome-base/gconf-1.2.1:2 ) - media-libs/libpng[apng] - !x11-plugins/lightning - !x11-plugins/enigmail - system-sqlite? ( >=dev-db/sqlite-3.7.5[fts3,secure-delete,unlock-notify,debug=] ) - crypt? ( || ( - ( >=app-crypt/gnupg-2.0 - || ( - app-crypt/pinentry[gtk] - app-crypt/pinentry[qt4] - ) - ) - =app-crypt/gnupg-1.4* - ) )" - -DEPEND="${RDEPEND}" - -S="${WORKDIR}"/comm-release - -# TODO: Move all the linguas crap to an eclass -linguas() { - # Generate the list of language packs called "linguas" - # This list is used to install the xpi language packs - local LINGUA - for LINGUA in ${LINGUAS}; do - if has ${LINGUA} en en_US; then - # For mozilla products, en and en_US are handled internally - continue - # If this language is supported by ${P}, - elif has ${LINGUA} "${LANGS[@]//-/_}"; then - # Add the language to linguas, if it isn't already there - has ${LINGUA//_/-} "${linguas[@]}" || linguas+=(${LINGUA//_/-}) - continue - # For each short LINGUA that isn't in LANGS, - # add *all* long LANGS to the linguas list - elif ! has ${LINGUA%%-*} "${LANGS[@]}"; then - for LANG in "${LANGS[@]}"; do - if [[ ${LANG} == ${LINGUA}-* ]]; then - has ${LANG} "${linguas[@]}" || linguas+=(${LANG}) - continue 2 - fi - done - fi - ewarn "Sorry, but ${P} does not support the ${LINGUA} locale" - done -} - -pkg_setup() { - moz_pkgsetup - - if ! use bindist; then - elog "You are enabling official branding. You may not redistribute this build" - elog "to any users on your network or the internet. Doing so puts yourself into" - elog "a legal problem with Mozilla Foundation" - elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" - fi -} - -src_unpack() { - unpack ${A} - - if ! [[ ${PV} =~ alpha|beta ]]; then - linguas - for X in "${linguas[@]}"; do - # FIXME: Add support for unpacking xpis to portage - xpi_unpack "${P}-${X}.xpi" - done - if [[ "${linguas[*]}" != "" ]]; then - einfo "Selected language packs (first will be default): ${linguas[*]}" - fi - fi -} - -src_prepare() { - # Apply our patches - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}" - - epatch "${FILESDIR}"/fix-thunderbird-calender-support.patch - - if use crypt ; then - mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail - cd "${S}"/mailnews/extensions/enigmail || die - ./makemake -r 2&> /dev/null - sed -i -e 's:@srcdir@:${S}/mailnews/extensions/enigmail:' Makefile.in - cd "${S}" - fi - - #Fix compilation with curl-7.21.7 bug 376027 - sed -e '/#include <curl\/types.h>/d' \ - -i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc \ - -i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc \ - -i "${S}"/mozilla/config/system-headers \ - -i "${S}"/mozilla/js/src/config/system-headers || die "Sed failed" - - # Allow user to apply any additional patches without modifing ebuild - epatch_user - - eautoreconf - - cd mozilla - eautoreconf - cd js/src - eautoreconf -} - -src_configure() { - declare 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 crypt ; then - # omni.jar breaks enigmail - mozconfig_annotate '' --enable-chrome-format=jar - fi - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" - mozconfig_annotate '' --with-default-mozilla-five-home="${EPREFIX}${MOZILLA_FIVE_HOME}" - mozconfig_annotate '' --with-user-appdir=.thunderbird - mozconfig_annotate '' --with-system-png - - # Use enable features - mozconfig_use_enable lightning calendar - mozconfig_use_enable gconf - - # Bug #72667 - if use mozdom; then - MEXTENSIONS="${MEXTENSIONS},inspector" - fi - - # Finalize and report settings - mozconfig_final - - #################################### - # - # Configure and build - # - #################################### - - # Disable 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 - - CPPFLAGS="${CPPFLAGS}" \ - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - econf || die -} - -src_compile() { - emake || die - - # Only build enigmail extension if crypt enabled. - if use crypt ; then - emake -C "${S}"/mailnews/extensions/enigmail || die "make enigmail failed" - emake -C "${S}"/mailnews/extensions/enigmail xpi || die "make enigmail xpi failed" - fi -} - -src_install() { - declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - emake DESTDIR="${D}" install || die "emake install failed" - - 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 - - if use lightning ; then - declare emid emd1 emid2 - - emid="{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}" - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} - cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} - unzip "${S}"/mozilla/dist/xpi-stage/gdata-provider.xpi - - emid1="calendar-timezones@mozilla.org" - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid1} - cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid1} - unzip "${S}"/mozilla/dist/xpi-stage/calendar-timezones.xpi - - emid2="{e2fda1a4-762b-4020-b5ad-a41df1933103}" - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid2} - cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid2} - unzip "${S}"/mozilla/dist/xpi-stage/lightning.xpi - fi - - if ! [[ ${PV} =~ alpha|beta ]]; then - linguas - for X in "${linguas[@]}"; do - xpi_install "${WORKDIR}/${P}-${X}" - done - fi - - if ! use bindist; then - newicon "${S}"/other-licenses/branding/thunderbird/content/icon48.png thunderbird-icon.png - domenu "${FILESDIR}"/icon/${PN}.desktop - else - newicon "${S}"/mail/branding/unofficial/content/icon48.png thunderbird-icon-unbranded.png - newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \ - ${PN}.desktop - - sed -i -e "s:Mozilla\ Thunderbird:Lanikai:g" \ - "${D}"/usr/share/applications/${PN}.desktop - - fi - - pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/thunderbird-bin - - # Enable very specific settings for thunderbird-3 - cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js \ - "${ED}/${MOZILLA_FIVE_HOME}/defaults/pref/all-gentoo.js" || \ - die "failed to cp thunderbird-gentoo-default-prefs.js" -} diff --git a/mail-client/thunderbird/thunderbird-6.0.ebuild b/mail-client/thunderbird/thunderbird-7.0.1.ebuild index 81e8fb2c0942..88bf741b034f 100644 --- a/mail-client/thunderbird/thunderbird-6.0.ebuild +++ b/mail-client/thunderbird/thunderbird-7.0.1.ebuild @@ -1,15 +1,15 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-6.0.ebuild,v 1.3 2011/08/22 05:03:20 mr_bones_ Exp $ +# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-7.0.1.ebuild,v 1.1 2011/10/01 01:45:31 anarchy Exp $ EAPI="3" WANT_AUTOCONF="2.1" -inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib mozextension autotools pax-utils python +inherit flag-o-matic toolchain-funcs mozconfig-3 makeedit multilib mozextension autotools pax-utils python check-reqs TB_PV="${PV/_beta/b}" TB_P="${PN}-${TB_PV}" -EMVER="1.3" +EMVER="1.3.2" DESCRIPTION="Thunderbird Mail Client" HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" @@ -18,7 +18,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linu SLOT="0" LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )" IUSE="bindist gconf +crashreporter +crypt +ipc +lightning mozdom" -PATCH="${PN}-5.0-patches-0.1" +PATCH="${PN}-7.0-patches-0.1" FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" SRC_URI="${FTP_URI}/${TB_PV}/source/${TB_P}.source.tar.bz2 @@ -28,22 +28,23 @@ SRC_URI="${FTP_URI}/${TB_PV}/source/${TB_P}.source.tar.bz2 if ! [[ ${PV} =~ alpha|beta ]]; then # This list can be updated using get_langs.sh from the mozilla overlay # Not supported yet bn-BD ro id zh-CN be af el pa-IN bg - LANGS=(ar be bn-BD br ca cs da de el en en-GB en-US es-AR es-ES et eu fi fr - fy-NL ga-IE gd gl he hu id is it ja ko lt nb-NO nl nn-NO pl pt-BR pt-PT rm - ru si sk sl sq sv-SE ta-LK tr uk) + LANGS="ar ca cs da de en en-GB en-US es-AR es-ES et eu fi fr \ + fy-NL ga-IE he hu is it ja ko lt nb-NO nl nn-NO pl pt-BR pt-PT ru si \ + sk sl sq sv-SE tr uk zh-TW" + NOSHORTLANGS="en-GB es-AR pt-BR zh-TW" - for X in "${LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${X} != en ]] && [[ ${X} != en-US ]]; then + for X in ${LANGS} ; do + if [ "${X}" != "en" ] && [ "${X}" != "en-US" ]; then SRC_URI="${SRC_URI} linguas_${X/-/_}? ( ${FTP_URI}/${TB_PV}/linux-i686/xpi/${X}.xpi -> ${P}-${X}.xpi )" fi IUSE="${IUSE} linguas_${X/-/_}" - # Install all the specific locale xpis if there's no generic locale xpi - # Example: there's no pt.xpi, so install all pt-*.xpi - if ! has ${X%%-*} "${LANGS[@]}"; then - SRC_URI="${SRC_URI} - linguas_${X%%-*}? ( ${FTP_URI}/${TB_PV}/linux-i686/xpi/${X}.xpi -> ${P}-${X}.xpi )" + # english is handled internally + if [ "${#X}" == 5 ] && ! has ${X} ${NOSHORTLANGS}; then + if [ "${X}" != "en-US" ]; then + SRC_URI="${SRC_URI} + linguas_${X%%-*}? ( ${FTP_URI}/${TB_PV}/linux-i686/xpi/${X}.xpi -> ${P}-${X}.xpi )" + fi IUSE="${IUSE} linguas_${X%%-*}" fi done @@ -71,31 +72,25 @@ DEPEND="${RDEPEND}" S="${WORKDIR}"/comm-release -# TODO: Move all the linguas crap to an eclass linguas() { - # Generate the list of language packs called "linguas" - # This list is used to install the xpi language packs - local LINGUA - for LINGUA in ${LINGUAS}; do - if has ${LINGUA} en en_US; then - # For mozilla products, en and en_US are handled internally + local LANG SLANG + for LANG in ${LINGUAS}; do + if has ${LANG} en en_US; then + has en ${linguas} || linguas="${linguas:+"${linguas} "}en" continue - # If this language is supported by ${P}, - elif has ${LINGUA} "${LANGS[@]//-/_}"; then - # Add the language to linguas, if it isn't already there - has ${LINGUA//_/-} "${linguas[@]}" || linguas+=(${LINGUA//_/-}) + elif has ${LANG} ${LANGS//-/_}; then + has ${LANG//_/-} ${linguas} || linguas="${linguas:+"${linguas} "}${LANG//_/-}" continue - # For each short LINGUA that isn't in LANGS, - # add *all* long LANGS to the linguas list - elif ! has ${LINGUA%%-*} "${LANGS[@]}"; then - for LANG in "${LANGS[@]}"; do - if [[ ${LANG} == ${LINGUA}-* ]]; then - has ${LANG} "${linguas[@]}" || linguas+=(${LANG}) + 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 ${LINGUA} locale" + ewarn "Sorry, but ${PN} does not support the ${LANG} LINGUA" done } @@ -108,6 +103,10 @@ pkg_setup() { elog "a legal problem with Mozilla Foundation" elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" fi + + # Ensure we have enough disk space to compile + CHECKREQS_DISK_BUILD="4G" + check-reqs_pkg_setup } src_unpack() { @@ -115,12 +114,12 @@ src_unpack() { if ! [[ ${PV} =~ alpha|beta ]]; then linguas - for X in "${linguas[@]}"; do + for X in ${linguas}; do # FIXME: Add support for unpacking xpis to portage - xpi_unpack "${P}-${X}.xpi" + [[ ${X} != "en" ]] && xpi_unpack "${P}-${X}.xpi" done - if [[ "${linguas[*]}" != "" ]]; then - einfo "Selected language packs (first will be default): ${linguas[*]}" + if [[ ${linguas} != "" && ${linguas} != "en" ]]; then + einfo "Selected language packs (first will be default): ${linguas}" fi fi } @@ -131,7 +130,7 @@ src_prepare() { EPATCH_FORCE="yes" \ epatch "${WORKDIR}" - epatch "${FILESDIR}"/fix-thunderbird-calender-support.patch + epatch "${FILESDIR}/Copy_xpcshell_only_if_tests_are_enabled.patch" if use crypt ; then mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail @@ -264,8 +263,8 @@ src_install() { if ! [[ ${PV} =~ alpha|beta ]]; then linguas - for X in "${linguas[@]}"; do - xpi_install "${WORKDIR}/${P}-${X}" + for X in ${linguas}; do + [[ ${X} != "en" ]] && xpi_install "${WORKDIR}"/"${P}-${X}" done fi |