All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Eggleton <paul.eggleton@linux.intel.com>
To: Brian Karcz <briank@russound.com>
Cc: yocto@yoctoproject.org
Subject: Re: Image recipes in Yocto 1.4 (dylan-9.0.0)
Date: Thu, 01 Aug 2013 09:25:32 +0100	[thread overview]
Message-ID: <4649053.56DKkDXgDi@helios> (raw)
In-Reply-To: <7e294eee26c84bb695cfc001d9c0fbcb@HERMES.RUSSOUND.com>

On Wednesday 31 July 2013 20:27:16 Brian Karcz wrote:
> Here is a little background of what is going on. I inherited a project that
> was implemented under and works with Edison. The project has two image
> recipes, abc-main.bb and abc-ramdisk.bb. The way the project builds under
> Edison, abc-main.bb has abc-ramdisk listed in the DEPENDS variable.
> Abc-main then has an image preprocess command that sneakily goes into the
> DEPLOY_DIR_IMAGE and retrieves the ramdisk image and inserts it into its
> own IMAGE_ROOTFS.
> 
> As I've been working on porting to the Dylan version of the build system, I
> found the whole issue with do_fetch and do_unpack not being run at all for
> images. I applied the fix you advised of to add a python function that
> removes the noexec flag for the two tasks. This apparently only works for
> one build of the image. I either need to do a "cleanall" on the image or
> bump the rev to get it to build again.

I haven't had time to try to reproduce this here yet, sorry.
 
However, aside from the files in SRC_URI which could presumably be handled in a 
separate recipe, one possible solution for the ramdisk part did occur to me - 
I'd suggest doing the following in the main image:

do_rootfs[depends] += "abc-ramdisk:do_rootfs"

Then add to ROOTFS_POSTPROCESS_COMMAND or IMAGE_POSTPROCESS_COMMAND (whichever 
is appropriate) a call to a shell function that performs whatever needed 
operation on the abc-ramdisk.

> Another interesting note that might be of interest is that our LICENCE is
> defined to "XYZ" and issues the following warning, "WARNING: abc-ramdisk: No
> generic license file exists for: XYZ in any provider", in the first build that
> succeeds.

I'm no expert on this area but to me it doesn't make sense for an image 
containing multiple differently-licensed components to have a declared license 
in the recipe. We tend to keep things simple and just set LICENSE = "MIT" on 
the image recipe (*not* implying anything about the contents of the image), 
with each installed package license and therefore the image's license manifest 
indicating all of the licenses of the components that make up the image. 
Perhaps a LICENSE value of "N/A" for the image would be more appropriate, 
although the system currently doesn't support any special casing of LICENSE 
for image recipes, and if you are pulling in files in SRC_URI in the image 
recipe there might be some validity to having a LICENSE value to apply to 
those.

> When the second build is run the warning does not appear and the build
> jumps right to the do_rootfs task where it fails.

That's because this check is done in do_populate_lic which isn't getting re-
executed on the second time (presumably because nothing that that task depends 
upon has changed).

Cheers,
Paul
 
-- 

Paul Eggleton
Intel Open Source Technology Centre


  reply	other threads:[~2013-08-01  8:25 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-24 15:01 Image recipes in Yocto 1.4 (dylan-9.0.0) Brian Karcz
2013-06-24 15:40 ` Paul Eggleton
     [not found]   ` <7941E07E1E020448937ACA7D4279E632018398AF5AC0@powerhog>
2013-07-16 17:29     ` Paul Eggleton
2013-07-31 20:27       ` Brian Karcz
2013-08-01  8:25         ` Paul Eggleton [this message]
2013-08-01 14:00           ` Brian Karcz
2013-08-01 14:27             ` Paul Eggleton
2013-08-01 16:09               ` Brian Karcz

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=4649053.56DKkDXgDi@helios \
    --to=paul.eggleton@linux.intel.com \
    --cc=briank@russound.com \
    --cc=yocto@yoctoproject.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.