commit:     107aacd2d148608cac69f4010df93df4727c2852
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 22 19:20:10 2017 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Mar  8 07:35:27 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=107aacd2

flag-o-matic.eclass: Replace unnecessary evals

Replace the evals used to export variables with plain export calls. Bash
expands variable references for exported variable name anyway, rendering
the eval completely unnecessary.

Replace the single eval used for indirect variable reference with the
${!...} substitution which serves that exact purpose in bash.

 eclass/flag-o-matic.eclass | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 6d41ddd30f7..b2f3742b3ec 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -116,7 +116,7 @@ _filter-var() {
                done
                new+=( "${f}" )
        done
-       eval export ${var}=\""${new[*]}"\"
+       export ${var}="${new[*]}"
 }
 
 # @FUNCTION: filter-flags
@@ -270,7 +270,7 @@ replace-flags() {
                        [[ ${f} == ${1} ]] && f=${2}
                        new+=( "${f}" )
                done
-               eval export ${var}=\""${new[*]}"\"
+               export ${var}="${new[*]}"
        done
 
        return 0
@@ -295,9 +295,8 @@ replace-cpu-flags() {
 }
 
 _is_flagq() {
-       local x var
-       eval var=\""\${$1[*]}"\"
-       for x in ${var} ; do
+       local x var="$1[*]"
+       for x in ${!var} ; do
                [[ ${x} == $2 ]] && return 0
        done
        return 1
@@ -411,7 +410,7 @@ strip-flags() {
                if [[ ${!var} != "${new[*]}" ]] ; then
                        einfo "strip-flags: ${var}: changed '${!var}' to 
'${new[*]}'"
                fi
-               eval export ${var}=\""${new[*]}"\"
+               export ${var}="${new[*]}"
        done
 
        set +f  # re-enable pathname expansion

Reply via email to