mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-16 04:17:25 +00:00
toolchain-layer: move binutils and gcc from meta-oe into here
Acked-by: Martin Jansa <Martin.Jansa@gmail.com> Acked-by: Eric Bénard <eric@eukrea.com> Acked-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
diff -urN gcc-4.2.2-orig/gcc/configure gcc-4.2.2/gcc/configure
|
||||
--- gcc-4.2.2-orig/gcc/configure 2008-08-31 23:10:56.000000000 +0200
|
||||
+++ gcc-4.2.2/gcc/configure 2008-08-31 23:03:02.000000000 +0200
|
||||
@@ -12716,6 +12716,7 @@
|
||||
esac
|
||||
saved_CFLAGS="${CFLAGS}"
|
||||
CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
|
||||
+ CPP="${CPP_FOR_BUILD}" CPPFLAGS="${CPPFLAGS_FOR_BUILD}" \
|
||||
CONFIG_SITE= ${realsrcdir}/configure --cache-file=./other.cache \
|
||||
--enable-languages=${enable_languages-all} \
|
||||
--target=$target_alias --host=$build_alias --build=$build_alias
|
||||
diff -urN gcc-4.2.2-orig/gcc/configure.ac gcc-4.2.2/gcc/configure.ac
|
||||
--- gcc-4.2.2-orig/gcc/configure.ac 2008-08-31 23:10:53.000000000 +0200
|
||||
+++ gcc-4.2.2/gcc/configure.ac 2008-08-31 23:03:29.000000000 +0200
|
||||
@@ -1490,6 +1490,7 @@
|
||||
esac
|
||||
saved_CFLAGS="${CFLAGS}"
|
||||
CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
|
||||
+ CPP="${CPP_FOR_BUILD}" CPPFLAGS="${CPPFLAGS_FOR_BUILD}" \
|
||||
${realsrcdir}/configure \
|
||||
--enable-languages=${enable_languages-all} \
|
||||
--target=$target_alias --host=$build_alias --build=$build_alias
|
||||
@@ -0,0 +1,12 @@
|
||||
Index: gcc-4.3.3/Makefile.in
|
||||
===================================================================
|
||||
--- gcc-4.3.3.orig/Makefile.in 2010-06-16 18:04:38.379008150 +0400
|
||||
+++ gcc-4.3.3/Makefile.in 2010-06-16 18:05:29.115006261 +0400
|
||||
@@ -148,6 +148,7 @@
|
||||
# built for the build system to override those in BASE_FLAGS_TO_PASSS.
|
||||
EXTRA_BUILD_FLAGS = \
|
||||
CFLAGS="$(CFLAGS_FOR_BUILD)" \
|
||||
+ LIBCFLAGS="$(CFLAGS_FOR_BUILD)" \
|
||||
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
|
||||
|
||||
# This is the list of directories to built for the host system.
|
||||
@@ -0,0 +1,13 @@
|
||||
Index: gcc-4.3.1/Makefile.in
|
||||
===================================================================
|
||||
--- gcc-4.3.1.orig/Makefile.in 2010-07-07 13:08:44.000000000 +0200
|
||||
+++ gcc-4.3.1/Makefile.in 2010-07-07 13:11:59.246625709 +0200
|
||||
@@ -149,7 +149,7 @@
|
||||
EXTRA_BUILD_FLAGS = \
|
||||
CFLAGS="$(CFLAGS_FOR_BUILD)" \
|
||||
LDFLAGS="$(LDFLAGS_FOR_BUILD)" \
|
||||
- LIBCFLAGS=""
|
||||
+ LIBCFLAGS="$(CFLAGS_FOR_BUILD)"
|
||||
|
||||
# This is the list of directories to built for the host system.
|
||||
SUBDIRS = @configdirs@
|
||||
@@ -0,0 +1,11 @@
|
||||
--- gcc-3.4.6/gcc/collect2.c 2008-10-04 18:17:17.796750393 +0400
|
||||
+++ gcc-3.4.6/gcc/collect2.new 2008-10-04 18:24:10.120748711 +0400
|
||||
@@ -1534,7 +1534,7 @@ collect_execute (const char *prog, char
|
||||
if (redir)
|
||||
{
|
||||
/* Open response file. */
|
||||
- redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT);
|
||||
+ redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT, S_IWUSR);
|
||||
|
||||
/* Duplicate the stdout and stderr file handles
|
||||
so they can be restored later. */
|
||||
@@ -0,0 +1,14 @@
|
||||
Patch for gcc3 to support gcc4-compatible (and consistent) values for -mtune= option.
|
||||
|
||||
--- gcc-3.4.4/gcc/config/arm/arm.c.org 2007-12-15 23:58:35.000000000 +0200
|
||||
+++ gcc-3.4.4/gcc/config/arm/arm.c 2007-12-16 00:20:39.000000000 +0200
|
||||
@@ -432,7 +432,9 @@
|
||||
{"arm10tdmi", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_LDSCHED | FL_ARCH5 },
|
||||
{"arm1020t", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_LDSCHED | FL_ARCH5 },
|
||||
{"arm926ejs", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_ARCH5 | FL_ARCH5E },
|
||||
+ {"arm926ej-s", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_ARCH5 | FL_ARCH5E },
|
||||
{"arm1026ejs", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_ARCH5 | FL_ARCH5E },
|
||||
+ {"arm1026ej-s", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_ARCH5 | FL_ARCH5E },
|
||||
{"xscale", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_LDSCHED | FL_STRONG | FL_ARCH5 | FL_ARCH5E | FL_XSCALE },
|
||||
{"iwmmxt", FL_MODE32 | FL_FAST_MULT | FL_ARCH4 | FL_THUMB | FL_LDSCHED | FL_STRONG | FL_ARCH5 | FL_ARCH5E | FL_XSCALE | FL_IWMMXT },
|
||||
/* V6 Architecture Processors */
|
||||
@@ -0,0 +1,40 @@
|
||||
The patch below fixes a crash building libgfortran on arm-linux-gnueabi.
|
||||
|
||||
This target doesn't really have a 128-bit integer type, however it does use
|
||||
TImode to represent the return value of certain special ABI defined library
|
||||
functions. This results in type_for_size(TImode) being called.
|
||||
|
||||
Because TImode deosn't correspond to any gfortran integer kind
|
||||
gfc_type_for_size returns NULL and we segfault shortly after.
|
||||
|
||||
The patch below fixes this by making gfc_type_for_size handle TImode in the
|
||||
same way as the C frontend.
|
||||
|
||||
Tested on x86_64-linux and arm-linux-gnueabi.
|
||||
Applied to trunk.
|
||||
|
||||
Paul
|
||||
|
||||
2007-05-15 Paul Brook <paul@codesourcery.com>
|
||||
|
||||
gcc/fortran/
|
||||
* trans-types.c (gfc_type_for_size): Handle signed TImode.
|
||||
|
||||
Index: gcc-4.2.1/gcc/fortran/trans-types.c
|
||||
===================================================================
|
||||
--- gcc-4.2.1/gcc/fortran/trans-types.c (revision 170435)
|
||||
+++ gcc-4.2.1/gcc/fortran/trans-types.c (working copy)
|
||||
@@ -1800,6 +1800,13 @@ gfc_type_for_size (unsigned bits, int un
|
||||
if (type && bits == TYPE_PRECISION (type))
|
||||
return type;
|
||||
}
|
||||
+
|
||||
+ /* Handle TImode as a special case because it is used by some backends
|
||||
+ (eg. ARM) even though it is not available for normal use. */
|
||||
+#if HOST_BITS_PER_WIDE_INT >= 65
|
||||
+ if (bits == TYPE_PRECISION (intTI_type_node))
|
||||
+ return intTI_type_node;
|
||||
+#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -0,0 +1,40 @@
|
||||
The patch below fixes a crash building libgfortran on arm-linux-gnueabi.
|
||||
|
||||
This target doesn't really have a 128-bit integer type, however it does use
|
||||
TImode to represent the return value of certain special ABI defined library
|
||||
functions. This results in type_for_size(TImode) being called.
|
||||
|
||||
Because TImode deosn't correspond to any gfortran integer kind
|
||||
gfc_type_for_size returns NULL and we segfault shortly after.
|
||||
|
||||
The patch below fixes this by making gfc_type_for_size handle TImode in the
|
||||
same way as the C frontend.
|
||||
|
||||
Tested on x86_64-linux and arm-linux-gnueabi.
|
||||
Applied to trunk.
|
||||
|
||||
Paul
|
||||
|
||||
2007-05-15 Paul Brook <paul@codesourcery.com>
|
||||
|
||||
gcc/fortran/
|
||||
* trans-types.c (gfc_type_for_size): Handle signed TImode.
|
||||
|
||||
Index: gcc-4.2.1/gcc/fortran/trans-types.c
|
||||
===================================================================
|
||||
--- gcc-4.2.1/gcc/fortran/trans-types.c (revision 170435)
|
||||
+++ gcc-4.2.1/gcc/fortran/trans-types.c (working copy)
|
||||
@@ -1800,6 +1800,13 @@ gfc_type_for_size (unsigned bits, int un
|
||||
if (type && bits == TYPE_PRECISION (type))
|
||||
return type;
|
||||
}
|
||||
+
|
||||
+ /* Handle TImode as a special case because it is used by some backends
|
||||
+ (eg. ARM) even though it is not available for normal use. */
|
||||
+#if HOST_BITS_PER_WIDE_INT >= 64
|
||||
+ if (bits == TYPE_PRECISION (intTI_type_node))
|
||||
+ return intTI_type_node;
|
||||
+#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -0,0 +1,29 @@
|
||||
diff -rupN gcc-4.2.orig/gcc/c-incpath.c gcc-4.2/gcc/c-incpath.c
|
||||
--- gcc-4.2.orig/gcc/c-incpath.c 2007-09-01 11:28:30.000000000 -0400
|
||||
+++ gcc-4.2/gcc/c-incpath.c 2008-08-17 16:56:01.000000000 -0400
|
||||
@@ -340,13 +340,18 @@ add_path (char *path, int chain, int cxx
|
||||
cpp_dir *p;
|
||||
|
||||
#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
|
||||
- /* Convert all backslashes to slashes. The native CRT stat()
|
||||
- function does not recognize a directory that ends in a backslash
|
||||
- (unless it is a drive root dir, such "c:\"). Forward slashes,
|
||||
- trailing or otherwise, cause no problems for stat(). */
|
||||
- char* c;
|
||||
- for (c = path; *c; c++)
|
||||
- if (*c == '\\') *c = '/';
|
||||
+ /* Remove unnecessary trailing slashes. On some versions of MS
|
||||
+ Windows, trailing _forward_ slashes cause no problems for stat().
|
||||
+ On newer versions, stat() does not recognise a directory that ends
|
||||
+ in a '\\' or '/', unless it is a drive root dir, such as "c:/",
|
||||
+ where it is obligatory. */
|
||||
+ int pathlen = strlen (path);
|
||||
+ char* end = path + pathlen - 1;
|
||||
+ /* Preserve the lead '/' or lead "c:/". */
|
||||
+ char* start = path + (pathlen > 2 && path[1] == ':' ? 3 : 1);
|
||||
+
|
||||
+ for (; end > start && IS_DIR_SEPARATOR (*end); end--)
|
||||
+ *end = 0;
|
||||
#endif
|
||||
|
||||
p = XNEW (cpp_dir);
|
||||
@@ -0,0 +1,38 @@
|
||||
---
|
||||
config/mh-mingw | 3 +++
|
||||
configure | 1 +
|
||||
configure.in | 1 +
|
||||
3 files changed, 5 insertions(+)
|
||||
|
||||
Index: gcc-4.2.3/config/mh-mingw
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ gcc-4.2.3/config/mh-mingw
|
||||
@@ -0,0 +1,3 @@
|
||||
+# Add -D__USE_MINGW_ACCESS to enable the built compiler to work on Windows
|
||||
+# Vista (see PR33281 for details).
|
||||
+BOOT_CFLAGS += -D__USE_MINGW_ACCESS
|
||||
Index: gcc-4.2.3/configure.in
|
||||
===================================================================
|
||||
--- gcc-4.2.3.orig/configure.in
|
||||
+++ gcc-4.2.3/configure.in
|
||||
@@ -929,6 +929,7 @@ case "${host}" in
|
||||
host_makefile_frag="config/mh-cygwin"
|
||||
;;
|
||||
*-mingw32*)
|
||||
+ host_makefile_frag="config/mh-mingw"
|
||||
;;
|
||||
*-interix*)
|
||||
host_makefile_frag="config/mh-interix"
|
||||
Index: gcc-4.2.3/configure
|
||||
===================================================================
|
||||
--- gcc-4.2.3.orig/configure
|
||||
+++ gcc-4.2.3/configure
|
||||
@@ -1769,6 +1769,7 @@ case "${host}" in
|
||||
host_makefile_frag="config/mh-cygwin"
|
||||
;;
|
||||
*-mingw32*)
|
||||
+ host_makefile_frag="config/mh-mingw"
|
||||
;;
|
||||
*-interix*)
|
||||
host_makefile_frag="config/mh-interix"
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
---
|
||||
config/mh-mingw | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
Index: gcc-4.2.3/config/mh-mingw
|
||||
===================================================================
|
||||
--- gcc-4.2.3.orig/config/mh-mingw
|
||||
+++ gcc-4.2.3/config/mh-mingw
|
||||
@@ -1,3 +1,4 @@
|
||||
# Add -D__USE_MINGW_ACCESS to enable the built compiler to work on Windows
|
||||
# Vista (see PR33281 for details).
|
||||
BOOT_CFLAGS += -D__USE_MINGW_ACCESS
|
||||
+CFLAGS += -D__USE_MINGW_ACCESS
|
||||
Reference in New Issue
Block a user