summaryrefslogtreecommitdiff
path: root/packages/gcc/gcc3-build-cross.inc
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@rpsys.net>2008-02-28 00:04:07 +0000
committerRichard Purdie <rpurdie@rpsys.net>2008-02-28 00:04:07 +0000
commitd6f7133b8d8e67069233aba56937fa4c6e41d196 (patch)
tree7658e6b18006af02072f077b59fbd3e3fa8529c8 /packages/gcc/gcc3-build-cross.inc
parent91aed6119a23f8e6dbb77301e862a8da320b3855 (diff)
gcc: Enable sysroot options, hacking around path layout issues for now. This fixes the sdk version to use the correct sysroot which is important for ease of use of SDKs and standalone toolchains. This change means a gcc rebuild unfortunately
Diffstat (limited to 'packages/gcc/gcc3-build-cross.inc')
-rw-r--r--packages/gcc/gcc3-build-cross.inc11
1 files changed, 9 insertions, 2 deletions
diff --git a/packages/gcc/gcc3-build-cross.inc b/packages/gcc/gcc3-build-cross.inc
index 0d7f323ea4..1d744c1eae 100644
--- a/packages/gcc/gcc3-build-cross.inc
+++ b/packages/gcc/gcc3-build-cross.inc
@@ -1,7 +1,9 @@
USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}'
-EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR}/${TARGET_SYS} \
- --with-gxx-include-dir=${STAGING_DIR}/${TARGET_SYS}/include/c++"
+EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \
+ --with-gxx-include-dir=${STAGING_DIR_TARGET}/${layout_includedir}/c++ \
+ --with-sysroot=${STAGING_DIR_TARGET} \
+ --with-build-sysroot=${STAGING_DIR_TARGET}"
do_configure_prepend () {
rm -f ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a
@@ -21,6 +23,11 @@ do_stage_append () {
rm -rf ${CROSS_DIR}/$d
done
+ # Hack to be removed when staging layout matches the target layout
+ if [ ! -e ${STAGING_DIR_TARGET}/usr ]; then
+ ln -s ${STAGING_DIR_TARGET} ${STAGING_DIR_TARGET}/usr
+ fi
+
# Fix a few include links so cross builds are happier
if [ ! -e ${STAGING_INCDIR}/c++ ]; then
mkdir -p ${STAGING_INCDIR}