This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug build/15915] Erroneous implied make rule for linkobj/libc.so in Makerules


http://sourceware.org/bugzilla/show_bug.cgi?id=15915

--- Comment #1 from Brooks Moses <brooks at gcc dot gnu.org> ---
I further note that the reason that linkobj/libc.so is in the link-libc-deps
variable at all is noted in the comments above it and libc-for-link, at lines
421 and following in Makerules.  Specifically, because libc-for-link can be
overridden, we always to include both possible values it can take on in the
dependencies list.

(Side note: The things in link-libc-deps are then filtered out of the
dependency list when converting it to a things-to-link list in
build-module-helper-objlist, line 522, and libc-for-link is included in the
link line separately.)

There are two places that this happens: nis/Makefile and nss/Makefile, where
libc-for-link is redefined to be linkobj/libc.so.  It would be straightforward
to explicitly note the dependency at that point, and remove it from the general
dependency list, thereby breaking the circular reference.  (We would
necessarily also need to filter libc-for-link rather than link-libc-deps out of
the things-to-link list.)  However, this merely removes the warning; the
erroneous implicit rule for linkobj/libc.so would still be present.

A more-satisfying solution would be to move the explicit rule for
linkobj/libc.so from Makefile into Makerules, alongside the rule for libc.so.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]