summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-12 13:30:02 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-19 22:45:54 +0000
commit9a799f70574ee8e0b1267497edfb4ac63166ef8f (patch)
tree9efcc12e6d894671c4d49d80d4d56d7bd07d3941
parent941ec7c50c30052e346e72fef2920135dba89a21 (diff)
downloadopenembedded-core-9a799f70574ee8e0b1267497edfb4ac63166ef8f.tar.gz
openembedded-core-9a799f70574ee8e0b1267497edfb4ac63166ef8f.tar.bz2
openembedded-core-9a799f70574ee8e0b1267497edfb4ac63166ef8f.zip
staging: Add dependency on virtual/binutils for strip binary
The staging code strips binaries and we need virtual/binutils for that. Add a specific dependency since the one from do_configure and others may not be enough to ensure the binaries are in our own sysroot. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/allarch.bbclass1
-rw-r--r--meta/classes/image.bbclass4
-rw-r--r--meta/classes/staging.bbclass4
3 files changed, 9 insertions, 0 deletions
diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass
index 9dce49879a..026214ea9a 100644
--- a/meta/classes/allarch.bbclass
+++ b/meta/classes/allarch.bbclass
@@ -32,6 +32,7 @@ python () {
d.setVar("TARGET_CFLAGS", "none")
d.setVar("TARGET_CXXFLAGS", "none")
d.setVar("TARGET_LDFLAGS", "none")
+ d.setVar("POPULATESYSROOTDEPS", "")
# Avoid this being unnecessarily different due to nuances of
# the target machine that aren't important for "all" arch
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 04fd5f9961..6b0864913b 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -96,6 +96,10 @@ LDCONFIGDEPEND_libc-musl = ""
# don't want this dependency, which is causing dependency loop
KERNELDEPMODDEPEND ?= "virtual/kernel:do_packagedata"
+# POPULATESYSROOTDEPS fails to expand correctly with multilibs since overrides aren't set for image.bbclass
+# we don't need these depends so just clear them
+do_populate_sysroot[depends] = ""
+
do_rootfs[depends] += " \
makedevs-native:do_populate_sysroot virtual/fakeroot-native:do_populate_sysroot ${LDCONFIGDEPEND} \
virtual/update-alternatives-native:do_populate_sysroot update-rc.d-native:do_populate_sysroot \
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index 72a7421ba6..2512ae6f5d 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -228,6 +228,10 @@ python do_populate_sysroot () {
do_populate_sysroot[vardeps] += "${SYSROOT_PREPROCESS_FUNCS}"
do_populate_sysroot[vardepsexclude] += "MULTI_PROVIDER_WHITELIST"
+POPULATESYSROOTDEPS = ""
+POPULATESYSROOTDEPS_class-target = "virtual/${MLPREFIX}${TARGET_PREFIX}binutils:do_populate_sysroot"
+do_populate_sysroot[depends] += "${POPULATESYSROOTDEPS}"
+
SSTATETASKS += "do_populate_sysroot"
do_populate_sysroot[cleandirs] = "${SYSROOT_DESTDIR}"
do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}"