From mboxrd@z Thu Jan  1 00:00:00 1970
Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org)
	by finch.gentoo.org with esmtp (Exim 4.60)
	(envelope-from <gentoo-commits+bounces-414704-garchives=archives.gentoo.org@lists.gentoo.org>)
	id 1RiXRR-0006Rn-7N
	for garchives@archives.gentoo.org; Wed, 04 Jan 2012 20:28:09 +0000
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id C614321C081;
	Wed,  4 Jan 2012 20:27:56 +0000 (UTC)
Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183])
	by pigeon.gentoo.org (Postfix) with ESMTP id 87D6021C081
	for <gentoo-commits@lists.gentoo.org>; Wed,  4 Jan 2012 20:27:56 +0000 (UTC)
Received: from pelican.gentoo.org (unknown [66.219.59.40])
	(using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 0391D1B40CC
	for <gentoo-commits@lists.gentoo.org>; Wed,  4 Jan 2012 20:27:56 +0000 (UTC)
Received: from localhost.localdomain (localhost [127.0.0.1])
	by pelican.gentoo.org (Postfix) with ESMTP id 729FA80042
	for <gentoo-commits@lists.gentoo.org>; Wed,  4 Jan 2012 20:27:55 +0000 (UTC)
From: "Jory Pratt" <anarchy@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Jory Pratt" <anarchy@gentoo.org>
Message-ID: <b0de246d2f63aa869fef71227bcfd782afc1b4f4.anarchy@gentoo>
Subject: [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/
X-VCS-Repository: proj/mozilla
X-VCS-Files: www-client/firefox/Manifest www-client/firefox/firefox-9.0.ebuild
X-VCS-Directories: www-client/firefox/
X-VCS-Committer: anarchy
X-VCS-Committer-Name: Jory Pratt
X-VCS-Revision: b0de246d2f63aa869fef71227bcfd782afc1b4f4
Date: Wed,  4 Jan 2012 20:27:55 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: quoted-printable
X-Archives-Salt: baf5d202-87e6-419d-9d60-01dfc2bb6905
X-Archives-Hash: 1dae4ce589c9f05dcc50e184f458fa55

commit:     b0de246d2f63aa869fef71227bcfd782afc1b4f4
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  4 20:27:42 2012 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Wed Jan  4 20:27:42 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=3Dproj/mozilla.git;a=
=3Dcommit;h=3Db0de246d

sync with tree

---
 www-client/firefox/Manifest           |    2 +-
 www-client/firefox/firefox-9.0.ebuild |  105 +++++++++++++++++++++++----=
-----
 2 files changed, 76 insertions(+), 31 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index ccee73e..9f045aa 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -84,4 +84,4 @@ DIST firefox-9.0-zh-CN.xpi 246728 RMD160 96aef0ad9287f4=
1589f59246eba1d2445d18a0c
 DIST firefox-9.0-zh-TW.xpi 247498 RMD160 163fa9dde9caa2e209eff47a1bdfee6=
cfd807aaf SHA1 f6c14facb1556002fcfb414533c171c2b9e08582 SHA256 6b50bd6056=
7a46fd7af62160271ab9e0d5a40666c6a812fb9adcd7bce474a936
 DIST firefox-9.0-zu.xpi 238395 RMD160 67afb3fd7bd9006830747a75b5175facf8=
615f86 SHA1 1b7c947e15d5fb2f75503e1cad9940283edc87d5 SHA256 aedf4ab70c7cf=
603210e4ece1c21faf0c031f7b488dddc074c3f00e9d9a2feb5
 DIST firefox-9.0.source.tar.bz2 74197197 RMD160 4631b103aa80ae2ae22b6145=
3f4e02c89962f1c1 SHA1 f79324ec6205e4c23d51d8ab2e790de1b2541657 SHA256 9e8=
76498da6c2eb2a49b57b461d5b969b11810f6af9eaa858d8e4cb514a9bd05
-EBUILD firefox-9.0.ebuild 9841 RMD160 19e3eb83c56845bb7973bb821b018b8d09=
1b6259 SHA1 9556856bbe4e4307430df4ef37ff1c2843a2eafb SHA256 5816d6fe2877a=
fee020e48a22b2fa26803fd2db0fb442b3780445748aeb98949
+EBUILD firefox-9.0.ebuild 11344 RMD160 5d399eba2f2567bcdd240018ccbadb965=
cc96c13 SHA1 1bc2179f9f65204136ca797b3dc59b9e53b443f9 SHA256 4ebfd1706839=
a535a5d398f01d22c79d9f78a725850fe7367c5064a69d69329e

diff --git a/www-client/firefox/firefox-9.0.ebuild b/www-client/firefox/f=
irefox-9.0.ebuild
index f379e30..1f676cd 100644
--- a/www-client/firefox/firefox-9.0.ebuild
+++ b/www-client/firefox/firefox-9.0.ebuild
@@ -1,44 +1,31 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/firefox-6.0.ebuild=
,v 1.2 2011/08/23 19:35:58 polynomial-c Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/firefox-9.0.ebuild=
,v 1.3 2011/12/26 11:13:31 armin76 Exp $
=20
 EAPI=3D"3"
 VIRTUALX_REQUIRED=3D"pgo"
 WANT_AUTOCONF=3D"2.1"
=20
-# This list can be updated with scripts/get_langs.sh from the mozilla ov=
erlay
-LANGS=3D(af ak ar ast be bg bn-BD bn-IN br bs ca cs cy da de el en en-GB=
 en-US
-en-ZA eo es-AR es-CL es-ES es-MX 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-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta t=
a-LK
-te th tr uk vi zh-CN zh-TW zu)
+inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozc=
onfig-3 multilib pax-utils fdo-mime autotools mozextension versionator py=
thon virtualx nsplugins
=20
-# Convert the ebuild version to the upstream mozilla version, used by mo=
zlinguas
-MOZ_PV=3D"${PV/_alpha/a}" # Handle alpha for SRC_URI
-MOZ_PV=3D"${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
-MOZ_PV=3D"${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
-
-# Changeset for alpha snapshot
+MAJ_FF_PV=3D"$(get_version_component_range 1-2)" # 3.5, 3.6, 4.0, etc.
+FF_PV=3D"${PV/_alpha/a}" # Handle alpha for SRC_URI
+FF_PV=3D"${FF_PV/_beta/b}" # Handle beta for SRC_URI
+FF_PV=3D"${FF_PV/_rc/rc}" # Handle rc for SRC_URI
 CHANGESET=3D"e56ecd8b3a68"
-# Patch version
 PATCH=3D"${PN}-9.0-patches-0.5"
-# Upstream ftp release URI that's used by mozlinguas.eclass
-# We don't use the http mirror because it deletes old tarballs.
-FTP_URI=3D"ftp://ftp.mozilla.org/pub/${PN}/releases/"
-
-inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozc=
onfig-3 multilib pax-utils fdo-mime autotools python virtualx nsplugins m=
ozlinguas
=20
 DESCRIPTION=3D"Firefox Web Browser"
 HOMEPAGE=3D"http://www.mozilla.com/firefox"
=20
-KEYWORDS=3D"~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS=3D"~alpha ~amd64 ~arm ~ia64 ~ppc ~x86 ~amd64-linux ~x86-linux"
 SLOT=3D"0"
 LICENSE=3D"|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
 IUSE=3D"bindist +crashreporter +ipc pgo system-sqlite +webm"
=20
+FTP_URI=3D"ftp://ftp.mozilla.org/pub/firefox/releases/"
 # More URIs appended below...
-SRC_URI=3D"${SRC_URI}
-	http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz"
+SRC_URI=3D"http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar=
.xz"
=20
 ASM_DEPEND=3D">=3Ddev-lang/yasm-1.1"
=20
@@ -67,20 +54,74 @@ DEPEND=3D"${RDEPEND}
 # No source releases for alpha|beta
 if [[ ${PV} =3D~ alpha ]]; then
 	SRC_URI=3D"${SRC_URI}
-		http://dev.gentoo.org/~anarchy/mozilla/firefox/firefox-${MOZ_PV}_${CHA=
NGESET}.source.tar.bz2"
+		http://dev.gentoo.org/~anarchy/mozilla/firefox/firefox-${FF_PV}_${CHAN=
GESET}.source.tar.bz2"
 	S=3D"${WORKDIR}/mozilla-central"
 elif [[ ${PV} =3D~ beta ]]; then
 	SRC_URI=3D"${SRC_URI}
-		${FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2"
+		${FTP_URI}/${FF_PV}/source/firefox-${FF_PV}.source.tar.bz2"
 	S=3D"${WORKDIR}/mozilla-beta"
 else
 	SRC_URI=3D"${SRC_URI}
-		${FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2"
+		${FTP_URI}/${FF_PV}/source/firefox-${FF_PV}.source.tar.bz2"
 	S=3D"${WORKDIR}/mozilla-release"
 fi
=20
+# No language packs for alphas
+if ! [[ ${PV} =3D~ alpha|beta ]]; then
+	# This list can be updated with scripts/get_langs.sh from mozilla overl=
ay
+	LANGS=3D(af ak ar ast be bg bn-BD bn-IN br bs ca cs cy da de el en en-G=
B en-US
+	en-ZA eo es-AR es-CL es-ES es-MX 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 n=
l
+	nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta =
ta-LK
+	te th tr uk vi zh-CN zh-TW zu)
+
+	for X in "${LANGS[@]}" ; do
+		# en and en_US are handled internally
+		if [[ ${X} !=3D en ]] && [[ ${X} !=3D en-US ]]; then
+			SRC_URI=3D"${SRC_URI}
+				linguas_${X/-/_}? ( ${FTP_URI}/${FF_PV}/linux-i686/xpi/${X}.xpi -> $=
{P}-${X}.xpi )"
+		fi
+		IUSE=3D"${IUSE} linguas_${X/-/_}"
+		# Install all the specific locale xpis if there's no generic locale xp=
i
+		# Example: there's no pt.xpi, so install all pt-*.xpi
+		if ! has ${X%%-*} "${LANGS[@]}"; then
+			SRC_URI=3D"${SRC_URI}
+				linguas_${X%%-*}? ( ${FTP_URI}/${FF_PV}/linux-i686/xpi/${X}.xpi -> $=
{P}-${X}.xpi )"
+			IUSE=3D"${IUSE} linguas_${X%%-*}"
+		fi
+	done
+fi
+
 QA_PRESTRIPPED=3D"usr/$(get_libdir)/${PN}/firefox"
=20
+# 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+=3D(${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} =3D=3D ${LINGUA}-* ]]; then
+					has ${LANG} "${linguas[@]}" || linguas+=3D(${LANG})
+					continue 2
+				fi
+			done
+		fi
+		ewarn "Sorry, but ${P} does not support the ${LINGUA} locale"
+	done
+}
+
 pkg_setup() {
 	moz_pkgsetup
=20
@@ -92,7 +133,6 @@ pkg_setup() {
 		SESSION_MANAGER \
 		XDG_SESSION_COOKIE \
 		XAUTHORITY
-	gnome2_environment_reset
=20
 	if ! use bindist; then
 		einfo
@@ -120,8 +160,11 @@ pkg_setup() {
 src_unpack() {
 	unpack ${A}
=20
-	# Unpack language packs
-	mozlinguas_src_unpack
+	linguas
+	for X in "${linguas[@]}"; do
+		# FIXME: Add support for unpacking xpis to portage
+		xpi_unpack "${P}-${X}.xpi"
+	done
 }
=20
 src_prepare() {
@@ -253,8 +296,10 @@ src_install() {
 	MOZ_MAKE_FLAGS=3D"${MAKEOPTS}" \
 	emake DESTDIR=3D"${D}" install || die "emake install failed"
=20
-	# Install language packs
-	mozlinguas_src_install
+	linguas
+	for X in "${linguas[@]}"; do
+		xpi_install "${WORKDIR}/${P}-${X}"
+	done
=20
 	local size sizes icon_path icon name
 	if use bindist; then