change log for rtems (2010-05-21)

rtems-vc at rtems.org rtems-vc at rtems.org
Sat May 22 03:12:59 UTC 2010


 *ralf*:
New (Add sparc64)

A    1.1  contrib/crossrpms/patches/gcc-core-4.5.0-rtems4.11-20100522.diff

diff -u /dev/null rtems/contrib/crossrpms/patches/gcc-core-4.5.0-rtems4.11-20100522.diff:1.1
--- /dev/null	Fri May 21 22:12:58 2010
+++ rtems/contrib/crossrpms/patches/gcc-core-4.5.0-rtems4.11-20100522.diff	Fri May 21 21:44:54 2010
@@ -0,0 +1,357 @@
+diff -Naur gcc-4.5.0.orig/ChangeLog.rtems gcc-4.5.0/ChangeLog.rtems
+--- gcc-4.5.0.orig/ChangeLog.rtems	1970-01-01 01:00:00.000000000 +0100
++++ gcc-4.5.0/ChangeLog.rtems	2010-05-22 03:59:02.000000000 +0200
+@@ -0,0 +1,4 @@
++		Ralf Corsépius <ralf.corsepius at rtems.org>
++
++	* configure, configure.ac (skipdirs): Add target-libiberty.
++
+diff -Naur gcc-4.5.0.orig/configure gcc-4.5.0/configure
+--- gcc-4.5.0.orig/configure	2010-04-02 19:35:47.000000000 +0200
++++ gcc-4.5.0/configure	2010-05-22 03:59:02.000000000 +0200
+@@ -3291,6 +3291,7 @@
+     noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss ${libgcj} target-libmudflap"
+     ;;
+   *-*-rtems*)
++    skipdirs="$skipdirs target-libiberty"
+     noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+     ;;
+     # The tpf target doesn't support gdb yet.
+@@ -7913,7 +7914,7 @@
+        # to it.  This is right: we don't want to search that directory
+        # for binaries, but we want the header files in there, so add
+        # them explicitly.
+-       FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include'
++       FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include -isystem $$r/$(HOST_SUBDIR)/gcc/include-fixed'
+ 
+        # Someone might think of using the pre-installed headers on
+        # Canadian crosses, in case the installed compiler is not fully
+diff -Naur gcc-4.5.0.orig/configure.ac gcc-4.5.0/configure.ac
+--- gcc-4.5.0.orig/configure.ac	2010-04-02 19:35:47.000000000 +0200
++++ gcc-4.5.0/configure.ac	2010-05-22 03:59:02.000000000 +0200
+@@ -528,6 +528,7 @@
+     noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss ${libgcj} target-libmudflap"
+     ;;
+   *-*-rtems*)
++    skipdirs="$skipdirs target-libiberty"
+     noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+     ;;
+     # The tpf target doesn't support gdb yet.
+@@ -3001,7 +3002,7 @@
+        # to it.  This is right: we don't want to search that directory
+        # for binaries, but we want the header files in there, so add
+        # them explicitly.
+-       FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include'
++       FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include -isystem $$r/$(HOST_SUBDIR)/gcc/include-fixed'
+ 
+        # Someone might think of using the pre-installed headers on
+        # Canadian crosses, in case the installed compiler is not fully
+diff -Naur gcc-4.5.0.orig/gcc/ChangeLog.rtems gcc-4.5.0/gcc/ChangeLog.rtems
+--- gcc-4.5.0.orig/gcc/ChangeLog.rtems	1970-01-01 01:00:00.000000000 +0100
++++ gcc-4.5.0/gcc/ChangeLog.rtems	2010-05-22 04:04:21.000000000 +0200
+@@ -0,0 +1,37 @@
++2010-05-19  Joel Sherrill <joel.sherrill at oarcorp.com>
++
++    	* config.gcc (sparc64-*-rtems*): New target.
++	* config/sparc/sp64-rtemself.h: New file.
++
++2010-03-15	Ralf Corsépius <ralf.corsepius at rtems.org>
++
++	Patch from Thomas Doerfler <Thomas.Doerfler at embedded-brains.de>:
++	* config/arm/rtems-elf.h, config/arm/t-rtems: Add optional support
++	for vfp FPU model
++
++2009-12-01	Ralf Corsépius <ralf.corsepius at rtems.org>
++
++	* config/avr/avr.h (LINK_SPEC): Pass -m avrN to ld for -mmcu=avrN.
++
++2009-11-04	Ralf Corsépius <ralf.corsepius at rtems.org>
++
++	* config/m32c/rtems.h, config/m68k/rtemself.h,
++	config/m68k/rtemself.h, config/sh/rtemself.h,
++	config/sparc/rtemself.h: Undef WCHAR_TYPE_SIZE, WCHAR_TYPE. 
++	(Resets WCHAR_TYPE's to defaults. Prevents broken GCC tm_files 
++	to interfere and cause wchar_t/wint_t incompatibilities).
++
++2009-10-15	Ralf Corsépius <ralf.corsepius at rtems.org>
++
++	* config/avr/t-rtems: Don't build _exit.
++
++		Ralf Corsépius <ralf.corsepius at rtems.org>
++
++	* config/rs6000/rtems.h: Support for custom RTEMS multilibs.
++	Support TARGET_E500.
++	* config/rs6000/t-rtems: Custom RTEMS multilibs. 
++
++		Ralf Corsépius <ralf.corsepius at rtems.org>
++
++	* config/mips/elf.h: Remove NO_IMPLICIT_EXTERN_C.
++	
+diff -Naur gcc-4.5.0.orig/gcc/config/arm/rtems-elf.h gcc-4.5.0/gcc/config/arm/rtems-elf.h
+--- gcc-4.5.0.orig/gcc/config/arm/rtems-elf.h	2009-03-25 13:54:16.000000000 +0100
++++ gcc-4.5.0/gcc/config/arm/rtems-elf.h	2010-05-22 03:59:02.000000000 +0200
+@@ -36,7 +36,7 @@
+  */
+ #undef SUBTARGET_EXTRA_ASM_SPEC
+ #define SUBTARGET_EXTRA_ASM_SPEC "\
+-  %{!mhard-float: %{!msoft-float:-mfpu=softfpa}}"
++  %{!mhard-float: %{!mfpu=vfp: %{!msoft-float:-mfpu=softfpa}}}"
+ 
+ /*
+  *  The default includes --start-group and --end-group which conflicts
+diff -Naur gcc-4.5.0.orig/gcc/config/arm/t-rtems gcc-4.5.0/gcc/config/arm/t-rtems
+--- gcc-4.5.0.orig/gcc/config/arm/t-rtems	2004-11-23 06:30:32.000000000 +0100
++++ gcc-4.5.0/gcc/config/arm/t-rtems	2010-05-22 03:59:02.000000000 +0200
+@@ -5,6 +5,41 @@
+ MULTILIB_EXCEPTIONS  = 
+ MULTILIB_MATCHES     = marm=mno-thumb
+ 
+-MULTILIB_OPTIONS    += msoft-float/mhard-float
+-MULTILIB_DIRNAMES   += soft fpu
+-MULTILIB_EXCEPTIONS += *mthumb/*mhard-float*
++MULTILIB_OPTIONS    += mhard-float/mfloat-abi=softfp
++MULTILIB_DIRNAMES   += fpu softfp
++MULTILIB_EXCEPTIONS += *mthumb*/*mhard-float* *mthumb*/*mfloat-abi=softfp*
++MULTILIB_MATCHES     =
++
++MULTILIB_OPTIONS    += mfpu=vfp
++MULTILIB_DIRNAMES   += vfp
++MULTILIB_EXCEPTIONS += *mhard-float*/*mfpu=vfp* *marm*/*mfloat-abi=softfp*/*mfpu=fpa*
++MULTILIB_EXCLUSIONS += !mthumb/mfloat-abi=softfp/!mfpu=vfp
++
++# default float model is fpa, so don't create a explicit copy of it
++MULTILIB_EXCEPTIONS += *marm*/*mfpa*
++
++# permutations of the options which are useful (+) or make no sense (-),
++# defaults are in brackets:
++# + (arm/soft/fpa)
++# + (arm/soft)/vfp
++# - (arm)/softfp(/fpa)
++# + (arm)/softfp/vfp
++# + (arm)/hard-float(/fpa)
++# - (arm)/hard-float/vfp
++# + thumb/(soft/fpa)
++# + thumb/(soft/)vfp
++# - thumb/softfp/fpa
++# - thumb/softfp/vfp
++# - thumb/hard-float/fpa
++# - thumb/hard-float/vfp
++
++# subdirs to be used for multilibs and their respective options:
++#/thumb/vfp  -> thumb/soft/vfp
++#/thumb/fpa  -> thumb/soft/fpa
++#/thumb      -> thumb/soft/fpa
++#/vfp        -> arm/soft/vfp
++#/softfp/vfp -> arm/softfp/cfp
++#/fpu/fpa    -> arm/hard/fpa
++#/fpu        -> arm/hard/fpa
++#/fpa        -> arm/soft/fpa
++#.           -> arm/soft/fpa
+diff -Naur gcc-4.5.0.orig/gcc/config/avr/t-rtems gcc-4.5.0/gcc/config/avr/t-rtems
+--- gcc-4.5.0.orig/gcc/config/avr/t-rtems	2004-11-23 04:44:03.000000000 +0100
++++ gcc-4.5.0/gcc/config/avr/t-rtems	2010-05-22 03:59:02.000000000 +0200
+@@ -1,3 +1,4 @@
+ # Multilibs for avr RTEMS targets.
+ 
+-# ATM, this is just a stub
++# RTEMS uses _exit from newlib
++LIB1ASMFUNCS := $(filter-out _exit,$(LIB1ASMFUNCS))
+diff -Naur gcc-4.5.0.orig/gcc/config/m32c/rtems.h gcc-4.5.0/gcc/config/m32c/rtems.h
+--- gcc-4.5.0.orig/gcc/config/m32c/rtems.h	2008-12-01 17:34:42.000000000 +0100
++++ gcc-4.5.0/gcc/config/m32c/rtems.h	2010-05-22 03:59:02.000000000 +0200
+@@ -29,5 +29,9 @@
+     }						\
+   while (0)
+ 
+-/* Use the default */
++/* Use the defaults */
+ #undef LINK_GCC_C_SEQUENCE_SPEC
++
++#undef WCHAR_TYPE
++
++#undef WCHAR_TYPE_SIZE
+diff -Naur gcc-4.5.0.orig/gcc/config/m68k/rtemself.h gcc-4.5.0/gcc/config/m68k/rtemself.h
+--- gcc-4.5.0.orig/gcc/config/m68k/rtemself.h	2007-08-02 12:49:31.000000000 +0200
++++ gcc-4.5.0/gcc/config/m68k/rtemself.h	2010-05-22 03:59:02.000000000 +0200
+@@ -31,3 +31,8 @@
+ 	builtin_assert ("system=rtems");	\
+     }						\
+   while (0)
++
++/* Use the defaults */
++#undef WCHAR_TYPE
++
++#undef WCHAR_TYPE_SIZE
+diff -Naur gcc-4.5.0.orig/gcc/config/mips/elf.h gcc-4.5.0/gcc/config/mips/elf.h
+--- gcc-4.5.0.orig/gcc/config/mips/elf.h	2007-08-02 12:49:31.000000000 +0200
++++ gcc-4.5.0/gcc/config/mips/elf.h	2010-05-22 03:59:02.000000000 +0200
+@@ -48,6 +48,4 @@
+ #undef  ENDFILE_SPEC
+ #define ENDFILE_SPEC "crtend%O%s crtn%O%s"
+ 
+-#define NO_IMPLICIT_EXTERN_C 1
+-
+ #define HANDLE_PRAGMA_PACK_PUSH_POP 1
+diff -Naur gcc-4.5.0.orig/gcc/config/rs6000/rtems.h gcc-4.5.0/gcc/config/rs6000/rtems.h
+--- gcc-4.5.0.orig/gcc/config/rs6000/rtems.h	2007-08-02 12:49:31.000000000 +0200
++++ gcc-4.5.0/gcc/config/rs6000/rtems.h	2010-05-22 03:59:02.000000000 +0200
+@@ -49,8 +49,22 @@
+ %{mcpu=604:  %{!Dppc*: %{!Dmpc*: -Dmpc604}  } } \
+ %{mcpu=750:  %{!Dppc*: %{!Dmpc*: -Dmpc750}  } } \
+ %{mcpu=821:  %{!Dppc*: %{!Dmpc*: -Dmpc821}  } } \
+-%{mcpu=860:  %{!Dppc*: %{!Dmpc*: -Dmpc860}  } }" 
++%{mcpu=860:  %{!Dppc*: %{!Dmpc*: -Dmpc860}  } } \
++%{mcpu=8540: %{!Dppc*: %{!Dmpc*: -Dppc8540}  } }" 
+ 
+ #undef  SUBSUBTARGET_EXTRA_SPECS
+ #define SUBSUBTARGET_EXTRA_SPECS \
+   { "cpp_os_rtems",		CPP_OS_RTEMS_SPEC }
++
++#undef SUBSUBTARGET_OVERRIDE_OPTIONS
++#define SUBSUBTARGET_OVERRIDE_OPTIONS		\
++  do {						\
++    if (TARGET_E500)				\
++      {						\
++	rs6000_float_gprs = 1;			\
++      }						\
++  } while(0)
++
++#undef WCHAR_TYPE
++
++#undef WCHAR_TYPE_SIZE
+diff -Naur gcc-4.5.0.orig/gcc/config/rs6000/t-rtems gcc-4.5.0/gcc/config/rs6000/t-rtems
+--- gcc-4.5.0.orig/gcc/config/rs6000/t-rtems	2009-04-21 21:03:23.000000000 +0200
++++ gcc-4.5.0/gcc/config/rs6000/t-rtems	2010-05-22 03:59:02.000000000 +0200
+@@ -19,12 +19,12 @@
+ # <http://www.gnu.org/licenses/>.
+ 
+ MULTILIB_OPTIONS	= \
+-mcpu=403/mcpu=505/mcpu=601/mcpu=603e/mcpu=604/mcpu=860/mcpu=7400 \
++mcpu=403/mcpu=505/mcpu=601/mcpu=603e/mcpu=604/mcpu=860/mcpu=7400/mcpu=8540 \
+ Dmpc8260 \
+ msoft-float
+ 
+ MULTILIB_DIRNAMES	= \
+-m403 m505 m601 m603e m604 m860 m7400 \
++m403 m505 m601 m603e m604 m860 m7400 m8540 \
+ mpc8260 \
+ nof
+ 
+@@ -47,6 +47,10 @@
+ # Map 750 to .
+ MULTILIB_MATCHES	+= mcpu?750=
+ 
++# Map e500, 8548 to 8540
++MULTILIB_MATCHES	+= mcpu?8540=mcpu?e500
++MULTILIB_MATCHES	+= mcpu?8540=mcpu?8548
++
+ # Soft-float only, default implies msoft-float
+ # NOTE: Must match with MULTILIB_MATCHES_FLOAT and MULTILIB_MATCHES
+ MULTILIB_SOFTFLOAT_ONLY = \
+@@ -80,3 +84,4 @@
+ MULTILIB_EXCEPTIONS += *mcpu=750/Dmpc*
+ MULTILIB_EXCEPTIONS += *mcpu=860/Dmpc*
+ MULTILIB_EXCEPTIONS += *mcpu=7400/Dmpc*
++MULTILIB_EXCEPTIONS += *mcpu=8540/Dmpc*
+diff -Naur gcc-4.5.0.orig/gcc/config/sh/rtemself.h gcc-4.5.0/gcc/config/sh/rtemself.h
+--- gcc-4.5.0.orig/gcc/config/sh/rtemself.h	2007-08-02 12:49:31.000000000 +0200
++++ gcc-4.5.0/gcc/config/sh/rtemself.h	2010-05-22 03:59:02.000000000 +0200
+@@ -24,3 +24,8 @@
+   builtin_define( "__rtems__" );		\
+   builtin_assert( "system=rtems" );		\
+ } while (0)
++
++/* Use the defaults */
++#undef WCHAR_TYPE
++
++#undef WCHAR_TYPE_SIZE
+diff -Naur gcc-4.5.0.orig/gcc/config/sparc/rtemself.h gcc-4.5.0/gcc/config/sparc/rtemself.h
+--- gcc-4.5.0.orig/gcc/config/sparc/rtemself.h	2007-08-02 12:49:31.000000000 +0200
++++ gcc-4.5.0/gcc/config/sparc/rtemself.h	2010-05-22 03:59:02.000000000 +0200
+@@ -29,5 +29,9 @@
+     }						\
+   while (0)
+ 
+-/* Use the default */
++/* Use the defaults */
+ #undef LINK_GCC_C_SEQUENCE_SPEC
++
++#undef WCHAR_TYPE
++
++#undef WCHAR_TYPE_SIZE
+diff -Naur gcc-4.5.0.orig/gcc/config/sparc/sp64-rtemself.h gcc-4.5.0/gcc/config/sparc/sp64-rtemself.h
+--- gcc-4.5.0.orig/gcc/config/sparc/sp64-rtemself.h	1970-01-01 01:00:00.000000000 +0100
++++ gcc-4.5.0/gcc/config/sparc/sp64-rtemself.h	2010-05-22 04:01:14.000000000 +0200
+@@ -0,0 +1,37 @@
++/* Definitions for rtems targeting a SPARC64 using ELF.
++   Copyright (C) 2010 Free Software Foundation, Inc.
++   Contributed by Joel Sherrill (joel at OARcorp.com).
++
++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 3, 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 COPYING3.  If not see
++<http://www.gnu.org/licenses/>.  */
++
++/* Target OS builtins.  */
++#undef TARGET_OS_CPP_BUILTINS
++#define TARGET_OS_CPP_BUILTINS()		\
++  do						\
++    {						\
++	builtin_define ("__rtems__");		\
++	builtin_define ("__USE_INIT_FINI__");	\
++	builtin_assert ("system=rtems");	\
++    }						\
++  while (0)
++
++/* Use the default */
++#undef LINK_GCC_C_SEQUENCE_SPEC
++
++/* we are not svr4 */
++#undef CPP_SUBTARGET_SPEC
++#define CPP_SUBTARGET_SPEC ""
+diff -Naur gcc-4.5.0.orig/gcc/config.gcc gcc-4.5.0/gcc/config.gcc
+--- gcc-4.5.0.orig/gcc/config.gcc	2010-04-07 12:34:00.000000000 +0200
++++ gcc-4.5.0/gcc/config.gcc	2010-05-22 04:01:14.000000000 +0200
+@@ -2387,6 +2387,12 @@
+ 	tmake_file="sparc/t-elf sparc/t-crtfm t-rtems"
+ 	extra_parts="crti.o crtn.o crtbegin.o crtend.o"
+ 	;;
++sparc64-*-rtems*)
++	tm_file="${tm_file} dbxelf.h elfos.h svr4.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h sparc/sp64-rtemself.h rtems.h"
++	extra_options="${extra_options} sparc/little-endian.opt"
++	tmake_file="${tmake_file} sparc/t-crtfm t-rtems"
++	extra_parts="crtbegin.o crtend.o"
++	;;
+ sparc*-*-solaris2*)
+ 	tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h"
+ 	case ${target} in
+diff -Naur gcc-4.5.0.orig/libgcc/ChangeLog.rtems gcc-4.5.0/libgcc/ChangeLog.rtems
+--- gcc-4.5.0.orig/libgcc/ChangeLog.rtems	1970-01-01 01:00:00.000000000 +0100
++++ gcc-4.5.0/libgcc/ChangeLog.rtems	2010-05-22 04:04:53.000000000 +0200
+@@ -0,0 +1,3 @@
++2010-05-19  Joel Sherrill <joel.sherrill at oarcorp.com>
++
++	* config.host (sparc64-*-rtems*): New target.
+diff -Naur gcc-4.5.0.orig/libgcc/config.host gcc-4.5.0/libgcc/config.host
+--- gcc-4.5.0.orig/libgcc/config.host	2010-04-02 05:02:18.000000000 +0200
++++ gcc-4.5.0/libgcc/config.host	2010-05-22 04:01:13.000000000 +0200
+@@ -535,7 +535,7 @@
+ 	extra_parts="$extra_parts crtfastmath.o"
+ 	tmake_file="${tmake_file} sparc/t-crtfm"
+ 	;;
+-sparc-*-rtems*)
++sparc-*-rtems* | sparc64-*-rtems* )
+ 	;;
+ sparc64-*-solaris2* | sparcv9-*-solaris2*)
+ 	;;


 *ralf*:
Abandon gcc-4.4.3.
gcc-core-4.5.0-rtems4.11-20100522.diff.

M    1.2  contrib/crossrpms/rtems4.11/sparc64/gcc-sources.add

diff -u rtems/contrib/crossrpms/rtems4.11/sparc64/gcc-sources.add:1.1 rtems/contrib/crossrpms/rtems4.11/sparc64/gcc-sources.add:1.2
--- rtems/contrib/crossrpms/rtems4.11/sparc64/gcc-sources.add:1.1	Fri May 21 11:16:00 2010
+++ rtems/contrib/crossrpms/rtems4.11/sparc64/gcc-sources.add	Fri May 21 21:46:12 2010
@@ -1,10 +1,6 @@
 %if "%{gcc_version}" == "4.5.0"
 Source0:	ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2
-Patch0:         ftp://ftp.rtems.org/pub/rtems/SOURCES/4.11/gcc-core-4.5.0-rtems4.11-20100414.diff
-%endif
-%if "%{gcc_version}" == "4.4.3"
-Source0:	ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2
-Patch0:		ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.3-rtems4.10-20100315.diff
+Patch0:         ftp://ftp.rtems.org/pub/rtems/SOURCES/4.11/gcc-core-4.5.0-rtems4.11-20100522.diff
 %endif
 %{?_without_sources:NoSource:	0}
 
@@ -12,9 +8,6 @@
 %if "%{gcc_version}" == "4.5.0" 
 Source1:	ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2
 %endif
-%if "%{gcc_version}" == "4.4.3" 
-Source1:	ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2
-%endif
 %{?_without_sources:NoSource:	1}
 
 %endif


 *ralf*:
Activate gcc.

M    1.2  contrib/crossrpms/rtems4.11/sparc64/Makefile.am

diff -u rtems/contrib/crossrpms/rtems4.11/sparc64/Makefile.am:1.1 rtems/contrib/crossrpms/rtems4.11/sparc64/Makefile.am:1.2
--- rtems/contrib/crossrpms/rtems4.11/sparc64/Makefile.am:1.1	Fri May 21 11:16:18 2010
+++ rtems/contrib/crossrpms/rtems4.11/sparc64/Makefile.am	Fri May 21 21:47:27 2010
@@ -11,14 +11,14 @@
 include ../binutils.am
 BINUTILS_OPTS +=
 
-#GCC_VERS = 4.5.0
-#GCC_PKGVERS = $(GCC_VERS)
-#GCC_RPMREL = 0
-#NEWLIB_VERS = 1.18.0
-#NEWLIB_PKGVERS = $(NEWLIB_VERS)
-#NEWLIB_RPMREL = `expr $(GCC_RPMREL)`
-#include ../gcc.am
-#GCC_OPTS += --languages=cxx
+GCC_VERS = 4.5.0
+GCC_PKGVERS = $(GCC_VERS)
+GCC_RPMREL = 11
+NEWLIB_VERS = 1.18.0
+NEWLIB_PKGVERS = $(NEWLIB_VERS)
+NEWLIB_RPMREL = `expr $(GCC_RPMREL)`
+include ../gcc.am
+GCC_OPTS += --languages=cxx
 
 #GDB_VERS = 7.1
 #GDB_PKGVERS = $(GDB_VERS)


 *ralf*:
Generate.

A    1.1  contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec

diff -u /dev/null rtems/contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec:1.1
--- /dev/null	Fri May 21 22:12:59 2010
+++ rtems/contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec	Fri May 21 21:49:16 2010
@@ -0,0 +1,856 @@
+#
+# Please send bugfixes or comments to
+# 	http://www.rtems.org/bugzilla
+#
+
+%define _prefix                 /opt/rtems-4.11
+%define _exec_prefix            %{_prefix}
+%define _bindir                 %{_exec_prefix}/bin
+%define _sbindir                %{_exec_prefix}/sbin
+%define _libexecdir             %{_exec_prefix}/libexec
+%define _datarootdir            %{_prefix}/share
+%define _datadir                %{_datarootdir}
+%define _sysconfdir             %{_prefix}/etc
+%define _sharedstatedir         %{_prefix}/com
+%define _localstatedir          %{_prefix}/var
+%define _includedir             %{_prefix}/include
+%define _libdir                 %{_exec_prefix}/%{_lib}
+%define _mandir                 %{_datarootdir}/man
+%define _infodir                %{_datarootdir}/info
+%define _localedir              %{_datarootdir}/locale
+
+%ifos cygwin cygwin32 mingw mingw32
+%define _exeext .exe
+%define debug_package           %{nil}
+%define _libdir                 %{_exec_prefix}/lib
+%else
+%define _exeext %{nil}
+%endif
+
+%ifos cygwin cygwin32
+%define optflags -O3 -pipe -march=i486 -funroll-loops
+%endif
+
+%ifos mingw mingw32
+%if %{defined _mingw32_cflags}
+%define optflags %{_mingw32_cflags}
+%else
+%define optflags -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -mms-bitfields
+%endif
+%endif
+
+%if "%{_build}" != "%{_host}"
+%define _host_rpmprefix %{_host}-
+%else
+%define _host_rpmprefix %{nil}
+%endif
+
+
+%define gcc_pkgvers 4.5.0
+%define gcc_version 4.5.0
+%define gcc_rpmvers %{expand:%(echo "4.5.0" | tr - _ )}
+
+%define newlib_pkgvers		1.18.0
+%define newlib_version		1.18.0
+
+Name:         	rtems-4.11-sparc64-rtems4.11-gcc
+Summary:      	sparc64-rtems4.11 gcc
+
+Group:	      	Development/Tools
+Version:        %{gcc_rpmvers}
+Release:      	11%{?dist}
+License:      	GPL
+URL:		http://gcc.gnu.org
+BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+%define _use_internal_dependency_generator 0
+
+BuildRequires:  %{_host_rpmprefix}gcc
+
+# FIXME: Disable lto for now, to avoid dependencies on libelf
+%bcond_with lto
+
+# FIXME: Disable python gdb scripts
+# ATM, no idea how to package them
+%bcond_with pygdb
+
+# FIXME: Disable GCC-plugin
+# Bug in gcc-4.5-20100318, doesn't build them on x86_84 hosts.
+%bcond_with plugin
+
+# versions of libraries, we conditionally bundle if necessary
+%global mpc_version	0.8.1
+%global mpfr_version	2.4.1
+%global gmp_version	4.3.2
+%global libelf_version  0.8.13
+
+# versions of libraries these distros are known to ship
+%if 0%{?fc13}
+%global mpc_provided 0.8.1
+%global mpfr_provided 2.4.1
+%global gmp_provided 4.3.1
+%endif
+
+%if 0%{?fc12}
+%global mpc_provided 0.8
+%global mpfr_provided 2.4.1
+%global gmp_provided 4.3.1
+%endif
+
+%if 0%{?fc11}
+%global mpc_provided %{nil}
+%global mpfr_provided 2.4.1
+%global gmp_provided 4.2.4
+%endif
+
+%if 0%{?el6}
+%global mpc_provided %{nil}
+# el6 beta ships mpfr but mpfr-devel is missing
+%global mpfr_provided %{nil}
+%global gmp_provided 4.3.1
+%endif
+
+%if 0%{?el5}
+%global mpc_provided %{nil}
+%global mpfr_provided %{nil}
+%global gmp_provided 4.1.4
+%endif
+
+%if 0%{?suse11_0}
+%global mpc_provided %{nil}
+%global mpfr_provided 2.3.1
+%global gmp_provided 4.2.2
+%endif
+
+%if 0%{?suse11_1}
+%global mpc_provided %{nil}
+%global mpfr_provided 2.3.2
+%global gmp_provided 4.2.3
+%endif
+
+%if 0%{?suse11_2}
+%global mpc_provided 0.7
+%global mpfr_provided 2.4.1
+%global gmp_provided 4.3.1
+%endif
+
+%if 0%{?cygwin}
+%global mpc_provided 0.8
+%global mpfr_provided 2.4.1
+%global gmp_provided 4.3.1
+%endif
+
+%if 0%{?mingw32}
+%global mpc_provided 0.8.1
+%global mpfr_provided 2.4.1
+%global gmp_provided 4.3.2
+%endif
+
+%if "%{gcc_version}" >= "4.2.0"
+%endif
+
+%if "%{gcc_version}" >= "4.3.0"
+%define gmp_required		4.1
+%define mpfr_required		2.3.1
+%endif
+
+%if "%{gcc_version}" >= "4.3.3"
+%define cloog_required 		0.15
+%endif
+
+%if "%{gcc_version}" >= "4.4.0"
+%define mpfr_required		2.3.2
+%endif
+
+%if "%{gcc_version}" >= "4.5.0"
+%define mpc_required 		0.8
+%if %{with lto}
+%define libelf_required 	0.8.12
+%endif
+%endif
+
+%if %{defined mpc_required}
+%if "%{mpc_provided}" >= "%{mpc_required}"
+%{?fedora:BuildRequires: libmpc-devel >= %{mpc_required}}
+%{?suse:BuildRequires: mpc-devel >= %{mpc_required}}
+%if "%{_build}" != "%{_host}"
+BuildRequires:  %{_host_rpmprefix}mpc-devel >= %{mpc_required}
+%endif
+%else
+%define _build_mpc 1
+%define gmp_required 		4.2
+%endif
+%endif
+
+%if %{defined gmp_required}
+%if "%{gmp_provided}" >= "%{gmp_required}"
+BuildRequires: gmp-devel >= %{gmp_required}
+%if "%{_build}" != "%{_host}"
+BuildRequires:  %{_host_rpmprefix}gmp-devel >= %{gmp_required}
+%endif
+%else
+%define _build_gmp 1
+%endif
+%endif
+
+%if %{defined libelf_required}
+%if "%{libelf_provided}" >= "%{libelf_required}"
+BuildRequires: libelf-devel >= %{libelf_required}
+%if "%{_build}" != "%{_host}"
+BuildRequires:  %{_host_rpmprefix}libelf-devel >= %{libelf_required}
+%endif
+%else
+%define _build_libelf 1
+%endif
+%endif
+
+
+%if %{defined cloog_required}
+%{?fc11:BuildRequires: cloog-ppl-devel >= %cloog_required}
+%{?fc12:BuildRequires: cloog-ppl-devel >= %cloog_required}
+%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required}
+# el6 ships cloog-ppl, but cloog-ppl-devel is missing
+%{?suse11_2:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
+%{?suse11_1:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
+%endif
+
+
+%if %{defined mpfr_required}
+%if "%{mpfr_provided}" >= "%{mpfr_required}"
+BuildRequires: mpfr-devel >= %{mpfr_required}
+%if "%{_build}" != "%{_host}"
+BuildRequires:  %{_host_rpmprefix}mpfr-devel >= %{mpfr_required}
+%endif
+%else
+%define _build_mpfr 1
+%endif
+%endif
+
+%if "%{_build}" != "%{_host}"
+BuildRequires:  rtems-4.11-sparc64-rtems4.11-gcc = %{gcc_rpmvers}
+%endif
+
+%if "%{gcc_version}" >= "4.2.0"
+BuildRequires:	flex bison
+%endif
+
+
+BuildRequires:	texinfo >= 4.2
+BuildRequires:	rtems-4.11-sparc64-rtems4.11-binutils
+
+Requires:	rtems-4.11-gcc-common
+Requires:	rtems-4.11-sparc64-rtems4.11-binutils
+Requires:	rtems-4.11-sparc64-rtems4.11-gcc-libgcc = %{gcc_rpmvers}-%{release}
+Requires:	rtems-4.11-sparc64-rtems4.11-newlib = %{newlib_version}-11%{?dist}
+
+%if "%{gcc_version}" >= "4.5.0"
+BuildRequires:  zlib-devel
+%if "%{_build}" != "%{_host}"
+BuildRequires:  %{_host_rpmprefix}zlib-devel
+%endif
+%else
+%endif
+
+%global _gcclibdir %{_prefix}/lib
+
+%if "%{gcc_version}" == "4.5.0"
+Source0:	ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2
+Patch0:         ftp://ftp.rtems.org/pub/rtems/SOURCES/4.11/gcc-core-4.5.0-rtems4.11-20100522.diff
+%endif
+%{?_without_sources:NoSource:	0}
+
+%if "%{gcc_version}" == "4.5.0" 
+Source1:	ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2
+%endif
+%{?_without_sources:NoSource:	1}
+
+%if "%{newlib_version}" == "1.18.0"
+Source50:	ftp://sources.redhat.com/pub/newlib/newlib-%{newlib_pkgvers}.tar.gz
+Patch50:	ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/newlib-1.18.0-rtems4.11-20100423.diff
+%endif
+%{?_without_sources:NoSource:	50}
+
+%if 0%{?_build_mpfr}
+Source60:    http://www.mpfr.org/mpfr-current/mpfr-%{mpfr_version}.tar.bz2
+%endif
+
+%if 0%{?_build_mpc}
+Source61:    http://www.multiprecision.org/mpc/download/mpc-%{mpc_version}.tar.gz
+%endif
+
+%if 0%{?_build_gmp}
+Source62:    ftp://ftp.gnu.org/gnu/gmp/gmp-%{gmp_version}.tar.bz2
+%endif
+
+%if 0%{?_build_libelf}
+Source63:    http://www.mr511.de/software/libelf-%{libelf_version}.tar.gz
+%endif
+
+%description
+Cross gcc for sparc64-rtems4.11.
+
+%prep
+%setup -c -T -n %{name}-%{version}
+
+%setup -q -T -D -n %{name}-%{version} -a0
+cd gcc-%{gcc_pkgvers}
+%{?PATCH0:%patch0 -p1}
+cd ..
+
+%setup -q -T -D -n %{name}-%{version} -a1
+cd gcc-%{gcc_pkgvers}
+%{?PATCH1:%patch1 -p1}
+cd ..
+
+
+
+
+
+%setup -q -T -D -n %{name}-%{version} -a50
+cd newlib-%{newlib_version}
+%{?PATCH50:%patch50 -p1}
+cd ..
+  # Copy the C library into gcc's source tree
+  ln -s ../newlib-%{newlib_version}/newlib gcc-%{gcc_pkgvers}
+
+%if 0%{?_build_mpfr}
+%setup -q -T -D -n %{name}-%{version} -a60
+%{?PATCH60:%patch60 -p1}
+  # Build mpfr one-tree style
+  ln -s ../mpfr-%{mpfr_version} gcc-%{gcc_pkgvers}/mpfr
+%endif
+
+%if 0%{?_build_mpc}
+%setup -q -T -D -n %{name}-%{version} -a61
+%{?PATCH61:%patch61 -p1}
+  # Build mpc one-tree style
+  ln -s ../mpc-%{mpc_version} gcc-%{gcc_pkgvers}/mpc
+%endif
+
+%if 0%{?_build_gmp}
+%setup -q -T -D -n %{name}-%{version} -a62
+%{?PATCH62:%patch62 -p1}
+  # Build gmp one-tree style
+  ln -s ../gmp-%{gmp_version} gcc-%{gcc_pkgvers}/gmp
+%endif
+
+%if 0%{?_build_libelf}
+%setup -q -T -D -n %{name}-%{version} -a63
+%{?PATCH63:%patch63 -p1}
+  # Build libelf one-tree style
+  ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf
+%endif
+
+echo "RTEMS gcc-%{gcc_version}-11%{?dist}/newlib-%{newlib_version}-11%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE
+
+
+  # Fix timestamps
+  cd gcc-%{gcc_pkgvers}
+  contrib/gcc_update --touch
+  cd ..
+%build
+  mkdir -p build
+
+  cd build
+
+  languages="c"
+  languages="$languages,c++"
+  export PATH="%{_bindir}:${PATH}"
+%if "%{_build}" != "%{_host}"
+  CFLAGS_FOR_BUILD="-g -O2 -Wall" \
+  CC="%{_host}-gcc ${RPM_OPT_FLAGS}" \
+%else
+# gcc is not ready to be compiled with -std=gnu99
+  CC=$(echo "%{__cc} ${RPM_OPT_FLAGS}" | sed -e 's,-std=gnu99 ,,') \
+%endif
+  ../gcc-%{gcc_pkgvers}/configure \
+    --prefix=%{_prefix} \
+    --bindir=%{_bindir} \
+    --exec_prefix=%{_exec_prefix} \
+    --includedir=%{_includedir} \
+    --libdir=%{_gcclibdir} \
+    --libexecdir=%{_libexecdir} \
+    --mandir=%{_mandir} \
+    --infodir=%{_infodir} \
+    --datadir=%{_datadir} \
+    --build=%_build --host=%_host \
+    --target=sparc64-rtems4.11 \
+    --disable-libstdcxx-pch \
+    --with-gnu-as --with-gnu-ld --verbose \
+    --with-newlib \
+    --with-system-zlib \
+    --disable-nls --without-included-gettext \
+    --disable-win32-registry \
+    --enable-version-specific-runtime-libs \
+    --enable-threads \
+    %{?with_lto:--enable-lto}%{!?with_lto:--disable-lto} \
+    %{?with_plugin:--enable-plugin}%{!?with_plugin:--disable-plugin} \
+    --enable-newlib-io-c99-formats \
+    --enable-languages="$languages" $optargs
+
+%if "%_host" != "%_build"
+  # Bug in gcc-3.2.1:
+  # Somehow, gcc doesn't get syslimits.h right for Cdn-Xs
+  mkdir -p gcc/include
+  cp ../gcc-%{gcc_pkgvers}/gcc/gsyslimits.h gcc/include/syslimits.h
+%endif
+
+  make %{?_smp_mflags} all
+  make info
+  cd ..
+
+%install
+  export PATH="%{_bindir}:${PATH}"
+  rm -rf $RPM_BUILD_ROOT
+
+  cd build
+
+  make DESTDIR=$RPM_BUILD_ROOT install
+  cd ..
+
+  cd build/sparc64-rtems4.11/newlib
+  make DESTDIR=$RPM_BUILD_ROOT install-info
+  cd ../../..
+
+%if "%{gcc_version}" <= "4.1.2"
+# Misplaced header file
+  if test -f $RPM_BUILD_ROOT%{_includedir}/mf-runtime.h; then
+    mv $RPM_BUILD_ROOT%{_includedir}/mf-runtime.h \
+      $RPM_BUILD_ROOT%{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}/include/
+  fi
+%endif
+
+  # host library
+%if "%{gcc_version}" >= "4.2.0"
+  # libiberty doesn't honor --libdir, but always installs to a 
+  # magically guessed _libdir
+  rm -f  ${RPM_BUILD_ROOT}%{_libdir}/libiberty.a
+%else
+  # libiberty installs to --libdir=...
+  rm -f ${RPM_BUILD_ROOT}%{_gcclibdir}/libiberty.a
+%endif
+
+  # We use the version from binutils
+  rm -f $RPM_BUILD_ROOT%{_bindir}/sparc64-rtems4.11-c++filt%{_exeext}
+
+
+  # We don't ship info/dir
+  rm -f $RPM_BUILD_ROOT%{_infodir}/dir
+  touch $RPM_BUILD_ROOT%{_infodir}/dir
+
+  # Bug in gcc-3.4.0pre
+  rm -f $RPM_BUILD_ROOT%{_bindir}/sparc64-rtems4.11-sparc64-rtems4.11-gcjh%{_exeext}
+
+  # Bug in gcc-3.3.x/gcc-3.4.x: Despite we don't need fixincludes, it installs
+  # the fixinclude-install-tools
+  rm -rf ${RPM_BUILD_ROOT}%{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}/install-tools
+  rm -rf ${RPM_BUILD_ROOT}%{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}/install-tools
+
+  # Bug in gcc > 4.1.0: Installs an unused, empty directory
+  if test -d ${RPM_BUILD_ROOT}%{_prefix}/sparc64-rtems4.11/include/bits; then
+    rmdir ${RPM_BUILD_ROOT}%{_prefix}/sparc64-rtems4.11/include/bits
+  fi
+
+  # gcc >= 4.5.0: installs weird libstdc++ python bindings.
+%if ! %{with pygdb}
+  if test -d ${RPM_BUILD_ROOT}%{_datadir}/gcc-%{gcc_version}/python; then
+    rm -rf ${RPM_BUILD_ROOT}%{_datadir}/gcc-%{gcc_version}/python/libstdcxx
+  fi
+%endif
+
+  # Collect multilib subdirectories
+  multilibs=`build/gcc/xgcc -Bbuild/gcc/ --print-multi-lib | sed -e 's,;.*$,,'`
+
+  echo "%defattr(-,root,root,-)" > build/files.newlib
+  TGTDIR="%{_exec_prefix}/sparc64-rtems4.11/lib"
+  for i in $multilibs; do
+    case $i in
+    \.) echo "%dir ${TGTDIR}" >> build/files.newlib
+      ;;
+    *)  echo "%dir ${TGTDIR}/$i" >> build/files.newlib
+      ;;
+    esac
+  done
+
+  rm -f dirs ;
+  echo "%defattr(-,root,root,-)" >> dirs
+  TGTDIR="%{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}"
+  for i in $multilibs; do
+    case $i in
+    \.) ;; # ignore, handled elsewhere
+    *)  echo "%dir ${TGTDIR}/$i" >> dirs
+      ;;
+    esac
+  done
+
+  # Collect files to go into different packages
+  cp dirs build/files.gcc
+  cp dirs build/files.gfortran
+  cp dirs build/files.objc
+  cp dirs build/files.gcj
+  cp dirs build/files.g++
+
+  TGTDIR="%{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}"
+  f=`find ${RPM_BUILD_ROOT}${TGTDIR} ! -type d -print | sed -e "s,^$RPM_BUILD_ROOT,,g"`;
+  for i in $f; do
+    case $i in
+    *lib*.la) rm ${RPM_BUILD_ROOT}/$i ;; # ignore: gcc produces bogus libtool libs
+    *f771) ;;
+    *f951) ;;
+    *cc1) ;;
+    *cc1obj) ;;
+    *cc1plus) ;; # ignore: explicitly put into rpm elsewhere
+    *collect2) ;;
+    *libobjc*) echo "$i" >> build/files.objc ;;
+    *include/objc*) ;;
+    *include/g++*);;
+    *include/c++*);;
+    *include-fixed/*);;
+    *finclude/*);;
+    *adainclude*);;
+    *adalib*);;
+    *gnat1);;
+    *jc1) ;;
+    *jvgenmain) ;;
+    */libgfortran*.*) echo "$i" >> build/files.gfortran ;;
+    %{!?with_pygdb:*/libstdc++*gdb.py*) rm ${RPM_BUILD_ROOT}/$i ;;} # ignore for now
+    %{?with_pygdb:*/libstdc++*gdb.py*) >> build/files.g++ ;;}
+    */libstdc++.*) echo "$i" >> build/files.g++ ;;
+    */libsupc++.*) echo "$i" >> build/files.g++ ;;
+    *) echo "$i" >> build/files.gcc ;;
+    esac
+  done
+
+  TGTDIR="%{_exec_prefix}/sparc64-rtems4.11/lib"
+  f=`find ${RPM_BUILD_ROOT}${TGTDIR} ! -type d -print | sed -e "s,^$RPM_BUILD_ROOT,,g"`;
+  for i in $f; do
+    case $i in
+    *lib*.la) rm ${RPM_BUILD_ROOT}/$i;; # ignore - gcc produces bogus libtool libs
+    *libiberty.a) rm ${RPM_BUILD_ROOT}/$i ;; # ignore - GPL'ed
+# all other files belong to newlib
+    *) echo "$i" >> build/files.newlib ;; 
+    esac
+  done
+# Extract %%__os_install_post into os_install_post~
+cat << \EOF > os_install_post~
+%__os_install_post
+EOF
+
+# Generate customized brp-*scripts
+cat os_install_post~ | while read a x y; do
+case $a in
+# Prevent brp-strip* from trying to handle foreign binaries
+*/brp-strip*)
+  b=$(basename $a)
+  sed -e 's,find $RPM_BUILD_ROOT,find $RPM_BUILD_ROOT%_bindir $RPM_BUILD_ROOT%_libexecdir,' $a > $b
+  chmod a+x $b
+  ;;
+# Fix up brp-compress to handle %%_prefix != /usr
+*/brp-compress*)
+  b=$(basename $a)
+  sed -e 's,\./usr/,.%{_prefix}/,g' < $a > $b
+  chmod a+x $b
+  ;;
+esac
+done
+
+sed -e 's,^[ ]*/usr/lib/rpm.*/brp-strip,./brp-strip,' \
+  -e 's,^[ ]*/usr/lib/rpm.*/brp-compress,./brp-compress,' \
+< os_install_post~ > os_install_post 
+%define __os_install_post . ./os_install_post
+
+
+cat << EOF > %{_builddir}/%{name}-%{gcc_rpmvers}/find-provides
+#!/bin/sh
+grep -E -v '^${RPM_BUILD_ROOT}%{_exec_prefix}/sparc64-rtems4.11/(lib|include|sys-root)' \
+  %{?_gcclibdir:| grep -v '^${RPM_BUILD_ROOT}%{_gcclibdir}/gcc/sparc64-rtems4.11/'} | %__find_provides
+EOF
+chmod +x %{_builddir}/%{name}-%{gcc_rpmvers}/find-provides
+%define __find_provides %{_builddir}/%{name}-%{gcc_rpmvers}/find-provides
+
+cat << EOF > %{_builddir}/%{name}-%{gcc_rpmvers}/find-requires
+#!/bin/sh
+grep -E -v '^${RPM_BUILD_ROOT}%{_exec_prefix}/sparc64-rtems4.11/(lib|include|sys-root)' \
+  %{?_gcclibdir:| grep -v '^${RPM_BUILD_ROOT}%{_gcclibdir}/gcc/sparc64-rtems4.11/'} | %__find_requires
+EOF
+chmod +x %{_builddir}/%{name}-%{gcc_rpmvers}/find-requires
+%define __find_requires %{_builddir}/%{name}-%{gcc_rpmvers}/find-requires
+
+%ifnarch noarch
+# Extract %%__debug_install_post into debug_install_post~
+cat << \EOF > debug_install_post~
+%__debug_install_post
+EOF
+
+# Generate customized debug_install_post script
+cat debug_install_post~ | while read a x y; do
+case $a in
+# Prevent find-debuginfo.sh* from trying to handle foreign binaries
+*/find-debuginfo.sh)
+  b=$(basename $a)
+  sed -e 's,find "$RPM_BUILD_ROOT" !,find "$RPM_BUILD_ROOT"%_bindir "$RPM_BUILD_ROOT"%_libexecdir !,' $a > $b
+  chmod a+x $b
+  ;;
+esac
+done
+
+sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \
+< debug_install_post~ > debug_install_post 
+%define __debug_install_post . ./debug_install_post
+
+%endif
+
+%clean
+  rm -rf $RPM_BUILD_ROOT
+
+# ==============================================================
+# rtems-4.11-sparc64-rtems4.11-gcc
+# ==============================================================
+# %package -n rtems-4.11-sparc64-rtems4.11-gcc
+# Summary:        GNU cc compiler for sparc64-rtems4.11
+# Group:          Development/Tools
+# Version:        %{gcc_rpmvers}
+# Requires:       rtems-4.11-sparc64-rtems4.11-binutils
+# Requires:       rtems-4.11-sparc64-rtems4.11-newlib = %{newlib_version}-11%{?dist}
+# License:	GPL
+
+# %if %build_infos
+# Requires:      rtems-4.11-gcc-common
+# %endif
+
+%description -n rtems-4.11-sparc64-rtems4.11-gcc
+GNU cc compiler for sparc64-rtems4.11.
+
+# ==============================================================
+# rtems-4.11-sparc64-rtems4.11-gcc-libgcc
+# ==============================================================
+%package -n rtems-4.11-sparc64-rtems4.11-gcc-libgcc
+Summary:        libgcc for sparc64-rtems4.11-gcc
+Group:          Development/Tools
+Version:        %{gcc_rpmvers}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+Requires:       rtems-4.11-sparc64-rtems4.11-newlib = %{newlib_version}-11%{?dist}
+License:	GPL
+
+%description -n rtems-4.11-sparc64-rtems4.11-gcc-libgcc
+libgcc sparc64-rtems4.11-gcc.
+
+
+%files -n rtems-4.11-sparc64-rtems4.11-gcc
+%defattr(-,root,root)
+%dir %{_prefix}
+
+%dir %{_mandir}
+%dir %{_mandir}/man1
+%{_mandir}/man1/sparc64-rtems4.11-gcc.1*
+%{_mandir}/man1/sparc64-rtems4.11-cpp.1*
+%{_mandir}/man1/sparc64-rtems4.11-gcov.1*
+
+%dir %{_bindir}
+%{_bindir}/sparc64-rtems4.11-cpp%{_exeext}
+%{_bindir}/sparc64-rtems4.11-gcc%{_exeext}
+%{_bindir}/sparc64-rtems4.11-gcc-%{gcc_version}%{_exeext}
+%{_bindir}/sparc64-rtems4.11-gcov%{_exeext}
+%{_bindir}/sparc64-rtems4.11-gccbug
+
+%dir %{_libexecdir}
+%dir %{_libexecdir}/gcc
+%dir %{_libexecdir}/gcc/sparc64-rtems4.11
+%dir %{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}
+%{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}/cc1%{_exeext}
+%{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}/collect2%{_exeext}
+%if "%{gcc_version}" >= "4.5.0"
+%{?with_lto:%{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}/lto%{_exeext}}
+%{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}/lto-wrapper%{_exeext}
+%endif
+
+%files -n rtems-4.11-sparc64-rtems4.11-gcc-libgcc -f build/files.gcc
+%defattr(-,root,root)
+%dir %{_prefix}
+%dir %{_gcclibdir}
+%dir %{_gcclibdir}/gcc
+%dir %{_gcclibdir}/gcc/sparc64-rtems4.11
+%dir %{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}
+%dir %{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}/include
+
+%if "%{gcc_version}" > "4.0.3"
+%dir %{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}/include/ssp
+%endif
+
+%if "%{gcc_version}" >= "4.3.0"
+%{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}/include-fixed
+%endif
+
+# ==============================================================
+# rtems-4.11-gcc-common
+# ==============================================================
+%package -n rtems-4.11-gcc-common
+Summary:	Base package for rtems gcc and newlib C Library
+Group:          Development/Tools
+Version:        %{gcc_rpmvers}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+License:	GPL
+
+Requires(post): 	/sbin/install-info
+Requires(preun):	/sbin/install-info
+
+%description -n rtems-4.11-gcc-common
+GCC files that are shared by all targets.
+
+%files -n rtems-4.11-gcc-common
+%defattr(-,root,root)
+%dir %{_prefix}
+%dir %{_prefix}/share
+
+%dir %{_infodir}
+%ghost %{_infodir}/dir
+%{_infodir}/cpp.info*
+%{_infodir}/cppinternals.info*
+%{_infodir}/gcc.info*
+%{_infodir}/gccint.info*
+%{_infodir}/gccinstall.info*
+
+%dir %{_mandir}
+%dir %{_mandir}/man7
+%{_mandir}/man7/fsf-funding.7*
+%{_mandir}/man7/gfdl.7*
+%{_mandir}/man7/gpl.7*
+
+%post -n rtems-4.11-gcc-common
+  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
+  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/cppinternals.info.gz || :
+  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
+  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/gccint.info.gz || :
+  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/gccinstall.info.gz || :
+
+%preun -n rtems-4.11-gcc-common
+if [ $1 -eq 0 ]; then
+  /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
+  /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/cppinternals.info.gz || :
+  /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
+  /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/gccint.info.gz || :
+  /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/gccinstall.info.gz || :
+fi
+
+# ==============================================================
+# rtems-4.11-sparc64-rtems4.11-gcc-c++
+# ==============================================================
+%package -n rtems-4.11-sparc64-rtems4.11-gcc-c++
+Summary:	GCC c++ compiler for sparc64-rtems4.11
+Group:		Development/Tools
+Version:        %{gcc_rpmvers}
+License:	GPL
+Requires:       rtems-4.11-sparc64-rtems4.11-gcc-libstdc++ = %{gcc_rpmvers}-%{release}
+
+%if "%{_build}" != "%{_host}"
+BuildRequires:  rtems-4.11-sparc64-rtems4.11-gcc-c++ = %{gcc_rpmvers}
+%endif
+
+Requires:       rtems-4.11-gcc-common
+Requires:       rtems-4.11-sparc64-rtems4.11-gcc = %{gcc_rpmvers}-%{release}
+
+%description -n rtems-4.11-sparc64-rtems4.11-gcc-c++
+GCC c++ compiler for sparc64-rtems4.11.
+
+
+%package -n rtems-4.11-sparc64-rtems4.11-gcc-libstdc++
+Summary:	libstdc++ for sparc64-rtems4.11
+Group:		Development/Tools
+Version:        %{gcc_rpmvers}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+License:	GPL
+
+%description -n rtems-4.11-sparc64-rtems4.11-gcc-libstdc++
+%{summary}
+
+
+%files -n rtems-4.11-sparc64-rtems4.11-gcc-c++
+%defattr(-,root,root)
+%dir %{_prefix}
+
+%dir %{_mandir}
+%dir %{_mandir}/man1
+%{_mandir}/man1/sparc64-rtems4.11-g++.1*
+
+%dir %{_bindir}
+%{_bindir}/sparc64-rtems4.11-c++%{_exeext}
+%{_bindir}/sparc64-rtems4.11-g++%{_exeext}
+
+%dir %{_libexecdir}
+%dir %{_libexecdir}/gcc
+%dir %{_libexecdir}/gcc/sparc64-rtems4.11
+%dir %{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}
+%{_libexecdir}/gcc/sparc64-rtems4.11/%{gcc_version}/cc1plus%{_exeext}
+
+
+%files -n rtems-4.11-sparc64-rtems4.11-gcc-libstdc++ -f build/files.g++
+%defattr(-,root,root)
+%dir %{_prefix}
+%dir %{_gcclibdir}
+%dir %{_gcclibdir}/gcc
+%dir %{_gcclibdir}/gcc/sparc64-rtems4.11
+%dir %{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}
+%dir %{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}/include
+%{_gcclibdir}/gcc/sparc64-rtems4.11/%{gcc_version}/include/c++
+
+
+
+# ==============================================================
+# rtems-4.11-sparc64-rtems4.11-newlib
+# ==============================================================
+%package -n rtems-4.11-sparc64-rtems4.11-newlib
+Summary:      	C Library (newlib) for sparc64-rtems4.11
+Group: 		Development/Tools
+License:	Distributable
+Version:	%{newlib_version}
+Release:        11%{?dist}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+
+Requires:	rtems-4.11-newlib-common
+
+%description -n rtems-4.11-sparc64-rtems4.11-newlib
+Newlib C Library for sparc64-rtems4.11.
+
+%files -n rtems-4.11-sparc64-rtems4.11-newlib -f build/files.newlib
+%defattr(-,root,root)
+%dir %{_exec_prefix}
+%dir %{_exec_prefix}/sparc64-rtems4.11
+%{_exec_prefix}/sparc64-rtems4.11/include
+
+# ==============================================================
+# rtems-4.11-newlib-common
+# ==============================================================
+%package -n rtems-4.11-newlib-common
+Summary:	Base package for RTEMS newlib C Library
+Group:          Development/Tools
+Version:        %{newlib_version}
+Release:        11%{?dist}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+License:	Distributable
+
+Requires(post): 	/sbin/install-info
+Requires(preun):	/sbin/install-info
+
+%description -n rtems-4.11-newlib-common
+newlib files that are shared by all targets.
+
+%files -n rtems-4.11-newlib-common
+%defattr(-,root,root)
+%dir %{_prefix}
+%dir %{_prefix}/share
+
+%dir %{_infodir}
+%ghost %{_infodir}/dir
+%{_infodir}/libc.info*
+%{_infodir}/libm.info*
+
+%post -n rtems-4.11-newlib-common
+  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/libc.info.gz || :
+  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/libm.info.gz || :
+
+%preun -n rtems-4.11-newlib-common
+if [ $1 -eq 0 ]; then
+  /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/libc.info.gz || :
+  /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/libm.info.gz || :
+fi
+


 *ralf*:
el6 provides mpfr-2.4.1. Use gloog-devel on el6.

M   1.61  contrib/crossrpms/gcc/gccnewlib.add

diff -u rtems/contrib/crossrpms/gcc/gccnewlib.add:1.60 rtems/contrib/crossrpms/gcc/gccnewlib.add:1.61
--- rtems/contrib/crossrpms/gcc/gccnewlib.add:1.60	Sat Apr 24 09:05:25 2010
+++ rtems/contrib/crossrpms/gcc/gccnewlib.add	Fri May 21 21:51:11 2010
@@ -60,8 +60,7 @@
 
 %if 0%{?el6}
 %global mpc_provided %{nil}
-# el6 beta ships mpfr but mpfr-devel is missing
-%global mpfr_provided %{nil}
+%global mpfr_provided 2.4.1
 %global gmp_provided 4.3.1
 %endif
 
@@ -168,7 +167,7 @@
 %{?fc11:BuildRequires: cloog-ppl-devel >= %cloog_required}
 %{?fc12:BuildRequires: cloog-ppl-devel >= %cloog_required}
 %{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required}
-# el6 ships cloog-ppl, but cloog-ppl-devel is missing
+%{?el6:BuildRequires: cloog-ppl-devel >= %cloog_required}
 %{?suse11_2:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
 %{?suse11_1:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
 %endif


 *ralf*:
Regenerate.

M    1.2  contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec

diff -u rtems/contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec:1.1 rtems/contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec:1.2
--- rtems/contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec:1.1	Fri May 21 21:49:16 2010
+++ rtems/contrib/crossrpms/rtems4.11/sparc64/rtems-4.11-sparc64-rtems4.11-gcc.spec	Fri May 21 21:52:26 2010
@@ -105,8 +105,7 @@
 
 %if 0%{?el6}
 %global mpc_provided %{nil}
-# el6 beta ships mpfr but mpfr-devel is missing
-%global mpfr_provided %{nil}
+%global mpfr_provided 2.4.1
 %global gmp_provided 4.3.1
 %endif
 
@@ -209,7 +208,7 @@
 %{?fc11:BuildRequires: cloog-ppl-devel >= %cloog_required}
 %{?fc12:BuildRequires: cloog-ppl-devel >= %cloog_required}
 %{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required}
-# el6 ships cloog-ppl, but cloog-ppl-devel is missing
+%{?el6:BuildRequires: cloog-ppl-devel >= %cloog_required}
 %{?suse11_2:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
 %{?suse11_1:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
 %endif



--

Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20100521/ac66de5e/attachment.html>


More information about the vc mailing list