xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-devtools/strace/strace_5.16.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1SUMMARY = "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"
5LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
6LIC_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 \
12           file://0001-caps-abbrev.awk-fix-gawk-s-path.patch \
13           file://ptest-spacesave.patch \
14           file://0001-strace-fix-reproducibilty-issues.patch \
15           file://skip-load.patch \
16           file://0001-landlock-update-expected-string.patch \
17           "
18SRC_URI[sha256sum] = "dc7db230ff3e57c249830ba94acab2b862da1fcaac55417e9b85041a833ca285"
19
20inherit autotools ptest
21
22# Not yet ported to rv32
23COMPATIBLE_HOST:riscv32 = "null"
24
25PACKAGECONFIG:class-target ??= "\
26    ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
27"
28
29PACKAGECONFIG[bluez] = "ac_cv_header_bluetooth_bluetooth_h=yes,ac_cv_header_bluetooth_bluetooth_h=no,bluez5"
30PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
31
32EXTRA_OECONF += "--enable-mpers=no --disable-gcc-Werror"
33
34CFLAGS:append:libc-musl = " -Dsigcontext_struct=sigcontext"
35
36TESTDIR = "tests"
37PTEST_BUILD_HOST_PATTERN = "^(DEB_CHANGELOGTIME|RPM_CHANGELOGTIME|WARN_CFLAGS_FOR_BUILD|LDFLAGS_FOR_BUILD)"
38
39do_compile_ptest() {
40	oe_runmake ${PARALLEL_MAKE} -C ${TESTDIR} buildtest-TESTS
41}
42
43do_install_ptest() {
44	oe_runmake -C ${TESTDIR} install-ptest BUILDDIR=${B} DESTDIR=${D}${PTEST_PATH} TESTDIR=${TESTDIR}
45	mkdir -p ${D}${PTEST_PATH}/build-aux
46	mkdir -p ${D}${PTEST_PATH}/src
47	install -m 755 ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/
48	install -m 644 ${B}/src/config.h ${D}${PTEST_PATH}/src/
49        sed -i -e '/^src/s/strace.*[0-9]/ptest/' ${D}/${PTEST_PATH}/${TESTDIR}/Makefile
50}
51
52RDEPENDS:${PN}-ptest += "make coreutils grep gawk sed"
53
54RDEPENDS:${PN}-ptest:append:libc-glibc = "\
55     locale-base-en-us.iso-8859-1 \
56"
57
58BBCLASSEXTEND = "native"
59