summaryrefslogtreecommitdiff
path: root/toolchain/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/gcc')
-rw-r--r--toolchain/gcc/Makefile14
-rw-r--r--toolchain/gcc/Makefile.inc63
-rw-r--r--toolchain/gcc/patches/12.5.0/csky.patch (renamed from toolchain/gcc/patches/12.3.0/csky.patch)0
-rw-r--r--toolchain/gcc/patches/12.5.0/nios2-softfp.patch (renamed from toolchain/gcc/patches/12.3.0/nios2-softfp.patch)0
-rw-r--r--toolchain/gcc/patches/13.4.0/csky.patch (renamed from toolchain/gcc/patches/13.2.0/csky.patch)0
-rw-r--r--toolchain/gcc/patches/13.4.0/nios2-softfp.patch (renamed from toolchain/gcc/patches/13.2.0/nios2-softfp.patch)0
-rw-r--r--toolchain/gcc/patches/14.3.0/add-crtreloc.frv12
-rw-r--r--toolchain/gcc/patches/14.3.0/csky.patch12
-rw-r--r--toolchain/gcc/patches/14.3.0/libgcc-fdpic-bfin.patch12
-rw-r--r--toolchain/gcc/patches/14.3.0/nios2-softfp.patch14
-rw-r--r--toolchain/gcc/patches/15.1.0/add-crtreloc.frv12
-rw-r--r--toolchain/gcc/patches/15.1.0/csky.patch12
-rw-r--r--toolchain/gcc/patches/15.1.0/libgcc-fdpic-bfin.patch12
-rw-r--r--toolchain/gcc/patches/4.9.3/nds32.patch383894
14 files changed, 384042 insertions, 15 deletions
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index 2b2f7e03c..51fc1fe8b 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -132,8 +132,10 @@ GCC_CONFOPTS+= --with-arch=$(ADK_TARGET_GCC_ARCH)
endif
ifneq ($(ADK_TARGET_FLOAT),)
+ifneq ($(ADK_TARGET_ARCH_OR1K),y)
GCC_CONFOPTS+= --with-float=$(ADK_TARGET_FLOAT)
endif
+endif
ifneq ($(ADK_TARGET_FPU),)
GCC_CONFOPTS+= --with-fpu=$(ADK_TARGET_FPU)
@@ -259,6 +261,10 @@ ifneq ($(ADK_TARGET_ABI_RISCV),)
GCC_CONFOPTS+= --with-abi=${ADK_TARGET_ABI_RISCV}
endif
+ifeq ($(ADK_TOOLCHAIN_GCC_NDS32),y)
+EXTRA_CXXFLAGS:= --std=c++03
+endif
+
ifeq (${ADK_MAKE_PARALLEL},y)
GCC_MAKEOPTS+= -j${ADK_MAKE_JOBS}
endif
@@ -320,7 +326,7 @@ ifeq ($(ADK_TARGET_CPU_SH_SH4A),y)
(cd ${STAGING_TARGET_DIR}/ && ln -sf . m4a)
endif
endif
-ifeq ($(ADK_TARGET_ARCH_M68K),y)
+ifeq ($(ADK_TARGET_CPU_CF),y)
# Need to get gcc to generate _all_ the multilib variants
# (so both MMU and non-mmu M68k and ColdFire).
$(SED) 's/M68K_MLIB_CPU +=/#M68K_MLIB_CPU +=/' $(WRKBUILD)/gcc/config/m68k/t-m68k
@@ -332,7 +338,7 @@ endif
CC='$(HOST_CC)' \
CXX='$(HOST_CXX)' \
CFLAGS="-O0 -g0 -fomit-frame-pointer" \
- CXXFLAGS="-O0 -g0 -fomit-frame-pointer" \
+ CXXFLAGS="-O0 -g0 -fomit-frame-pointer $(EXTRA_CXXFLAGS)" \
$(WRKBUILD)/configure \
${GCC_INITIAL_CONFOPTS} \
${GCC_CONFOPTS} \
@@ -373,7 +379,7 @@ $(WRKBUILD)/.compiled:
cd $(GCC_BUILD_DIR_FINAL); \
PATH='$(TARGET_PATH)' \
CC='$(HOST_CC)' \
- CXX='$(HOST_CXX)' \
+ CXX='$(HOST_CXX) $(EXTRA_CXXFLAGS)' \
CFLAGS_FOR_TARGET='$(TARGET_CFLAGS)' \
CXXFLAGS_FOR_TARGET='$(TARGET_CXXFLAGS)' \
$(WRKBUILD)/configure \
@@ -395,7 +401,7 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
# remove duplicate tools, convert hardlinks to symlinks
set -e; \
cd $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME)/bin; \
- for app in ar as c++ g++ gcc ld ld.gold ld.bfd nm objcopy objdump ranlib strip; do \
+ for app in ar as c++ g++ gcc ld ld.bfd nm objcopy objdump ranlib strip; do \
ln -sf ../../bin/$(GNU_TARGET_NAME)-$${app} $${app}; \
done;
(cd $(TOOLCHAIN_DIR)/usr/bin && \
diff --git a/toolchain/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc
index efae5e6f7..7f8cd0eb8 100644
--- a/toolchain/gcc/Makefile.inc
+++ b/toolchain/gcc/Makefile.inc
@@ -2,33 +2,41 @@
# material, please see the LICENCE file in the top-level directory.
PKG_NAME:= gcc
+ifeq ($(ADK_TOOLCHAIN_GCC_15),y)
+PKG_VERSION:= 15.1.0
+PKG_HASH:= 51b9919ea69c980d7a381db95d4be27edf73b21254eb13d752a08003b4d013b1
+PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
+PKG_RELEASE:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+LIBSTDCXXVER:= 31
+endif
ifeq ($(ADK_TOOLCHAIN_GCC_14),y)
-PKG_VERSION:= 14.1.0
-PKG_HASH:= a0be066c02775002a0fa65ad3c65fb56a8bfd923d072a26ed148c0439ecdb68f
+PKG_VERSION:= 14.3.0
+PKG_HASH:= ace8b8b0dbfe6abfc22f821cb093e195aa5498b7ccf7cd23e4424b9f14afed22
PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
PKG_RELEASE:= 1
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
LIBSTDCXXVER:= 30
endif
ifeq ($(ADK_TOOLCHAIN_GCC_13),y)
-PKG_VERSION:= 13.2.0
-PKG_HASH:= 8cb4be3796651976f94b9356fa08d833524f62420d6292c5033a9a26af315078
+PKG_VERSION:= 13.4.0
+PKG_HASH:= bf0baf3e570c9c74c17c8201f0196c6924b4bd98c90e69d6b2ac0cd823f33bbc
PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
PKG_RELEASE:= 1
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
LIBSTDCXXVER:= 29
endif
ifeq ($(ADK_TOOLCHAIN_GCC_12),y)
-PKG_VERSION:= 12.3.0
-PKG_HASH:= 11275aa7bb34cd8ab101d01b341015499f8d9466342a2574ece93f954d92273b
+PKG_VERSION:= 12.5.0
+PKG_HASH:= f2dfac9c026c58b04251732aa459db614ae1017d32a18a296b1ae5af3dcad927
PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
PKG_RELEASE:= 1
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
LIBSTDCXXVER:= 28
endif
ifeq ($(ADK_TOOLCHAIN_GCC_11),y)
-PKG_VERSION:= 11.4.0
-PKG_HASH:= af828619dd1970734dda3cfb792ea3f2cba61b5a00170ba8bce4910749d73c07
+PKG_VERSION:= 11.5.0
+PKG_HASH:= 5a447f9a2566d15376beece02270decec8b8c1fcb094b93cb335b23497d58117
PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
PKG_RELEASE:= 1
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
@@ -66,8 +74,32 @@ PKG_RELEASE:= 1
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
LIBSTDCXXVER:= 23
endif
+ifeq ($(ADK_TOOLCHAIN_GCC_6),y)
+PKG_VERSION:= 6.5.0
+PKG_HASH:= 4eed92b3c24af2e774de94e96993aadbf6761cdf7a0345e59eb826d20a9ebf73
+PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
+PKG_RELEASE:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+LIBSTDCXXVER:= 22
+endif
+ifeq ($(ADK_TOOLCHAIN_GCC_5),y)
+PKG_VERSION:= 5.5.0
+PKG_HASH:= 3aabce75d6dd206876eced17504b28d47a724c2e430dbd2de176beb948708983
+PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
+PKG_RELEASE:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+LIBSTDCXXVER:= 21
+endif
+ifeq ($(ADK_TOOLCHAIN_GCC_4),y)
+PKG_VERSION:= 4.9.4
+PKG_HASH:= 1680f92781b92cbdb57d7e4f647c650678c594154cb0d707fd9a994424a9860d
+PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
+PKG_RELEASE:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+LIBSTDCXXVER:= 20
+endif
ifeq ($(ADK_TOOLCHAIN_GCC_ARC),y)
-PKG_VERSION:= arc-2023.09
+PKG_VERSION:= arc-2024.12
PKG_GIT:= tag
PKG_SITES:= https://github.com/foss-for-synopsys-dwc-arc-processors/gcc.git
PKG_RELEASE:= 1
@@ -98,6 +130,14 @@ PKG_RELEASE:= 1
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
LIBSTDCXXVER:= 19
endif
+ifeq ($(ADK_TOOLCHAIN_GCC_NDS32),y)
+PKG_VERSION:= 4.9.3
+PKG_HASH:= e6c63b40877bc756cc7cfe6ca98013eb15f02ec6c8c2cf68e24533ad1203aaba
+PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
+PKG_RELEASE:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+LIBSTDCXXVER:= 20
+endif
ifeq ($(ADK_TOOLCHAIN_GCC_KVX),y)
PKG_VERSION:= f98c17b1e78dd3a3da45c0ac1af7b105edf2bf66
PKG_GIT:= hash
@@ -106,7 +146,7 @@ PKG_RELEASE:= 1
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
endif
ifeq ($(ADK_TOOLCHAIN_GCC_XTENSA),y)
-PKG_VERSION:= xtensa-fdpic-abi-spec-1.2
+PKG_VERSION:= xtensa-fdpic-abi-spec-1.4
PKG_GIT:= tag
PKG_SITES:= https://github.com/jcmvbkbc/gcc-xtensa.git
PKG_RELEASE:= 1
@@ -117,5 +157,6 @@ ifeq ($(ADK_TOOLCHAIN_GCC_GIT),y)
PKG_VERSION:= git
PKG_SITES:= https://github.com/gcc-mirror/gcc.git
PKG_RELEASE:= 1
-LIBSTDCXXVER:= 23
+LIBSTDCXXVER:= 30
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
endif
diff --git a/toolchain/gcc/patches/12.3.0/csky.patch b/toolchain/gcc/patches/12.5.0/csky.patch
index ee352951b..ee352951b 100644
--- a/toolchain/gcc/patches/12.3.0/csky.patch
+++ b/toolchain/gcc/patches/12.5.0/csky.patch
diff --git a/toolchain/gcc/patches/12.3.0/nios2-softfp.patch b/toolchain/gcc/patches/12.5.0/nios2-softfp.patch
index c677c6c2f..c677c6c2f 100644
--- a/toolchain/gcc/patches/12.3.0/nios2-softfp.patch
+++ b/toolchain/gcc/patches/12.5.0/nios2-softfp.patch
diff --git a/toolchain/gcc/patches/13.2.0/csky.patch b/toolchain/gcc/patches/13.4.0/csky.patch
index ee352951b..ee352951b 100644
--- a/toolchain/gcc/patches/13.2.0/csky.patch
+++ b/toolchain/gcc/patches/13.4.0/csky.patch
diff --git a/toolchain/gcc/patches/13.2.0/nios2-softfp.patch b/toolchain/gcc/patches/13.4.0/nios2-softfp.patch
index c677c6c2f..c677c6c2f 100644
--- a/toolchain/gcc/patches/13.2.0/nios2-softfp.patch
+++ b/toolchain/gcc/patches/13.4.0/nios2-softfp.patch
diff --git a/toolchain/gcc/patches/14.3.0/add-crtreloc.frv b/toolchain/gcc/patches/14.3.0/add-crtreloc.frv
new file mode 100644
index 000000000..30de24cdc
--- /dev/null
+++ b/toolchain/gcc/patches/14.3.0/add-crtreloc.frv
@@ -0,0 +1,12 @@
+diff -Nur gcc-8.3.0.orig/gcc/config/frv/linux.h gcc-8.3.0/gcc/config/frv/linux.h
+--- gcc-8.3.0.orig/gcc/config/frv/linux.h 2018-01-03 11:03:58.000000000 +0100
++++ gcc-8.3.0/gcc/config/frv/linux.h 2019-10-08 10:52:00.176295821 +0200
+@@ -27,7 +27,7 @@
+
+ #undef STARTFILE_SPEC
+ #define STARTFILE_SPEC \
+- "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
++ "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crtreloc.o%s \
+ crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+
+ #undef ENDFILE_SPEC
diff --git a/toolchain/gcc/patches/14.3.0/csky.patch b/toolchain/gcc/patches/14.3.0/csky.patch
new file mode 100644
index 000000000..ee352951b
--- /dev/null
+++ b/toolchain/gcc/patches/14.3.0/csky.patch
@@ -0,0 +1,12 @@
+diff -Nur gcc-11.2.0.orig/libgcc/config/csky/linux-atomic.c gcc-11.2.0/libgcc/config/csky/linux-atomic.c
+--- gcc-11.2.0.orig/libgcc/config/csky/linux-atomic.c 2021-07-28 08:55:08.760307899 +0200
++++ gcc-11.2.0/libgcc/config/csky/linux-atomic.c 2021-12-14 14:19:23.685729233 +0100
+@@ -24,7 +24,7 @@
+ <http://www.gnu.org/licenses/>. */
+
+ /* Kernel helper for compare-and-exchange. */
+-inline int
++int
+ __kernel_cmpxchg (int oldval, int newval, volatile int *ptr)
+ {
+ register int _a0 asm ("a0") = oldval;
diff --git a/toolchain/gcc/patches/14.3.0/libgcc-fdpic-bfin.patch b/toolchain/gcc/patches/14.3.0/libgcc-fdpic-bfin.patch
new file mode 100644
index 000000000..df0b94fc9
--- /dev/null
+++ b/toolchain/gcc/patches/14.3.0/libgcc-fdpic-bfin.patch
@@ -0,0 +1,12 @@
+diff -Nur gcc-14.2.0.orig/libgcc/unwind-pe.h gcc-14.2.0/libgcc/unwind-pe.h
+--- gcc-14.2.0.orig/libgcc/unwind-pe.h 2024-08-01 10:17:17.000000000 +0200
++++ gcc-14.2.0/libgcc/unwind-pe.h 2025-03-10 10:40:25.191585648 +0100
+@@ -264,7 +264,7 @@
+
+ if (result != 0)
+ {
+-#if __FDPIC__
++#if defined(__FDPIC__) && !defined(__BFIN_FDPIC__)
+ /* FDPIC relative addresses imply taking the GOT address
+ into account. */
+ if ((encoding & DW_EH_PE_pcrel) && (encoding & DW_EH_PE_indirect))
diff --git a/toolchain/gcc/patches/14.3.0/nios2-softfp.patch b/toolchain/gcc/patches/14.3.0/nios2-softfp.patch
new file mode 100644
index 000000000..c677c6c2f
--- /dev/null
+++ b/toolchain/gcc/patches/14.3.0/nios2-softfp.patch
@@ -0,0 +1,14 @@
+diff -Nur gcc-6.2.0.orig/libgcc/config.host gcc-6.2.0/libgcc/config.host
+--- gcc-6.2.0.orig/libgcc/config.host 2016-05-17 08:15:52.000000000 +0200
++++ gcc-6.2.0/libgcc/config.host 2016-10-15 14:42:53.971919904 +0200
+@@ -962,6 +962,10 @@
+ ;;
+ esac
+ ;;
++nios2-*-linux-uclibc*)
++ tmake_file="$tmake_file nios2/t-nios2 nios2/t-linux t-libgcc-pic t-slibgcc-libgcc t-softfp-sfdf t-softfp"
++ md_unwind_header=nios2/linux-unwind.h
++ ;;
+ nios2-*-linux*)
+ tmake_file="$tmake_file nios2/t-nios2 nios2/t-linux t-libgcc-pic t-slibgcc-libgcc"
+ md_unwind_header=nios2/linux-unwind.h
diff --git a/toolchain/gcc/patches/15.1.0/add-crtreloc.frv b/toolchain/gcc/patches/15.1.0/add-crtreloc.frv
new file mode 100644
index 000000000..30de24cdc
--- /dev/null
+++ b/toolchain/gcc/patches/15.1.0/add-crtreloc.frv
@@ -0,0 +1,12 @@
+diff -Nur gcc-8.3.0.orig/gcc/config/frv/linux.h gcc-8.3.0/gcc/config/frv/linux.h
+--- gcc-8.3.0.orig/gcc/config/frv/linux.h 2018-01-03 11:03:58.000000000 +0100
++++ gcc-8.3.0/gcc/config/frv/linux.h 2019-10-08 10:52:00.176295821 +0200
+@@ -27,7 +27,7 @@
+
+ #undef STARTFILE_SPEC
+ #define STARTFILE_SPEC \
+- "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
++ "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crtreloc.o%s \
+ crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+
+ #undef ENDFILE_SPEC
diff --git a/toolchain/gcc/patches/15.1.0/csky.patch b/toolchain/gcc/patches/15.1.0/csky.patch
new file mode 100644
index 000000000..ee352951b
--- /dev/null
+++ b/toolchain/gcc/patches/15.1.0/csky.patch
@@ -0,0 +1,12 @@
+diff -Nur gcc-11.2.0.orig/libgcc/config/csky/linux-atomic.c gcc-11.2.0/libgcc/config/csky/linux-atomic.c
+--- gcc-11.2.0.orig/libgcc/config/csky/linux-atomic.c 2021-07-28 08:55:08.760307899 +0200
++++ gcc-11.2.0/libgcc/config/csky/linux-atomic.c 2021-12-14 14:19:23.685729233 +0100
+@@ -24,7 +24,7 @@
+ <http://www.gnu.org/licenses/>. */
+
+ /* Kernel helper for compare-and-exchange. */
+-inline int
++int
+ __kernel_cmpxchg (int oldval, int newval, volatile int *ptr)
+ {
+ register int _a0 asm ("a0") = oldval;
diff --git a/toolchain/gcc/patches/15.1.0/libgcc-fdpic-bfin.patch b/toolchain/gcc/patches/15.1.0/libgcc-fdpic-bfin.patch
new file mode 100644
index 000000000..df0b94fc9
--- /dev/null
+++ b/toolchain/gcc/patches/15.1.0/libgcc-fdpic-bfin.patch
@@ -0,0 +1,12 @@
+diff -Nur gcc-14.2.0.orig/libgcc/unwind-pe.h gcc-14.2.0/libgcc/unwind-pe.h
+--- gcc-14.2.0.orig/libgcc/unwind-pe.h 2024-08-01 10:17:17.000000000 +0200
++++ gcc-14.2.0/libgcc/unwind-pe.h 2025-03-10 10:40:25.191585648 +0100
+@@ -264,7 +264,7 @@
+
+ if (result != 0)
+ {
+-#if __FDPIC__
++#if defined(__FDPIC__) && !defined(__BFIN_FDPIC__)
+ /* FDPIC relative addresses imply taking the GOT address
+ into account. */
+ if ((encoding & DW_EH_PE_pcrel) && (encoding & DW_EH_PE_indirect))
diff --git a/toolchain/gcc/patches/4.9.3/nds32.patch b/toolchain/gcc/patches/4.9.3/nds32.patch
new file mode 100644
index 000000000..0335a98b7
--- /dev/null
+++ b/toolchain/gcc/patches/4.9.3/nds32.patch
@@ -0,0 +1,383894 @@
+diff -Nur gcc-4.9.3.orig/INSTALL/binaries.html gcc-4.9.3/INSTALL/binaries.html
+--- gcc-4.9.3.orig/INSTALL/binaries.html 2015-06-26 19:59:20.000000000 +0200
++++ gcc-4.9.3/INSTALL/binaries.html 1970-01-01 01:00:00.000000000 +0100
+@@ -1,164 +0,0 @@
+-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+-<html>
+-<!-- Copyright (C) 1988-2015 Free Software Foundation, Inc.
+-
+-Permission is granted to copy, distribute and/or modify this document
+-under the terms of the GNU Free Documentation License, Version 1.3 or
+-any later version published by the Free Software Foundation; with no
+-Invariant Sections, the Front-Cover texts being (a) (see below), and
+-with the Back-Cover Texts being (b) (see below). A copy of the
+-license is included in the section entitled "GNU
+-Free Documentation License".
+-
+-(a) The FSF's Front-Cover Text is:
+-
+-A GNU Manual
+-
+-(b) The FSF's Back-Cover Text is:
+-
+-You have freedom to copy and modify this GNU Manual, like GNU
+- software. Copies published by the Free Software Foundation raise
+- funds for GNU development. -->
+-<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
+-<head>
+-<title>Installing GCC</title>
+-
+-<meta name="description" content="Installing GCC">
+-<meta name="keywords" content="Installing GCC">
+-<meta name="resource-type" content="document">
+-<meta name="distribution" content="global">
+-<meta name="Generator" content="makeinfo">
+-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+-<style type="text/css">
+-<!--
+-a.summary-letter {text-decoration: none}
+-blockquote.smallquotation {font-size: smaller}
+-div.display {margin-left: 3.2em}
+-div.example {margin-left: 3.2em}
+-div.indentedblock {margin-left: 3.2em}
+-div.lisp {margin-left: 3.2em}
+-div.smalldisplay {margin-left: 3.2em}
+-div.smallexample {margin-left: 3.2em}
+-div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
+-div.smalllisp {margin-left: 3.2em}
+-kbd {font-style:oblique}
+-pre.display {font-family: inherit}
+-pre.format {font-family: inherit}
+-pre.menu-comment {font-family: serif}
+-pre.menu-preformatted {font-family: serif}
+-pre.smalldisplay {font-family: inherit; font-size: smaller}
+-pre.smallexample {font-size: smaller}
+-pre.smallformat {font-family: inherit; font-size: smaller}
+-pre.smalllisp {font-size: smaller}
+-span.nocodebreak {white-space:nowrap}
+-span.nolinebreak {white-space:nowrap}
+-span.roman {font-family:serif; font-weight:normal}
+-span.sansserif {font-family:sans-serif; font-weight:normal}
+-ul.no-bullet {list-style: none}
+--->
+-</style>
+-
+-
+-</head>
+-
+-<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
+-<h1 class="settitle" align="center">Installing GCC</h1>
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-<a name="index-Binaries"></a>
+-<a name="index-Installing-GCC_003a-Binaries"></a>
+-
+-<p>We are often asked about pre-compiled versions of GCC. While we cannot
+-provide these for all platforms, below you&rsquo;ll find links to binaries for
+-various platforms where creating them by yourself is not easy due to various
+-reasons.
+-</p>
+-<p>Please note that we did not create these binaries, nor do we
+-support them. If you have any problems installing them, please
+-contact their makers.
+-</p>
+-<ul>
+-<li> AIX:
+-<ul>
+-<li> <a href="http://www.bullfreeware.com">Bull&rsquo;s Freeware and Shareware Archive for AIX</a>;
+-
+-</li><li> <a href="http://pware.hvcc.edu">Hudson Valley Community College Open Source Software for IBM System p</a>;
+-
+-</li><li> <a href="http://www.perzl.org/aix/">AIX 5L and 6 Open Source Packages</a>.
+-</li></ul>
+-
+-</li><li> DOS&mdash;<a href="http://www.delorie.com/djgpp/">DJGPP</a>.
+-
+-</li><li> Renesas H8/300[HS]&mdash;<a href="http://h8300-hms.sourceforge.net/">GNU
+-Development Tools for the Renesas H8/300[HS] Series</a>.
+-
+-</li><li> HP-UX:
+-<ul>
+-<li> <a href="http://hpux.connect.org.uk/">HP-UX Porting Center</a>;
+-
+-</li><li> <a href="ftp://sunsite.informatik.rwth-aachen.de/pub/packages/gcc_hpux/">Binaries for HP-UX 11.00 at Aachen University of Technology</a>.
+-</li></ul>
+-
+-</li><li> <a href="http://www.sco.com/skunkware/devtools/index.html#gcc">SCO
+-OpenServer/Unixware</a>.
+-
+-</li><li> Solaris 2 (SPARC, Intel):
+-<ul>
+-<li> <a href="http://www.opencsw.org/">OpenCSW</a>
+-
+-</li><li> <a href="http://jupiterrise.com/tgcware/">TGCware</a>
+-</li></ul>
+-
+-</li><li> Microsoft Windows:
+-<ul>
+-<li> The <a href="http://sourceware.org/cygwin/">Cygwin</a> project;
+-</li><li> The <a href="http://www.mingw.org/">MinGW</a> project.
+-</li></ul>
+-
+-</li><li> <a href="ftp://ftp.thewrittenword.com/packages/by-name/">The
+-Written Word</a> offers binaries for
+-AIX 4.3.3, 5.1 and 5.2,
+-GNU/Linux (i386),
+-HP-UX 10.20, 11.00, and 11.11, and
+-Solaris/SPARC 2.5.1, 2.6, 7, 8, 9 and 10.
+-
+-</li><li> <a href="http://www.openpkg.org/">OpenPKG</a> offers binaries for quite a
+-number of platforms.
+-
+-</li><li> The <a href="http://gcc.gnu.org/wiki/GFortranBinaries">GFortran Wiki</a> has
+-links to GNU Fortran binaries for several platforms.
+-</li></ul>
+-
+-<hr />
+-<p><p><a href="./index.html">Return to the GCC Installation page</a>
+-</p>
+-
+-
+-
+-
+-
+-
+-
+-</body>
+-</html>
+diff -Nur gcc-4.9.3.orig/INSTALL/build.html gcc-4.9.3/INSTALL/build.html
+--- gcc-4.9.3.orig/INSTALL/build.html 2015-06-26 19:59:18.000000000 +0200
++++ gcc-4.9.3/INSTALL/build.html 1970-01-01 01:00:00.000000000 +0100
+@@ -1,457 +0,0 @@
+-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+-<html>
+-<!-- Copyright (C) 1988-2015 Free Software Foundation, Inc.
+-
+-Permission is granted to copy, distribute and/or modify this document
+-under the terms of the GNU Free Documentation License, Version 1.3 or
+-any later version published by the Free Software Foundation; with no
+-Invariant Sections, the Front-Cover texts being (a) (see below), and
+-with the Back-Cover Texts being (b) (see below). A copy of the
+-license is included in the section entitled "GNU
+-Free Documentation License".
+-
+-(a) The FSF's Front-Cover Text is:
+-
+-A GNU Manual
+-
+-(b) The FSF's Back-Cover Text is:
+-
+-You have freedom to copy and modify this GNU Manual, like GNU
+- software. Copies published by the Free Software Foundation raise
+- funds for GNU development. -->
+-<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
+-<head>
+-<title>Installing GCC</title>
+-
+-<meta name="description" content="Installing GCC">
+-<meta name="keywords" content="Installing GCC">
+-<meta name="resource-type" content="document">
+-<meta name="distribution" content="global">
+-<meta name="Generator" content="makeinfo">
+-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+-<style type="text/css">
+-<!--
+-a.summary-letter {text-decoration: none}
+-blockquote.smallquotation {font-size: smaller}
+-div.display {margin-left: 3.2em}
+-div.example {margin-left: 3.2em}
+-div.indentedblock {margin-left: 3.2em}
+-div.lisp {margin-left: 3.2em}
+-div.smalldisplay {margin-left: 3.2em}
+-div.smallexample {margin-left: 3.2em}
+-div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
+-div.smalllisp {margin-left: 3.2em}
+-kbd {font-style:oblique}
+-pre.display {font-family: inherit}
+-pre.format {font-family: inherit}
+-pre.menu-comment {font-family: serif}
+-pre.menu-preformatted {font-family: serif}
+-pre.smalldisplay {font-family: inherit; font-size: smaller}
+-pre.smallexample {font-size: smaller}
+-pre.smallformat {font-family: inherit; font-size: smaller}
+-pre.smalllisp {font-size: smaller}
+-span.nocodebreak {white-space:nowrap}
+-span.nolinebreak {white-space:nowrap}
+-span.roman {font-family:serif; font-weight:normal}
+-span.sansserif {font-family:sans-serif; font-weight:normal}
+-ul.no-bullet {list-style: none}
+--->
+-</style>
+-
+-
+-</head>
+-
+-<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
+-<h1 class="settitle" align="center">Installing GCC</h1>
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-<a name="index-Installing-GCC_003a-Building"></a>
+-
+-<p>Now that GCC is configured, you are ready to build the compiler and
+-runtime libraries.
+-</p>
+-<p>Some commands executed when making the compiler may fail (return a
+-nonzero status) and be ignored by <code>make</code>. These failures, which
+-are often due to files that were not found, are expected, and can safely
+-be ignored.
+-</p>
+-<p>It is normal to have compiler warnings when compiling certain files.
+-Unless you are a GCC developer, you can generally ignore these warnings
+-unless they cause compilation to fail. Developers should attempt to fix
+-any warnings encountered, however they can temporarily continue past
+-warnings-as-errors by specifying the configure flag
+-<samp>--disable-werror</samp>.
+-</p>
+-<p>On certain old systems, defining certain environment variables such as
+-<code>CC</code> can interfere with the functioning of <code>make</code>.
+-</p>
+-<p>If you encounter seemingly strange errors when trying to build the
+-compiler in a directory other than the source directory, it could be
+-because you have previously configured the compiler in the source
+-directory. Make sure you have done all the necessary preparations.
+-</p>
+-<p>If you build GCC on a BSD system using a directory stored in an old System
+-V file system, problems may occur in running <code>fixincludes</code> if the
+-System V file system doesn&rsquo;t support symbolic links. These problems
+-result in a failure to fix the declaration of <code>size_t</code> in
+-<samp>sys/types.h</samp>. If you find that <code>size_t</code> is a signed type and
+-that type mismatches occur, this could be the cause.
+-</p>
+-<p>The solution is not to use such a directory for building GCC.
+-</p>
+-<p>Similarly, when building from SVN or snapshots, or if you modify
+-<samp>*.l</samp> files, you need the Flex lexical analyzer generator
+-installed. If you do not modify <samp>*.l</samp> files, releases contain
+-the Flex-generated files and you do not need Flex installed to build
+-them. There is still one Flex-based lexical analyzer (part of the
+-build machinery, not of GCC itself) that is used even if you only
+-build the C front end.
+-</p>
+-<p>When building from SVN or snapshots, or if you modify Texinfo
+-documentation, you need version 4.7 or later of Texinfo installed if you
+-want Info documentation to be regenerated. Releases contain Info
+-documentation pre-built for the unmodified documentation in the release.
+-</p>
+-<a name="Building-a-native-compiler"></a>
+-<h3 class="section">Building a native compiler</h3>
+-
+-<p>For a native build, the default configuration is to perform
+-a 3-stage bootstrap of the compiler when &lsquo;<samp>make</samp>&rsquo; is invoked.
+-This will build the entire GCC system and ensure that it compiles
+-itself correctly. It can be disabled with the <samp>--disable-bootstrap</samp>
+-parameter to &lsquo;<samp>configure</samp>&rsquo;, but bootstrapping is suggested because
+-the compiler will be tested more completely and could also have
+-better performance.
+-</p>
+-<p>The bootstrapping process will complete the following steps:
+-</p>
+-<ul>
+-<li> Build tools necessary to build the compiler.
+-
+-</li><li> Perform a 3-stage bootstrap of the compiler. This includes building
+-three times the target tools for use by the compiler such as binutils
+-(bfd, binutils, gas, gprof, ld, and opcodes) if they have been
+-individually linked or moved into the top level GCC source tree before
+-configuring.
+-
+-</li><li> Perform a comparison test of the stage2 and stage3 compilers.
+-
+-</li><li> Build runtime libraries using the stage3 compiler from the previous step.
+-
+-</li></ul>
+-
+-<p>If you are short on disk space you might consider &lsquo;<samp>make
+-bootstrap-lean</samp>&rsquo; instead. The sequence of compilation is the
+-same described above, but object files from the stage1 and
+-stage2 of the 3-stage bootstrap of the compiler are deleted as
+-soon as they are no longer needed.
+-</p>
+-<p>If you wish to use non-default GCC flags when compiling the stage2
+-and stage3 compilers, set <code>BOOT_CFLAGS</code> on the command line when
+-doing &lsquo;<samp>make</samp>&rsquo;. For example, if you want to save additional space
+-during the bootstrap and in the final installation as well, you can
+-build the compiler binaries without debugging information as in the
+-following example. This will save roughly 40% of disk space both for
+-the bootstrap and the final installation. (Libraries will still contain
+-debugging information.)
+-</p>
+-<div class="smallexample">
+-<pre class="smallexample">make BOOT_CFLAGS='-O' bootstrap
+-</pre></div>
+-
+-<p>You can place non-default optimization flags into <code>BOOT_CFLAGS</code>; they
+-are less well tested here than the default of &lsquo;<samp>-g -O2</samp>&rsquo;, but should
+-still work. In a few cases, you may find that you need to specify special
+-flags such as <samp>-msoft-float</samp> here to complete the bootstrap; or,
+-if the native compiler miscompiles the stage1 compiler, you may need
+-to work around this, by choosing <code>BOOT_CFLAGS</code> to avoid the parts
+-of the stage1 compiler that were miscompiled, or by using &lsquo;<samp>make
+-bootstrap4</samp>&rsquo; to increase the number of stages of bootstrap.
+-</p>
+-<p><code>BOOT_CFLAGS</code> does not apply to bootstrapped target libraries.
+-Since these are always compiled with the compiler currently being
+-bootstrapped, you can use <code>CFLAGS_FOR_TARGET</code> to modify their
+-compilation flags, as for non-bootstrapped target libraries.
+-Again, if the native compiler miscompiles the stage1 compiler, you may
+-need to work around this by avoiding non-working parts of the stage1
+-compiler. Use <code>STAGE1_TFLAGS</code> to this end.
+-</p>
+-<p>If you used the flag <samp>--enable-languages=&hellip;</samp> to restrict
+-the compilers to be built, only those you&rsquo;ve actually enabled will be
+-built. This will of course only build those runtime libraries, for
+-which the particular compiler has been built. Please note,
+-that re-defining <code>LANGUAGES</code> when calling &lsquo;<samp>make</samp>&rsquo;
+-<strong>does not</strong> work anymore!
+-</p>
+-<p>If the comparison of stage2 and stage3 fails, this normally indicates
+-that the stage2 compiler has compiled GCC incorrectly, and is therefore
+-a potentially serious bug which you should investigate and report. (On
+-a few systems, meaningful comparison of object files is impossible; they
+-always appear &ldquo;different&rdquo;. If you encounter this problem, you will
+-need to disable comparison in the <samp>Makefile</samp>.)
+-</p>
+-<p>If you do not want to bootstrap your compiler, you can configure with
+-<samp>--disable-bootstrap</samp>. In particular cases, you may want to
+-bootstrap your compiler even if the target system is not the same as
+-the one you are building on: for example, you could build a
+-<code>powerpc-unknown-linux-gnu</code> toolchain on a
+-<code>powerpc64-unknown-linux-gnu</code> host. In this case, pass
+-<samp>--enable-bootstrap</samp> to the configure script.
+-</p>
+-<p><code>BUILD_CONFIG</code> can be used to bring in additional customization
+-to the build. It can be set to a whitespace-separated list of names.
+-For each such <code>NAME</code>, top-level <samp>config/<code>NAME</code>.mk</samp> will
+-be included by the top-level <samp>Makefile</samp>, bringing in any settings
+-it contains. The default <code>BUILD_CONFIG</code> can be set using the
+-configure option <samp>--with-build-config=<code>NAME</code>...</samp>. Some
+-examples of supported build configurations are:
+-</p>
+-<dl compact="compact">
+-<dt>&lsquo;<samp>bootstrap-O1</samp>&rsquo;</dt>
+-<dd><p>Removes any <samp>-O</samp>-started option from <code>BOOT_CFLAGS</code>, and adds
+-<samp>-O1</samp> to it. &lsquo;<samp>BUILD_CONFIG=bootstrap-O1</samp>&rsquo; is equivalent to
+-&lsquo;<samp>BOOT_CFLAGS='-g -O1'</samp>&rsquo;.
+-</p>
+-</dd>
+-<dt>&lsquo;<samp>bootstrap-O3</samp>&rsquo;</dt>
+-<dd><p>Analogous to <code>bootstrap-O1</code>.
+-</p>
+-</dd>
+-<dt>&lsquo;<samp>bootstrap-lto</samp>&rsquo;</dt>
+-<dd><p>Enables Link-Time Optimization for host tools during bootstrapping.
+-&lsquo;<samp>BUILD_CONFIG=bootstrap-lto</samp>&rsquo; is equivalent to adding
+-<samp>-flto</samp> to &lsquo;<samp>BOOT_CFLAGS</samp>&rsquo;.
+-</p>
+-</dd>
+-<dt>&lsquo;<samp>bootstrap-debug</samp>&rsquo;</dt>
+-<dd><p>Verifies that the compiler generates the same executable code, whether
+-or not it is asked to emit debug information. To this end, this
+-option builds stage2 host programs without debug information, and uses
+-<samp>contrib/compare-debug</samp> to compare them with the stripped stage3
+-object files. If <code>BOOT_CFLAGS</code> is overridden so as to not enable
+-debug information, stage2 will have it, and stage3 won&rsquo;t. This option
+-is enabled by default when GCC bootstrapping is enabled, if
+-<code>strip</code> can turn object files compiled with and without debug
+-info into identical object files. In addition to better test
+-coverage, this option makes default bootstraps faster and leaner.
+-</p>
+-</dd>
+-<dt>&lsquo;<samp>bootstrap-debug-big</samp>&rsquo;</dt>
+-<dd><p>Rather than comparing stripped object files, as in
+-<code>bootstrap-debug</code>, this option saves internal compiler dumps
+-during stage2 and stage3 and compares them as well, which helps catch
+-additional potential problems, but at a great cost in terms of disk
+-space. It can be specified in addition to &lsquo;<samp>bootstrap-debug</samp>&rsquo;.
+-</p>
+-</dd>
+-<dt>&lsquo;<samp>bootstrap-debug-lean</samp>&rsquo;</dt>
+-<dd><p>This option saves disk space compared with <code>bootstrap-debug-big</code>,
+-but at the expense of some recompilation. Instead of saving the dumps
+-of stage2 and stage3 until the final compare, it uses
+-<samp>-fcompare-debug</samp> to generate, compare and remove the dumps
+-during stage3, repeating the compilation that already took place in
+-stage2, whose dumps were not saved.
+-</p>
+-</dd>
+-<dt>&lsquo;<samp>bootstrap-debug-lib</samp>&rsquo;</dt>
+-<dd><p>This option tests executable code invariance over debug information
+-generation on target libraries, just like <code>bootstrap-debug-lean</code>
+-tests it on host programs. It builds stage3 libraries with
+-<samp>-fcompare-debug</samp>, and it can be used along with any of the
+-<code>bootstrap-debug</code> options above.
+-</p>
+-<p>There aren&rsquo;t <code>-lean</code> or <code>-big</code> counterparts to this option
+-because most libraries are only build in stage3, so bootstrap compares
+-would not get significant coverage. Moreover, the few libraries built
+-in stage2 are used in stage3 host programs, so we wouldn&rsquo;t want to
+-compile stage2 libraries with different options for comparison purposes.
+-</p>
+-</dd>
+-<dt>&lsquo;<samp>bootstrap-debug-ckovw</samp>&rsquo;</dt>
+-<dd><p>Arranges for error messages to be issued if the compiler built on any
+-stage is run without the option <samp>-fcompare-debug</samp>. This is
+-useful to verify the full <samp>-fcompare-debug</samp> testing coverage. It
+-must be used along with <code>bootstrap-debug-lean</code> and
+-<code>bootstrap-debug-lib</code>.
+-</p>