summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-06-17 17:27:25 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-05 11:39:09 +0100
commit463b38f605ba0d29768d4f4d1857f9c9b7da27c3 (patch)
tree374350806bb8c0c73e6307e4ff2c9be4208c29b6 /meta
parent89e8be62389217b7ca8f45fda4e75842c70ea00c (diff)
downloadpoky-463b38f605ba0d29768d4f4d1857f9c9b7da27c3.tar.gz
gcc-package-cross: Switch to using pattern matching to detect when to stash libgcc into the sysroot
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. (From OE-Core rev: a39cbed2ec887fb83335ba93e92d971c84a0f4d8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-devtools/gcc/gcc-package-cross.inc26
1 files changed, 14 insertions, 12 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-package-cross.inc b/meta/recipes-devtools/gcc/gcc-package-cross.inc
index 3d27788c56..15627e7d92 100644
--- a/meta/recipes-devtools/gcc/gcc-package-cross.inc
+++ b/meta/recipes-devtools/gcc/gcc-package-cross.inc
@@ -33,20 +33,22 @@ do_install () {
33 find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f 33 find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f
34 34
35 # gcc-runtime installs libgcc into a special location in staging since it breaks doing a standalone build 35 # gcc-runtime installs libgcc into a special location in staging since it breaks doing a standalone build
36 if [ "${PN}" == "gcc-cross" -o "${PN}" == "gcc-crosssdk" ]; then 36 case ${PN} in
37 dest=${D}/${includedir}/gcc-build-internal-${MULTIMACH_TARGET_SYS} 37 *gcc-cross|*gcc-crosssdk)
38 oe_runmake "DESTDIR=$dest" libdir=${target_libdir} base_libdir=${target_base_libdir} prefix=${target_prefix} exec_prefix=${target_exec_prefix} install-target-libgcc 38 dest=${D}/${includedir}/gcc-build-internal-${MULTIMACH_TARGET_SYS}
39 oe_runmake "DESTDIR=$dest" libdir=${target_libdir} base_libdir=${target_base_libdir} prefix=${target_prefix} exec_prefix=${target_exec_prefix} install-target-libgcc
39 40
40 # Ideally here we'd override the libgcc Makefile's idea of slibdir but 41 # Ideally here we'd override the libgcc Makefile's idea of slibdir but
41 # for now, we just move the files to the correct location 42 # for now, we just move the files to the correct location
42 43
43 install -d $dest${target_base_libdir} 44 install -d $dest${target_base_libdir}
44 mv $dest${target_exec_prefix}/${TARGET_SYS}/lib*/* $dest${target_base_libdir} 45 mv $dest${target_exec_prefix}/${TARGET_SYS}/lib*/* $dest${target_base_libdir}
45 rm -rf $dest${target_exec_prefix}/${TARGET_SYS} 46 rm -rf $dest${target_exec_prefix}/${TARGET_SYS}
46 47
47 # Also need to move gcc from /usr/lib/gcc/* to /usr/lib/ else the search paths won't find the crt*.o files 48 # Also need to move gcc from /usr/lib/gcc/* to /usr/lib/ else the search paths won't find the crt*.o files
48 49
49 mv $dest${target_libdir}/gcc/* $dest${target_libdir}/ 50 mv $dest${target_libdir}/gcc/* $dest${target_libdir}/
50 rmdir $dest${target_libdir}/gcc 51 rmdir $dest${target_libdir}/gcc
51 fi 52 ;;
53 esac
52} 54}