Re: [meta-arm] [PATCH v2 1/8] external-arm-toolchain: remove old sed fixup for libc.so

Romain Naour <[email protected]>
Newsgroups org.yoctoproject.lists.meta-arm
Message-ID <[email protected]>
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 <[email protected]>
>>> ---
>>>  .../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
>>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.