diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/cross.bbclass | 16 |
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 } + + |