On Wed, Apr 1, 2020 at 1:09 PM Konrad Weihmann <[email protected]>
wrote:

> Hi Joel,
>
> okay, I see - although I have to admit the argparse idea looks very weird,
> the error is that according to
>
> https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.parse_args
> the pkgconfig_args variable should be a list not a single string.
>
> so doing pkgconfig_args = d.getVar("PACKAGECONFIG_CONFARGS").split(" ")
> should fix the issue.
> But from a bitbake perspective you should really think about choosing a
> less pythonic version
>
>
You might also want to review the documentation on how PACKAGECONFIG is
intended to be used:

https://www.yoctoproject.org/docs/3.0/ref-manual/ref-manual.html#var-PACKAGECONFIG

In your recipe, each is a single command line flag, without the remaining
fields. Looks odd from a Yocto Project perspective.

> Best
>
> Konrad
> On 01.04.20 22:00, Joel Winarske wrote:
>
> Hi Konrad,
>
> I left out the details of the path encoding :)  Effectively I was
> attempting to duplicate get_out_dir() as found here:
> https://github.com/flutter/engine/blob/master/tools/gn
>
> My recipe is here:
> https://github.com/jwinarske/meta-flutter/blob/zeus/recipes-graphics/flutter-engine/flutter-engine_git.bb
>
> Cheers,
> Joel
>
> On Wed, Apr 1, 2020 at 10:46 AM Konrad Weihmann <[email protected]>
> wrote:
>
>> There is a single tick missing, but I'm sure you get the point
>> On 01.04.20 19:37, Konrad Weihmann wrote:
>>
>> What about
>>
>> do_configure() {
>>
>>    cd ${@bb.utils.contains('PACKAGECONFIG_CONFARGS', '--verbose',
>> out/verbose', 'out', d)}
>>
>> }
>> On 01.04.20 18:55, Joel Winarske wrote:
>>
>> Hello,
>>
>> I'm trying the below in a recipe.  Bitbake gives me: ERROR: Unable to
>> parse ...: Exited with "2"
>>
>> inherit python3native
>>
>> require utils.inc
>>
>> do_configure() {
>>
>>     cd ${@get_out_dir(d)}
>> }
>>
>> (in utils.inc)
>> def get_out_dir(d):
>>     import os
>>     import argparse
>>     pkgconfig_args = d.getVar("PACKAGECONFIG_CONFARGS")
>>
>>     parser = argparse.ArgumentParser()
>>     parser.add_argument("--verbose", help="increase output verbosity",
>>                         action="store_true")
>>     args = parser.parse_args(pkgconfig_args)
>>     if args.verbose:
>>         return os.path.join('out', 'verbose')
>>
>>     return 'out'
>>
>>
>>
>> What am I doing wrong, or is there a better way?  Seems like it doesn't
>> like "args = parser.parse_args(pkgconfig_args)"
>>
>> The output directory is a combination of the arguments.
>>
>>
>> Thanks!
>> Joel
>>
>>
>>
>> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#49015): https://lists.yoctoproject.org/g/yocto/message/49015
Mute This Topic: https://lists.yoctoproject.org/mt/72705531/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to