summaryrefslogtreecommitdiff
path: root/meta/classes
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2009-11-16 23:34:42 +0000
committerRichard Purdie <rpurdie@linux.intel.com>2009-11-16 23:34:42 +0000
commit977b3fe5545c699e438866b834c9af949680aaab (patch)
treeeafeda605a177ac04d2925014613ecc76b180e0f /meta/classes
parent94577a77cee21f5944434e3a958f4d3827241174 (diff)
downloadopenembedded-core-977b3fe5545c699e438866b834c9af949680aaab.tar.gz
openembedded-core-977b3fe5545c699e438866b834c9af949680aaab.tar.bz2
openembedded-core-977b3fe5545c699e438866b834c9af949680aaab.tar.xz
openembedded-core-977b3fe5545c699e438866b834c9af949680aaab.zip
cross.bbclass: Add defitions of target_*dir variables and improve sysroot_stage_all to cope with mixed packages as found in cross recipes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/cross.bbclass16
1 files changed, 15 insertions, 1 deletions
diff --git a/meta/classes/cross.bbclass b/meta/classes/cross.bbclass
index 5ecbb6434..5cabfa878 100644
--- a/meta/classes/cross.bbclass
+++ b/meta/classes/cross.bbclass
@@ -25,6 +25,14 @@ LDFLAGS_build-darwin = "-L${STAGING_LIBDIR_NATIVE}"
TOOLCHAIN_OPTIONS = ""
+# Path mangling needed by the cross packaging
+# Note that we use := here to ensure that libdir and includedir are
+# target paths, not CROSS_DIR paths.
+target_libdir := "${libdir}"
+target_includedir := "${includedir}"
+target_base_libdir := "${base_libdir}"
+target_prefix := "${prefix}"
+
# Overrides for paths
prefix = "${CROSS_DIR}"
base_prefix = "${prefix}"
@@ -44,6 +52,12 @@ do_install () {
# Override the default sysroot staging copy since this won't look like a target system
#
sysroot_stage_all() {
- sysroot_stage_dir ${D} ${SYSROOT_DESTDIR}
+ sysroot_stage_dir ${D} ${SYSROOT_DESTDIR}
+ install -d ${SYSROOT_DESTDIR}${STAGING_DIR_TARGET}${target_base_libdir}/
+ install -d ${SYSROOT_DESTDIR}${STAGING_DIR_TARGET}${target_libdir}/
+ mv ${SYSROOT_DESTDIR}${target_base_libdir}/* ${SYSROOT_DESTDIR}${STAGING_DIR_TARGET}${target_base_libdir}/ || true
+ mv ${SYSROOT_DESTDIR}${target_libdir}/* ${SYSROOT_DESTDIR}${STAGING_DIR_TARGET}${target_libdir}/ || true
}
+
+