On Mon, Mar 01, 2010 at 02:31:52AM +0100, Andreas Schwab wrote:
> Jack Howarth <[email protected]> writes:
>
> > While looking at PR42308 and trying to understand why the make check
> > is leaky and starts to call the system compiler instead of the xgcc during
> > a make check on either x86_64-apple-darwin9 or i686-apple-darwin10, I
> > noticed
> > that we seem to build libiberty both at the toplevel and within the multilib
> > subdirectories (x86_64-apple-darwin9 and i686-apple-darwin10 respectively).
> > Is this expected behavior as I don't see anything other than libiberty
> > duplicated in this fashion?
>
> The toplevel libiberty is the host library, the others are the target
> libraries. There is another one in the build-$build directory which is
> the build library.
>
I find on i686-apple-darwin10 that the problem can be recreated with...
make -k check-libiberty
executed in the toplevel of the build directory. Interestingly, if I comment
out...
# Flags to pass to a recursive make.
FLAGS_TO_PASS = \
"AR=$(AR)" \
"AR_FLAGS=$(AR_FLAGS)" \
# "CC=$(CC)" \
"CFLAGS=$(CFLAGS)" \
in the generated Makefile in darwin_objdir/libiberty, the correct, xgcc,
compiler is used for those tests. Somehow the recursive make is broken
for libiberty and is silently using the system compiler.
Jack