[oe-commits] org.oe.dev gcc: add 4.2.0 with some refreshed patches, untested

koen commit openembedded-commits at lists.openembedded.org
Thu May 31 22:04:56 UTC 2007


gcc: add 4.2.0 with some refreshed patches, untested

Author: koen at openembedded.org
Branch: org.openembedded.dev
Revision: 78f88c31615c9cce59031db7596657c2afd18872
ViewMTN: http://monotone.openembedded.org/revision.psp?id=78f88c31615c9cce59031db7596657c2afd18872
Files:
1
packages/gcc/gcc-4.2.0
packages/gcc/gcc-4.2.0/100-uclibc-conf.patch
packages/gcc/gcc-4.2.0/110-arm-eabi.patch
packages/gcc/gcc-4.2.0/200-uclibc-locale.patch
packages/gcc/gcc-4.2.0/300-libstdc++-pic.patch
packages/gcc/gcc-4.2.0/301-missing-execinfo_h.patch
packages/gcc/gcc-4.2.0/302-c99-snprintf.patch
packages/gcc/gcc-4.2.0/303-c99-complex-ugly-hack.patch
packages/gcc/gcc-4.2.0/304-index_macro.patch
packages/gcc/gcc-4.2.0/602-sdk-libstdc++-includes.patch
packages/gcc/gcc-4.2.0/740-sh-pr24836.patch
packages/gcc/gcc-4.2.0/800-arm-bigendian.patch
packages/gcc/gcc-4.2.0/801-arm-bigendian-eabi.patch
packages/gcc/gcc-4.2.0/README
packages/gcc/gcc-4.2.0/arm-nolibfloat.patch
packages/gcc/gcc-4.2.0/arm-softfloat.patch
packages/gcc/gcc-4.2.0/arm-thumb-cache.patch
packages/gcc/gcc-4.2.0/arm-thumb.patch
packages/gcc/gcc-4.2.0/cache-amnesia.patch
packages/gcc/gcc-4.2.0/fix-ICE-in-arm_unwind_emit_set.diff
packages/gcc/gcc-4.2.0/gcc41-configure.in.patch
packages/gcc/gcc-4.2.0/ldflags.patch
packages/gcc/gcc-4.2.0/sdk-libstdc++-includes.patch
packages/gcc/gcc-4.2.0/sh3-installfix-fixheaders.patch
packages/gcc/gcc-4.2.0/unbreak-armv4t.patch
packages/gcc/gcc-4.2.0/zecke-no-host-includes.patch
packages/gcc/gcc-4.2.0/zecke-xgcc-cpp.patch
packages/gcc/gcc_4.2.0.bb
Diffs:

#
# mt diff -rc6d27052c169f1e02e95bd526eabbee805f36ebc -r78f88c31615c9cce59031db7596657c2afd18872
#
# 
# 
# add_dir "packages/gcc/gcc-4.2.0"
# 
# add_file "packages/gcc/gcc-4.2.0/100-uclibc-conf.patch"
#  content [7864e7e76567d72bd6339ccea248ae75c24a6074]
# 
# add_file "packages/gcc/gcc-4.2.0/110-arm-eabi.patch"
#  content [d948eed1dd804417ae062af1e38e7d55f8f47ae1]
# 
# add_file "packages/gcc/gcc-4.2.0/200-uclibc-locale.patch"
#  content [8e6037b6e0618f8cc3e60113d45ab7ea2e8eccd6]
# 
# add_file "packages/gcc/gcc-4.2.0/300-libstdc++-pic.patch"
#  content [aa362fbe2354d64dc46bf042a84093fd4308db2a]
# 
# add_file "packages/gcc/gcc-4.2.0/301-missing-execinfo_h.patch"
#  content [6500043e6f4e77464f8f277903e0f8c16b29f7d8]
# 
# add_file "packages/gcc/gcc-4.2.0/302-c99-snprintf.patch"
#  content [5837922659dae60d1753d6257befc3472b9180df]
# 
# add_file "packages/gcc/gcc-4.2.0/303-c99-complex-ugly-hack.patch"
#  content [3e656fffeed3399240557279dae21981db135fe9]
# 
# add_file "packages/gcc/gcc-4.2.0/304-index_macro.patch"
#  content [a7d898eb147d9aa339ebf187c236009f205dc377]
# 
# add_file "packages/gcc/gcc-4.2.0/602-sdk-libstdc++-includes.patch"
#  content [e6765af92cbc18a1e910def377a8816bcd460df7]
# 
# add_file "packages/gcc/gcc-4.2.0/740-sh-pr24836.patch"
#  content [fe889fc46b34d5f56e38e156dd622208800960ad]
# 
# add_file "packages/gcc/gcc-4.2.0/800-arm-bigendian.patch"
#  content [2d4e80657a01bd6e96984ef518f9cc80e20202e4]
# 
# add_file "packages/gcc/gcc-4.2.0/801-arm-bigendian-eabi.patch"
#  content [9455ecffe81517322f538077a9976916cab94760]
# 
# add_file "packages/gcc/gcc-4.2.0/README"
#  content [d3da08995423ef301b1feac948fc2f5310bd4ea1]
# 
# add_file "packages/gcc/gcc-4.2.0/arm-nolibfloat.patch"
#  content [7e4d52b09f70abec87ee5c8bf94474db31ce9330]
# 
# add_file "packages/gcc/gcc-4.2.0/arm-softfloat.patch"
#  content [c2fcfd20cc1076a976149055efa9d3d47ccc9961]
# 
# add_file "packages/gcc/gcc-4.2.0/arm-thumb-cache.patch"
#  content [43c66e2b218e047519dfcb193d3e8221c5bcb099]
# 
# add_file "packages/gcc/gcc-4.2.0/arm-thumb.patch"
#  content [c1ab94e8925134bf5b5cae5a2689f0c7127eb008]
# 
# add_file "packages/gcc/gcc-4.2.0/cache-amnesia.patch"
#  content [fc92668ad7f244bd08aa8c42ed9453ec619aa35c]
# 
# add_file "packages/gcc/gcc-4.2.0/fix-ICE-in-arm_unwind_emit_set.diff"
#  content [f0e4b252f1cb809a7708d82dad7317cb0a29f2ca]
# 
# add_file "packages/gcc/gcc-4.2.0/gcc41-configure.in.patch"
#  content [baa3cf740d1ea329fcdef9bc110461df8952fc02]
# 
# add_file "packages/gcc/gcc-4.2.0/ldflags.patch"
#  content [64f8908c9e364510562ad336363270389079e3ad]
# 
# add_file "packages/gcc/gcc-4.2.0/sdk-libstdc++-includes.patch"
#  content [167cc3a95e581e0035c8b4596f8de9606571619f]
# 
# add_file "packages/gcc/gcc-4.2.0/sh3-installfix-fixheaders.patch"
#  content [2fbb26e2564a28c5de1119a3312d8d14b533b99d]
# 
# add_file "packages/gcc/gcc-4.2.0/unbreak-armv4t.patch"
#  content [a184b2b1fd6771fe326d9ab9dd054cba5334513c]
# 
# add_file "packages/gcc/gcc-4.2.0/zecke-no-host-includes.patch"
#  content [6e9d8445c31e423d84214b7b5560ebd144b1fb51]
# 
# add_file "packages/gcc/gcc-4.2.0/zecke-xgcc-cpp.patch"
#  content [6148ea439041ba0af321d2298fea9a6d602f585e]
# 
# add_file "packages/gcc/gcc_4.2.0.bb"
#  content [cf34337c619eaaf14eabf2915fc08a28f5a8a8ee]
# 
============================================================
--- packages/gcc/gcc-4.2.0/100-uclibc-conf.patch	7864e7e76567d72bd6339ccea248ae75c24a6074
+++ packages/gcc/gcc-4.2.0/100-uclibc-conf.patch	7864e7e76567d72bd6339ccea248ae75c24a6074
@@ -0,0 +1,200 @@
+--- gcc/libgomp/configure
++++ gcc/libgomp/configure
+@@ -3771,7 +3771,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/gcc/config/cris/linux.h
++++ gcc/gcc/config/cris/linux.h
+@@ -74,7 +74,11 @@
+ #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
+ 
+ #undef CRIS_SUBTARGET_VERSION
+-#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
++#if UCLIBC_DEFAULT
++# define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
++#else
++# define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
++#endif
+ 
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
+ 
+--- gcc/libstdc++-v3/configure
++++ gcc/libstdc++-v3/configure
+@@ -4276,7 +4276,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/zlib/configure
++++ gcc/zlib/configure
+@@ -3422,7 +3422,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/libobjc/configure
++++ gcc/libobjc/configure
+@@ -3309,7 +3309,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/libgfortran/configure
++++ gcc/libgfortran/configure
+@@ -3695,7 +3695,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/libmudflap/configure
++++ gcc/libmudflap/configure
+@@ -5378,7 +5378,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/boehm-gc/configure
++++ gcc/boehm-gc/configure
+@@ -4316,7 +4316,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/libffi/configure
++++ gcc/libffi/configure
+@@ -3453,7 +3453,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/libssp/configure
++++ gcc/libssp/configure
+@@ -4409,7 +4409,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/contrib/regression/objs-gcc.sh
++++ gcc/contrib/regression/objs-gcc.sh
+@@ -105,6 +105,10 @@
+  then
+   make all-gdb all-dejagnu all-ld || exit 1
+   make install-gdb install-dejagnu install-ld || exit 1
++elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ]
++ then
++  make all-gdb all-dejagnu all-ld || exit 1
++  make install-gdb install-dejagnu install-ld || exit 1
+ elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
+   make bootstrap || exit 1
+   make install || exit 1
+--- gcc/libjava/classpath/ltconfig
++++ gcc/libjava/classpath/ltconfig
+@@ -603,7 +603,7 @@
+ 
+ # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
+ case $host_os in
+-linux-gnu*) ;;
++linux-gnu*|linux-uclibc*) ;;
+ linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
+ esac
+ 
+@@ -1251,7 +1251,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   version_type=linux
+   need_lib_prefix=no
+   need_version=no
+--- gcc/libjava/classpath/configure
++++ gcc/libjava/classpath/configure
+@@ -4665,7 +4665,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/libjava/configure
++++ gcc/libjava/configure
+@@ -5212,7 +5212,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/libtool.m4
++++ gcc/libtool.m4
+@@ -739,7 +739,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+--- gcc/ltconfig
++++ gcc/ltconfig
+@@ -603,7 +603,7 @@
+ 
+ # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
+ case $host_os in
+-linux-gnu*) ;;
++linux-gnu*|linux-uclibc*) ;;
+ linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
+ esac
+ 
+@@ -1251,7 +1251,7 @@
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   version_type=linux
+   need_lib_prefix=no
+   need_version=no
============================================================
--- packages/gcc/gcc-4.2.0/110-arm-eabi.patch	d948eed1dd804417ae062af1e38e7d55f8f47ae1
+++ packages/gcc/gcc-4.2.0/110-arm-eabi.patch	d948eed1dd804417ae062af1e38e7d55f8f47ae1
@@ -0,0 +1,27 @@
+--- gcc-2005q3-1.orig/gcc/config.gcc	2005-10-31 19:02:54.000000000 +0300
++++ gcc-2005q3-1/gcc/config.gcc	2006-01-27 01:09:09.000000000 +0300
+@@ -674,7 +674,7 @@
+ 	tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" 
+ 	tmake_file="t-slibgcc-elf-ver t-linux arm/t-arm"
+ 	case ${target} in
+-	arm*-*-linux-gnueabi)
++	arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
+ 	    tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
+ 	    tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
+   	    # The BPABI long long divmod functions return a 128-bit value in 
+
+diff -urN gcc-2005q3-2/gcc/config/arm/linux-eabi.h gcc-2005q3-2.new/gcc/config/arm/linux-eabi.h
+--- gcc-2005q3-2/gcc/config/arm/linux-eabi.h	2005-12-07 23:14:16.000000000 +0300
++++ gcc-2005q3-2.new/gcc/config/arm/linux-eabi.h	2006-03-29 19:02:34.000000000 +0400
+@@ -53,7 +53,11 @@
+ /* Use ld-linux.so.3 so that it will be possible to run "classic"
+    GNU/Linux binaries on an EABI system.  */
+ #undef LINUX_TARGET_INTERPRETER
++#ifdef USE_UCLIBC
++#define LINUX_TARGET_INTERPRETER "/lib/ld-uClibc.so.0"
++#else
+ #define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.3"
++#endif
+ 
+ /* At this point, bpabi.h will have clobbered LINK_SPEC.  We want to
+    use the GNU/Linux version, not the generic BPABI version.  */
============================================================
--- packages/gcc/gcc-4.2.0/200-uclibc-locale.patch	8e6037b6e0618f8cc3e60113d45ab7ea2e8eccd6
+++ packages/gcc/gcc-4.2.0/200-uclibc-locale.patch	8e6037b6e0618f8cc3e60113d45ab7ea2e8eccd6
@@ -0,0 +1,2790 @@
+--- gcc/libstdc++-v3/acinclude.m4
++++ gcc/libstdc++-v3/acinclude.m4
+@@ -1369,7 +1369,7 @@
+   AC_MSG_CHECKING([for C locale to use])
+   GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@],
+     [use MODEL for target locale package],
+-    [permit generic|gnu|ieee_1003.1-2001|yes|no|auto])
++    [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto])
+   
+   # If they didn't use this option switch, or if they specified --enable
+   # with no specific model, we'll have to look for one.  If they
+@@ -1385,6 +1385,9 @@
+   # Default to "generic".
+   if test $enable_clocale_flag = auto; then
+     case ${target_os} in
++      *-uclibc*)
++        enable_clocale_flag=uclibc
++        ;;
+       linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
+         AC_EGREP_CPP([_GLIBCXX_ok], [
+         #include <features.h>
+@@ -1528,6 +1531,40 @@
+       CTIME_CC=config/locale/generic/time_members.cc
+       CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
+       ;;
++    uclibc)
++      AC_MSG_RESULT(uclibc)
++
++      # Declare intention to use gettext, and add support for specific
++      # languages.
++      # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT
++      ALL_LINGUAS="de fr"
++
++      # Don't call AM-GNU-GETTEXT here. Instead, assume glibc.
++      AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no)
++      if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then
++        USE_NLS=yes
++      fi
++      # Export the build objects.
++      for ling in $ALL_LINGUAS; do \
++        glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \
++        glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \
++      done
++      AC_SUBST(glibcxx_MOFILES)
++      AC_SUBST(glibcxx_POFILES)
++
++      CLOCALE_H=config/locale/uclibc/c_locale.h
++      CLOCALE_CC=config/locale/uclibc/c_locale.cc
++      CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
++      CCOLLATE_CC=config/locale/uclibc/collate_members.cc
++      CCTYPE_CC=config/locale/uclibc/ctype_members.cc
++      CMESSAGES_H=config/locale/uclibc/messages_members.h
++      CMESSAGES_CC=config/locale/uclibc/messages_members.cc
++      CMONEY_CC=config/locale/uclibc/monetary_members.cc
++      CNUMERIC_CC=config/locale/uclibc/numeric_members.cc
++      CTIME_H=config/locale/uclibc/time_members.h
++      CTIME_CC=config/locale/uclibc/time_members.cc
++      CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h
++      ;;
+   esac
+ 
+   # This is where the testsuite looks for locale catalogs, using the
+--- gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
++++ gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+@@ -0,0 +1,63 @@
++// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*-
++
++// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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.
++
++// This library 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 this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++// Written by Jakub Jelinek <jakub at redhat.com>
++
++#include <bits/c++config.h>
++#include <clocale>
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning clean this up
++#endif
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++                                                  
++extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l;
++extern "C" __typeof(strcoll_l) __strcoll_l;
++extern "C" __typeof(strftime_l) __strftime_l;
++extern "C" __typeof(strtod_l) __strtod_l;
++extern "C" __typeof(strtof_l) __strtof_l;
++extern "C" __typeof(strtold_l) __strtold_l;
++extern "C" __typeof(strxfrm_l) __strxfrm_l;
++extern "C" __typeof(newlocale) __newlocale;
++extern "C" __typeof(freelocale) __freelocale;
++extern "C" __typeof(duplocale) __duplocale;
++extern "C" __typeof(uselocale) __uselocale;
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++extern "C" __typeof(iswctype_l) __iswctype_l;
++extern "C" __typeof(towlower_l) __towlower_l;
++extern "C" __typeof(towupper_l) __towupper_l;
++extern "C" __typeof(wcscoll_l) __wcscoll_l;
++extern "C" __typeof(wcsftime_l) __wcsftime_l;
++extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l;
++extern "C" __typeof(wctype_l) __wctype_l;
++#endif 
++
++#endif // GLIBC 2.3 and later
+--- gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc
++++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc
+@@ -0,0 +1,160 @@
++// Wrapper for underlying C-language localization -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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.
++
++// This library 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 this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the%s
>>> DIFF TRUNCATED @ 16K






More information about the Openembedded-commits mailing list