From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30537 invoked by alias); 19 Aug 2009 19:30:07 -0000 Received: (qmail 30427 invoked by uid 22791); 19 Aug 2009 19:30:02 -0000 X-SWARE-Spam-Status: No, hits=-1.2 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_52,J_CHICKENPOX_72,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail.gmx.net (HELO mail.gmx.net) (213.165.64.20) by sourceware.org (qpsmtpd/0.43rc1) with SMTP; Wed, 19 Aug 2009 19:29:57 +0000 Received: (qmail invoked by alias); 19 Aug 2009 19:29:53 -0000 Received: from xdsl-87-78-69-136.netcologne.de (EHLO localhost.localdomain) [87.78.69.136] by mail.gmx.net (mp056) with SMTP; 19 Aug 2009 21:29:53 +0200 Received: from ralf by localhost.localdomain with local (Exim 4.69) (envelope-from ) id 1Mdqqy-00029w-By; Wed, 19 Aug 2009 21:29:48 +0200 Date: Wed, 19 Aug 2009 19:51:00 -0000 From: Ralf Wildenhues To: newlib@sources.redhat.com Cc: binutils@sourceware.org Subject: parallel build fix: newlib depends upon binutils Message-ID: <20090819192947.GD7785@gmx.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.20 (2009-08-09) X-IsSubscribed: yes Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org X-SW-Source: 2009-08/txt/msg00375.txt.bz2 Not sure which party is responsible for this, so apologies if I've cross-posted too broadly again (I'll try to improve). In a parallel build of the src tree, I can get $target/newlib to try to access binutils/ar before it is built: configured with --with-newlib 'CC=gcc -m32' 'CXX=g++ -m32' \ --disable-tcl --disable-tk --disable-itcl --disable-libgui \ --disable-sim --disable-gdb --disable-sid /bin/sh ../libtool --tag=CC --mode=link gcc -m32 -L/tmp/build/./ld -m32 -I/tmp/build/i686-pc-linux-gnu/32/newlib/targ-include -I/tmp/src/newlib/libc/include -g -O2 -m32 -m32 -o libargz.la -Xcompiler -nostdlib dummy.lo argz_add.lo argz_add_sep.lo argz_append.lo argz_count.lo argz_create.lo argz_create_sep.lo argz_delete.lo argz_extract.lo argz_insert.lo argz_next.lo argz_replace.lo argz_stringify.lo buf_findstr.lo envz_entry.lo envz_get.lo envz_add.lo envz_remove.lo envz_merge.lo envz_strip.lo libtool: link: /tmp/build/./binutils/ar rc .libs/libargz.a dummy.o argz_add.o argz_add_sep.o argz_append.o argz_count.o argz_create.o argz_create_sep.o argz_delete.o argz_extract.o argz_insert.o argz_next.o argz_replace.o argz_stringify.o buf_findstr.o envz_entry.o envz_get.o envz_add.o envz_remove.o envz_merge.o envz_strip.o ../libtool: line 947: /tmp/build/./binutils/ar: No such file or directory make[8]: *** [libargz.la] Error 127 make[8]: Leaving directory `/tmp/build/i686-pc-linux-gnu/32/newlib/libc/argz' make[7]: *** [all-recursive] Error 1 The patch below should fix this. I added a couple of other deps that I figured are in the same bug class. (Adding the prerequisite to configure-* instead of all-* because the libtool macros may probe $AR and $LD features at configure time.) OK to commit and sync to GCC? Thanks, Ralf Fix toplevel target deps. ChangeLog: 2009-08-19 Ralf Wildenhues * Makefile.def (configure-target-libiberty): Depend on all-binutils and all-ld. (configure-target-newlib): Likewise. * Makefile.in: Regenerate. Index: Makefile.def =================================================================== RCS file: /cvs/src/src/Makefile.def,v retrieving revision 1.101 diff -u -r1.101 Makefile.def --- Makefile.def 26 Jun 2009 17:19:07 -0000 1.101 +++ Makefile.def 19 Aug 2009 19:07:58 -0000 @@ -539,6 +547,10 @@ dependencies = { module=all-target-libgloss; on=all-target-newlib; }; dependencies = { module=all-target-winsup; on=all-target-libiberty; }; dependencies = { module=all-target-winsup; on=all-target-libtermcap; }; +dependencies = { module=configure-target-libiberty; on=all-binutils; }; +dependencies = { module=configure-target-libiberty; on=all-ld; }; +dependencies = { module=configure-target-newlib; on=all-binutils; }; +dependencies = { module=configure-target-newlib; on=all-ld; }; languages = { language=c; gcc-check-target=check-gcc; }; languages = { language=c++; gcc-check-target=check-c++;