blob: 1302420983610ebf3025c3abb744fb51e0582099 [file] [log] [blame]
Andrew Geissler595f6302022-01-24 19:11:47 +00001SUMMARY = "Trace and analyze execution of a program written in C/C++"
2HOMEPAGE = "https://github.com/namhyung/uftrace"
3BUGTRACKER = "https://github.com/namhyung/uftrace/issues"
4SECTION = "devel"
Andrew Geissler9aee5002022-03-30 16:27:02 +00005LICENSE = "GPL-2.0-only"
Andrew Geissler595f6302022-01-24 19:11:47 +00006LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7
8DEPENDS = "elfutils"
9DEPENDS:append:libc-musl = " argp-standalone"
10
11inherit autotools
12
Andrew Geisslerc5535c92023-01-27 16:10:19 -060013SRCREV = "53ec12d40701cf73ddcf5db8cff63b54736d0eda"
Andrew Geissler595f6302022-01-24 19:11:47 +000014SRC_URI = "git://github.com/namhyung/${BPN};branch=master;protocol=https \
Andrew Geisslerc5535c92023-01-27 16:10:19 -060015 file://0001-build-Fix-a-build-race-related-to-utils-mermaid.html.patch \
Andrew Geissler595f6302022-01-24 19:11:47 +000016 "
17S = "${WORKDIR}/git"
18
19LDFLAGS:append:libc-musl = " -largp"
20
21def set_target_arch(d):
22 import re
23 arch = d.getVar('TARGET_ARCH')
24 if re.match(r'i.86', arch, re.I):
25 return 'i386'
26 elif re.match('armeb', arch, re.I):
27 return 'arm'
28 else:
29 return arch
30
31EXTRA_UFTRACE_OECONF = "ARCH=${@set_target_arch(d)} \
32 with_elfutils=/use/libelf/from/sysroot"
33
34do_configure() {
35 ${S}/configure ${EXTRA_UFTRACE_OECONF}
36}
37
38FILES_SOLIBSDEV = ""
39FILES:${PN} += "${libdir}/*.so"
40
41COMPATIBLE_HOST = "(i.86|x86_64|aarch64|arm)"
42
43# uftrace supports armv6 and above
44COMPATIBLE_HOST:armv4 = 'null'
45COMPATIBLE_HOST:armv5 = 'null'