Next try: gcc-core-4.1.1-rtems4.8-20070131.diff

This commit is contained in:
Ralf Corsepius
2007-01-31 10:39:24 +00:00
parent c1b34d5a92
commit a8f155b8a0
12 changed files with 175 additions and 11 deletions

View File

@@ -0,0 +1,164 @@
diff -uNr gcc-4.1.1.orig/configure gcc-4.1.1/configure
--- gcc-4.1.1.orig/configure 2005-12-16 13:57:40.000000000 +0100
+++ gcc-4.1.1/configure 2007-01-31 09:44:33.000000000 +0100
@@ -3233,7 +3233,7 @@
# If we're building newlib, use its generic headers last, but search
# for any libc-related directories first (so make it the last -B
# switch).
- FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$$r/$(TARGET_SUBDIR)/newlib/ -isystem $$r/$(TARGET_SUBDIR)/newlib/targ-include -isystem $$s/newlib/libc/include'
+ FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$$r/$(TARGET_SUBDIR)/newlib/ -isystem $$r/$(TARGET_SUBDIR)\$(MULTISUBDIR)/newlib/targ-include -isystem $$s/newlib/libc/include'
;;
esac
;;
diff -uNr gcc-4.1.1.orig/configure.in gcc-4.1.1/configure.in
--- gcc-4.1.1.orig/configure.in 2005-12-16 13:57:40.000000000 +0100
+++ gcc-4.1.1/configure.in 2007-01-31 09:44:18.000000000 +0100
@@ -2022,7 +2022,7 @@
# If we're building newlib, use its generic headers last, but search
# for any libc-related directories first (so make it the last -B
# switch).
- FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$$r/$(TARGET_SUBDIR)/newlib/ -isystem $$r/$(TARGET_SUBDIR)/newlib/targ-include -isystem $$s/newlib/libc/include'
+ FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$$r/$(TARGET_SUBDIR)/newlib/ -isystem $$r/$(TARGET_SUBDIR)\$(MULTISUBDIR)/newlib/targ-include -isystem $$s/newlib/libc/include'
;;
esac
;;
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 2007-01-31 09:37:57.000000000 +0100
@@ -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 2007-01-31 09:37:57.000000000 +0100
@@ -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 2007-01-31 09:37:58.000000000 +0100
@@ -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 2007-01-31 09:37:58.000000000 +0100
@@ -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 2007-01-31 09:37:58.000000000 +0100
@@ -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 2007-01-31 09:37:58.000000000 +0100
@@ -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 2007-01-31 09:37:58.000000000 +0100
@@ -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); \
diff -uNr gcc-4.1.1.orig/Makefile.in gcc-4.1.1/Makefile.in
--- gcc-4.1.1.orig/Makefile.in 2006-04-04 23:03:05.000000000 +0200
+++ gcc-4.1.1/Makefile.in 2007-01-31 09:37:58.000000000 +0100
@@ -329,9 +329,9 @@
# CFLAGS will be just -g. We want to ensure that TARGET libraries
# (which we know are built with gcc) are built with optimizations so
# prepend -O2 when setting CFLAGS_FOR_TARGET.
-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+CFLAGS_FOR_TARGET = $(strip -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET))
SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+CXXFLAGS_FOR_TARGET = $(strip $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET))
LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
LDFLAGS_FOR_TARGET =

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -4,7 +4,7 @@ Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.tar.bz2
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%if "%{gcc_version}" == "4.2.0"
Source0: ftp://gcc.gnu.org/pub/gcc/snapshots/%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}

View File

@@ -3,7 +3,7 @@ Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.t
Patch0: gcc-core-4.0.3-rtems-20060822.diff
%endif
%if "%{gcc_version}" == "4.1.1"
Patch0: gcc-core-4.1.1-rtems4.8-20070102.diff
Patch0: gcc-core-4.1.1-rtems4.8-20070131.diff
%endif
%{?_without_sources:NoSource: 0}