Message ID | 20241025165002.2794821-1-romain.naour@smile.fr |
---|---|
State | New |
Headers | show |
Series | [v2,1/8] external-arm-toolchain: remove old sed fixup for libc.so | expand |
FYI, Ross and I discussed the whole external toolchain support a while back
and we were under the impression that there were no users of it and he was
planning to deprecate the entire external toolchain support after Styhead was
out. I wonder if your patchset changes the plans...
Either way, I reviewed your patches and they seem reasonable. I currently
don't have an active setup with external toolchain, so was not able to do any
testing yet.
If Jon is willing to run these through the CI paces, I won't mind giving my
Reviewed-by: stamp.
On Fri, Nov 01, 2024 at 02:55:22PM -0400, Denys Dmytriyenko wrote: > FYI, Ross and I discussed the whole external toolchain support a while back > and we were under the impression that there were no users of it and he was > planning to deprecate the entire external toolchain support after Styhead was > out. I wonder if your patchset changes the plans... As we now have a known user, let's keep meta-arm-toolchain around a little longer. > Either way, I reviewed your patches and they seem reasonable. I currently > don't have an active setup with external toolchain, so was not able to do any > testing yet. > > If Jon is willing to run these through the CI paces, I won't mind giving my > Reviewed-by: stamp. I ran it through CI, and it passes (sort of). There is an issue with QEMU 9.0.4, but when I regress that recipe to the previous version then it passes. Since that is outside the scope of this series, I've queued these in master-next and added Denys' acked-by to each of them. Thnks, Jon > > -- > Denys > > > On Fri, Oct 25, 2024 at 06:49:55PM +0200, Romain Naour via lists.yoctoproject.org wrote: > > As reported by Vasyl Vavrychuk [1], /${EAT_LIBDIR}/${EAT_TARGET_SYS} > > is not present in libc.so in the latest prebuilt toolchains: > > > > ARM32: > > $ cat ./gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/lib/libc.so > > OUTPUT_FORMAT(elf32-littlearm) > > GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) > > > > $ cat ./gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so > > OUTPUT_FORMAT(elf32-littlearm) > > GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) > > > > $ cat ./arm-gnu-toolchain-12.3.rel1-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so > > OUTPUT_FORMAT(elf32-littlearm) > > GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) > > > > $ cat ./arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so > > OUTPUT_FORMAT(elf32-littlearm) > > GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) > > > > Aarch64: > > $ cat ./gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/aarch64-linux-gnu/libc/usr/lib/libc.so > > OUTPUT_FORMAT(elf64-littleaarch64) > > GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) > > > > $ cat ./gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so > > OUTPUT_FORMAT(elf64-littleaarch64) > > GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) > > > > $ cat ./arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so > > OUTPUT_FORMAT(elf64-littleaarch64) > > GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) > > > > $ cat ./arm-gnu-toolchain-13.3.rel1-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so > > OUTPUT_FORMAT(elf64-littleaarch64) > > GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) > > > > We can safely remove old sed fixup for libc.so. > > > > [1] https://lists.yoctoproject.org/g/meta-arm/message/5565 > > > > Signed-off-by: Romain Naour <romain.naour@smile.fr> > > --- > > .../external-arm-toolchain/external-arm-toolchain.bb | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb > > index 1e8c1116..1095736b 100644 > > --- a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb > > +++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb > > @@ -213,13 +213,13 @@ do_install() { > > rm -rf ${D}${includedir}/rpcsvc/rquota.* > > > > if [ -f ${D}${libdir}/libc.so ];then > > - sed -i -e "s# /${EAT_LIBDIR}/${EAT_TARGET_SYS}# ../../${EAT_LIBDIR}#g" -e "s# /usr/${EAT_LIBDIR}/# /usr/lib/#g" -e "s# /usr/${EAT_LIBDIR}/${EAT_TARGET_SYS}# .#g" -e "s# /${EAT_LIBDIR}/ld-linux# ../../${EAT_LIBDIR}/ld-linux#g" ${D}${libdir}/libc.so > > + sed -i -e "s# /usr/${EAT_LIBDIR}/# /usr/lib/#g" -e "s# /${EAT_LIBDIR}/ld-linux# ../../${EAT_LIBDIR}/ld-linux#g" ${D}${libdir}/libc.so > > sed -i -e "s# /${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" ${D}${libdir}/libc.so > > sed -i -e "s# /lib# ../../lib#g" -e "s# /usr/lib# .#g" ${D}${libdir}/libc.so > > fi > > > > if [ -f ${D}${base_libdir}/libc.so ];then > > - sed -i -e "s# /${EAT_LIBDIR}/${EAT_TARGET_SYS}# ../../lib#g" -e "s# /usr/${EAT_LIBDIR}/${EAT_TARGET_SYS}# .#g" -e "s# /${EAT_LIBDIR}/# /lib/#g" ${D}${base_libdir}/libc.so > > + sed -i -e "s# /${EAT_LIBDIR}/# /lib/#g" ${D}${base_libdir}/libc.so > > if [ -f ${D}${base_libdir}/libc.so.6 ]; then > > sed -i -e "s# /usr/${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" -e "s# /${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" ${D}${base_libdir}/libc.so.6 > > fi > > -- > > 2.45.0 >
Hello Denys, Jon, All, Le 14/11/2024 à 23:50, Jon Mason a écrit : > On Fri, Nov 01, 2024 at 02:55:22PM -0400, Denys Dmytriyenko wrote: >> FYI, Ross and I discussed the whole external toolchain support a while back >> and we were under the impression that there were no users of it and he was >> planning to deprecate the entire external toolchain support after Styhead was >> out. I wonder if your patchset changes the plans... > > As we now have a known user, let's keep meta-arm-toolchain around a > little longer. Not only me but also users that replied in April 2024. > >> Either way, I reviewed your patches and they seem reasonable. I currently >> don't have an active setup with external toolchain, so was not able to do any >> testing yet. >> >> If Jon is willing to run these through the CI paces, I won't mind giving my >> Reviewed-by: stamp. I missed the discussion about external toolchain package back in 2020: https://lists.yoctoproject.org/g/meta-arm/message/599 I wasn't aware that it was not recommended anymore. Still, using an external toolchain for TI SoC is helpful for r5 and aarch64 builds. > > I ran it through CI, and it passes (sort of). There is an issue with > QEMU 9.0.4, but when I regress that recipe to the previous version > then it passes. Since that is outside the scope of this series, I've > queued these in master-next and added Denys' acked-by to each of them. I tried to use gcil as much as possible. I noticed recent runtime issues due to systemd provided by poky-altcfg but it was out of the scope of this series. In addition, I tested this series with the yocto build I use for my customer. Best regards, Romain > > Thnks, > Jon > >> >> -- >> Denys >> >> >> On Fri, Oct 25, 2024 at 06:49:55PM +0200, Romain Naour via lists.yoctoproject.org wrote: >>> As reported by Vasyl Vavrychuk [1], /${EAT_LIBDIR}/${EAT_TARGET_SYS} >>> is not present in libc.so in the latest prebuilt toolchains: >>> >>> ARM32: >>> $ cat ./gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/lib/libc.so >>> OUTPUT_FORMAT(elf32-littlearm) >>> GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) >>> >>> $ cat ./gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so >>> OUTPUT_FORMAT(elf32-littlearm) >>> GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) >>> >>> $ cat ./arm-gnu-toolchain-12.3.rel1-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so >>> OUTPUT_FORMAT(elf32-littlearm) >>> GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) >>> >>> $ cat ./arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so >>> OUTPUT_FORMAT(elf32-littlearm) >>> GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) >>> >>> Aarch64: >>> $ cat ./gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/aarch64-linux-gnu/libc/usr/lib/libc.so >>> OUTPUT_FORMAT(elf64-littleaarch64) >>> GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) >>> >>> $ cat ./gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so >>> OUTPUT_FORMAT(elf64-littleaarch64) >>> GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) >>> >>> $ cat ./arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so >>> OUTPUT_FORMAT(elf64-littleaarch64) >>> GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) >>> >>> $ cat ./arm-gnu-toolchain-13.3.rel1-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so >>> OUTPUT_FORMAT(elf64-littleaarch64) >>> GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) >>> >>> We can safely remove old sed fixup for libc.so. >>> >>> [1] https://lists.yoctoproject.org/g/meta-arm/message/5565 >>> >>> Signed-off-by: Romain Naour <romain.naour@smile.fr> >>> --- >>> .../external-arm-toolchain/external-arm-toolchain.bb | 4 ++-- >>> 1 file changed, 2 insertions(+), 2 deletions(-) >>> >>> diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb >>> index 1e8c1116..1095736b 100644 >>> --- a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb >>> +++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb >>> @@ -213,13 +213,13 @@ do_install() { >>> rm -rf ${D}${includedir}/rpcsvc/rquota.* >>> >>> if [ -f ${D}${libdir}/libc.so ];then >>> - sed -i -e "s# /${EAT_LIBDIR}/${EAT_TARGET_SYS}# ../../${EAT_LIBDIR}#g" -e "s# /usr/${EAT_LIBDIR}/# /usr/lib/#g" -e "s# /usr/${EAT_LIBDIR}/${EAT_TARGET_SYS}# .#g" -e "s# /${EAT_LIBDIR}/ld-linux# ../../${EAT_LIBDIR}/ld-linux#g" ${D}${libdir}/libc.so >>> + sed -i -e "s# /usr/${EAT_LIBDIR}/# /usr/lib/#g" -e "s# /${EAT_LIBDIR}/ld-linux# ../../${EAT_LIBDIR}/ld-linux#g" ${D}${libdir}/libc.so >>> sed -i -e "s# /${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" ${D}${libdir}/libc.so >>> sed -i -e "s# /lib# ../../lib#g" -e "s# /usr/lib# .#g" ${D}${libdir}/libc.so >>> fi >>> >>> if [ -f ${D}${base_libdir}/libc.so ];then >>> - sed -i -e "s# /${EAT_LIBDIR}/${EAT_TARGET_SYS}# ../../lib#g" -e "s# /usr/${EAT_LIBDIR}/${EAT_TARGET_SYS}# .#g" -e "s# /${EAT_LIBDIR}/# /lib/#g" ${D}${base_libdir}/libc.so >>> + sed -i -e "s# /${EAT_LIBDIR}/# /lib/#g" ${D}${base_libdir}/libc.so >>> if [ -f ${D}${base_libdir}/libc.so.6 ]; then >>> sed -i -e "s# /usr/${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" -e "s# /${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" ${D}${base_libdir}/libc.so.6 >>> fi >>> -- >>> 2.45.0 >>
diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb index 1e8c1116..1095736b 100644 --- a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb +++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb @@ -213,13 +213,13 @@ do_install() { rm -rf ${D}${includedir}/rpcsvc/rquota.* if [ -f ${D}${libdir}/libc.so ];then - sed -i -e "s# /${EAT_LIBDIR}/${EAT_TARGET_SYS}# ../../${EAT_LIBDIR}#g" -e "s# /usr/${EAT_LIBDIR}/# /usr/lib/#g" -e "s# /usr/${EAT_LIBDIR}/${EAT_TARGET_SYS}# .#g" -e "s# /${EAT_LIBDIR}/ld-linux# ../../${EAT_LIBDIR}/ld-linux#g" ${D}${libdir}/libc.so + sed -i -e "s# /usr/${EAT_LIBDIR}/# /usr/lib/#g" -e "s# /${EAT_LIBDIR}/ld-linux# ../../${EAT_LIBDIR}/ld-linux#g" ${D}${libdir}/libc.so sed -i -e "s# /${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" ${D}${libdir}/libc.so sed -i -e "s# /lib# ../../lib#g" -e "s# /usr/lib# .#g" ${D}${libdir}/libc.so fi if [ -f ${D}${base_libdir}/libc.so ];then - sed -i -e "s# /${EAT_LIBDIR}/${EAT_TARGET_SYS}# ../../lib#g" -e "s# /usr/${EAT_LIBDIR}/${EAT_TARGET_SYS}# .#g" -e "s# /${EAT_LIBDIR}/# /lib/#g" ${D}${base_libdir}/libc.so + sed -i -e "s# /${EAT_LIBDIR}/# /lib/#g" ${D}${base_libdir}/libc.so if [ -f ${D}${base_libdir}/libc.so.6 ]; then sed -i -e "s# /usr/${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" -e "s# /${EAT_LIBDIR}/libc.so.6# /lib/libc.so.6#g" ${D}${base_libdir}/libc.so.6 fi
As reported by Vasyl Vavrychuk [1], /${EAT_LIBDIR}/${EAT_TARGET_SYS} is not present in libc.so in the latest prebuilt toolchains: ARM32: $ cat ./gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/lib/libc.so OUTPUT_FORMAT(elf32-littlearm) GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) $ cat ./gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so OUTPUT_FORMAT(elf32-littlearm) GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) $ cat ./arm-gnu-toolchain-12.3.rel1-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so OUTPUT_FORMAT(elf32-littlearm) GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) $ cat ./arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/lib/libc.so OUTPUT_FORMAT(elf32-littlearm) GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) Aarch64: $ cat ./gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/aarch64-linux-gnu/libc/usr/lib/libc.so OUTPUT_FORMAT(elf64-littleaarch64) GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) $ cat ./gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so OUTPUT_FORMAT(elf64-littleaarch64) GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) $ cat ./arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so OUTPUT_FORMAT(elf64-littleaarch64) GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) $ cat ./arm-gnu-toolchain-13.3.rel1-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/lib64/libc.so OUTPUT_FORMAT(elf64-littleaarch64) GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) We can safely remove old sed fixup for libc.so. [1] https://lists.yoctoproject.org/g/meta-arm/message/5565 Signed-off-by: Romain Naour <romain.naour@smile.fr> --- .../external-arm-toolchain/external-arm-toolchain.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)