[PATCH] Makerules: Generate shlib.lds with -fuse-ld=bfd
Sam James
sam@gentoo.org
Tue Nov 8 00:06:16 GMT 2022
> On 7 Nov 2022, at 08:31, Florian Weimer via Libc-alpha <libc-alpha@sourceware.org> wrote:
>
> * Fangrui Song:
>
>> lld does not dump a linker script with --verbose (it does not use a
>> linker script driven design and lots of linker processing is not
>> serializable as a linker script anyway). With the default
>> --with-default-link=no build, $@T is empty and makes `test -s $@T` fail.
>>
>> Just dump the linker script with -fuse-ld=bfd. lld since 15
>> (https://reviews.llvm.org/D124656) supports custom RELRO sections in the
>> GNU ld dumped linker script.
>> ---
>> Makerules | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/Makerules b/Makerules
>> index 09c0cf8357..2edc6ee4e1 100644
>> --- a/Makerules
>> +++ b/Makerules
>> @@ -553,7 +553,7 @@ else
>> # not for shared objects
>> $(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules
>> $(LINK.o) -shared -Wl,-O1 \
>> - -nostdlib -nostartfiles \
>> + -nostdlib -nostartfiles -fuse-ld=bfd \
>> $(sysdep-LDFLAGS) $(rtld-LDFLAGS) $(LDFLAGS.so) \
>> -Wl,--verbose 2>/dev/null | \
>> sed > $@T \
>
> Would you please add the comment?
>
> I'm not sure if a configure check is required. We have a path towards
> removal of the custom linker script; the vfprintf refactor I posted is a
> first step.
>
That works for me.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 358 bytes
Desc: Message signed with OpenPGP
URL: <https://sourceware.org/pipermail/libc-alpha/attachments/20221108/e6d32702/attachment.sig>
More information about the Libc-alpha
mailing list