[OE-core] [PATCH v6] image.bbclass: create root symlinks in nativesdk target sysroot
Amarnath Valluri
amarnath.valluri at intel.com
Thu Jun 15 10:32:39 UTC 2017
To match with the target image, the generated nativesdk's target sysroot also
should have the root symlinks(/lib*, /bin/, /sbin). So, extended the
'create_merged_usr_symlinks' to reuse symlink creation part even for nativesdk
using POPULATE_SDK_PRE_TARGET_COMMAND.
Signed-off-by: Amarnath Valluri <amarnath.valluri at intel.com>
---
meta/classes/image.bbclass | 29 ++++++++++++++++++++---------
1 file changed, 20 insertions(+), 9 deletions(-)
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 971918b..64af689 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -621,21 +621,32 @@ addtask bundle_initramfs after do_image_complete
# Prepare the root links to point to the /usr counterparts.
create_merged_usr_symlinks() {
- install -d ${IMAGE_ROOTFS}${base_bindir} ${IMAGE_ROOTFS}${base_sbindir} ${IMAGE_ROOTFS}${base_libdir}
- lnr ${IMAGE_ROOTFS}${base_bindir} ${IMAGE_ROOTFS}/bin
- lnr ${IMAGE_ROOTFS}${base_sbindir} ${IMAGE_ROOTFS}/sbin
- lnr ${IMAGE_ROOTFS}${base_libdir} ${IMAGE_ROOTFS}/${baselib}
+ root="$1"
+ install -d $root${base_bindir} $root${base_sbindir} $root${base_libdir}
+ lnr $root${base_bindir} $root/bin
+ lnr $root${base_sbindir} $root/sbin
+ lnr $root${base_libdir} $root/${baselib}
if [ "${nonarch_base_libdir}" != "${base_libdir}" ]; then
- install -d ${IMAGE_ROOTFS}${nonarch_base_libdir}
- lnr ${IMAGE_ROOTFS}${nonarch_base_libdir} ${IMAGE_ROOTFS}/lib
+ install -d $root${nonarch_base_libdir}
+ lnr $root${nonarch_base_libdir} $root/lib
fi
# create base links for multilibs
multi_libdirs="${@d.getVar('MULTILIB_VARIANTS')}"
for d in $multi_libdirs; do
- install -d ${IMAGE_ROOTFS}${exec_prefix}/$d
- lnr ${IMAGE_ROOTFS}${exec_prefix}/$d ${IMAGE_ROOTFS}/$d
+ install -d $root${exec_prefix}/$d
+ lnr $root${exec_prefix}/$d $root/$d
done
}
-ROOTFS_PREPROCESS_COMMAND += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'create_merged_usr_symlinks; ', '',d)}"
+
+create_merged_usr_symlinks_rootfs() {
+ create_merged_usr_symlinks ${IMAGE_ROOTFS}
+}
+
+create_merged_usr_symlinks_sdk() {
+ create_merged_usr_symlinks ${SDK_OUTPUT}${SDKTARGETSYSROOT}
+}
+
+ROOTFS_PREPROCESS_COMMAND += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'create_merged_usr_symlinks_rootfs; ', '',d)}"
+POPULATE_SDK_PRE_TARGET_COMMAND += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'create_merged_usr_symlinks_sdk; ', '',d)}"
--
2.7.4
More information about the Openembedded-core
mailing list