]> code.ossystems Code Review - openembedded-core.git/commitdiff
eglibc-initial: Ensure symlinks point to the correct location when built from sstate...
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 29 Nov 2011 12:21:07 +0000 (12:21 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 29 Nov 2011 12:36:37 +0000 (12:36 +0000)
If the sstate files are installed into a sysroot from the sstate cache,
the directory to the main sysroot can change and the symlinks aren't
adjusted to account for this. This is a problem specific to the toolchain
bootstrap process. This patch adds up a function to recreate the
symlinks, hence ensuring they always point at the correct location.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/eglibc/eglibc-initial.inc

index 448f73a971d1427535ad4c7100eab22be27772e2..906251633b2f0d1a59dac3d893e6e0763b7f0e10 100644 (file)
@@ -60,4 +60,16 @@ do_siteconfig () {
        :
 }
 
+SSTATEPOSTINSTFUNCS += "eglibcinitial_sstate_postinst"
+eglibcinitial_sstate_postinst() {
+       if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ]
+       then
+               # Recreate the symlinks to ensure they point to the correct location
+               for t in linux asm asm-generic; do
+                       rm -f ${STAGING_DIR_TCBOOTSTRAP}${includedir}/$t
+                       ln -s ${STAGING_DIR_TARGET}${includedir}/$t ${STAGING_DIR_TCBOOTSTRAP}${includedir}/
+               done
+       fi
+}
+
 do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR_TCBOOTSTRAP}"