aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/liburing
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2024-05-24 00:33:20 -0700
committerKhem Raj <raj.khem@gmail.com>2024-05-25 10:55:33 -0700
commit44b4586c738dcac13c50964a47b2fb05c00d1d5d (patch)
tree174de653e9c75fd8cbab1371bbb11a20e68d5a7a /meta-oe/recipes-support/liburing
parent17a1bb00de5b80db1a3779c7a735cecbeea5a9bb (diff)
downloadmeta-openembedded-contrib-44b4586c738dcac13c50964a47b2fb05c00d1d5d.tar.gz
liburing: Use libc on rv64/clang18
clang18 generates memset call which demands linking with libc Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/liburing')
-rw-r--r--meta-oe/recipes-support/liburing/liburing_2.6.bb7
1 files changed, 6 insertions, 1 deletions
diff --git a/meta-oe/recipes-support/liburing/liburing_2.6.bb b/meta-oe/recipes-support/liburing/liburing_2.6.bb
index b892ce4ac2..fc3fe1cac1 100644
--- a/meta-oe/recipes-support/liburing/liburing_2.6.bb
+++ b/meta-oe/recipes-support/liburing/liburing_2.6.bb
@@ -18,9 +18,14 @@ DEPENDS:append:libc-musl = " libucontext"
XCFLAGS = "-pthread"
XCFLAGS:append:libc-musl = " -lucontext"
+USELIBC = ""
+# clang-18 on RV64 emits memset for arch/riscv64/syscall.h provided __do_syscall4 macro
+# this does not happen for gcc or older clang, so link with libc since we need memset API
+# -fno-builtin-memset does not help
+USELIBC:riscv64:toolchain-clang = "--use-libc"
EXTRA_OEMAKE = "'CC=${CC}' 'RANLIB=${RANLIB}' 'AR=${AR}' 'CFLAGS=${CFLAGS} -I${S}/include -DWITHOUT_XATTR' 'LDFLAGS=${LDFLAGS}' 'XCFLAGS=${XCFLAGS}' 'BUILDDIR=${S}'"
do_configure() {
- ${S}/configure --prefix=${prefix} --libdir=${libdir} --libdevdir=${libdir} --mandir=${mandir} --datadir=${datadir} --includedir=${includedir}
+ ${S}/configure --prefix=${prefix} --libdir=${libdir} --libdevdir=${libdir} --mandir=${mandir} --datadir=${datadir} --includedir=${includedir} ${USELIBC}
}
do_install () {
oe_runmake install DESTDIR=${D}