* [PATCH 0/1] multilib/bitbake.conf: default to contain MLPREFIX in RECIPE_SYSROOT
@ 2018-04-20 8:59 Chen Qi
2018-04-20 8:59 ` [PATCH 1/1] " Chen Qi
0 siblings, 1 reply; 2+ messages in thread
From: Chen Qi @ 2018-04-20 8:59 UTC (permalink / raw)
To: openembedded-core
The following changes since commit 71b4ae25612d6dd3687fdd583ed0077e744899cb:
glib-2.0/glib.inc: fix broken mingw build (2018-04-20 08:19:46 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib ChenQi/recipe-sysroot-mlprefix
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=ChenQi/recipe-sysroot-mlprefix
Chen Qi (1):
multilib/bitbake.conf: default to contain MLPREFIX in RECIPE_SYSROOT
meta/conf/bitbake.conf | 2 +-
meta/conf/multilib.conf | 4 ----
2 files changed, 1 insertion(+), 5 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH 1/1] multilib/bitbake.conf: default to contain MLPREFIX in RECIPE_SYSROOT
2018-04-20 8:59 [PATCH 0/1] multilib/bitbake.conf: default to contain MLPREFIX in RECIPE_SYSROOT Chen Qi
@ 2018-04-20 8:59 ` Chen Qi
0 siblings, 0 replies; 2+ messages in thread
From: Chen Qi @ 2018-04-20 8:59 UTC (permalink / raw)
To: openembedded-core
We set RECIPE_SYSROOT to ${WORKDIR}/recipe-sysroot in bitbake.conf and
${WORKDIR}/${MLPREFIX}recipe-sysroot in multilib.conf.
The problem is about nativesdk recipes. MLPREFIX is set to "nativesdk-"
in nativesdk.bbclass. So if we don't include (or require) multilib.conf,
nativesdk recipe's RECIPE_SYSROOT is 'recipe-sysroot'; if we include (or
require) multilib.conf, its RECIPE_SYSROOT is 'nativesdk-recipe-sysroot'.
Just including multilib.conf or not would affect nativesdk reicpes
RECIPE_SYSROOT value. This is not reasonable. And in fact it sometimes
causes problem for us. When we change configuration about multilib
in the same build directory, we sometimes get the following build failure.
ld: cannot find crtn.o: No such file or directory
Not only that, sometimes the manifest under sysroot-components of
nativesdk recipes have entries starting with 'recipe-sysroot', but
the actual files that should be removed are under 'nativesdk-recipe-sysroot'.
And that causes problem for prepare_recipe_sysroot task! Errors are like:
Exception: FileExistsError: [Errno 17] File exists
So change RECIPE_SYSROOT to contain MLPREFIX by default. In this way,
nativesdk recipes would have their RECIPE_SYSROOT set to
nativesdk-recipe-sysroot. After all, changing MULTILIBS should not
affect this value for nativesdk recipe.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
meta/conf/bitbake.conf | 2 +-
meta/conf/multilib.conf | 4 ----
2 files changed, 1 insertion(+), 5 deletions(-)
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 92aa944..7e5baec 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -368,7 +368,7 @@ B = "${S}"
STAGING_DIR = "${TMPDIR}/sysroots"
COMPONENTS_DIR = "${STAGING_DIR}-components"
-RECIPE_SYSROOT = "${WORKDIR}/recipe-sysroot"
+RECIPE_SYSROOT = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
RECIPE_SYSROOT_NATIVE = "${WORKDIR}/recipe-sysroot-native"
STAGING_DIR_NATIVE = "${RECIPE_SYSROOT_NATIVE}"
diff --git a/meta/conf/multilib.conf b/meta/conf/multilib.conf
index e74dec8..fd6a868 100644
--- a/meta/conf/multilib.conf
+++ b/meta/conf/multilib.conf
@@ -6,10 +6,6 @@ MULTILIB_SAVE_VARNAME = "DEFAULTTUNE TARGET_ARCH TARGET_SYS TARGET_VENDOR"
MULTILIBS ??= "multilib:lib32"
-STAGING_DIR_HOST = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
-STAGING_DIR_TARGET = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
-RECIPE_SYSROOT = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
-
INHERIT += "multilib_global"
BBCLASSEXTEND_append = " ${MULTILIBS}"
--
1.9.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-04-20 8:58 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-04-20 8:59 [PATCH 0/1] multilib/bitbake.conf: default to contain MLPREFIX in RECIPE_SYSROOT Chen Qi
2018-04-20 8:59 ` [PATCH 1/1] " Chen Qi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox