diff options
author | Michał Górny <mgorny@gentoo.org> | 2013-09-30 07:27:06 +0000 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2013-09-30 07:27:06 +0000 |
commit | 19f9b77b125fc44e67b9a8cc8d54137c65bd6c35 (patch) | |
tree | 88cd2d5ba8b5d1f5e4dc2e6c7f883e20a773c0f2 /eclass | |
parent | Version bump (diff) | |
download | gentoo-2-19f9b77b125fc44e67b9a8cc8d54137c65bd6c35.tar.gz gentoo-2-19f9b77b125fc44e67b9a8cc8d54137c65bd6c35.tar.bz2 gentoo-2-19f9b77b125fc44e67b9a8cc8d54137c65bd6c35.zip |
Fix duplicate flags in MULTILIB_USEDEP. Thanks for the report and the patch to Ulrich Mueller.
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/ChangeLog | 6 | ||||
-rw-r--r-- | eclass/multilib-build.eclass | 26 |
2 files changed, 20 insertions, 12 deletions
diff --git a/eclass/ChangeLog b/eclass/ChangeLog index 2616e6d83d9d..3c0663ef8566 100644 --- a/eclass/ChangeLog +++ b/eclass/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for eclass directory # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1001 2013/09/30 02:28:42 ottxor Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1002 2013/09/30 07:27:06 mgorny Exp $ + + 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 + to Ulrich Mueller. 30 Sep 2013; Christoph Junghans <ottxor@gentoo.org> toolchain-binutils.eclass: diff --git a/eclass/multilib-build.eclass b/eclass/multilib-build.eclass index a042d9f431de..3d89cedf605b 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.20 2013/09/17 13:29:19 tommy Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multilib-build.eclass,v 1.21 2013/09/30 07:27:06 mgorny Exp $ # @ECLASS: multilib-build.eclass # @MAINTAINER: @@ -28,13 +28,13 @@ inherit multibuild multilib # @ECLASS-VARIABLE: _MULTILIB_FLAGS # @INTERNAL # @DESCRIPTION: -# The list of multilib flags and corresponding ABI values. +# The list of multilib flags and corresponding ABI values. If the same +# flag is reused for multiple ABIs (e.g. x86 on Linux&FreeBSD), multiple +# ABIs may be separated by commas. _MULTILIB_FLAGS=( - abi_x86_32:x86 - abi_x86_64:amd64 + abi_x86_32:x86,x86_fbsd + abi_x86_64:amd64,amd64_fbsd abi_x86_x32:x32 - abi_x86_32:x86_fbsd - abi_x86_64:amd64_fbsd abi_mips_n32:n32 abi_mips_n64:n64 abi_mips_o32:o32 @@ -72,16 +72,20 @@ 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_abi=${i#*:} + local m_abis=${i#*:} m_abi local m_flag=${i%:*} - if [[ ${m_abi} == ${abi} ]] && use "${m_flag}"; then - echo "${abi}" - found=1 - fi + for m_abi in ${m_abis}; do + if [[ ${m_abi} == ${abi} ]] && use "${m_flag}"; then + echo "${abi}" + found=1 + break 2 + fi + done done done |