]> code.ossystems Code Review - openembedded-core.git/commitdiff
gcc-package-cross: Make the libexec symlinks use relative paths so they're reclocatable
authorRichard Purdie <rpurdie@linux.intel.com>
Thu, 12 Aug 2010 13:38:11 +0000 (14:38 +0100)
committerRichard Purdie <rpurdie@linux.intel.com>
Thu, 12 Aug 2010 13:41:29 +0000 (14:41 +0100)
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
meta/packages/gcc/gcc-package-cross.inc

index 0d5e55f9a65406a0ef43f9554a70d806455c2839..4f902fa149a8d93448b37c1f9fa52a4b4b4f8a7c 100644 (file)
@@ -1,5 +1,8 @@
 INHIBIT_PACKAGE_STRIP = "1"
 
+# Compute how to get from libexecdir to bindir in python (easier than shell)
+BINRELPATH = "${@oe.path.relative(bb.data.expand("${libexecdir}/gcc/${TARGET_SYS}/${BINV}", d), bb.data.expand("${STAGING_DIR_NATIVE}${prefix_native}/bin/${MULTIMACH_TARGET_SYS}", d))}"
+
 do_install () {
        oe_runmake 'DESTDIR=${D}' install-host
 
@@ -12,11 +15,11 @@ do_install () {
 
        
        # Insert symlinks into libexec so when tools without a prefix are searched for, the correct ones are
-       # found.
+       # found. These need to be relative paths so they work in different locations.
        dest=${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/
        install -d $dest
        for t in ar as ld nm objcopy objdump ranlib strip g77 gcc cpp gfortran; do
-               ln -sf ${STAGING_DIR_NATIVE}${prefix_native}/bin/${MULTIMACH_TARGET_SYS}/${TARGET_PREFIX}$t $dest$t
+               ln -sf ${BINRELPATH}/${TARGET_PREFIX}$t $dest$t
        done
 
        # Remove things we don't need but keep share/java