blob: 08f0f1d27e564c77fe95804b5e160bee4e50599f [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 "
Andrew Geissler615f2f12022-07-15 14:00:58 -050017SRC_URI[sha256sum] = "60293ea79ac9253d600cdc9be077ad2988ca22284a439c9e66be5150db3d1187"
Andrew Geissler595f6302022-01-24 19:11:47 +000018
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() {
Andrew Geissler615f2f12022-07-15 14:00:58 -050036 oe_runmake -C ${TESTDIR} buildtest-TESTS
Andrew Geissler595f6302022-01-24 19:11:47 +000037}
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"