summaryrefslogtreecommitdiff
path: root/patches/binutils/2.15/710-binutils-2.15-allow-gcc-4.0.patch
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2007-09-23 17:08:09 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2007-09-23 17:08:09 (GMT)
commitb1e693e40281dc8c451e8892dfcdf55d78a4ade3 (patch)
treec276bc44f23b42895b459efbf2597f4bef378819 /patches/binutils/2.15/710-binutils-2.15-allow-gcc-4.0.patch
parent3ad6464ffe38eb15591b404e0749aa89f4074fd1 (diff)
Renamed all patches file names so that locales are now irrelevant to sort the files.
Removed the locale check as it is now irrelevant. Removed the experimental binutils 2.17.50.0.xx: 2.18 is here now.
Diffstat (limited to 'patches/binutils/2.15/710-binutils-2.15-allow-gcc-4.0.patch')
-rw-r--r--patches/binutils/2.15/710-binutils-2.15-allow-gcc-4.0.patch75
1 files changed, 75 insertions, 0 deletions
diff --git a/patches/binutils/2.15/710-binutils-2.15-allow-gcc-4.0.patch b/patches/binutils/2.15/710-binutils-2.15-allow-gcc-4.0.patch
new file mode 100644
index 0000000..26e5a12
--- /dev/null
+++ b/patches/binutils/2.15/710-binutils-2.15-allow-gcc-4.0.patch
@@ -0,0 +1,75 @@
+Fix found here: http://www.freelists.org/archives/openbeos/11-2005/msg00090.html
+
+Fixes:
+In file included from ./targ-cpu.h:1,
+ from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/config/obj-elf.h:42,
+ from ./obj-format.h:1,
+ from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/config/te-linux.h:4,
+ from ./targ-env.h:1,
+ from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/as.h:626,
+ from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/app.c:30:
+/home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/config/tc-i386.h:451: error: array type has incomplete element type
+make[3]: *** [app.o] Error 1
+make[3]: Leaving directory `/home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/build-binutils/gas'
+
+when building binutils-2.15 with gcc-4.0
+
+
+diff -ur binutils-2.15.old/gas/as.h binutils-2.15/gas/as.h
+--- binutils-2.15.old/gas/as.h 2003-11-22 18:14:21.000000000 -0800
++++ binutils-2.15/gas/as.h 2006-02-14 22:05:35.000000000 -0800
+@@ -605,7 +605,26 @@
+ struct expressionS;
+ struct fix;
+ typedef struct symbol symbolS;
+-struct relax_type;
++
++/* JF moved this here from as.h under the theory that nobody except MACHINE.c
++ and write.c care about it anyway. */
++/* [zooey]: the above no longer holds with gcc4, as it keeps bugging about
++ incomplete element types in arrays, if relax_type isn't defined
++ here. So I moved the definition back from tc.h to here. */
++struct relax_type
++{
++ /* Forward reach. Signed number. > 0. */
++ long rlx_forward;
++ /* Backward reach. Signed number. < 0. */
++ long rlx_backward;
++
++ /* Bytes length of this address. */
++ unsigned char rlx_length;
++
++ /* Next longer relax-state. 0 means there is no 'next' relax-state. */
++ relax_substateT rlx_more;
++};
++
+ typedef struct frag fragS;
+
+ #ifdef BFD_ASSEMBLER
+diff -ur binutils-2.15.old/gas/tc.h binutils-2.15/gas/tc.h
+--- binutils-2.15.old/gas/tc.h 2003-12-03 15:39:38.000000000 -0800
++++ binutils-2.15/gas/tc.h 2006-02-14 22:03:35.000000000 -0800
+@@ -24,23 +24,6 @@
+
+ extern const pseudo_typeS md_pseudo_table[];
+
+-/* JF moved this here from as.h under the theory that nobody except MACHINE.c
+- and write.c care about it anyway. */
+-
+-struct relax_type
+-{
+- /* Forward reach. Signed number. > 0. */
+- long rlx_forward;
+- /* Backward reach. Signed number. < 0. */
+- long rlx_backward;
+-
+- /* Bytes length of this address. */
+- unsigned char rlx_length;
+-
+- /* Next longer relax-state. 0 means there is no 'next' relax-state. */
+- relax_substateT rlx_more;
+-};
+-
+ typedef struct relax_type relax_typeS;
+
+ extern const int md_reloc_size; /* Size of a relocation record */