[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-dev
Subject:    [gentoo-dev] [PATCH] l10n.eclass: Update for unexpanded LINGUAS.
From:       Ulrich Müller <ulm () gentoo ! org>
Date:       2017-12-29 16:38:05
Message-ID: 23110.29333.788865.282453 () a1i15 ! kph ! uni-mainz ! de
[Download RAW message or body]


---
This is meant to be merged after removal of LINGUAS from USE_EXPAND.

Any packages inheriting l10n.eclass but not using any of its functions
(i.e. relying only on the global scope snippet that adds linguas_* USE
flags) will be updated at the same time.

 eclass/l10n.eclass | 40 +++++++++++++++++++++-------------------
 1 file changed, 21 insertions(+), 19 deletions(-)

diff --git a/eclass/l10n.eclass b/eclass/l10n.eclass
index 2283088d0d0a..d60f7befd0d2 100644
--- a/eclass/l10n.eclass
+++ b/eclass/l10n.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: l10n.eclass
@@ -12,8 +12,7 @@
 # conveniently handle localizations (translations) offered by packages.
 # These are meant to prevent code duplication for such boring tasks as
 # determining the cross-section between the user's set LINGUAS and what
-# is offered by the package; and generating the right list of linguas_*
-# USE flags.
+# is offered by the package.
 
 # @ECLASS-VARIABLE: PLOCALES
 # @DEFAULT_UNSET
@@ -33,11 +32,6 @@
 #
 # Example: PLOCALE_BACKUP="en_US"
 
-# Add linguas useflags
-for u in ${PLOCALES}; do
-	IUSE+=" linguas_${u}"
-done
-
 # @FUNCTION: l10n_for_each_locale_do
 # @USAGE: <function>
 # @DESCRIPTION:
@@ -103,19 +97,27 @@ l10n_find_plocales_changes() {
 # @FUNCTION: l10n_get_locales
 # @USAGE: [disabled]
 # @DESCRIPTION:
-# Determine which LINGUAS USE flags the user has enabled that are offered
-# by the package, as listed in PLOCALES, and return them. In case no locales
-# are selected, fall back on PLOCALE_BACKUP. When the disabled argument is
-# given, return the disabled useflags instead of the enabled ones.
+# Determine which LINGUAS the user has enabled that are offered by the
+# package, as listed in PLOCALES, and return them.  In case no locales
+# are selected, fall back on PLOCALE_BACKUP.  When the disabled argument
+# is given, return the disabled locales instead of the enabled ones.
 l10n_get_locales() {
 	local disabled_locales enabled_locales loc locs
-	for loc in ${PLOCALES}; do
-		if use linguas_${loc}; then
-			enabled_locales+="${loc} "
-		else
-			disabled_locales+="${loc} "
-		fi
-	done
+	if [[ -z ${LINGUAS+set} ]]; then
+		# enable all if unset
+		enabled_locales=${PLOCALES}
+	elif [[ -z ${LINGUAS} ]]; then
+		# disable all if empty
+		disabled_locales=${PLOCALES}
+	else
+		for loc in ${PLOCALES}; do
+			if has ${loc} ${LINGUAS}; then
+				enabled_locales+="${loc} "
+			else
+				disabled_locales+="${loc} "
+			fi
+		done
+	fi
 	if [[ ${1} == disabled ]]; then
 		locs=${disabled_locales}
 	else
-- 
2.15.1

[Attachment #3 (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic