summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2013-10-01 17:42:38 +0000
committerMichał Górny <mgorny@gentoo.org>2013-10-01 17:42:38 +0000
commit3379f827d92356d3eb6f73137bd63106625afb46 (patch)
treec3295564ff14739c7e8b25107c07c8c2609359cb /eclass
parentfix for bug 486094 (diff)
downloadgentoo-2-3379f827d92356d3eb6f73137bd63106625afb46.tar.gz
gentoo-2-3379f827d92356d3eb6f73137bd63106625afb46.tar.bz2
gentoo-2-3379f827d92356d3eb6f73137bd63106625afb46.zip
Split ABIs without altering IFS, to work-around bug in Paludis, bug #486592.
Diffstat (limited to 'eclass')
-rw-r--r--eclass/ChangeLog5
-rw-r--r--eclass/multilib-build.eclass10
2 files changed, 11 insertions, 4 deletions
diff --git a/eclass/ChangeLog b/eclass/ChangeLog
index 3c0663ef8566..704aa85c9b30 100644
--- a/eclass/ChangeLog
+++ b/eclass/ChangeLog
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1002 2013/09/30 07:27:06 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1003 2013/10/01 17:42:38 mgorny Exp $
+
+ 01 Oct 2013; Michał Górny <mgorny@gentoo.org> multilib-build.eclass:
+ Split ABIs without altering IFS, to work-around bug in Paludis, bug #486592.
30 Sep 2013; Michał Górny <mgorny@gentoo.org> multilib-build.eclass:
Fix duplicate flags in MULTILIB_USEDEP. Thanks for the report and the patch
diff --git a/eclass/multilib-build.eclass b/eclass/multilib-build.eclass
index 3d89cedf605b..140bea6d6097 100644
--- a/eclass/multilib-build.eclass
+++ b/eclass/multilib-build.eclass
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multilib-build.eclass,v 1.21 2013/09/30 07:27:06 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multilib-build.eclass,v 1.22 2013/10/01 17:42:38 mgorny Exp $
# @ECLASS: multilib-build.eclass
# @MAINTAINER:
@@ -72,14 +72,18 @@ multilib_get_enabled_abis() {
local abis=( $(get_all_abis) )
- local IFS=,
local abi i found
for abi in "${abis[@]}"; do
for i in "${_MULTILIB_FLAGS[@]}"; do
local m_abis=${i#*:} m_abi
local m_flag=${i%:*}
- for m_abi in ${m_abis}; do
+ # split on ,; we can't switch IFS for function scope because
+ # paludis is broken (bug #486592), and switching it locally
+ # for the split is more complex than tricking like this
+ m_abis=( ${m_abis/,/ } )
+
+ for m_abi in ${m_abis[@]}; do
if [[ ${m_abi} == ${abi} ]] && use "${m_flag}"; then
echo "${abi}"
found=1