From 5e66c0961af0b1ddcc2693a56488677d425bb36d Mon Sep 17 00:00:00 2001 From: Christian Wiese Date: Mon, 6 Aug 2012 15:02:40 +0200 Subject: [PATCH] gcc: Updated (4.6.3 -> 4.7.1) --- base/gcc/gcc-4.6-use-siginfo_t.patch | 244 ------------------ ...tilib-1.patch => gcc-4.7-multilib-1.patch} | 107 ++++---- base/gcc/gcc.desc | 4 +- 3 files changed, 63 insertions(+), 292 deletions(-) delete mode 100644 base/gcc/gcc-4.6-use-siginfo_t.patch rename base/gcc/{gcc-4.6-multilib-1.patch => gcc-4.7-multilib-1.patch} (58%) diff --git a/base/gcc/gcc-4.6-use-siginfo_t.patch b/base/gcc/gcc-4.6-use-siginfo_t.patch deleted file mode 100644 index cb02be992..000000000 --- a/base/gcc/gcc-4.6-use-siginfo_t.patch +++ /dev/null @@ -1,244 +0,0 @@ -# --- SDE-COPYRIGHT-NOTE-BEGIN --- -# This copyright note is auto-generated by ./scripts/Create-CopyPatch. -# -# Filename: package/.../gcc/gcc-4.6-use-siginfo_t.patch -# Copyright (C) 2012 The OpenSDE Project -# -# More information can be found in the files COPYING and README. -# -# This patch file is dual-licensed. It is available under the license the -# patched project is licensed under, as long as it is an OpenSource license -# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms -# of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. -# --- SDE-COPYRIGHT-NOTE-END --- - -From 491ed290277dc809b84c788e8e7dc25a26f3b619 Mon Sep 17 00:00:00 2001 -From: tschwinge -Date: Fri, 20 Apr 2012 08:08:13 +0000 -Subject: [PATCH] struct siginfo vs. siginfo_t - - Backport from trunk (but apply to gcc/): - -gcc/ - 2012-04-20 Thomas Schwinge - - * config/alpha/linux-unwind.h (alpha_fallback_frame_state): Use - siginfo_t instead of struct siginfo. - * config/bfin/linux-unwind.h (bfin_fallback_frame_state): Likewise. - * config/i386/linux-unwind.h (x86_fallback_frame_state): Likewise. - * config/ia64/linux-unwind.h (ia64_fallback_frame_state) - (ia64_handle_unwabi): Likewise. - * config/mips/linux-unwind.h (mips_fallback_frame_state): Likewise. - * config/pa/linux-unwind.h (pa32_fallback_frame_state): Likewise. - * config/sh/linux-unwind.h (shmedia_fallback_frame_state) - (sh_fallback_frame_state): Likewise. - * config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Likewise. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@186612 138bc75d-0d04-0410-961f-82ee72b054a4 ---- - gcc/config/alpha/linux-unwind.h | 4 ++-- - gcc/config/bfin/linux-unwind.h | 6 +++--- - gcc/config/i386/linux-unwind.h | 7 ++++--- - gcc/config/ia64/linux-unwind.h | 6 +++--- - gcc/config/mips/linux-unwind.h | 5 +++-- - gcc/config/pa/linux-unwind.h | 4 ++-- - gcc/config/sh/linux-unwind.h | 9 +++++---- - gcc/config/xtensa/linux-unwind.h | 4 ++-- - 9 files changed, 44 insertions(+), 21 deletions(-) - -diff --git a/gcc/config/alpha/linux-unwind.h b/gcc/config/alpha/linux-unwind.h -index 4c811dc..8c04b3b 100644 ---- a/gcc/config/alpha/linux-unwind.h -+++ b/gcc/config/alpha/linux-unwind.h -@@ -1,5 +1,5 @@ - /* DWARF2 EH unwinding support for Alpha Linux. -- Copyright (C) 2004, 2005, 2009, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2004, 2005, 2009, 2011, 2012 Free Software Foundation, Inc. - - This file is part of GCC. - -@@ -49,7 +49,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context, - else if (pc[1] == 0x201f015f) /* lda $0,NR_rt_sigreturn */ - { - struct rt_sigframe { -- struct siginfo info; -+ siginfo_t info; - struct ucontext uc; - } *rt_ = context->cfa; - sc = &rt_->uc.uc_mcontext; -diff --git a/gcc/config/bfin/linux-unwind.h b/gcc/config/bfin/linux-unwind.h -index 88c8285..15bb2f1 100644 ---- a/gcc/config/bfin/linux-unwind.h -+++ b/gcc/config/bfin/linux-unwind.h -@@ -1,5 +1,5 @@ - /* DWARF2 EH unwinding support for Blackfin. -- Copyright (C) 2007, 2009 Free Software Foundation, Inc. -+ Copyright (C) 2007, 2009, 2012 Free Software Foundation, Inc. - - This file is part of GCC. - -@@ -48,10 +48,10 @@ bfin_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - int sig; -- struct siginfo *pinfo; -+ siginfo_t *pinfo; - void *puc; - char retcode[8]; -- struct siginfo info; -+ siginfo_t info; - struct ucontext uc; - } *rt_ = context->cfa; - -diff --git a/gcc/config/i386/linux-unwind.h b/gcc/config/i386/linux-unwind.h -index c5f7ea0..9e4be80 100644 ---- a/gcc/config/i386/linux-unwind.h -+++ b/gcc/config/i386/linux-unwind.h -@@ -1,5 +1,6 @@ - /* DWARF2 EH unwinding support for AMD x86-64 and x86. -- Copyright (C) 2004, 2005, 2006, 2009, 2010 Free Software Foundation, Inc. -+ Copyright (C) 2004, 2005, 2006, 2009, 2010, 2012 Free Software Foundation, -+ Inc. - - This file is part of GCC. - -@@ -133,9 +134,9 @@ x86_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - int sig; -- struct siginfo *pinfo; -+ siginfo_t *pinfo; - void *puc; -- struct siginfo info; -+ siginfo_t info; - struct ucontext uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. -diff --git a/gcc/config/ia64/linux-unwind.h b/gcc/config/ia64/linux-unwind.h -index 93f762d..da31259 100644 ---- a/gcc/config/ia64/linux-unwind.h -+++ b/gcc/config/ia64/linux-unwind.h -@@ -1,5 +1,5 @@ - /* DWARF2 EH unwinding support for IA64 Linux. -- Copyright (C) 2004, 2005, 2009 Free Software Foundation, Inc. -+ Copyright (C) 2004, 2005, 2009, 2012 Free Software Foundation, Inc. - - This file is part of GCC. - -@@ -47,7 +47,7 @@ ia64_fallback_frame_state (struct _Unwind_Context *context, - struct sigframe { - char scratch[16]; - unsigned long sig_number; -- struct siginfo *info; -+ siginfo_t *info; - struct sigcontext *sc; - } *frame_ = (struct sigframe *)context->psp; - struct sigcontext *sc = frame_->sc; -@@ -137,7 +137,7 @@ ia64_handle_unwabi (struct _Unwind_Context *context, _Unwind_FrameState *fs) - struct sigframe { - char scratch[16]; - unsigned long sig_number; -- struct siginfo *info; -+ siginfo_t *info; - struct sigcontext *sc; - } *frame = (struct sigframe *)context->psp; - struct sigcontext *sc = frame->sc; -diff --git a/gcc/config/mips/linux-unwind.h b/gcc/config/mips/linux-unwind.h -index 02f7cd5..094ff58 100644 ---- a/gcc/config/mips/linux-unwind.h -+++ b/gcc/config/mips/linux-unwind.h -@@ -1,5 +1,6 @@ - /* DWARF2 EH unwinding support for MIPS Linux. -- Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. -+ Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2012 Free Software -+ Foundation, Inc. - - This file is part of GCC. - -@@ -75,7 +76,7 @@ mips_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe { - u_int32_t ass[4]; /* Argument save space for o32. */ - u_int32_t trampoline[2]; -- struct siginfo info; -+ siginfo_t info; - _sig_ucontext_t uc; - } *rt_ = context->cfa; - sc = &rt_->uc.uc_mcontext; -diff --git a/gcc/config/pa/linux-unwind.h b/gcc/config/pa/linux-unwind.h -index a0560e9..38b4eda 100644 ---- a/gcc/config/pa/linux-unwind.h -+++ b/gcc/config/pa/linux-unwind.h -@@ -1,5 +1,5 @@ - /* DWARF2 EH unwinding support for PA Linux. -- Copyright (C) 2004, 2005, 2009 Free Software Foundation, Inc. -+ Copyright (C) 2004, 2005, 2009, 2012 Free Software Foundation, Inc. - - This file is part of GCC. - -@@ -63,7 +63,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context, - int i; - struct sigcontext *sc; - struct rt_sigframe { -- struct siginfo info; -+ siginfo_t info; - struct ucontext uc; - } *frame; - -diff --git a/gcc/config/sh/linux-unwind.h b/gcc/config/sh/linux-unwind.h -index 94ed95d..5a78e31 100644 ---- a/gcc/config/sh/linux-unwind.h -+++ b/gcc/config/sh/linux-unwind.h -@@ -1,5 +1,6 @@ - /* DWARF2 EH unwinding support for SH Linux. -- Copyright (C) 2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. -+ Copyright (C) 2004, 2005, 2006, 2007, 2009, 2012 Free Software Foundation, -+ Inc. - - This file is part of GCC. - -@@ -80,9 +81,9 @@ shmedia_fallback_frame_state (struct _Unwind_Context *context, - && (*(unsigned long *) (pc+11) == 0x6ff0fff0)) - { - struct rt_sigframe { -- struct siginfo *pinfo; -+ siginfo_t *pinfo; - void *puc; -- struct siginfo info; -+ siginfo_t info; - struct ucontext uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. -@@ -179,7 +180,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context, - && (*(unsigned short *) (pc+14) == 0x00ad)))) - { - struct rt_sigframe { -- struct siginfo info; -+ siginfo_t info; - struct ucontext uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. -diff --git a/gcc/config/xtensa/linux-unwind.h b/gcc/config/xtensa/linux-unwind.h -index 32e9349..2456497 100644 ---- a/gcc/config/xtensa/linux-unwind.h -+++ b/gcc/config/xtensa/linux-unwind.h -@@ -1,5 +1,5 @@ - /* DWARF2 EH unwinding support for Xtensa. -- Copyright (C) 2008, 2009 Free Software Foundation, Inc. -+ Copyright (C) 2008, 2009, 2012 Free Software Foundation, Inc. - - This file is part of GCC. - -@@ -62,7 +62,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context, - struct sigcontext *sc; - - struct rt_sigframe { -- struct siginfo info; -+ siginfo_t info; - struct ucontext uc; - } *rt_; - --- -1.7.3.4 - diff --git a/base/gcc/gcc-4.6-multilib-1.patch b/base/gcc/gcc-4.7-multilib-1.patch similarity index 58% rename from base/gcc/gcc-4.6-multilib-1.patch rename to base/gcc/gcc-4.7-multilib-1.patch index f9d5dae0a..515340662 100644 --- a/base/gcc/gcc-4.6-multilib-1.patch +++ b/base/gcc/gcc-4.7-multilib-1.patch @@ -2,7 +2,7 @@ # This copyright note is auto-generated by ./scripts/Create-CopyPatch. # # Filename: package/.../gcc/gcc-4.6-multilib-1.patch -# Copyright (C) 2009 - 2011 The OpenSDE Project +# Copyright (C) 2009 - 2012 The OpenSDE Project # # More information can be found in the files COPYING and README. # @@ -14,92 +14,107 @@ # version. # --- SDE-COPYRIGHT-NOTE-END --- +From 5062892f2adef4afdf0a251decd76fd446777b8a Mon Sep 17 00:00:00 2001 +From: Christian Wiese +Date: Mon, 6 Aug 2012 14:24:08 +0200 +Subject: [PATCH] adjust multilib dirnames to suite OpenSDE's lib as symlink strategy + +--- + gcc/config/i386/linux64.h | 2 +- + gcc/config/i386/t-linux64 | 2 +- + gcc/config/mips/linux64.h | 6 +++--- + gcc/config/mips/t-linux64 | 2 +- + gcc/config/rs6000/linux64.h | 6 +++--- + gcc/config/rs6000/t-linux64 | 2 +- + gcc/config/sparc/linux64.h | 4 ++-- + gcc/config/sparc/t-linux64 | 2 +- + 8 files changed, 13 insertions(+), 13 deletions(-) + diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h -index 8392fab..14659ab 100644 +index 5b0a212..984c147 100644 --- a/gcc/config/i386/linux64.h +++ b/gcc/config/i386/linux64.h -@@ -62,7 +62,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - When the -shared link option is used a final link is not being - done. */ +@@ -28,6 +28,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + #define GNU_USER_LINK_EMULATION64 "elf_x86_64" + #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" -#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2" #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" - - #if TARGET_64BIT_DEFAULT + #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64 -index 5d5a476..b7740c0 100644 +index b5d3985..d530d97 100644 --- a/gcc/config/i386/t-linux64 +++ b/gcc/config/i386/t-linux64 -@@ -25,7 +25,7 @@ - - MULTILIB_OPTIONS = m64/m32 - MULTILIB_DIRNAMES = 64 32 --MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) -+MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32) - - LIBGCC = stmp-multilib - INSTALL_LIBGCC = install-multilib +@@ -35,5 +35,5 @@ comma=, + MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) + MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) + MULTILIB_OSDIRNAMES = m64=../lib64 +-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) ++MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32) + MULTILIB_OSDIRNAMES+= mx32=../libx32 diff --git a/gcc/config/mips/linux64.h b/gcc/config/mips/linux64.h -index 987a991..6e2ebcb 100644 +index 6e92719..4436d75 100644 --- a/gcc/config/mips/linux64.h +++ b/gcc/config/mips/linux64.h -@@ -35,9 +35,9 @@ along with GCC; see the file COPYING3. If not see - %{!shared: \ - %{profile:-lc_p} %{!profile:-lc}}" +@@ -23,10 +23,10 @@ along with GCC; see the file COPYING3. If not see + #define GNU_USER_LINK_EMULATION64 "elf64%{EB:b}%{EL:l}tsmip" + #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" -#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" +#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld.so.1" #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld.so.1" -#define GLIBC_DYNAMIC_LINKERN32 "/lib32/ld.so.1" -+#define GLIBC_DYNAMIC_LINKERN32 "/lib64/ld.so.1" - #define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0" ++#define GLIBC_DYNAMIC_LINKERN32 "/libn32/ld.so.1" ++#define UCLIBC_DYNAMIC_LINKERN32 "/libn32/ld-uClibc.so.0" #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" - #define LINUX_DYNAMIC_LINKERN32 \ + #define GNU_USER_DYNAMIC_LINKERN32 \ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64 -index 66ea51a..d5f424a 100644 +index 5197e5e..b847f7d 100644 --- a/gcc/config/mips/t-linux64 +++ b/gcc/config/mips/t-linux64 -@@ -18,7 +18,7 @@ +@@ -18,4 +18,4 @@ MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64 MULTILIB_DIRNAMES = n32 32 64 -MULTILIB_OSDIRNAMES = ../lib32 ../lib ../lib64 -+MULTILIB_OSDIRNAMES = ../lib64 ../lib32 ../lib64 - - EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o - ++MULTILIB_OSDIRNAMES = ../libn32 ../lib32 ../lib64 diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h -index e6840d6..412f7ce 100644 +index 7c516eb..9fd4b58 100644 --- a/gcc/config/rs6000/linux64.h +++ b/gcc/config/rs6000/linux64.h -@@ -372,7 +372,7 @@ extern int dot_symbols; +@@ -358,10 +358,10 @@ extern int dot_symbols; #undef LINK_OS_DEFAULT_SPEC #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" +#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld.so.1" #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld64.so.1" - #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" - #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER32 "/lib32/ld-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER64 "/lib64/ld64-uClibc.so.0" + #if DEFAULT_LIBC == LIBC_UCLIBC + #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" + #elif DEFAULT_LIBC == LIBC_GLIBC diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64 -index 6a2235f..3d50579 100644 +index 6420431..de44202 100644 --- a/gcc/config/rs6000/t-linux64 +++ b/gcc/config/rs6000/t-linux64 -@@ -36,7 +36,7 @@ MULTILIB_DIRNAMES = 64 32 nof +@@ -31,5 +31,5 @@ MULTILIB_DIRNAMES = 64 32 nof MULTILIB_EXTRA_OPTS = fPIC mstrict-align MULTILIB_EXCEPTIONS = m64/msoft-float MULTILIB_EXCLUSIONS = m64/!m32/msoft-float -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof +MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32) nof MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT) - - softfp_wrap_start := '\#ifndef __powerpc64__' diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h -index a4c67dc..1801418 100644 +index 14966b9..0134911 100644 --- a/gcc/config/sparc/linux64.h +++ b/gcc/config/sparc/linux64.h -@@ -101,7 +101,7 @@ along with GCC; see the file COPYING3. If not see +@@ -93,7 +93,7 @@ along with GCC; see the file COPYING3. If not see When the -shared link option is used a final link is not being done. */ @@ -108,7 +123,7 @@ index a4c67dc..1801418 100644 #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2" #ifdef SPARC_BI_ARCH -@@ -113,7 +113,7 @@ along with GCC; see the file COPYING3. If not see +@@ -105,7 +105,7 @@ along with GCC; see the file COPYING3. If not see { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ { "link_arch", LINK_ARCH_SPEC }, @@ -118,15 +133,15 @@ index a4c67dc..1801418 100644 %{!static: \ %{rdynamic:-export-dynamic} \ diff --git a/gcc/config/sparc/t-linux64 b/gcc/config/sparc/t-linux64 -index 74d0489..3343351 100644 +index d9dfad6..05230e8 100644 --- a/gcc/config/sparc/t-linux64 +++ b/gcc/config/sparc/t-linux64 -@@ -26,7 +26,7 @@ +@@ -26,4 +26,4 @@ MULTILIB_OPTIONS = m64/m32 MULTILIB_DIRNAMES = 64 32 -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) +MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32) - - LIBGCC = stmp-multilib - INSTALL_LIBGCC = install-multilib +-- +1.7.2.3 + diff --git a/base/gcc/gcc.desc b/base/gcc/gcc.desc index f3e31d014..7d911f003 100644 --- a/base/gcc/gcc.desc +++ b/base/gcc/gcc.desc @@ -35,8 +35,8 @@ [L] GPL [S] Stable -[V] 4.6.3 +[V] 4.7.1 [P] X 012--5---9 102.300 -[D] 731377459 gcc-4.6.3.tar.bz2 ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.6.3/ +[D] 1801631583 gcc-4.7.1.tar.bz2 ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.7.1/ [D] 271646925 ecj-4.5.jar ftp://sourceware.org/pub/java/