blob: 6a8996535bfdfea8e6cb2c74fd4256baeccfc17d [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001SUMMARY = "System call tracing tool"
2HOMEPAGE = "http://strace.io"
Andrew Geissler90fd73c2021-03-05 15:25:55 -06003DESCRIPTION = "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."
Andrew Geissler82c905d2020-04-13 13:39:40 -05004SECTION = "console/utils"
5LICENSE = "LGPL-2.1+ & GPL-2+"
Andrew Geissler95ac1b82021-03-31 14:34:31 -05006LIC_FILES_CHKSUM = "file://COPYING;md5=318cfc887fc8723f4e9d4709b55e065b"
Andrew Geissler82c905d2020-04-13 13:39:40 -05007
8SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
Andrew Geissler82c905d2020-04-13 13:39:40 -05009 file://update-gawk-paths.patch \
10 file://Makefile-ptest.patch \
11 file://run-ptest \
12 file://mips-SIGEMT.patch \
13 file://0001-caps-abbrev.awk-fix-gawk-s-path.patch \
14 file://ptest-spacesave.patch \
15 file://uintptr_t.patch \
16 file://0001-strace-fix-reproducibilty-issues.patch \
17 "
Andrew Geisslerc926e172021-05-07 16:11:35 -050018SRC_URI[sha256sum] = "29171edf9d252f89c988a4c340dfdec662f458cb8c63d85431d64bab5911e7c4"
Andrew Geissler82c905d2020-04-13 13:39:40 -050019
20inherit autotools ptest
21
22PACKAGECONFIG_class-target ??= "\
23 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
24"
25
26PACKAGECONFIG[bluez] = "ac_cv_header_bluetooth_bluetooth_h=yes,ac_cv_header_bluetooth_bluetooth_h=no,bluez5"
27PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
28
Andrew Geissler4ed12e12020-06-05 18:00:41 -050029EXTRA_OECONF += "--enable-mpers=no --disable-gcc-Werror"
Andrew Geissler82c905d2020-04-13 13:39:40 -050030
31CFLAGS_append_libc-musl = " -Dsigcontext_struct=sigcontext"
32
33TESTDIR = "tests"
34PTEST_BUILD_HOST_PATTERN = "^(DEB_CHANGELOGTIME|RPM_CHANGELOGTIME|WARN_CFLAGS_FOR_BUILD|LDFLAGS_FOR_BUILD)"
35
Andrew Geissler82c905d2020-04-13 13:39:40 -050036do_compile_ptest() {
Andrew Geissler95ac1b82021-03-31 14:34:31 -050037 oe_runmake ${PARALLEL_MAKE} -C ${TESTDIR} buildtest-TESTS
Andrew Geissler82c905d2020-04-13 13:39:40 -050038}
39
40do_install_ptest() {
41 oe_runmake -C ${TESTDIR} install-ptest BUILDDIR=${B} DESTDIR=${D}${PTEST_PATH} TESTDIR=${TESTDIR}
Andrew Geissler95ac1b82021-03-31 14:34:31 -050042 mkdir -p ${D}${PTEST_PATH}/build-aux
43 mkdir -p ${D}${PTEST_PATH}/src
44 install -m 755 ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/
45 install -m 644 ${B}/src/config.h ${D}${PTEST_PATH}/src/
Andrew Geisslerd1e89492021-02-12 15:35:20 -060046 sed -i -e '/^src/s/strace.*[0-9]/ptest/' ${D}/${PTEST_PATH}/${TESTDIR}/Makefile
Andrew Geissler82c905d2020-04-13 13:39:40 -050047}
48
49RDEPENDS_${PN}-ptest += "make coreutils grep gawk sed"
50
Andrew Geisslerd1e89492021-02-12 15:35:20 -060051RDEPENDS_${PN}-ptest_append_libc-glibc = "\
52 locale-base-en-us.iso-8859-1 \
53"
54
Andrew Geissler82c905d2020-04-13 13:39:40 -050055BBCLASSEXTEND = "native"
56TOOLCHAIN = "gcc"