]> code.ossystems Code Review - openembedded-core.git/commitdiff
populate_sdk_base: Remap TOOLCHAIN_HOST_TASK variable
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 28 Aug 2014 10:27:44 +0000 (11:27 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 28 Aug 2014 14:12:31 +0000 (15:12 +0100)
Currently this variable isn't passed through the magic rename
mangling. This means that if you try adding "nativesdk-eglibc"
to an image directly, you can't since the package is renamed
by debian.bbclass and nothing sees the renaming.

This is annoying since I wanted to exactly that. This code
change passes it through the standard renaming function, the
tricky part is that we have to set PKGDATA_DIR to point to
the correct sysroot during the call. We create a copy of the
 datastore for the purposes of the call to do this.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/populate_sdk_base.bbclass

index db64d3abc8ef4973b9b99a73ae686f60db0b5163..abfcdc7744922c984933fd3ae53554a2e78c5f3e 100644 (file)
@@ -72,6 +72,13 @@ fakeroot python do_populate_sdk() {
     runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", pn, d)
     runtime_mapping_rename("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY", pn, d)
 
+    ld = bb.data.createCopy(d)
+    ld.setVar("PKGDATA_DIR", "${STAGING_DIR}/${SDK_ARCH}-${SDKPKGSUFFIX}${SDK_VENDOR}-${SDK_OS}/pkgdata")
+    runtime_mapping_rename("TOOLCHAIN_HOST_TASK", pn, ld)
+    runtime_mapping_rename("TOOLCHAIN_HOST_TASK_ATTEMPTONLY", pn, ld)
+    d.setVar("TOOLCHAIN_HOST_TASK", ld.getVar("TOOLCHAIN_HOST_TASK", True))
+    d.setVar("TOOLCHAIN_HOST_TASK_ATTEMPTONLY", ld.getVar("TOOLCHAIN_HOST_TASK_ATTEMPTONLY", True))
+    
     # create target/host SDK manifests
     create_manifest(d, manifest_dir=d.getVar('SDK_DIR', True),
                     manifest_type=Manifest.MANIFEST_TYPE_SDK_HOST)