also install required files for HAVE_INCLUDES
[buildroot.git] / package / ltrace / ltrace.mk
blob37c1c5643a89d9d639c2edc713def4e2c4a02e44
1 #############################################################
3 # ltrace
5 #############################################################
6 LTRACE_VERSION=0.5
7 LTRACE_SOURCE=ltrace_$(LTRACE_VERSION).orig.tar.gz
8 LTRACE_PATCH=ltrace_$(LTRACE_VERSION)-3.1.diff.gz
9 LTRACE_SITE=$(BR2_DEBIAN_MIRROR)/debian/pool/main/l/ltrace
10 LTRACE_DIR=$(BUILD_DIR)/ltrace-$(LTRACE_VERSION)
11 LTRACE_BINARY=ltrace
12 LTRACE_TARGET_BINARY=usr/bin/ltrace
14 LTRACE_ARCH:=$(KERNEL_ARCH)
15 ifeq ("$(strip $(LTRACE_ARCH))","powerpc")
16 LTRACE_ARCH:=ppc
17 endif
19 $(DL_DIR)/$(LTRACE_SOURCE):
20 $(WGET) -P $(DL_DIR) $(LTRACE_SITE)/$(LTRACE_SOURCE)
22 ifneq ($(LTRACE_PATCH),)
23 LTRACE_PATCH_FILE:=$(DL_DIR)/$(LTRACE_PATCH)
24 $(LTRACE_PATCH_FILE):
25 $(WGET) -P $(DL_DIR) $(LTRACE_SITE)/$(LTRACE_PATCH)
27 else
28 LTRACE_PATCH_FILE:=
29 endif
31 $(LTRACE_DIR)/.patched: $(DL_DIR)/$(LTRACE_SOURCE) $(LTRACE_PATCH_FILE)
32 $(ZCAT) $(DL_DIR)/$(LTRACE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
33 ifneq ($(LTRACE_PATCH),)
34 $(ZCAT) $(LTRACE_PATCH_FILE) | patch -p1 -d $(LTRACE_DIR)
35 endif
36 toolchain/patch-kernel.sh $(LTRACE_DIR) package/ltrace ltrace\*.patch
37 $(CONFIG_UPDATE) $(@D)
38 chmod +x $(LTRACE_DIR)/configure
39 ln -sf linux-gnu $(LTRACE_DIR)/sysdeps/linux-uclibc
40 $(SED) 's/@\(DEFS\)@/@\1@ $$(\1)/' $(LTRACE_DIR)/Makefile.in
41 touch $@
43 $(LTRACE_DIR)/.configured: $(LTRACE_DIR)/.patched
44 (cd $(LTRACE_DIR); rm -rf config.cache; \
45 ac_cv_header_gelf_h=yes \
46 $(AUTO_CONFIGURE_TARGET) \
47 --prefix=/usr \
48 --sysconfdir=/etc \
49 $(DISABLE_LARGEFILE) \
51 touch $@
53 $(LTRACE_DIR)/$(LTRACE_BINARY): $(LTRACE_DIR)/.configured
54 $(MAKE) ARCH=$(LTRACE_ARCH) \
55 DEFS="-DUSE_DEMANGLE" \
56 -C $(LTRACE_DIR)
58 $(TARGET_DIR)/$(LTRACE_TARGET_BINARY): $(LTRACE_DIR)/$(LTRACE_BINARY)
59 #$(MAKE) DESTDIR=$(TARGET_DIR) ARCH=$(LTRACE_ARCH) -C $(LTRACE_DIR) install
60 $(INSTALL) -D $(LTRACE_DIR)/$(LTRACE_BINARY) $@
61 ifeq ($(BR2_HAVE_MANPAGES),y)
62 $(INSTALL) -D $(LTRACE_DIR)/ltrace.1 \
63 $(TARGET_DIR)/usr/share/man/man1/ltrace.1
64 endif
65 $(STRIPCMD) $(STRIP_STRIP_ALL) $@
67 ltrace: libelf $(TARGET_DIR)/$(LTRACE_TARGET_BINARY)
69 ltrace-source: $(DL_DIR)/$(LTRACE_SOURCE) $(LTRACE_PATCH_FILE)
71 ltrace-clean:
72 -$(MAKE) -C $(LTRACE_DIR) clean
73 rm -f $(LTRACE_DIR)/$(LTRACE_BINARY) \
74 $(TARGET_DIR)/usr/share/man/man1/ltrace.1*
76 ltrace-dirclean:
77 rm -rf $(LTRACE_DIR)
79 #############################################################
81 # Toplevel Makefile options
83 #############################################################
84 ifeq ($(BR2_PACKAGE_LTRACE),y)
85 TARGETS+=ltrace
86 endif