* [PATCH] populate_sdk_base/image: Fix races for variable mappings
@ 2013-03-04 17:43 Richard Purdie
2013-03-05 1:52 ` Mark Hatle
0 siblings, 1 reply; 2+ messages in thread
From: Richard Purdie @ 2013-03-04 17:43 UTC (permalink / raw)
To: openembedded-core; +Cc: saul.wold
When using the -c populate_sdk option, images are not generated quite as
they should be under certain circumstances. For example the dropbear
feature may not get replaced with openssh, leading to both being installed
with an appropriate rootfs failure.
This patch moves the remapping logic to later points in the code, ensuring
there is no conflict. The result is slightly simpler too as an added bonus.
[YOCTO #3749]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 19564d8..68bd342 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -117,6 +117,10 @@ python () {
d.setVar('IMAGE_FEATURES', ' '.join(list(remain_features)))
+ if d.getVar('BB_WORKERCONTEXT', True) is not None:
+ runtime_mapping_rename("PACKAGE_INSTALL", d)
+ runtime_mapping_rename("PACKAGE_INSTALL_ATTEMPTONLY", d)
+
# Ensure we have the vendor list for complementary package handling
ml_vendor_list = ""
multilibs = d.getVar('MULTILIBS', True) or ""
@@ -129,19 +133,6 @@ python () {
d.setVar('MULTILIB_VENDORS', ml_vendor_list)
}
-python image_handler () {
- if not isinstance(e, bb.event.RecipeParsed):
- return
-
- # If we don't do this we try and run the mapping hooks while parsing which is slow
- # bitbake should really provide something to let us know this...
- if e.data.getVar('BB_WORKERCONTEXT', True) is not None:
- runtime_mapping_rename("PACKAGE_INSTALL", e.data)
- runtime_mapping_rename("PACKAGE_INSTALL_ATTEMPTONLY", e.data)
-
-}
-addhandler image_handler
-
#
# Get a list of files containing device tables to create.
# * IMAGE_DEVICE_TABLE is the old name to an absolute path to a device table file
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index 88de1e4..7af2d2e 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -29,14 +29,9 @@ EXCLUDE_FROM_WORLD = "1"
SDK_PACKAGING_FUNC ?= "create_shar"
-python () {
- # If we don't do this we try and run the mapping hooks while parsing which is slow
- # bitbake should really provide something to let us know this...
- if bb.data.getVar('BB_WORKERCONTEXT', d, True) is not None:
- runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", d)
-}
-
fakeroot python do_populate_sdk() {
+ runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", d)
+
bb.build.exec_func("populate_sdk_image", d)
# Handle multilibs in the SDK environment, siteconfig, etc files...
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] populate_sdk_base/image: Fix races for variable mappings
2013-03-04 17:43 [PATCH] populate_sdk_base/image: Fix races for variable mappings Richard Purdie
@ 2013-03-05 1:52 ` Mark Hatle
0 siblings, 0 replies; 2+ messages in thread
From: Mark Hatle @ 2013-03-05 1:52 UTC (permalink / raw)
To: openembedded-core
On 3/4/13 11:43 AM, Richard Purdie wrote:
> When using the -c populate_sdk option, images are not generated quite as
> they should be under certain circumstances. For example the dropbear
> feature may not get replaced with openssh, leading to both being installed
> with an appropriate rootfs failure.
>
> This patch moves the remapping logic to later points in the code, ensuring
> there is no conflict. The result is slightly simpler too as an added bonus.
>
> [YOCTO #3749]
Just an FYI, I verified this corrects the reported issue with the
core-image-sato-sdk as indicated in the defect.
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
> ---
> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
> index 19564d8..68bd342 100644
> --- a/meta/classes/image.bbclass
> +++ b/meta/classes/image.bbclass
> @@ -117,6 +117,10 @@ python () {
>
> d.setVar('IMAGE_FEATURES', ' '.join(list(remain_features)))
>
> + if d.getVar('BB_WORKERCONTEXT', True) is not None:
> + runtime_mapping_rename("PACKAGE_INSTALL", d)
> + runtime_mapping_rename("PACKAGE_INSTALL_ATTEMPTONLY", d)
> +
> # Ensure we have the vendor list for complementary package handling
> ml_vendor_list = ""
> multilibs = d.getVar('MULTILIBS', True) or ""
> @@ -129,19 +133,6 @@ python () {
> d.setVar('MULTILIB_VENDORS', ml_vendor_list)
> }
>
> -python image_handler () {
> - if not isinstance(e, bb.event.RecipeParsed):
> - return
> -
> - # If we don't do this we try and run the mapping hooks while parsing which is slow
> - # bitbake should really provide something to let us know this...
> - if e.data.getVar('BB_WORKERCONTEXT', True) is not None:
> - runtime_mapping_rename("PACKAGE_INSTALL", e.data)
> - runtime_mapping_rename("PACKAGE_INSTALL_ATTEMPTONLY", e.data)
> -
> -}
> -addhandler image_handler
> -
> #
> # Get a list of files containing device tables to create.
> # * IMAGE_DEVICE_TABLE is the old name to an absolute path to a device table file
> diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
> index 88de1e4..7af2d2e 100644
> --- a/meta/classes/populate_sdk_base.bbclass
> +++ b/meta/classes/populate_sdk_base.bbclass
> @@ -29,14 +29,9 @@ EXCLUDE_FROM_WORLD = "1"
>
> SDK_PACKAGING_FUNC ?= "create_shar"
>
> -python () {
> - # If we don't do this we try and run the mapping hooks while parsing which is slow
> - # bitbake should really provide something to let us know this...
> - if bb.data.getVar('BB_WORKERCONTEXT', d, True) is not None:
> - runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", d)
> -}
> -
> fakeroot python do_populate_sdk() {
> + runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", d)
> +
> bb.build.exec_func("populate_sdk_image", d)
>
> # Handle multilibs in the SDK environment, siteconfig, etc files...
>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-03-05 2:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-04 17:43 [PATCH] populate_sdk_base/image: Fix races for variable mappings Richard Purdie
2013-03-05 1:52 ` Mark Hatle
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox