kumquat-buildroot/package/strace/strace.mk
Baruch Siach b8ef3fb826 package/strace: disable bpf support for m68k
Mismatch in struct bpf_prog_info fields offset between kernel headers
and strace local definition causes build failure. Disable bpf support
for m68k until upstream (either strace or the kernel) find a solution.

https://lists.strace.io/pipermail/strace-devel/2019-May/thread.html#8750

Fixes:
http://autobuild.buildroot.net/results/c036b11bf1f2fc39f42661634ef3e03360fb85de/
http://autobuild.buildroot.net/results/f142e4c7f0d512bb872572f5e678230117ab0ad5/
http://autobuild.buildroot.net/results/b74a17cfa7112c026938cacafdd18c6dca285005/

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-05-10 15:56:51 +02:00

52 lines
1.5 KiB
Makefile

################################################################################
#
# strace
#
################################################################################
STRACE_VERSION = 5.0
STRACE_SOURCE = strace-$(STRACE_VERSION).tar.xz
STRACE_SITE = https://strace.io/files/$(STRACE_VERSION)
STRACE_LICENSE = LGPL-2.1+
STRACE_LICENSE_FILES = COPYING LGPL-2.1-or-later
STRACE_CONF_OPTS = --enable-mpers=check
# strace bundle some kernel headers to build libmpers, this mixes userspace
# headers and kernel headers which break the build with musl.
# The stddef.h from gcc is used instead of the one from musl.
ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
STRACE_CONF_OPTS += st_cv_m32_mpers=no \
st_cv_mx32_mpers=no
endif
# struct bpf_prog_info fields offset mismatch
# https://lists.strace.io/pipermail/strace-devel/2019-May/thread.html#8750
ifeq ($(BR2_m68k),y)
STRACE_CONF_OPTS += ac_cv_header_linux_bpf_h=no
endif
ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
STRACE_DEPENDENCIES += libunwind
STRACE_CONF_OPTS += --with-libunwind
else
STRACE_CONF_OPTS += --without-libunwind
endif
# Demangling symbols in stack trace needs libunwind and libiberty.
ifeq ($(BR2_PACKAGE_BINUTILS)$(BR2_PACKAGE_LIBUNWIND),yy)
STRACE_DEPENDENCIES += binutils
STRACE_CONF_OPTS += --with-libiberty=check
else
STRACE_CONF_OPTS += --without-libiberty
endif
ifeq ($(BR2_PACKAGE_PERL),)
define STRACE_REMOVE_STRACE_GRAPH
rm -f $(TARGET_DIR)/usr/bin/strace-graph
endef
STRACE_POST_INSTALL_TARGET_HOOKS += STRACE_REMOVE_STRACE_GRAPH
endif
$(eval $(autotools-package))