Page MenuHomeFreeBSD

rtld: fix dependencies for rtld-libc
ClosedPublic

Authored by brooks on Aug 7 2025, 12:38 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Oct 13, 12:09 PM
Unknown Object (File)
Mon, Oct 13, 12:09 PM
Unknown Object (File)
Mon, Oct 13, 12:08 PM
Unknown Object (File)
Sun, Oct 12, 11:28 PM
Unknown Object (File)
Thu, Oct 9, 11:27 PM
Unknown Object (File)
Wed, Oct 1, 5:29 PM
Unknown Object (File)
Tue, Sep 30, 9:04 AM
Unknown Object (File)
Fri, Sep 26, 9:57 AM
Subscribers

Details

Summary

Previously we (appropriately, but incorrectly) attempted to depend on
LIBC_NOSSP_PIC and LIBSYS_PIC the main rtld_libc.a. Unfortunately,
variables in dependency lists are expanded at parse time and those
variables are defined in bsd.libnames.mk which *must* be included by
bsd.{lib,prog}.mk. As such, they were undefined and thus expanded to
the empty string resulting in no dependency with predictable and highly
confusing results.

Move the declaration of these dependencies to after the include of
bsd.prog.mk and add comments on both side in hopes of keeping any future
dependencies in sync.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Without this change, touching libsys_pic.a in the object tree had no effect. This in turn was causing bootstrap problems when the contents of _exit.pico changed in libsys.

'Unfortunatly' and 'decleration' in the summary.

This revision is now accepted and ready to land.Aug 7 2025, 6:02 PM
This revision was automatically updated to reflect the committed changes.