Skip to contentSkip to conversation

linuxloader: Add entries for riscv64

PATCH New Khem Raj 1 participant 2 messages Aug 14, 2019

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

PATCH 1/2 linuxloader: Add entries for riscv64

---
 meta/classes/linuxloader.bbclass | 4 ++++
 1 file changed, 4 insertions(+)
meta/classes/linuxloader.bbclass +4 -0
index b4c413494a..c0fbf26836 100644
@@ -19,6 +19,8 @@ def get_musl_loader(d):
         dynamic_loader = "${base_libdir}/ld-musl-arm${ARMPKGSFX_ENDIAN}${ARMPKGSFX_EABI}.so.1"
     elif targetarch.startswith("aarch64"):
         dynamic_loader = "${base_libdir}/ld-musl-aarch64${ARMPKGSFX_ENDIAN_64}.so.1"
+    elif targetarch.startswith("riscv64"):
+        dynamic_loader = "${base_libdir}/ld-musl-riscv64${@['', '-sf'][d.getVar('TARGET_FPU') == 'soft']}.so.1"
     return dynamic_loader
 
 def get_glibc_loader(d):
@@ -42,6 +44,8 @@ def get_glibc_loader(d):
         dynamic_loader = "${base_libdir}/ld-linux.so.3"
     elif targetarch.startswith("aarch64"):
         dynamic_loader = "${base_libdir}/ld-linux-aarch64${ARMPKGSFX_ENDIAN_64}.so.1"
+    elif targetarch.startswith("riscv64"):
+        dynamic_loader = "${base_libdir}/ld-linux-riscv64-lp64${@['d', ''][d.getVar('TARGET_FPU') == 'soft']}.so.1"
     return dynamic_loader
 
 def get_linuxloader(d):
Signature · 1 line
2.22.0
author
#1 lore raw

PATCH 2/2 musl: Delete GLIBC_LDSO before creating symlink with lnr

Fixes rebuild failures after say do_compile fails

| ./tools/install.sh -D -r /mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/image/usr/lib/libc.so /mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/image/lib/ld-musl-riscv64.so.1 || true
| Traceback (most recent call last):
|   File "/mnt/a/yoe/sources/openembedded-core/scripts/lnr", line 24, in <module>
|     os.symlink(target, linkname)
| FileExistsError: [Errno 17] File exists: 'image/usr/lib/libc.so' -> '/mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/imageNone'
---
 meta/recipes-core/musl/musl_git.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-core/musl/musl_git.bb +1 -1
index 2633229b8c..b2991d4ed5 100644
@@ -64,7 +64,7 @@ do_install() {
 	oe_runmake install DESTDIR='${D}'
 
 	install -d ${D}${bindir}
-	rm -f ${D}${bindir}/ldd
+	rm -f ${D}${bindir}/ldd ${D}${GLIBC_LDSO}
 	lnr ${D}${libdir}/libc.so ${D}${bindir}/ldd
 	lnr ${D}${libdir}/libc.so ${D}${GLIBC_LDSO}
 	for l in crypt dl m pthread resolv rt util xnet
Signature · 1 line
2.22.0