Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 1 | SUMMARY = "System call tracing tool" |
| 2 | HOMEPAGE = "http://strace.io" |
Andrew Geissler | 90fd73c | 2021-03-05 15:25:55 -0600 | [diff] [blame] | 3 | DESCRIPTION = "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 Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 4 | SECTION = "console/utils" |
| 5 | LICENSE = "LGPL-2.1+ & GPL-2+" |
Andrew Geissler | 95ac1b8 | 2021-03-31 14:34:31 -0500 | [diff] [blame] | 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=318cfc887fc8723f4e9d4709b55e065b" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 7 | |
| 8 | SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \ |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 9 | 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 | " |
Patrick Williams | 93c203f | 2021-10-06 16:15:23 -0500 | [diff] [blame] | 18 | SRC_URI[sha256sum] = "901bee6db5e17debad4530dd9ffb4dc9a96c4a656edbe1c3141b7cb307b11e73" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 19 | |
| 20 | inherit autotools ptest |
| 21 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 22 | PACKAGECONFIG:class-target ??= "\ |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 23 | ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ |
| 24 | " |
| 25 | |
| 26 | PACKAGECONFIG[bluez] = "ac_cv_header_bluetooth_bluetooth_h=yes,ac_cv_header_bluetooth_bluetooth_h=no,bluez5" |
| 27 | PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind" |
| 28 | |
Andrew Geissler | 4ed12e1 | 2020-06-05 18:00:41 -0500 | [diff] [blame] | 29 | EXTRA_OECONF += "--enable-mpers=no --disable-gcc-Werror" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 30 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 31 | CFLAGS:append:libc-musl = " -Dsigcontext_struct=sigcontext" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 32 | |
| 33 | TESTDIR = "tests" |
| 34 | PTEST_BUILD_HOST_PATTERN = "^(DEB_CHANGELOGTIME|RPM_CHANGELOGTIME|WARN_CFLAGS_FOR_BUILD|LDFLAGS_FOR_BUILD)" |
| 35 | |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 36 | do_compile_ptest() { |
Andrew Geissler | 95ac1b8 | 2021-03-31 14:34:31 -0500 | [diff] [blame] | 37 | oe_runmake ${PARALLEL_MAKE} -C ${TESTDIR} buildtest-TESTS |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 38 | } |
| 39 | |
| 40 | do_install_ptest() { |
| 41 | oe_runmake -C ${TESTDIR} install-ptest BUILDDIR=${B} DESTDIR=${D}${PTEST_PATH} TESTDIR=${TESTDIR} |
Andrew Geissler | 95ac1b8 | 2021-03-31 14:34:31 -0500 | [diff] [blame] | 42 | 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 Geissler | d1e8949 | 2021-02-12 15:35:20 -0600 | [diff] [blame] | 46 | sed -i -e '/^src/s/strace.*[0-9]/ptest/' ${D}/${PTEST_PATH}/${TESTDIR}/Makefile |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 47 | } |
| 48 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 49 | RDEPENDS:${PN}-ptest += "make coreutils grep gawk sed" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 50 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 51 | RDEPENDS:${PN}-ptest:append:libc-glibc = "\ |
Andrew Geissler | d1e8949 | 2021-02-12 15:35:20 -0600 | [diff] [blame] | 52 | locale-base-en-us.iso-8859-1 \ |
| 53 | " |
| 54 | |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 55 | BBCLASSEXTEND = "native" |
| 56 | TOOLCHAIN = "gcc" |