1*4882a593Smuzhiyun################################################################################ 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# ltrace 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun################################################################################ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun# This github version has some extra fixes on top of https://ltrace.org/ 8*4882a593Smuzhiyun# in particular the following commit to avoid a crash: 9*4882a593Smuzhiyun# 192e0a6 void struct members are now ignored 10*4882a593SmuzhiyunLTRACE_VERSION = 82c66409c7a93ca6ad2e4563ef030dfb7e6df4d4 11*4882a593SmuzhiyunLTRACE_SITE = $(call github,dkogan,ltrace,$(LTRACE_VERSION)) 12*4882a593SmuzhiyunLTRACE_DEPENDENCIES = elfutils 13*4882a593SmuzhiyunLTRACE_CONF_OPTS = --disable-werror 14*4882a593SmuzhiyunLTRACE_LICENSE = GPL-2.0 15*4882a593SmuzhiyunLTRACE_LICENSE_FILES = COPYING 16*4882a593SmuzhiyunLTRACE_AUTORECONF = YES 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun# ltrace can use libunwind only if libc has backtrace() support 19*4882a593Smuzhiyun# We don't normally do so for uClibc and we can't know if it's external 20*4882a593Smuzhiyun# Also ltrace with libunwind support is broken for MIPS so we disable it 21*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBUNWIND),y) 22*4882a593Smuzhiyunifeq ($(BR2_TOOLCHAIN_USES_UCLIBC)$(BR2_mips)$(BR2_mipsel),) 23*4882a593Smuzhiyun# --with-elfutils only selects unwinding support backend. elfutils is a 24*4882a593Smuzhiyun# mandatory dependency regardless. 25*4882a593SmuzhiyunLTRACE_CONF_OPTS += --with-libunwind=yes --with-elfutils=no 26*4882a593SmuzhiyunLTRACE_DEPENDENCIES += libunwind 27*4882a593Smuzhiyunelse 28*4882a593SmuzhiyunLTRACE_CONF_OPTS += --with-libunwind=no 29*4882a593Smuzhiyunendif 30*4882a593Smuzhiyunendif 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun$(eval $(autotools-package)) 33