All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Hatle <mark.hatle@windriver.com>
To: Saul Wold <sgw@linux.intel.com>
Cc: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 6/6] image.bbclass: Add support to build the SDK in parallel with the image
Date: Mon, 2 Jul 2012 14:49:09 -0500	[thread overview]
Message-ID: <4FF1FB35.6000105@windriver.com> (raw)
In-Reply-To: <4FF1FA29.8050209@linux.intel.com>

On 7/2/12 2:44 PM, Saul Wold wrote:
> On 06/29/2012 10:07 PM, Mark Hatle wrote:
>> When building an image recipe, you can now build a companion SDK by
>> calling the populate_sdk task:
>>     bitbake -c populate_sdk core-image-minimal
>>
>> Note: there are still issues w/ the SDK not working completely with
>> multilibs.
>>
>> A lock is required between rootfs and populate_sdk activities to prevent
>> configuration file clashes and similar package management problems in ipk
>> and deb based systems.  (RPM already had a lock for a different reason.)
>>
>
> Mark this seems to have broken non-gplv3 builds.  I get the following
> error now:
>
>> NOTE: Resolving any missing task queue dependencies
>> ERROR: Nothing RPROVIDES 'binutils-cross-canadian-i586' (but /intel/poky/distro/meta/recipes-core/tasks/task-cross-canadian.bb RDEPENDS on or otherwise requires it)
>> ERROR: binutils-cross-canadian-i586 was skipped: incompatible with license GPLv3
>> NOTE: Runtime target 'binutils-cross-canadian-i586' is unbuildable, removing...
>> Missing or unbuildable dependency chain was: ['binutils-cross-canadian-i586']
>> NOTE: Runtime target 'task-cross-canadian-i586' is unbuildable, removing...
>> Missing or unbuildable dependency chain was: ['task-cross-canadian-i586', 'binutils-cross-canadian-i586']
>> ERROR: Required build target 'core-image-minimal' has no buildable providers.
>> Missing or unbuildable dependency chain was: ['core-image-minimal', 'task-cross-canadian-i586', 'binutils-cross-canadian-i586']
>>
>> Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

As far as I know, this didn't work before either.  If you are running:

bitbake core-image-minimal (or similar) it should work -exactly- as it did 
before, it's only if you add the -c .... that it will change.

I forgot to mention, this does require the latest version of bitbake to avoid 
adding the SDK dependencies (unless you call the -c populate_sdk, where they are 
added and used.)

--Mark

>
> I am going to hold off on this patch set until this is resolved.
>
> Thanks
>
> 	Sau!
>
>
>> Signed-off-by: Mark Hatle<mark.hatle@windriver.com>
>> ---
>>    meta/classes/image.bbclass             |    5 +++++
>>    meta/classes/populate_sdk_base.bbclass |    1 +
>>    meta/classes/populate_sdk_deb.bbclass  |    2 ++
>>    meta/classes/populate_sdk_ipk.bbclass  |    2 ++
>>    meta/classes/rootfs_deb.bbclass        |    2 ++
>>    meta/classes/rootfs_ipk.bbclass        |    2 ++
>>    6 files changed, 14 insertions(+), 0 deletions(-)
>>
>> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
>> index 4f50376..7e41982 100644
>> --- a/meta/classes/image.bbclass
>> +++ b/meta/classes/image.bbclass
>> @@ -3,6 +3,11 @@ inherit rootfs_${IMAGE_PKGTYPE}
>>    IMAGETEST ?= "dummy"
>>    inherit imagetest-${IMAGETEST}
>>
>> +inherit populate_sdk_base
>> +
>> +TOOLCHAIN_TARGET_TASK += "${PACKAGE_INSTALL}"
>> +TOOLCHAIN_TARGET_TASK_ATTEMPTONLY += "${PACKAGE_INSTALL_ATTEMPTONLY} ${PACKAGE_GROUP_dev-pkgs} ${PACKAGE_GROUP_dbg-pkgs}"
>> +
>>    inherit gzipnative
>>
>>    LICENSE = "MIT"
>> diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
>> index 6dc66fb..ed2dca0 100644
>> --- a/meta/classes/populate_sdk_base.bbclass
>> +++ b/meta/classes/populate_sdk_base.bbclass
>> @@ -120,6 +120,7 @@ populate_sdk_log_check() {
>>    	done
>>    }
>>
>> +do_populate_sdk[dirs] = "${TOPDIR}"
>>    do_populate_sdk[nostamp] = "1"
>>    do_populate_sdk[depends] = "${@' '.join([x + ':do_populate_sysroot' for x in d.getVar('SDK_DEPENDS', True).split()])}"
>>    do_populate_sdk[rdepends] = "${@' '.join([x + ':do_populate_sysroot' for x in d.getVar('SDK_RDEPENDS', True).split()])}"
>> diff --git a/meta/classes/populate_sdk_deb.bbclass b/meta/classes/populate_sdk_deb.bbclass
>> index c3b3e0c..9e9e1e1 100644
>> --- a/meta/classes/populate_sdk_deb.bbclass
>> +++ b/meta/classes/populate_sdk_deb.bbclass
>> @@ -6,6 +6,8 @@ DEB_SDK_ARCH = "${@[d.getVar('SDK_ARCH', True), "i386"]\
>>                    [d.getVar('SDK_ARCH', True) in \
>>                    ["x86", "i486", "i586", "i686", "pentium"]]}"
>>
>> +do_populate_sdk[lockfiles] += "${WORKDIR}/deb.lock"
>> +
>>    populate_sdk_post_deb () {
>>
>>    	local target_rootfs=$1
>> diff --git a/meta/classes/populate_sdk_ipk.bbclass b/meta/classes/populate_sdk_ipk.bbclass
>> index aa3efde..4321afb 100644
>> --- a/meta/classes/populate_sdk_ipk.bbclass
>> +++ b/meta/classes/populate_sdk_ipk.bbclass
>> @@ -1,6 +1,8 @@
>>    do_populate_sdk[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot"
>>    do_populate_sdk[recrdeptask] += "do_package_write_ipk"
>>
>> +do_populate_sdk[lockfiles] += "${WORKDIR}/ipk.lock"
>> +
>>    populate_sdk_ipk() {
>>
>>    	rm -f ${IPKGCONF_TARGET}
>> diff --git a/meta/classes/rootfs_deb.bbclass b/meta/classes/rootfs_deb.bbclass
>> index 6c9767f..4ea71da 100644
>> --- a/meta/classes/rootfs_deb.bbclass
>> +++ b/meta/classes/rootfs_deb.bbclass
>> @@ -8,6 +8,8 @@ ROOTFS_PKGMANAGE_BOOTSTRAP  = "run-postinsts"
>>    do_rootfs[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot"
>>    do_rootfs[recrdeptask] += "do_package_write_deb"
>>
>> +do_rootfs[lockfiles] += "${WORKDIR}/deb.lock"
>> +
>>    DEB_POSTPROCESS_COMMANDS = "rootfs_install_all_locales; "
>>
>>    opkglibdir = "${localstatedir}/lib/opkg"
>> diff --git a/meta/classes/rootfs_ipk.bbclass b/meta/classes/rootfs_ipk.bbclass
>> index 1580086..9732385 100644
>> --- a/meta/classes/rootfs_ipk.bbclass
>> +++ b/meta/classes/rootfs_ipk.bbclass
>> @@ -12,6 +12,8 @@ ROOTFS_PKGMANAGE_BOOTSTRAP  = "run-postinsts"
>>    do_rootfs[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot"
>>    do_rootfs[recrdeptask] += "do_package_write_ipk"
>>
>> +do_rootfs[lockfiles] += "${WORKDIR}/ipk.lock"
>> +
>>    IPKG_ARGS = "-f ${IPKGCONF_TARGET} -o ${IMAGE_ROOTFS} --force-overwrite"
>>
>>    OPKG_PREPROCESS_COMMANDS = "package_update_index_ipk; package_generate_ipkg_conf"





  reply	other threads:[~2012-07-02 20:00 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-30  5:07 [PATCH 0/6] Enable the ability to create an image matching SDK Mark Hatle
2012-06-30  5:07 ` [PATCH 1/6] Fix manual log file paths Mark Hatle
2012-06-30  5:07 ` [PATCH 2/6] populate_sdk.bbclass: Split into two parts Mark Hatle
2012-06-30  5:07 ` [PATCH 3/6] populate_sdk: Allow for attempt only packages in the SDK Mark Hatle
2012-06-30  5:07 ` [PATCH 4/6] populate_sdk_base.bbclass: Change to using task specific depends Mark Hatle
2012-06-30  5:07 ` [PATCH 5/6] populate_sdk: enable basic multilib support Mark Hatle
2012-06-30  5:07 ` [PATCH 6/6] image.bbclass: Add support to build the SDK in parallel with the image Mark Hatle
2012-07-02 19:44   ` Saul Wold
2012-07-02 19:49     ` Mark Hatle [this message]
2012-07-02 20:05       ` Saul Wold
2012-07-02 20:12   ` Phil Blundell
2012-07-02 20:32     ` Mark Hatle
2012-07-02 21:05       ` Phil Blundell
2012-07-02 21:37         ` Mark Hatle
2012-07-03 23:47   ` Saul Wold
2012-07-02 15:20 ` [PATCH 0/6 v2] Enable the ability to create an image matching SDK McClintock Matthew-B29882
2012-07-02 16:27   ` Mark Hatle

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=4FF1FB35.6000105@windriver.com \
    --to=mark.hatle@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=sgw@linux.intel.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 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.