gcc/collect2: Added --sysroot support into collect2 in gcc.

[YOCTO #815] Added --sysroot into COLLECT_GCC_OPTIONS to allow the
collect2 support user specifed sysroot.

(From OE-Core rev: 868f8d3dd04e3c6dbbce154742cf877fda460a3e)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Lianhao Lu 2011-03-10 09:37:04 +08:00 committed by Richard Purdie
parent 10ce85af33
commit 70cd64a9c6
10 changed files with 31 additions and 8 deletions

View File

@ -56,6 +56,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://disable_relax_pic_calls_flag.patch \
file://gcc-poison-parameters.patch \
file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
file://COLLECT_GCC_OPTIONS.patch \
"
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "

View File

@ -0,0 +1,22 @@
#This patck added --sysroot into COLLECT_GCC_OPTIONS which is used to
#invoke collect2.
diff -ruN gcc-4.5.1.orig/gcc/gcc.c gcc-4.5.1/gcc/gcc.c
--- gcc-4.5.1.orig/gcc/gcc.c 2011-03-09 16:43:39.127752586 +0800
+++ gcc-4.5.1/gcc/gcc.c 2011-03-09 16:47:15.894929459 +0800
@@ -4667,6 +4667,15 @@
sizeof ("COLLECT_GCC_OPTIONS=") - 1);
first_time = TRUE;
+#ifdef HAVE_LD_SYSROOT
+ if (target_system_root_changed && target_system_root)
+ {
+ obstack_grow (&collect_obstack, "'--sysroot=", sizeof("'--sysroot=")-1);
+ obstack_grow (&collect_obstack, target_system_root,strlen(target_system_root));
+ obstack_grow (&collect_obstack, "'", 1);
+ first_time = FALSE;
+ }
+#endif
for (i = 0; (int) i < n_switches; i++)
{
const char *const *args;

View File

@ -5,7 +5,7 @@ require gcc-cross-canadian.inc
require gcc-configure-sdk.inc
require gcc-package-sdk.inc
PR = "r3"
PR = "r4"
DEPENDS += "gmp-nativesdk mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk"
RDEPENDS_${PN} += "mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk"

View File

@ -1,5 +1,5 @@
require gcc-cross_${PV}.bb
require gcc-cross-initial.inc
PR = "r3"
PR = "r4"

View File

@ -1,4 +1,4 @@
require gcc-cross_${PV}.bb
require gcc-cross-intermediate.inc
PR = "r4"
PR = "r5"

View File

@ -1,4 +1,4 @@
PR = "r3"
PR = "r4"
require gcc-${PV}.inc
require gcc-cross4.inc

View File

@ -1,4 +1,4 @@
require gcc-cross-initial_${PV}.bb
require gcc-crosssdk-initial.inc
PR = "r3"
PR = "r4"

View File

@ -1,4 +1,4 @@
require gcc-cross-intermediate_${PV}.bb
require gcc-crosssdk-intermediate.inc
PR = "r3"
PR = "r4"

View File

@ -1,4 +1,4 @@
require gcc-cross_${PV}.bb
require gcc-crosssdk.inc
PR = "r3"
PR = "r4"

View File

@ -1,4 +1,4 @@
PR = "r3"
PR = "r4"
require gcc-${PV}.inc
require gcc-configure-target.inc
require gcc-package-target.inc