On 09/27/2012 10:07 AM, Zac Medico wrote:
> On 09/27/2012 09:49 AM, Ulrich Mueller wrote:
>> As far as I can see, only the definition of the usex function must be
>> disabled. Please review the patch included below.
>>
>> Ulrich
>>
>> --- eutils.eclass    15 Sep 2012 16:16:53 -0000      1.403
>> +++ eutils.eclass    27 Sep 2012 16:45:14 -0000
>> @@ -1373,7 +1373,9 @@
>>  # @DESCRIPTION:
>>  # If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
>>  # otherwise echo [false output][false suffix] (defaults to "no").
>> +if has "${EAPI:-0}" 0 1 2 3 4; then
>>  usex() { use "$1" && echo "${2-yes}$4" || echo "${3-no}$5" ; } #382963
>> +fi
>>  
>>  # @FUNCTION: prune_libtool_files
>>  # @USAGE: [--all]
>>
> 
> Looks good to me.
> 
> It may not work for unofficial EAPIs that don't include usex, but I
> guess there's nothing we can do for those, and they can just be replaced
> with newer EAPIs that include usex.

Something like this would work with current versions of portage:

if ! declare -F usex >/dev/null ; then
        usex() { use "$1" && echo "${2-yes}$4" || echo "${3-no}$5" ; }
fi

However, it's probably not a good idea to assume that the package
manager defines usex prior to sourcing the eclass.
-- 
Thanks,
Zac

Reply via email to