aboutsummaryrefslogtreecommitdiff
path: root/package/valgrind/valgrind.mk
diff options
context:
space:
mode:
authorGravatar Thomas De Schampheleire <patrickdepinguin+buildroot@gmail.com>2012-03-14 17:50:59 +0100
committerGravatar Peter Korsgaard <jacmet@sunsite.dk>2012-04-05 18:19:54 +0200
commit6a996469e270f76e663004c6f448dee08c801ad6 (patch)
treee36e38068597722e5b95cdf89d7115fa63c085d8 /package/valgrind/valgrind.mk
parenteae71e805c57f2cc30291d0680b396a4e5cb9d33 (diff)
downloadbuildroot-6a996469e270f76e663004c6f448dee08c801ad6.tar.gz
buildroot-6a996469e270f76e663004c6f448dee08c801ad6.tar.bz2
valgrind: allow selecting which tools to install
The full valgrind installation takes more than 20 MB, while one typically does not use all of its tools. This patch adds extra config options to select which tools to install. [Peter: Don't default experimental tools to 'y' as suggested by Arnout] Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/valgrind/valgrind.mk')
-rw-r--r--package/valgrind/valgrind.mk95
1 files changed, 95 insertions, 0 deletions
diff --git a/package/valgrind/valgrind.mk b/package/valgrind/valgrind.mk
index 24523bf6bd..004c1ac024 100644
--- a/package/valgrind/valgrind.mk
+++ b/package/valgrind/valgrind.mk
@@ -25,4 +25,99 @@ 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_PTRCHECK),)
+define VALGRIND_REMOVE_PTRCHECK
+ rm -f $(TARGET_DIR)/usr/lib/valgrind/*ptrcheck*
+endef
+
+VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_PTRCHECK
+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 $(call AUTOTARGETS))