diff options
| -rw-r--r-- | meta/classes/linuxloader.bbclass | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/meta/classes/linuxloader.bbclass b/meta/classes/linuxloader.bbclass index 117b030746..8f30eb32e7 100644 --- a/meta/classes/linuxloader.bbclass +++ b/meta/classes/linuxloader.bbclass | |||
| @@ -1,5 +1,8 @@ | |||
| 1 | LDSO_TCLIBC = "glibc" | ||
| 2 | LDSO_TCLIBC_libc-musl = "musl" | ||
| 3 | LDSO_TCLIBC_libc-baremetal = "musl" | ||
| 1 | 4 | ||
| 2 | linuxloader () { | 5 | linuxloader_glibc () { |
| 3 | case ${TARGET_ARCH} in | 6 | case ${TARGET_ARCH} in |
| 4 | powerpc | microblaze ) | 7 | powerpc | microblaze ) |
| 5 | dynamic_loader="${base_libdir}/ld.so.1" | 8 | dynamic_loader="${base_libdir}/ld.so.1" |
| @@ -28,3 +31,40 @@ linuxloader () { | |||
| 28 | esac | 31 | esac |
| 29 | echo $dynamic_loader | 32 | echo $dynamic_loader |
| 30 | } | 33 | } |
| 34 | |||
| 35 | linuxloader_musl () { | ||
| 36 | case ${TARGET_ARCH} in | ||
| 37 | microblaze* ) | ||
| 38 | dynamic_loader="${base_libdir}/ld-musl-microblaze${@bb.utils.contains('TUNE_FEATURES', 'bigendian', '', 'el' ,d)}.so.1" | ||
| 39 | ;; | ||
| 40 | mips* ) | ||
| 41 | dynamic_loader="${base_libdir}/ld-musl-mips${ABIEXTENSION}${MIPSPKGSFX_BYTE}${MIPSPKGSFX_R6}${MIPSPKGSFX_ENDIAN}${@['', '-sf'][d.getVar('TARGET_FPU') == 'soft']}.so.1" | ||
| 42 | ;; | ||
| 43 | powerpc ) | ||
| 44 | dynamic_loader="${base_libdir}/ld-musl-powerpc${@['', '-sf'][d.getVar('TARGET_FPU') == 'soft']}.so.1" | ||
| 45 | ;; | ||
| 46 | powerpc64 ) | ||
| 47 | dynamic_loader="${base_libdir}/ld-musl-powerpc64.so.1" | ||
| 48 | ;; | ||
| 49 | x86_64 ) | ||
| 50 | dynamic_loader="${base_libdir}/ld-musl-x86_64.so.1" | ||
| 51 | ;; | ||
| 52 | i*86 ) | ||
| 53 | dynamic_loader="${base_libdir}/ld-musl-i386.so.1" | ||
| 54 | ;; | ||
| 55 | arm* ) | ||
| 56 | dynamic_loader="${base_libdir}/ld-musl-arm${ARMPKGSFX_ENDIAN}${ARMPKGSFX_EABI}.so.1" | ||
| 57 | ;; | ||
| 58 | aarch64* ) | ||
| 59 | dynamic_loader="${base_libdir}/ld-musl-aarch64${ARMPKGSFX_ENDIAN_64}.so.1" | ||
| 60 | ;; | ||
| 61 | * ) | ||
| 62 | dynamic_loader="/unknown_dynamic_linker" | ||
| 63 | ;; | ||
| 64 | esac | ||
| 65 | echo $dynamic_loader | ||
| 66 | } | ||
| 67 | |||
| 68 | linuxloader () { | ||
| 69 | linuxloader_${LDSO_TCLIBC} | ||
| 70 | } | ||
