[OE-core] [PATCH 6/7] go.bbclass: Enable parallel build

Otavio Salvador otavio.salvador at ossystems.com.br
Tue Sep 5 14:49:47 UTC 2017


On Tue, Sep 5, 2017 at 7:50 AM, Matt Madison <matt at madison.systems> wrote:
> On Mon, Sep 4, 2017 at 2:06 PM, Otavio Salvador <otavio at ossystems.com.br> wrote:
>> The parallel build is based on PARALLEL_MAKE variable but can be
>> overriden setting the GO_PARALLEL_BUILD one.
>>
>> This change is based on the meta-golang[1] layer. Thanks to Matt
>> Madison <matt at madison.systems> for his work on this.
>>
>> 1. https://github.com/madisongh/meta-golang
>>
>> Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
>> ---
>>
>>  meta/classes/go.bbclass | 20 ++++++++++++++++++++
>>  1 file changed, 20 insertions(+)
>>
>> diff --git a/meta/classes/go.bbclass b/meta/classes/go.bbclass
>> index 45f2add810..f80134bf8e 100644
>> --- a/meta/classes/go.bbclass
>> +++ b/meta/classes/go.bbclass
>> @@ -1,11 +1,31 @@
>>  inherit goarch
>>
>> +def get_go_parallel_make(d):
>> +    pm = (d.getVar('PARALLEL_MAKE') or '').split()
>> +    # look for '-j' and throw other options (e.g. '-l') away
>> +    # because they might have a different meaning in golang
>> +    while pm:
>> +        opt = pm.pop(0)
>> +        if opt == '-j':
>> +            v = pm.pop(0)
>> +        elif opt.startswith('-j'):
>> +            v = opt[2:].strip()
>> +        else:
>> +            continue
>> +
>> +        return '-p %d' % int(v)
>> +
>> +    return ""
>> +
>> +GO_PARALLEL_BUILD ?= "${@get_go_parallel_make(d)}"
>
> This added variable should be appended to BB_HASHBASE_WHITELIST.

I think should not use new variables. We base it on PARALLEL_MAKE so
the user can control it in local.conf if needed.

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750



More information about the Openembedded-core mailing list