blob: 4bde14f9395511cf547832a1ed1a168669741cb9 [file] [log] [blame]
Andrew Geissler595f6302022-01-24 19:11:47 +00001SUMMARY = "System call tracing tool"
2HOMEPAGE = "http://strace.io"
3DESCRIPTION = "strace is a diagnostic, debugging and instructional userspace utility for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state."
4SECTION = "console/utils"
Andrew Geissler7e0e3c02022-02-25 20:34:39 +00005LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
Andrew Geissler595f6302022-01-24 19:11:47 +00006LIC_FILES_CHKSUM = "file://COPYING;md5=59a33f0a3e6122d67c0b3befccbdaa6b"
7
8SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
9 file://update-gawk-paths.patch \
10 file://Makefile-ptest.patch \
11 file://run-ptest \
Andrew Geissler595f6302022-01-24 19:11:47 +000012 file://0001-caps-abbrev.awk-fix-gawk-s-path.patch \
13 file://ptest-spacesave.patch \
14 file://0001-strace-fix-reproducibilty-issues.patch \
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000015 file://skip-load.patch \
Andrew Geissler595f6302022-01-24 19:11:47 +000016 "
17SRC_URI[sha256sum] = "dc7db230ff3e57c249830ba94acab2b862da1fcaac55417e9b85041a833ca285"
18
19inherit autotools ptest
20
21PACKAGECONFIG:class-target ??= "\
22 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
23"
24
25PACKAGECONFIG[bluez] = "ac_cv_header_bluetooth_bluetooth_h=yes,ac_cv_header_bluetooth_bluetooth_h=no,bluez5"
26PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
27
28EXTRA_OECONF += "--enable-mpers=no --disable-gcc-Werror"
29
30CFLAGS:append:libc-musl = " -Dsigcontext_struct=sigcontext"
31
32TESTDIR = "tests"
33PTEST_BUILD_HOST_PATTERN = "^(DEB_CHANGELOGTIME|RPM_CHANGELOGTIME|WARN_CFLAGS_FOR_BUILD|LDFLAGS_FOR_BUILD)"
34
35do_compile_ptest() {
36 oe_runmake ${PARALLEL_MAKE} -C ${TESTDIR} buildtest-TESTS
37}
38
39do_install_ptest() {
40 oe_runmake -C ${TESTDIR} install-ptest BUILDDIR=${B} DESTDIR=${D}${PTEST_PATH} TESTDIR=${TESTDIR}
41 mkdir -p ${D}${PTEST_PATH}/build-aux
42 mkdir -p ${D}${PTEST_PATH}/src
43 install -m 755 ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/
44 install -m 644 ${B}/src/config.h ${D}${PTEST_PATH}/src/
45 sed -i -e '/^src/s/strace.*[0-9]/ptest/' ${D}/${PTEST_PATH}/${TESTDIR}/Makefile
46}
47
48RDEPENDS:${PN}-ptest += "make coreutils grep gawk sed"
49
50RDEPENDS:${PN}-ptest:append:libc-glibc = "\
51 locale-base-en-us.iso-8859-1 \
52"
53
54BBCLASSEXTEND = "native"