On 02/01/16 04:15, Michał Górny wrote:
> On Sat, 2 Jan 2016 03:57:59 +1100
> Michael Palimaka <[email protected]> wrote:
> 
>> On 02/01/16 03:41, Michał Górny wrote:
>>> ---
>>>  eclass/scons-utils.eclass | 8 ++++----
>>>  1 file changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/eclass/scons-utils.eclass b/eclass/scons-utils.eclass
>>> index a2a6884..e1b3a1b6 100644
>>> --- a/eclass/scons-utils.eclass
>>> +++ b/eclass/scons-utils.eclass
>>> @@ -1,4 +1,4 @@
>>> -# Copyright 1999-2012 Gentoo Foundation
>>> +# Copyright 1999-2015 Gentoo Foundation
>>>  # Distributed under the terms of the GNU General Public License v2
>>>  # $Id$
>>>  
>>> @@ -17,19 +17,19 @@
>>>  # EAPI=4
>>>  #
>>>  # src_configure() {
>>> -#  myesconsargs=(
>>> +#  MYSCONS=(
>>>  #          CC="$(tc-getCC)"
>>>  #          $(use_scons nls ENABLE_NLS)
>>>  #  )
>>>  # }
>>>  #
>>>  # src_compile() {
>>> -#  escons
>>> +#  escons "${MYSCONS[@]}"
>>>  # }
>>>  #
>>>  # src_install() {
>>>  #  # note: this can be DESTDIR, INSTALL_ROOT, ... depending on package
>>> -#  escons DESTDIR="${D}" install
>>> +#  escons "${MYSCONS[@]}" DESTDIR="${D}" install
>>>  # }
>>>  # @CODE
>>>  
>>>   
>>
>> What is the benefit of MYSCONS vs myesconsargs? The latter seems to be
>> more consistent with other eclasses (mycmakeargs, myqmakeargs, ...)
> 
> It's shorter and follows the convention of keeping global variables
> uppercase.

The five-character saving is lost by then requiring "${myconf[@]}" to be
written twice.

> Consistency with bad example set by one eclass is not a good argument.
> In fact, cmake-utils sets a very bad example of enforcing declarative
> model over function-oriented ebuilds which results in really absurd
> src_configure() implementations.
> 
>   src_configure() {
>     local mycmakeargs=(
>       ...
>     )
>     cmake-utils_src_configure
>   }
> 
> vs
> 
>   src_configure() {
>     local myconf=(
>       ...
>     )
>     ecmake "${myconf[@]}"
>   }
> 

I don't see the absurdity.


Reply via email to