summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan Hundven <bryanhundven@gmail.com>2015-01-11 07:39:01 (GMT)
committerBryan Hundven <bryanhundven@gmail.com>2015-01-11 07:39:01 (GMT)
commite549e3cc2a18343c22e757f90c328e9b1e3bcada (patch)
treed2c6fb8f6d213e315109643b1d41b54d591c376f
parentaa5cfc5f8f23bc3da3eea50e556f940f68629ca7 (diff)
parent1a6e9782e2a7239f2534347a4ef5b35542dd4e41 (diff)
Merge pull request #25 from bhundven/patchworks-bernhard_walle
Patchwork bernhard walle
-rw-r--r--config/companion_tools.in5
-rw-r--r--patches/gcc/4.7.4/100-hardfloat-ld.patch44
-rw-r--r--scripts/build/companion_tools/050-make.sh3
3 files changed, 52 insertions, 0 deletions
diff --git a/config/companion_tools.in b/config/companion_tools.in
index 18811e6..f922388 100644
--- a/config/companion_tools.in
+++ b/config/companion_tools.in
@@ -35,6 +35,11 @@ config COMP_TOOLS_make
bool
prompt "make"
+config COMP_TOOLS_make_gmake
+ bool
+ prompt "Add gmake symlink to companion gnu/make"
+ depends on COMP_TOOLS_make
+
config COMP_TOOLS_m4
bool
prompt "m4"
diff --git a/patches/gcc/4.7.4/100-hardfloat-ld.patch b/patches/gcc/4.7.4/100-hardfloat-ld.patch
new file mode 100644
index 0000000..0e97b6f
--- /dev/null
+++ b/patches/gcc/4.7.4/100-hardfloat-ld.patch
@@ -0,0 +1,44 @@
+From 9dd1a0668e5ab10a5943fdd1aee2e1616d7fc7ed Mon Sep 17 00:00:00 2001
+From: michaelh <michaelh@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 26 Apr 2012 04:33:08 +0000
+Subject: [PATCH] 2012-04-26 Michael Hope <michael.hope@linaro.org>
+ Richard Earnshaw <rearnsha@arm.com>
+
+ * config/arm/linux-eabi.h (GLIBC_DYNAMIC_LINKER_SOFT_FLOAT): Define.
+ (GLIBC_DYNAMIC_LINKER_HARD_FLOAT): Define.
+ (GLIBC_DYNAMIC_LINKER_DEFAULT): Define.
+ (GLIBC_DYNAMIC_LINKER): Redefine to use the hard float path.
+
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186859 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/config/arm/linux-eabi.h | 12 +++++++++++-
+ 2 files changed, 19 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
+index 80bd825..2ace6f0 100644
+--- a/gcc/config/arm/linux-eabi.h
++++ b/gcc/config/arm/linux-eabi.h
+@@ -62,7 +62,17 @@
+ /* Use ld-linux.so.3 so that it will be possible to run "classic"
+ GNU/Linux binaries on an EABI system. */
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3"
++#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3"
++#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3"
++#if TARGET_DEFAULT_FLOAT_ABI == ARM_FLOAT_ABI_HARD
++#define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_HARD_FLOAT
++#else
++#define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT
++#endif
++#define GLIBC_DYNAMIC_LINKER \
++ "%{mfloat-abi=hard:" GLIBC_DYNAMIC_LINKER_HARD_FLOAT "} \
++ %{mfloat-abi=soft*:" GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "} \
++ %{!mfloat-abi=*:" GLIBC_DYNAMIC_LINKER_DEFAULT "}"
+
+ /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
+ use the GNU/Linux version, not the generic BPABI version. */
+--
+2.1.0
+
diff --git a/scripts/build/companion_tools/050-make.sh b/scripts/build/companion_tools/050-make.sh
index 601e267..4247545 100644
--- a/scripts/build/companion_tools/050-make.sh
+++ b/scripts/build/companion_tools/050-make.sh
@@ -22,6 +22,9 @@ do_companion_tools_make_build() {
--prefix="${CT_BUILDTOOLS_PREFIX_DIR}"
CT_DoExecLog ALL make
CT_DoExecLog ALL make install
+ if [ "${CT_COMP_TOOLS_make_gmake}" = "y" ]; then
+ CT_DoExecLog ALL ln -sv make "${CT_BUILDTOOLS_PREFIX_DIR}/bin/gmake"
+ fi
CT_Popd
CT_EndStep
}