summaryrefslogtreecommitdiffstats
path: root/meta/classes/linuxloader.bbclass
AgeCommit message (Collapse)Author
2020-03-21linuxloader: Add get_musl_loader_arch functionKhem Raj
get_musl_loader_arch returns the arch part of ldso for musl, this is used in get_musl_loader() as well as independently usable, which is needed for multilib support in musl. Musl stores all ldso in /lib be it multilib or not, therefore do not use base_libdir instead directly use /lib [YOCTO #11971] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-12-30linuxloader: Correct loader for glibc on armhfAlex Kiernan
Fix the naming of the loader on armhf to match what glibc expects: #define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT SYSTEMLIBS_DIR "ld-linux.so.3" #define GLIBC_DYNAMIC_LINKER_HARD_FLOAT SYSTEMLIBS_DIR "ld-linux-armhf.so.3" Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14linuxloader: Add entries for riscv64Khem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20linuxloader.bbclass: Refactor to have seprate functions for musl/glibc loaderKhem Raj
this makes it possible to use this for musl where we are trying to create a glibc compat package Add missing aarch64 loader definition for glibc function Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-08-23linuxloader: Convert to python functionRichard Purdie
We could do with one decent general purpose python function to query the path to the dynamic loader. Convert the shell code into python. Also correct baremetal to return "None", not musl loaders. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08linuxloader.bbclass: add musl libc supportMing Liu
Current linuxloader.bbclass does not support musl libc ldso, so add it in. After changing, now the linuxloader function will call a subfunction according to which virtual/libc is being used, glibc or musl, the linuxloader_musl function is made on top of the LDSO macro defined in musl source, by mapping related OE variables to it. Change tested on following machines: "genericx86" "genericx86-64" "beaglebone" "qemumips64" "qemuarm64" "mpc8315e-rdb" "edgerouter" "qemumips" "kc705-microblazeel" - meta-xilinx "qemuppc" Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-10-07linuxloader.bbclass: Adjust mips to cover all mips/mips64Mark Hatle
[YOCTO #10389] Use a glob (*) to match all mips (not previously matched). This will ensure that the linuxloader is properly returned for mips, mipsel, mips64, mips64el and their n32 variants. See: https://sourceware.org/glibc/wiki/ABIList#mips for the official list of loaders. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-07linuxloader.bbclass: Add mipsisa{32, 64}r6{el, } supportZubair Lutfullah Kakakhel
Add support for MIPS Release 6 ISA. The loader is located at a new place for multiarch. For more details, check https://wiki.debian.org/Multiarch and https://sourceware.org/glibc/wiki/ABIList#mips Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-07linuxloader/image-prelink/image-mklibs: Fix non-standard path prelinkingRichard Purdie
Prelinking on x86-64 wasn't working out the box as it uses /lib and not /lib64 for libs. Prelink was refusing to link as the dynamic loader didn't match its idea of the right path. Passing in the --dyanmic-linker option avoids this. We can share code from image-mklibs so abstract that into a new class, linuxloader.bbclass. This does break prelinking of multilib images, I've opened a bug so we can loop back and fix that problem, the code would need to iterate the dynamic loaders (and setup ld.so.conf files for it). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>