xref: /OK3568_Linux_fs/buildroot/package/strace/strace.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# strace
4#
5################################################################################
6
7STRACE_VERSION = 6.2
8STRACE_SOURCE = strace-$(STRACE_VERSION).tar.xz
9STRACE_SITE = https://github.com/strace/strace/releases/download/v$(STRACE_VERSION)
10STRACE_LICENSE = LGPL-2.1+
11STRACE_LICENSE_FILES = COPYING LGPL-2.1-or-later
12STRACE_CPE_ID_VENDOR = strace_project
13STRACE_CONF_OPTS = --enable-mpers=no
14
15ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
16STRACE_DEPENDENCIES += libunwind
17STRACE_CONF_OPTS += --with-libunwind
18else
19STRACE_CONF_OPTS += --without-libunwind
20endif
21
22# Demangling symbols in stack trace needs libunwind and libiberty.
23ifeq ($(BR2_PACKAGE_BINUTILS)$(BR2_PACKAGE_LIBUNWIND),yy)
24STRACE_DEPENDENCIES += binutils
25STRACE_CONF_OPTS += --with-libiberty=check
26else
27STRACE_CONF_OPTS += --without-libiberty
28endif
29
30ifeq ($(BR2_PACKAGE_STRACE_STATIC),y)
31STRACE_CONF_OPTS += --enable-static
32STRACE_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -static"
33
34# HACK for libunwind libs
35ifeq ($(BR2_PACKAGE_LIBUNWIND)$(BR2_PACKAGE_XZ),yy)
36STRACE_CONF_ENV += LIBS="-llzma"
37endif
38endif
39
40ifeq ($(BR2_PACKAGE_PERL),)
41define STRACE_REMOVE_STRACE_GRAPH
42	rm -f $(TARGET_DIR)/usr/bin/strace-graph
43endef
44
45STRACE_POST_INSTALL_TARGET_HOOKS += STRACE_REMOVE_STRACE_GRAPH
46endif
47
48$(eval $(autotools-package))
49