Move all to deprecated folder.

This commit is contained in:
2016-11-16 21:57:57 +01:00
parent 01738a7684
commit 05de7d6c04
9777 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
From ff29b837f21a69c79289c3a87b03f8c23e05616e Mon Sep 17 00:00:00 2001
From: Pierre Habouzit <madcoder@debian.org>
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 <madcoder@debian.org>
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
---
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

View File

@@ -0,0 +1,37 @@
From 7311686d6286972ff97cc18b2416a4cdd7fc5c7e Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
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 <thomas.petazzoni@free-electrons.com>
---
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

View File

@@ -0,0 +1,137 @@
mips: replace addi with addiu
ADDI instruction has been removed in R6 so let's use ADDIU instead.
This patch has been sent upstream:
https://bugs.kde.org/show_bug.cgi?id=356112
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Index: valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S
===================================================================
--- valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S (revision 15740)
+++ valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S (working copy)
@@ -196,7 +196,7 @@
addu $13, $13, $14
lw $12, 0($13) /* t3 = VG_(tt_fast)[hash] :: ULong* */
- addi $13, $13, 4
+ addiu $13, $13, 4
lw $25, 0($13) /* little-endian, so comparing 1st 32bit word */
nop
Index: valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S
===================================================================
--- valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S (revision 15740)
+++ valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S (working copy)
@@ -196,7 +196,7 @@
daddu $13, $13, $14
ld $12, 0($13) /* t3 = VG_(tt_fast)[hash] :: ULong* */
- daddi $13, $13, 8
+ daddiu $13, $13, 8
ld $25, 0($13) /* little-endian, so comparing 1st 32bit word */
nop
Index: valgrind/coregrind/m_libcsetjmp.c
===================================================================
--- valgrind/coregrind/m_libcsetjmp.c (revision 15740)
+++ valgrind/coregrind/m_libcsetjmp.c (working copy)
@@ -594,7 +594,7 @@
/* Checking whether second argument is zero. */
" bnez $a1, 1f \n\t"
" nop \n\t"
-" addi $a1, $a1, 1 \n\t" /* We must return 1 if val=0. */
+" addiu $a1, $a1, 1 \n\t" /* We must return 1 if val=0. */
"1: \n\t"
" move $v0, $a1 \n\t" /* Return value of second argument. */
" j $ra \n\t"
Index: valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c
===================================================================
--- valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c (revision 15740)
+++ valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c (working copy)
@@ -173,7 +173,7 @@
" ld $30, 8($29)\n"
" ld $28, 16($29)\n"
" jr $31\n"
-" daddi $29,$29, 32\n"
+" daddiu $29,$29, 32\n"
".previous\n"
);
Index: valgrind/coregrind/m_trampoline.S
===================================================================
--- valgrind/coregrind/m_trampoline.S (revision 15740)
+++ valgrind/coregrind/m_trampoline.S (working copy)
@@ -1254,8 +1254,8 @@
//la $a0, string
j strlen_cond
strlen_loop:
- addi $v0, $v0, 1
- addi $a0, $a0, 1
+ addiu $v0, $v0, 1
+ addiu $a0, $a0, 1
strlen_cond:
lbu $t0, ($a0)
bne $t0, $zero, strlen_loop
Index: valgrind/helgrind/tests/tc08_hbl2.c
===================================================================
--- valgrind/helgrind/tests/tc08_hbl2.c (revision 15740)
+++ valgrind/helgrind/tests/tc08_hbl2.c (working copy)
@@ -125,11 +125,11 @@
# define INC(_lval,_lqual) \
__asm__ __volatile__ ( \
"L1xyzzy1" _lqual":\n" \
- " move $t0, %0\n" \
- " ll $t1, 0($t0)\n" \
- " addi $t1, $t1, 1\n" \
- " sc $t1, 0($t0)\n" \
- " beqz $t1, L1xyzzy1" _lqual \
+ " move $t0, %0\n" \
+ " ll $t1, 0($t0)\n" \
+ " addiu $t1, $t1, 1\n" \
+ " sc $t1, 0($t0)\n" \
+ " beqz $t1, L1xyzzy1" _lqual \
: /*out*/ : /*in*/ "r"(&(_lval)) \
: /*trash*/ "t0", "t1", "memory" \
)
Index: valgrind/VEX/priv/guest_mips_toIR.c
===================================================================
--- valgrind/VEX/priv/guest_mips_toIR.c (revision 3206)
+++ valgrind/VEX/priv/guest_mips_toIR.c (working copy)
@@ -16794,6 +16794,7 @@
mkU64(0x0) : mkU32(0x0)))), imm);
break;
+#if defined(__mips__) && ((defined(__mips_isa_rev) && __mips_isa_rev < 6))
case 0x08: { /* ADDI */
DIP("addi r%u, r%u, %u", rt, rs, imm);
IRTemp tmpRs32 = newTemp(Ity_I32);
@@ -16831,6 +16832,8 @@
putIReg(rt, mkWidenFrom32(ty, mkexpr(t0), True));
break;
}
+#endif
+
case 0x09: /* ADDIU */
DIP("addiu r%u, r%u, %u", rt, rs, imm);
if (mode64) {
@@ -16888,7 +16891,8 @@
mkU32(extend_s_16to32(imm)))));
break;
- case 0x18: { /* Doubleword Add Immidiate - DADD; MIPS64 */
+#if defined(__mips__) && ((defined(__mips_isa_rev) && __mips_isa_rev < 6))
+ case 0x18: { /* Doubleword Add Immidiate - DADDI; MIPS64 */
DIP("daddi r%u, r%u, %u", rt, rs, imm);
IRTemp tmpRs64 = newTemp(Ity_I64);
assign(tmpRs64, getIReg(rs));
@@ -16926,6 +16930,7 @@
putIReg(rt, mkexpr(t0));
break;
}
+#endif
case 0x19: /* Doubleword Add Immidiate Unsigned - DADDIU; MIPS64 */
DIP("daddiu r%u, r%u, %u", rt, rs, imm);

View File

@@ -0,0 +1,99 @@
From 50859f3577418cc42f76e1319e699202a615bbe1 Mon Sep 17 00:00:00 2001
From: Peter Seiderer <ps.report@gmx.net>
Date: Sat, 31 Oct 2015 19:45:04 +0100
Subject: [PATCH] Fixes for musl libc.
- add musl libc detection (prevents configure error)
- adjust preload and symbol names (based on the OpenWrt
patch, see [1])
[1] https://dev.openwrt.org/browser/trunk/package/devel/valgrind/patches/200-musl_fix.patch?rev=46302
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
configure.ac | 16 ++++++++++++++--
coregrind/vg_preloaded.c | 2 +-
include/pub_tool_redir.h | 9 ++++++++-
3 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/configure.ac b/configure.ac
index 8ab7f9b..e865bf5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1009,6 +1009,13 @@ if test x$VGCONF_PLATFORM_PRI_CAPS = xX86_SOLARIS \
GLIBC_VERSION="solaris"
fi
+# GLIBC_VERSION is empty if a musl libc is used, so use the toolchain tuple
+# in this case.
+if test x$GLIBC_VERSION = x; then
+ if $CC -dumpmachine | grep -q musl; then
+ GLIBC_VERSION=musl
+ fi
+fi
AC_MSG_CHECKING([the glibc version])
@@ -1064,10 +1071,15 @@ case "${GLIBC_VERSION}" in
# DEFAULT_SUPP set in host_os switch-case above.
# No other suppression file is used.
;;
+ musl)
+ AC_MSG_RESULT(Musl)
+ AC_DEFINE([MUSL_LIBC], 1, [Define to 1 if you're using Musl libc])
+ # no DEFAULT_SUPP file yet for musl libc.
+ ;;
2.0|2.1|*)
AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}])
- AC_MSG_ERROR([Valgrind requires glibc version 2.2 or later,])
- AC_MSG_ERROR([Darwin libc, Bionic libc or Solaris libc])
+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 or later, uClibc,])
+ AC_MSG_ERROR([musl libc, Darwin libc, Bionic libc or Solaris libc])
;;
esac
diff --git a/coregrind/vg_preloaded.c b/coregrind/vg_preloaded.c
index 2ea7a7a..7b51aba 100644
--- a/coregrind/vg_preloaded.c
+++ b/coregrind/vg_preloaded.c
@@ -56,7 +56,7 @@
void VG_NOTIFY_ON_LOAD(freeres)( void );
void VG_NOTIFY_ON_LOAD(freeres)( void )
{
-# if !defined(__UCLIBC__) \
+# if !defined(__UCLIBC__) && !defined(MUSL_LIBC) \
&& !defined(VGPV_arm_linux_android) \
&& !defined(VGPV_x86_linux_android) \
&& !defined(VGPV_mips32_linux_android) \
diff --git a/include/pub_tool_redir.h b/include/pub_tool_redir.h
index bac00d7..babcf9a 100644
--- a/include/pub_tool_redir.h
+++ b/include/pub_tool_redir.h
@@ -242,8 +242,11 @@
/* --- Soname of the standard C library. --- */
#if defined(VGO_linux) || defined(VGO_solaris)
+# if defined(MUSL_LIBC)
+# define VG_Z_LIBC_SONAME libcZdZa // libc.*
+#else
# define VG_Z_LIBC_SONAME libcZdsoZa // libc.so*
-
+#endif
#elif defined(VGO_darwin) && (DARWIN_VERS <= DARWIN_10_6)
# define VG_Z_LIBC_SONAME libSystemZdZaZddylib // libSystem.*.dylib
@@ -274,7 +277,11 @@
/* --- Soname of the pthreads library. --- */
#if defined(VGO_linux)
+# if defined(MUSL_LIBC)
+# define VG_Z_LIBPTHREAD_SONAME libcZdZa // libc.*
+#else
# define VG_Z_LIBPTHREAD_SONAME libpthreadZdsoZd0 // libpthread.so.0
+#endif
#elif defined(VGO_darwin)
# define VG_Z_LIBPTHREAD_SONAME libSystemZdZaZddylib // libSystem.*.dylib
#elif defined(VGO_solaris)
--
2.1.4

View File

@@ -0,0 +1,80 @@
comment "valgrind needs a toolchain w/ dynamic library"
depends on BR2_STATIC_LIBS
config BR2_PACKAGE_VALGRIND
bool "valgrind"
depends on BR2_ARM_CPU_ARMV7A || BR2_i386 || \
BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \
BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \
BR2_x86_64
depends on !BR2_STATIC_LIBS
help
Tool for debugging and profiling Linux programs.
http://valgrind.org/
if BR2_PACKAGE_VALGRIND
config BR2_PACKAGE_VALGRIND_MEMCHECK
bool "Memcheck: a memory error detector"
default y
help
This option allows to install the Memcheck tool
config BR2_PACKAGE_VALGRIND_CACHEGRIND
bool "Cachegrind: a cache and branch-prediction profiler"
default y
help
This option allows to install the Cachegrind tool
config BR2_PACKAGE_VALGRIND_CALLGRIND
bool "Callgrind: a call-graph generating cache and branch prediction profiler"
default y
help
This option allows to install the Callgrind tool
config BR2_PACKAGE_VALGRIND_HELGRIND
bool "Helgrind: a thread error detector"
default y
help
This option allows to install the Helgrind tool
config BR2_PACKAGE_VALGRIND_DRD
bool "DRD: a thread error detector"
default y
help
This option allows to install the DRD tool
config BR2_PACKAGE_VALGRIND_MASSIF
bool "Massif: a heap profiler"
default y
help
This option allows to install the Massif tool
config BR2_PACKAGE_VALGRIND_DHAT
bool "DHAT: a dynamic heap analysis tool"
default y
help
This option allows to install the DHAT tool
config BR2_PACKAGE_VALGRIND_SGCHECK
bool "SGCheck: an experimental stack and global array overrun detector"
help
This option allows to install the SGCheck tool
config BR2_PACKAGE_VALGRIND_BBV
bool "BBV: an experimental basic block vector generation tool"
help
This option allows to install the BBV tool
config BR2_PACKAGE_VALGRIND_LACKEY
bool "Lackey: an example tool"
help
This option allows to install the Lackey tool
config BR2_PACKAGE_VALGRIND_NULGRIND
bool "Nulgrind: the minimal Valgrind tool"
help
This option allows to install the Nulgrind tool
endif

View File

@@ -0,0 +1,212 @@
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_strdup
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_malloc
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Cond
fun:_dl_get_ready_to_run
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_get_ready_to_run
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr2
fun:_dl_get_ready_to_run
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_get_ready_to_run
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_add_elf_hash_table
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr2
fun:_dl_add_elf_hash_table
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_add_elf_hash_table
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_check_if_named_library_is_loaded
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_check_if_named_library_is_loaded
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_check_hashed_files
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_check_hashed_files
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_load_elf_shared_library
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr2
fun:_dl_load_elf_shared_library
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_load_elf_shared_library
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr2
fun:_dl_load_shared_library
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr1
fun:_dl_find_hash
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_find_hash
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_fixup
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr2
fun:_dl_fixup
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_linux_resolve
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_linux_resolver
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr2
fun:_dl_parse_lazy_relocation_information
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr2
obj:/lib/ld-uClibc*
fun:_dl_parse_lazy_relocation_information
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_parse_lazy_relocation_information
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
obj:/lib/ld-uClibc*
obj:/lib/ld-uClibc*
fun:_dl_parse_lazy_relocation_information
}
{
<insert a suppression name here>
Memcheck:Addr4
obj:/lib/ld-uClibc*
fun:_dl_parse_lazy_relocation_information
}
{
<insert a suppression name here>
Memcheck:Addr2
obj:/lib/ld-uClibc*
fun:_dl_parse_relocation_information
}
{
<insert a suppression name here>
Memcheck:Addr2
fun:_dl_parse_relocation_information
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
fun:_dl_parse_relocation_information
obj:/lib/ld-uClibc*
}
{
<insert a suppression name here>
Memcheck:Addr4
obj:/lib/ld-uClibc*
fun:_dl_parse_relocation_information
}
{
<insert a suppression name here>
Memcheck:Addr4
obj:/lib/ld-uClibc*
obj:/lib/ld-uClibc*
fun:_dl_parse_relocation_information
}
{
<insert a suppression name here>
Memcheck:Addr2
obj:/lib/ld-uClibc-0.9.27.so
fun:*
}
{
<insert a suppression name here>
Memcheck:Addr4
obj:/lib/ld-uClibc-0.9.27.so
fun:*
}

View File

@@ -0,0 +1,2 @@
# From http://valgrind.org/downloads/current.html
md5 4ea62074da73ae82e0162d6550d3f129 valgrind-3.11.0.tar.bz2

View File

@@ -0,0 +1,148 @@
################################################################################
#
# valgrind
#
################################################################################
VALGRIND_VERSION = 3.11.0
VALGRIND_SITE = http://valgrind.org/downloads
VALGRIND_SOURCE = valgrind-$(VALGRIND_VERSION).tar.bz2
VALGRIND_LICENSE = GPLv2 GFDLv1.2
VALGRIND_LICENSE_FILES = COPYING COPYING.DOCS
VALGRIND_CONF_OPTS = --disable-ubsan
VALGRIND_INSTALL_STAGING = YES
# patch 0004-Fixes-for-musl-libc.patch touching configure.ac
VALGRIND_AUTORECONF = YES
ifeq ($(BR2_GCC_ENABLE_TLS),y)
VALGRIND_CONF_OPTS += --enable-tls
else
VALGRIND_CONF_OPTS += --disable-tls
endif
# When Valgrind detects a 32-bit MIPS architecture, it forcibly adds
# -march=mips32 to CFLAGS; when it detects a 64-bit MIPS architecture,
# it forcibly adds -march=mips64. This causes Valgrind to be built
# always for the first ISA revision level (R1), even when the user has
# configured Buildroot for the second ISA revision level (R2).
#
# Override the CFLAGS variable (which Valgrind appends to its CFLAGS)
# and pass the right -march option, so they take precedence over
# Valgrind's wrongfully detected value.
ifeq ($(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el),y)
VALGRIND_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -march=$(BR2_GCC_TARGET_ARCH)"
endif
# On ARM, Valgrind only supports ARMv7, and uses the arch part of the
# host tuple to determine whether it's being built for ARMv7 or
# not. Therefore, we adjust the host tuple to specify we're on
# ARMv7. The valgrind package is guaranteed, through Config.in, to
# only be selected on ARMv7-A platforms.
ifeq ($(BR2_ARM_CPU_ARMV7A),y)
VALGRIND_CONF_OPTS += \
--host=$(patsubst arm-%,armv7-%,$(GNU_TARGET_NAME))
endif
define VALGRIND_INSTALL_UCLIBC_SUPP
$(INSTALL) -D -m 0644 package/valgrind/uclibc.supp $(TARGET_DIR)/usr/lib/valgrind/uclibc.supp
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_INSTALL_UCLIBC_SUPP
ifeq ($(BR2_PACKAGE_VALGRIND_MEMCHECK),)
define VALGRIND_REMOVE_MEMCHECK
rm -f $(TARGET_DIR)/usr/lib/valgrind/*memcheck*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_MEMCHECK
endif
ifeq ($(BR2_PACKAGE_VALGRIND_CACHEGRIND),)
define VALGRIND_REMOVE_CACHEGRIND
rm -f $(TARGET_DIR)/usr/lib/valgrind/*cachegrind*
for i in cg_annotate cg_diff cg_merge; do \
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
done
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_CACHEGRIND
endif
ifeq ($(BR2_PACKAGE_VALGRIND_CALLGRIND),)
define VALGRIND_REMOVE_CALLGRIND
rm -f $(TARGET_DIR)/usr/lib/valgrind/*callgrind*
for i in callgrind_annotate callgrind_control ; do \
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
done
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_CALLGRIND
endif
ifeq ($(BR2_PACKAGE_VALGRIND_HELGRIND),)
define VALGRIND_REMOVE_HELGRIND
rm -f $(TARGET_DIR)/usr/lib/valgrind/*helgrind*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_HELGRIND
endif
ifeq ($(BR2_PACKAGE_VALGRIND_DRD),)
define VALGRIND_REMOVE_DRD
rm -f $(TARGET_DIR)/usr/lib/valgrind/*drd*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_DRD
endif
ifeq ($(BR2_PACKAGE_VALGRIND_MASSIF),)
define VALGRIND_REMOVE_MASSIF
rm -f $(TARGET_DIR)/usr/lib/valgrind/*massif*
rm -f $(TARGET_DIR)/usr/bin/ms_script
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_MASSIF
endif
ifeq ($(BR2_PACKAGE_VALGRIND_DHAT),)
define VALGRIND_REMOVE_DHAT
rm -f $(TARGET_DIR)/usr/lib/valgrind/*dhat*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_DHAT
endif
ifeq ($(BR2_PACKAGE_VALGRIND_SGCHECK),)
define VALGRIND_REMOVE_SGCHECK
rm -f $(TARGET_DIR)/usr/lib/valgrind/*sgcheck*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_SGCHECK
endif
ifeq ($(BR2_PACKAGE_VALGRIND_BBV),)
define VALGRIND_REMOVE_BBV
rm -f $(TARGET_DIR)/usr/lib/valgrind/*bbv*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_BBV
endif
ifeq ($(BR2_PACKAGE_VALGRIND_LACKEY),)
define VALGRIND_REMOVE_LACKEY
rm -f $(TARGET_DIR)/usr/lib/valgrind/*lackey*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_LACKEY
endif
ifeq ($(BR2_PACKAGE_VALGRIND_NULGRIND),)
define VALGRIND_REMOVE_NULGRIND
rm -f $(TARGET_DIR)/usr/lib/valgrind/*none*
endef
VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_NULGRIND
endif
$(eval $(autotools-package))