diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2006-10-21 10:06:26 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2006-10-21 10:06:26 +0000 |
commit | a8e7b33c68a2093f96ebaf20e5f66a5b6acb3d48 (patch) | |
tree | 76f28cbc255fd6b4e36ae3faf38a95f7c956bb48 /contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060909.diff | |
parent | Change URL to ftp://ftp.gnu.org/pub/gnu (diff) | |
download | rtems-a8e7b33c68a2093f96ebaf20e5f66a5b6acb3d48.tar.bz2 |
New.
Diffstat (limited to 'contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060909.diff')
-rw-r--r-- | contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060909.diff | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060909.diff b/contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060909.diff new file mode 100644 index 0000000000..4ced94ff7f --- /dev/null +++ b/contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060909.diff @@ -0,0 +1,125 @@ +diff -uNr gcc-4.1.1.orig/gcc/config/arm/rtems-elf.h gcc-4.1.1/gcc/config/arm/rtems-elf.h +--- gcc-4.1.1.orig/gcc/config/arm/rtems-elf.h 2005-11-22 00:28:29.000000000 +0100 ++++ gcc-4.1.1/gcc/config/arm/rtems-elf.h 2006-09-09 06:01:37.000000000 +0200 +@@ -27,6 +27,7 @@ + #define TARGET_OS_CPP_BUILTINS() \ + do { \ + builtin_define ("__rtems__"); \ ++ builtin_define ("__USE_INIT_FINI__"); \ + builtin_assert ("system=rtems"); \ + } while (0) + +diff -uNr gcc-4.1.1.orig/gcc/config/bfin/rtems.h gcc-4.1.1/gcc/config/bfin/rtems.h +--- gcc-4.1.1.orig/gcc/config/bfin/rtems.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.1.1/gcc/config/bfin/rtems.h 2006-09-09 05:59:58.000000000 +0200 +@@ -0,0 +1,29 @@ ++/* Definitions for rtems targeting a bfin ++ Copyright (C) 2006 Free Software Foundation, Inc. ++ Contributed by Ralf Corsépius (ralf.corsepius@rtems.org). ++ ++This file is part of GCC. ++ ++GCC is free software; you can redistribute it and/or modify ++it under the terms of the GNU General Public License as published by ++the Free Software Foundation; either version 2, or (at your option) ++any later version. ++ ++GCC is distributed in the hope that it will be useful, ++but WITHOUT ANY WARRANTY; without even the implied warranty of ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++GNU General Public License for more details. ++ ++You should have received a copy of the GNU General Public License ++along with GCC; see the file COPYING. If not, write to ++the Free Software Foundation, 51 Franklin Street, Fifth Floor, ++Boston, MA 02110-1301, USA. */ ++ ++/* Target OS preprocessor built-ins. */ ++#define TARGET_OS_CPP_BUILTINS() \ ++ do \ ++ { \ ++ builtin_define ("__rtems__"); \ ++ builtin_assert ("system=rtems"); \ ++ } \ ++ while (0) +diff -uNr gcc-4.1.1.orig/gcc/config/c4x/rtems.h gcc-4.1.1/gcc/config/c4x/rtems.h +--- gcc-4.1.1.orig/gcc/config/c4x/rtems.h 2005-06-25 03:22:41.000000000 +0200 ++++ gcc-4.1.1/gcc/config/c4x/rtems.h 2006-09-09 05:59:58.000000000 +0200 +@@ -24,6 +24,5 @@ + #define TARGET_OS_CPP_BUILTINS() \ + do { \ + builtin_define ("__rtems__"); \ +- builtin_define ("__USE_INIT_FINI__"); \ + builtin_assert ("system=rtems"); \ + } while (0) +diff -uNr gcc-4.1.1.orig/gcc/config/mips/elf.h gcc-4.1.1/gcc/config/mips/elf.h +--- gcc-4.1.1.orig/gcc/config/mips/elf.h 2005-07-09 10:46:34.000000000 +0200 ++++ gcc-4.1.1/gcc/config/mips/elf.h 2006-09-09 05:59:58.000000000 +0200 +@@ -48,5 +48,3 @@ + + #undef ENDFILE_SPEC + #define ENDFILE_SPEC "crtend%O%s crtn%O%s" +- +-#define NO_IMPLICIT_EXTERN_C 1 +diff -uNr gcc-4.1.1.orig/gcc/config/mips/t-rtems gcc-4.1.1/gcc/config/mips/t-rtems +--- gcc-4.1.1.orig/gcc/config/mips/t-rtems 2005-01-15 09:38:53.000000000 +0100 ++++ gcc-4.1.1/gcc/config/mips/t-rtems 2006-09-09 05:59:58.000000000 +0200 +@@ -1,5 +1,16 @@ + # Custom multilibs for RTEMS + +-MULTILIB_OPTIONS = mips1/mips3/mips32 msoft-float/msingle-float +-MULTILIB_DIRNAMES = mips1 mips3 mips32 soft-float single +-MULTILIB_MATCHES = msingle-float=m4650 ++# default is mips1 EB hard-float ++MULTILIB_OPTIONS = mips1/mips3/mips32 EB/EL msoft-float ++MULTILIB_DIRNAMES = mips1 mips3 mips32 eb el soft-float ++MULTILIB_MATCHES = EL=mel EB=meb ++ ++MULTILIB_EXCEPTIONS = ++ ++# Big endian only ++MULTILIB_EXCEPTIONS += EL* ++MULTILIB_EXCEPTIONS += mips32/EL* ++ ++# Little endian only ++MULTILIB_EXCEPTIONS += mips3 ++MULTILIB_EXCEPTIONS += mips3/msoft-float +diff -uNr gcc-4.1.1.orig/gcc/config.gcc gcc-4.1.1/gcc/config.gcc +--- gcc-4.1.1.orig/gcc/config.gcc 2006-05-09 22:02:29.000000000 +0200 ++++ gcc-4.1.1/gcc/config.gcc 2006-09-09 05:59:58.000000000 +0200 +@@ -761,6 +761,11 @@ + tmake_file=bfin/t-bfin-elf + use_collect2=no + ;; ++bfin*-rtems*) ++ tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/rtems.h rtems.h" ++ tmake_file=bfin/t-bfin-elf ++ use_collect2=no ++ ;; + bfin*-*) + tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h" + tmake_file=bfin/t-bfin +@@ -1560,7 +1565,7 @@ + tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" + use_fixproto=yes + ;; +-mips*-*-rtems*) ++mips-*-rtems*) + tm_file="elfos.h ${tm_file} mips/elf.h mips/rtems.h rtems.h" + tmake_file="mips/t-elf t-rtems mips/t-rtems" + ;; +diff -uNr gcc-4.1.1.orig/gcc/Makefile.in gcc-4.1.1/gcc/Makefile.in +--- gcc-4.1.1.orig/gcc/Makefile.in 2006-05-17 20:38:58.000000000 +0200 ++++ gcc-4.1.1/gcc/Makefile.in 2006-09-09 05:59:58.000000000 +0200 +@@ -3616,9 +3616,9 @@ + install-driver: installdirs xgcc$(exeext) + -rm -f $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext) + -$(INSTALL_PROGRAM) xgcc$(exeext) $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext) +- -rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version) ++ -rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)$(exeext) + -( cd $(DESTDIR)$(bindir) && \ +- $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version) ) ++ $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version)$(exeext) ) + -if [ -f gcc-cross$(exeext) ] ; then \ + if [ -d $(DESTDIR)$(gcc_tooldir)/bin/. ] ; then \ + rm -f $(DESTDIR)$(gcc_tooldir)/bin/gcc$(exeext); \ |