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] New: Erroneous implied make rule for linkobj/libc.so in Makerules


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

            Bug ID: 15915
           Summary: Erroneous implied make rule for linkobj/libc.so in
                    Makerules
           Product: glibc
           Version: 2.18
            Status: NEW
          Severity: normal
          Priority: P2
         Component: build
          Assignee: unassigned at sourceware dot org
          Reporter: brooks at gcc dot gnu.org
                CC: carlos at redhat dot com

In a clean 2.18 build (or even when one runs "make" a second time so it's a
no-op build), there's a repeated makefile warning:

make  subdir=locale -C locale ..=../ others
make[2]: Entering directory `$build/locale'
make[2]: Circular $build/linkobj/libc.so <- $build/linkobj/libc.so dependency
dropped.

This comes from the adjustment to the implicit "lib%.so" rule at line 437 of
Makerules, which was changed in this patch of Joseph's to include
$(link-libc-args): http://sourceware.org/ml/libc-ports/2013-05/msg00053.html

The current rule is:

lib%.so: lib%_pic.a $(+preinit) $(+postinit) $(+interp) $(link-libc-deps)
    $(build-shlib) $(link-libc-args)

And $(link-libc-deps) includes linkobj/libc.so unless overridden.

The problem is that, in makefiles such as locale/Makefile that include
Makerules but do not include the top-level makefile (where the explicit
linkobj/libc.so rule is located), this rule is the one that's chosen for
linkobj/libc.so -- and, since linkobj/libc.so is declared as a dependency for
various things (through this same makefile rule), make wants to evaluate a rule
for it.

Further, although the circular-reference warning is the easiest problem to
repeat, this also leads to actual errors -- occasionally, in the -j12 builds
that we use, make actually attempts to _use_ this rule and that crashes the
build.

-- 
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]