]> code.ossystems Code Review - openembedded-core.git/commitdiff
gcc-package-cross: Switch to using pattern matching to detect when to stash libgcc...
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 17 Jun 2011 16:27:25 +0000 (17:27 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 5 Jul 2011 10:16:53 +0000 (11:16 +0100)
Currently, we stash libgcc if PN is gcc-cross or gcc-crosssdk. This patch
changes it to work for *gcc-cross and *-gcc-crosssdk which means it
will patch for multilib extended toolchains.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/gcc/gcc-package-cross.inc

index 3d27788c56248f0ba437aa99844c386410354aaf..15627e7d923f5059b2f3804c12027e4377f7d888 100644 (file)
@@ -33,20 +33,22 @@ do_install () {
        find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f
 
        # gcc-runtime installs libgcc into a special location in staging since it breaks doing a standalone build
-       if [ "${PN}" == "gcc-cross" -o "${PN}" == "gcc-crosssdk" ]; then
-               dest=${D}/${includedir}/gcc-build-internal-${MULTIMACH_TARGET_SYS}
-               oe_runmake "DESTDIR=$dest" libdir=${target_libdir} base_libdir=${target_base_libdir} prefix=${target_prefix} exec_prefix=${target_exec_prefix} install-target-libgcc
+       case ${PN} in
+               *gcc-cross|*gcc-crosssdk)
+                       dest=${D}/${includedir}/gcc-build-internal-${MULTIMACH_TARGET_SYS}
+                       oe_runmake "DESTDIR=$dest" libdir=${target_libdir} base_libdir=${target_base_libdir} prefix=${target_prefix} exec_prefix=${target_exec_prefix} install-target-libgcc
 
-               # Ideally here we'd override the libgcc Makefile's idea of slibdir but
-               # for now, we just move the files to the correct location
+                       # Ideally here we'd override the libgcc Makefile's idea of slibdir but
+                       # for now, we just move the files to the correct location
 
-               install -d $dest${target_base_libdir}
-               mv $dest${target_exec_prefix}/${TARGET_SYS}/lib*/* $dest${target_base_libdir}
-               rm -rf $dest${target_exec_prefix}/${TARGET_SYS}
+                       install -d $dest${target_base_libdir}
+                       mv $dest${target_exec_prefix}/${TARGET_SYS}/lib*/* $dest${target_base_libdir}
+                       rm -rf $dest${target_exec_prefix}/${TARGET_SYS}
 
-               # Also need to move gcc from /usr/lib/gcc/* to /usr/lib/ else the search paths won't find the crt*.o files
+                       # Also need to move gcc from /usr/lib/gcc/* to /usr/lib/ else the search paths won't find the crt*.o files
 
-               mv $dest${target_libdir}/gcc/* $dest${target_libdir}/
-               rmdir $dest${target_libdir}/gcc
-       fi
+                       mv $dest${target_libdir}/gcc/* $dest${target_libdir}/
+                       rmdir $dest${target_libdir}/gcc
+               ;;
+       esac
 }