diff options
Diffstat (limited to 'patches/gcc-4.7.2/0400-add-support-for-arm-linux-eabi-triplets-useful-for-a.patch')
-rw-r--r-- | patches/gcc-4.7.2/0400-add-support-for-arm-linux-eabi-triplets-useful-for-a.patch | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/patches/gcc-4.7.2/0400-add-support-for-arm-linux-eabi-triplets-useful-for-a.patch b/patches/gcc-4.7.2/0400-add-support-for-arm-linux-eabi-triplets-useful-for-a.patch new file mode 100644 index 0000000..a453e35 --- /dev/null +++ b/patches/gcc-4.7.2/0400-add-support-for-arm-linux-eabi-triplets-useful-for-a.patch @@ -0,0 +1,137 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Mon, 3 Dec 2012 13:49:03 +0100 +Subject: [PATCH] add support for arm-linux-*eabi* triplets; useful for armhf + +This is needed to build with e.g. --target=arm-cortexa8-linux-gnueabihf +Taken from Debian. + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + gcc/ada/gcc-interface/Makefile.in | 2 +- + gcc/config.gcc | 4 ++-- + gcc/testsuite/lib/target-supports.exp | 4 ++-- + libgcc/config.host | 2 +- + libjava/configure.ac | 2 +- + libstdc++-v3/configure.host | 2 +- + .../testsuite/20_util/make_signed/requirements/typedefs-2.cc | 2 +- + .../testsuite/20_util/make_unsigned/requirements/typedefs-2.cc | 2 +- + 8 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in +index f9e7eda..a8ee610 100644 +--- a/gcc/ada/gcc-interface/Makefile.in ++++ b/gcc/ada/gcc-interface/Makefile.in +@@ -1867,7 +1867,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(arch) $(osys))),) + LIBRARY_VERSION := $(LIB_VERSION) + endif + +-ifeq ($(strip $(filter-out arm% linux-gnueabi,$(arch) $(osys)-$(word 4,$(targ)))),) ++ifeq ($(strip $(filter-out arm%-linux,$(arch)-$(osys)) $(if $(findstring eabi,$(word 4,$(targ))),,$(word 4,$(targ)))),) + LIBGNAT_TARGET_PAIRS = \ + a-intnam.ads<a-intnam-linux.ads \ + s-inmaop.adb<s-inmaop-posix.adb \ +diff --git a/gcc/config.gcc b/gcc/config.gcc +index 5fcd192..fbacc3d 100644 +--- a/gcc/config.gcc ++++ b/gcc/config.gcc +@@ -850,7 +850,7 @@ arm*-*-linux*) # ARM GNU/Linux with ELF + esac + tmake_file="${tmake_file} arm/t-arm" + case ${target} in +- arm*-*-linux-*eabi) ++ arm*-*-linux-*eabi*) + 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" + # Define multilib configuration for arm-linux-androideabi. +@@ -877,7 +877,7 @@ arm*-*-uclinux*) # ARM ucLinux + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h glibc-stdint.h" + tmake_file="arm/t-arm arm/t-arm-elf" + case ${target} in +- arm*-*-uclinux*eabi) ++ arm*-*-uclinux*eabi*) + tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h" + tmake_file="$tmake_file arm/t-bpabi" + # The BPABI long long divmod functions return a 128-bit value in +diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp +index 63dc0be..fcbdb62 100644 +--- a/gcc/testsuite/lib/target-supports.exp ++++ b/gcc/testsuite/lib/target-supports.exp +@@ -3860,7 +3860,7 @@ proc check_effective_target_sync_int_long { } { + || [istarget i?86-*-*] + || [istarget x86_64-*-*] + || [istarget alpha*-*-*] +- || [istarget arm*-*-linux-gnueabi] ++ || [istarget arm*-*-linux-*eabi*] + || [istarget bfin*-*linux*] + || [istarget hppa*-*linux*] + || [istarget s390*-*-*] +@@ -3890,7 +3890,7 @@ proc check_effective_target_sync_char_short { } { + || [istarget i?86-*-*] + || [istarget x86_64-*-*] + || [istarget alpha*-*-*] +- || [istarget arm*-*-linux-gnueabi] ++ || [istarget arm*-*-linux-*eabi*] + || [istarget hppa*-*linux*] + || [istarget s390*-*-*] + || [istarget powerpc*-*-*] +diff --git a/libgcc/config.host b/libgcc/config.host +index ef9791b..e9da271 100644 +--- a/libgcc/config.host ++++ b/libgcc/config.host +@@ -327,7 +327,7 @@ arm*-*-netbsdelf*) + arm*-*-linux*) # ARM GNU/Linux with ELF + tmake_file="${tmake_file} arm/t-arm t-fixedpoint-gnu-prefix" + case ${host} in +- arm*-*-linux-*eabi) ++ arm*-*-linux-*eabi*) + tmake_file="${tmake_file} arm/t-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc" + tm_file="$tm_file arm/bpabi-lib.h" + unwind_header=config/arm/unwind-arm.h +diff --git a/libjava/configure.ac b/libjava/configure.ac +index 8a25a42..0c71b48 100644 +--- a/libjava/configure.ac ++++ b/libjava/configure.ac +@@ -931,7 +931,7 @@ case "${host}" in + # on Darwin -single_module speeds up loading of the dynamic libraries. + extra_ldflags_libjava=-Wl,-single_module + ;; +-arm*linux*eabi) ++arm*-*-linux-*eabi*) + # Some of the ARM unwinder code is actually in libstdc++. We + # could in principle replicate it in libgcj, but it's better to + # have a dependency on libstdc++. +diff --git a/libstdc++-v3/configure.host b/libstdc++-v3/configure.host +index ca4d819..b0e2cd9 100644 +--- a/libstdc++-v3/configure.host ++++ b/libstdc++-v3/configure.host +@@ -340,7 +340,7 @@ case "${host}" in + fi + esac + case "${host}" in +- arm*-*-linux-*eabi) ++ arm*-*-linux-*eabi*) + port_specific_symbol_files="\$(srcdir)/../config/os/gnu-linux/arm-eabi-extra.ver" + ;; + esac +diff --git a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc +index adf3af4..9c43171 100644 +--- a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc ++++ b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc +@@ -1,5 +1,5 @@ + // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" } +-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux-*eabi* } } + + // 2007-05-03 Benjamin Kosnik <bkoz@redhat.com> + // +diff --git a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc +index a1465d3..5a81789 100644 +--- a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc ++++ b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc +@@ -1,5 +1,5 @@ + // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" } +-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux-*eabi* } } + + // 2007-05-03 Benjamin Kosnik <bkoz@redhat.com> + // |