public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: Mark Asselstine <mark.asselstine@windriver.com>
To: Alexander Kanavin <alex.kanavin@gmail.com>,
	Stefan Herbrechtsmeier
	<stefan.herbrechtsmeier-oss@weidmueller.com>
Cc: OE-core <openembedded-core@lists.openembedded.org>,
	Lukas Funke <lukas.funke@weidmueller.com>,
	Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Subject: Re: [OE-core] [PATCH 1/5] recipetool-create: add ensure_native_cmd function
Date: Wed, 11 May 2022 15:47:27 -0400	[thread overview]
Message-ID: <833622a5-69ad-5541-e9b7-2617c0462321@windriver.com> (raw)
In-Reply-To: <80f21134-10da-402f-de0b-2c52a599a845@windriver.com>



On 2022-05-11 15:45, Mark Asselstine wrote:
> 
> 
> On 2022-05-06 03:09, Alexander Kanavin wrote:
>> I think the terminology is a bit confused here, instead of 'command'
>> it should say 'recipe'. Also:
>> """Check if the command is available in the recipes""" is not
>> everything it does, it also builds the recipe.
>>
>> And please write a commit message that explains what and why.
> 
> Additionally, I would squash commits 1/5 and 2/5. Most people, including 
> myself, will review the commits in order, in doing so commit 1/5 is 
> reviewed as original work, only to find in 2/5 that it was an existing 
> function, just made generic. Combining these also makes it easier when 
> mining history.
> 

I suspect this will need rework as the assumption that a command and 
package name are 1:1 might have only been valid with NPM but definitely 
won't be the case for many commands.

MarkA


> MarkA
> 
> 
>>
>> Alex
>>
>> On Fri, 6 May 2022 at 09:00, Stefan Herbrechtsmeier
>> <stefan.herbrechtsmeier-oss@weidmueller.com> wrote:
>>>
>>> From: Lukas Funke <lukas.funke@weidmueller.com>
>>>
>>> Signed-off-by: Lukas Funke <lukas.funke@weidmueller.com>
>>> Signed-off-by: Stefan Herbrechtsmeier 
>>> <stefan.herbrechtsmeier@weidmueller.com>
>>> ---
>>>
>>>   scripts/lib/recipetool/create.py | 23 +++++++++++++++++++++++
>>>   1 file changed, 23 insertions(+)
>>>
>>> diff --git a/scripts/lib/recipetool/create.py 
>>> b/scripts/lib/recipetool/create.py
>>> index 824ac6350d..efcb82173e 100644
>>> --- a/scripts/lib/recipetool/create.py
>>> +++ b/scripts/lib/recipetool/create.py
>>> @@ -1375,6 +1375,29 @@ def convert_rpm_xml(xmlfile):
>>>                       values[varname] = child[0].text
>>>       return values
>>>
>>> +def ensure_native_cmd(tinfoil, cmd):
>>> +    """Check if the command is available in the recipes"""
>>> +    if not tinfoil.recipes_parsed:
>>> +        tinfoil.parse_recipes()
>>> +
>>> +    try:
>>> +        d = tinfoil.parse_recipe("%s-native" % cmd)
>>> +    except bb.providers.NoProvider:
>>> +        bb.error("Nothing provides '%s-native' which is required for 
>>> the build" % cmd)
>>> +        bb.note("You will likely need to add a layer that provides 
>>> %s" % cmd)
>>> +        sys.exit(14)
>>> +
>>> +    bindir = d.getVar("STAGING_BINDIR_NATIVE")
>>> +    cmdpath = os.path.join(bindir, cmd)
>>> +
>>> +    if not os.path.exists(cmdpath):
>>> +        tinfoil.build_targets("%s-native" % cmd, 
>>> "addto_recipe_sysroot")
>>> +
>>> +        if not os.path.exists(cmdpath):
>>> +            bb.error("Failed to add '%s' to sysroot" % cmd)
>>> +            sys.exit(14)
>>> +
>>> +    return bindir
>>>
>>>   def register_commands(subparsers):
>>>       parser_create = subparsers.add_parser('create',
>>> -- 
>>> 2.30.2
>>>
>>>
>>>
>>>
>>>
>>>
>>> -=-=-=-=-=-=-=-=-=-=-=-
>>> Links: You receive all messages sent to this group.
>>> View/Reply Online (#165330): 
>>> https://lists.openembedded.org/g/openembedded-core/message/165330
>>> Mute This Topic: https://lists.openembedded.org/mt/90928682/3616946
>>> Group Owner: openembedded-core+owner@lists.openembedded.org
>>> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
>>> [mark.asselstine@windriver.com]
>>> -=-=-=-=-=-=-=-=-=-=-=-
>>>


  reply	other threads:[~2022-05-11 19:47 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-06  6:59 [PATCH 1/5] recipetool-create: add ensure_native_cmd function Stefan Herbrechtsmeier
2022-05-06  6:59 ` [PATCH 2/5] create_npm: reuse ensure_native_cmd from create.py Stefan Herbrechtsmeier
2022-05-06  6:59 ` [PATCH 3/5] poky-meta: add go vendor class for offline builds Stefan Herbrechtsmeier
2022-05-11 20:42   ` [OE-core] " Mark Asselstine
2022-05-06  6:59 ` [PATCH 4/5] recipetool: add go recipe generator Stefan Herbrechtsmeier
2022-05-06  7:15   ` [OE-core] " Alexander Kanavin
2022-05-11 20:37     ` Mark Asselstine
2022-05-06  6:59 ` [PATCH 5/5] oe-selftest: add go recipe create selftest Stefan Herbrechtsmeier
2022-05-06  7:16   ` [OE-core] " Alexander Kanavin
2022-05-11 20:08     ` Mark Asselstine
2022-05-06  7:09 ` [OE-core] [PATCH 1/5] recipetool-create: add ensure_native_cmd function Alexander Kanavin
2022-05-11 19:45   ` Mark Asselstine
2022-05-11 19:47     ` Mark Asselstine [this message]
2022-05-09 21:46 ` Luca Ceresoli
2022-05-11  6:54   ` Stefan Herbrechtsmeier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=833622a5-69ad-5541-e9b7-2617c0462321@windriver.com \
    --to=mark.asselstine@windriver.com \
    --cc=alex.kanavin@gmail.com \
    --cc=lukas.funke@weidmueller.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=stefan.herbrechtsmeier-oss@weidmueller.com \
    --cc=stefan.herbrechtsmeier@weidmueller.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox