diff --git a/package/valgrind/patches/0000-fix-build.patch-armv7-a b/package/valgrind/patches/0000-fix-build.patch-armv7-a new file mode 100644 index 00000000..18147750 --- /dev/null +++ b/package/valgrind/patches/0000-fix-build.patch-armv7-a @@ -0,0 +1,46 @@ +From f0b4fd4d1c96b77cbf6c881b7d2d29882a05ab89 Mon Sep 17 00:00:00 2001 +Message-Id: +From: gixxpunk +Date: Fri, 27 Oct 2017 14:45:27 +0200 +Subject: [PATCH] - valgrind-fix-build-armv7-a + +--- + Makefile.all.am | 6 +++--- + configure.ac | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile.all.am b/Makefile.all.am +index 1859a51..6ca4374 100644 +--- a/Makefile.all.am ++++ b/Makefile.all.am +@@ -199,11 +199,11 @@ AM_CCASFLAGS_PPC64LE_LINUX = @FLAG_M64@ -g + + AM_FLAG_M3264_ARM_LINUX = @FLAG_M32@ + AM_CFLAGS_ARM_LINUX = @FLAG_M32@ \ +- $(AM_CFLAGS_BASE) -marm -mcpu=cortex-a8 ++ $(AM_CFLAGS_BASE) -mlittle-endian -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mhard-float + AM_CFLAGS_PSO_ARM_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) \ +- -marm -mcpu=cortex-a8 $(AM_CFLAGS_PSO_BASE) ++ -mlittle-endian -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mhard-float $(AM_CFLAGS_PSO_BASE) + AM_CCASFLAGS_ARM_LINUX = @FLAG_M32@ \ +- -marm -mcpu=cortex-a8 -g ++ -mlittle-endian -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mhard-float -g + + AM_FLAG_M3264_ARM64_LINUX = @FLAG_M64@ + AM_CFLAGS_ARM64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) +diff --git a/configure.ac b/configure.ac +index 3874296..0fc12f7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -234,7 +234,7 @@ case "${host_cpu}" in + ARCH_MAX="s390x" + ;; + +- armv7*) ++ arm*) + AC_MSG_RESULT([ok (${host_cpu})]) + ARCH_MAX="arm" + ;; +-- +2.15.0.rc2 + diff --git a/package/valgrind/patches/0000-fix-build.patch-armv7ve b/package/valgrind/patches/0000-fix-build.patch-armv7ve new file mode 100644 index 00000000..a87f7102 --- /dev/null +++ b/package/valgrind/patches/0000-fix-build.patch-armv7ve @@ -0,0 +1,46 @@ +From 9901cac770d0d81ccf1ee8e5a02abf54d18e3a04 Mon Sep 17 00:00:00 2001 +Message-Id: <9901cac770d0d81ccf1ee8e5a02abf54d18e3a04.1509108606.git.thomas.harfmann@gmail.com> +From: gixxpunk +Date: Fri, 27 Oct 2017 14:50:01 +0200 +Subject: [PATCH] - valgrind-fix-build-armv7ve + +--- + Makefile.all.am | 6 +++--- + configure.ac | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile.all.am b/Makefile.all.am +index 1859a51..648a197 100644 +--- a/Makefile.all.am ++++ b/Makefile.all.am +@@ -199,11 +199,11 @@ AM_CCASFLAGS_PPC64LE_LINUX = @FLAG_M64@ -g + + AM_FLAG_M3264_ARM_LINUX = @FLAG_M32@ + AM_CFLAGS_ARM_LINUX = @FLAG_M32@ \ +- $(AM_CFLAGS_BASE) -marm -mcpu=cortex-a8 ++ $(AM_CFLAGS_BASE) -mlittle-endian -march=armv7ve -mtune=cortex-a15 -mfpu=neon-vfpv4 -mhard-float + AM_CFLAGS_PSO_ARM_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) \ +- -marm -mcpu=cortex-a8 $(AM_CFLAGS_PSO_BASE) ++ -mlittle-endian -march=armv7ve -mtune=cortex-a15 -mfpu=neon-vfpv4 -mhard-float $(AM_CFLAGS_PSO_BASE) + AM_CCASFLAGS_ARM_LINUX = @FLAG_M32@ \ +- -marm -mcpu=cortex-a8 -g ++ -mlittle-endian -march=armv7ve -mtune=cortex-a15 -mfpu=neon-vfpv4 -mhard-float -g + + AM_FLAG_M3264_ARM64_LINUX = @FLAG_M64@ + AM_CFLAGS_ARM64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) +diff --git a/configure.ac b/configure.ac +index 3874296..0fc12f7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -234,7 +234,7 @@ case "${host_cpu}" in + ARCH_MAX="s390x" + ;; + +- armv7*) ++ arm*) + AC_MSG_RESULT([ok (${host_cpu})]) + ARCH_MAX="arm" + ;; +-- +2.15.0.rc2 + diff --git a/package/valgrind/patches/0001-workaround-SIGSEGV-on-PPC.patch b/package/valgrind/patches/0001-workaround-SIGSEGV-on-PPC.patch new file mode 100644 index 00000000..8a6003cb --- /dev/null +++ b/package/valgrind/patches/0001-workaround-SIGSEGV-on-PPC.patch @@ -0,0 +1,32 @@ +From ff29b837f21a69c79289c3a87b03f8c23e05616e Mon Sep 17 00:00:00 2001 +From: Pierre Habouzit +Date: Tue, 10 May 2011 23:11:45 +0200 +Subject: [PATCH] workaround SIGSEGV on PPC. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Pierre Habouzit +Signed-off-by: Jérôme Pouiller +--- + coregrind/m_machine.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c +index 6110c93..298a00e 100644 +--- a/coregrind/m_machine.c ++++ b/coregrind/m_machine.c +@@ -27,6 +27,10 @@ + The GNU General Public License is contained in the file COPYING. + */ + ++#ifdef __powerpc__ ++# pragma GCC optimize ("-O0") ++#endif ++ + #include "pub_core_basics.h" + #include "pub_core_vki.h" + #include "pub_core_threadstate.h" +-- +2.1.4 + diff --git a/package/valgrind/patches/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch b/package/valgrind/patches/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch new file mode 100644 index 00000000..44adfc41 --- /dev/null +++ b/package/valgrind/patches/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch @@ -0,0 +1,37 @@ +From 7311686d6286972ff97cc18b2416a4cdd7fc5c7e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 31 Oct 2015 12:15:24 +0100 +Subject: [PATCH] Define PTRACE_GETSIGINFO on PowerPC when not available + +uClibc 0.9.33.2 does not define PTRACE_GETSIGINFO in PowerPC. Even +though Buildroot has a uClibc patch doing that, it doesn't solve the +case of external uClibc toolchain from other sources (such as +Crosstool-NG). Therefore, this patch modifies Valgrind to define +PTRACE_GETSIGINFO on PowerPC to the right value, when such definition +is not available from the C library. + +Signed-off-by: Thomas Petazzoni +--- + coregrind/vgdb-invoker-ptrace.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/coregrind/vgdb-invoker-ptrace.c b/coregrind/vgdb-invoker-ptrace.c +index d65f59a..bdefac2 100644 +--- a/coregrind/vgdb-invoker-ptrace.c ++++ b/coregrind/vgdb-invoker-ptrace.c +@@ -72,6 +72,12 @@ + # endif + #endif + ++#if defined(__powerpc__) ++# ifndef PTRACE_GETSIGINFO ++# define PTRACE_GETSIGINFO 0x4202 ++# endif ++#endif ++ + // 32-bit or 64-bit wide, depending on primary architecture. + typedef Addr CORE_ADDR; + typedef Addr PTRACE_XFER_TYPE; +-- +2.1.4 +