bump version
[buildroot.git] / package / valgrind / valgrind.mk
blob10b70d8568b3d0443e7b1aa86d3865e6e0b6fad0
1 #############################################################
3 # valgrind
5 #############################################################
7 VALGRIND_VERSION:=3.3.1
8 VALGRIND_SITE:=http://valgrind.org/downloads/
9 VALGRIND_DIR:=$(BUILD_DIR)/valgrind-$(VALGRIND_VERSION)
10 VALGRIND_SOURCE:=valgrind-$(VALGRIND_VERSION).tar.bz2
11 VALGRIND_CAT:=$(BZCAT)
13 $(DL_DIR)/$(VALGRIND_SOURCE):
14 $(WGET) -P $(DL_DIR) $(VALGRIND_SITE)/$(VALGRIND_SOURCE)
16 $(VALGRIND_DIR)/.unpacked: $(DL_DIR)/$(VALGRIND_SOURCE)
17 $(VALGRIND_CAT) $(DL_DIR)/$(VALGRIND_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
18 touch $@
20 $(VALGRIND_DIR)/.patched: $(VALGRIND_DIR)/.unpacked
21 toolchain/patch-kernel.sh $(VALGRIND_DIR) package/valgrind/ valgrind-$(VALGRIND_VERSION)\*.patch
22 $(CONFIG_UPDATE) $(@D)
23 find $(@D) -name Makefile.in | xargs $(SED) 's/-O2/$(TARGET_CFLAGS)/g'
24 touch $@
26 $(VALGRIND_DIR)/.configured: $(VALGRIND_DIR)/.patched
27 (cd $(VALGRIND_DIR); rm -rf config.cache; \
28 $(AUTO_CONFIGURE_TARGET) \
29 --prefix=/usr \
30 $(DISABLE_NLS) \
31 --without-uiout --disable-valgrindmi \
32 --disable-tui --disable-valgrindtk \
33 --without-x --without-included-gettext \
34 --disable-tls \
35 $(if $(BR2_PTHREADS_NONE),--disable-helgrind,--enable-helgrind) \
37 touch $@
39 $(VALGRIND_DIR)/.built: $(VALGRIND_DIR)/.configured
40 $(MAKE) -C $(VALGRIND_DIR)
41 touch $@
43 $(TARGET_DIR)/usr/bin/valgrind: $(VALGRIND_DIR)/.built
44 $(MAKE) \
45 prefix=$(TARGET_DIR)/usr \
46 exec_prefix=$(TARGET_DIR)/usr \
47 bindir=$(TARGET_DIR)/usr/bin \
48 sbindir=$(TARGET_DIR)/usr/sbin \
49 libexecdir=$(TARGET_DIR)/usr/lib \
50 datadir=$(TARGET_DIR)/usr/share \
51 sysconfdir=$(TARGET_DIR)/etc \
52 sharedstatedir=$(TARGET_DIR)/usr/com \
53 localstatedir=$(TARGET_DIR)/var \
54 libdir=$(TARGET_DIR)/usr/lib \
55 infodir=$(TARGET_DIR)/usr/info \
56 mandir=$(TARGET_DIR)/usr/man \
57 includedir=$(TARGET_DIR)/usr/include \
58 -C $(VALGRIND_DIR) install
59 mv $(TARGET_DIR)/usr/bin/valgrind $(TARGET_DIR)/usr/bin/valgrind.bin
60 cp package/valgrind/uclibc.supp $(TARGET_DIR)/usr/lib/valgrind/
61 cp package/valgrind/valgrind.sh $(TARGET_DIR)/usr/bin/valgrind
62 chmod a+x $(TARGET_DIR)/usr/bin/valgrind
63 rm -rf $(TARGET_DIR)/usr/share/doc/valgrind
64 #mkdir -p $(TARGET_DIR)/etc/default
65 #cp $(VALGRIND_DIR)/valgrind.default $(TARGET_DIR)/etc/default/valgrind
66 #mkdir -p $(TARGET_DIR)/usr/lib/valgrind
67 #cp $(VALGRIND_DIR)/woody.supp $(TARGET_DIR)/usr/lib/valgrind/
68 ifneq ($(BR2_HAVE_INCLUDES),y)
69 rm -rf $(TARGET_DIR)/usr/include/valgrind
70 endif
71 $(STRIPCMD) $(STRIP_STRIP_ALL) $(TARGET_DIR)/usr/bin/valgrind.bin
72 touch -c $(TARGET_DIR)/usr/bin/valgrind
74 valgrind: $(TARGET_DIR)/usr/bin/valgrind
76 valgrind-source: $(DL_DIR)/$(VALGRIND_SOURCE)
78 valgrind-clean:
79 -$(MAKE) -C $(VALGRIND_DIR) clean
80 rm -rf $(TARGET_DIR)/usr/lib/valgrind \
81 $(TARGET_DIR)/usr/bin/*valgrind* \
82 $(TARGET_DIR)/usr/bin/cg_annotate \
83 $(TARGET_DIR)/usr/bin/cg_merge \
84 $(TARGET_DIR)/usr/bin/callgrind_annotate \
85 $(TARGET_DIR)/usr/bin/callgrind_control
87 valgrind-dirclean:
88 rm -rf $(VALGRIND_DIR)
90 #############################################################
92 # Toplevel Makefile options
94 #############################################################
95 ifeq ($(BR2_PACKAGE_VALGRIND),y)
96 TARGETS+=valgrind
97 endif