From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10278 invoked by alias); 1 Sep 2009 08:29:05 -0000 Received: (qmail 10269 invoked by uid 22791); 1 Sep 2009 08:29:04 -0000 X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_72 X-Spam-Check-By: sourceware.org Received: from nwd2mail10.analog.com (HELO nwd2mail10.analog.com) (137.71.25.55) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 01 Sep 2009 08:28:56 +0000 Received: from nwd2hubcas1.ad.analog.com ([10.64.73.29]) by nwd2mail10.analog.com with ESMTP; 01 Sep 2009 04:28:55 -0400 Received: from nwd2exm5.ad.analog.com (10.64.51.20) by NWD2HUBCAS1.ad.analog.com (10.64.73.29) with Microsoft SMTP Server id 8.1.358.0; Tue, 1 Sep 2009 04:28:54 -0400 Received: from nwd2exm20.ad.analog.com ([10.64.73.20]) by nwd2exm5.ad.analog.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 1 Sep 2009 04:28:54 -0400 Received: from chinexm1.ad.analog.com ([10.99.27.42]) by nwd2exm20.ad.analog.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 1 Sep 2009 04:28:53 -0400 Received: from [10.99.29.103] ([10.99.29.103]) by chinexm1.ad.analog.com with Microsoft SMTPSVC(6.0.3790.1830); Tue, 1 Sep 2009 16:28:48 +0800 Message-ID: <4A9CDB37.70604@analog.com> Date: Tue, 01 Sep 2009 08:29:00 -0000 From: Jie Zhang User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090701) MIME-Version: 1.0 To: Dave Korn CC: Ralf.Wildenhues@gmx.de, binutils@sourceware.org Subject: Re: Parallel build error for Blackfin target References: <4A9CC410.7060301@analog.com> <4A9CCC56.9090008@gmail.com> In-Reply-To: <4A9CCC56.9090008@gmail.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit 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-09/txt/msg00018.txt.bz2 Dave Korn wrote: > Jie Zhang wrote: > >> Previously >> >> bfin-lex.o: bfin-lex.c bfin-parse.h $(srcdir)/config/bfin-defs.h >> $(COMPILE) -c $< $(NO_WERROR) >> >> Now >> >> bfin-lex.o: bfin-lex.c >> if am__fastdepCC >> $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ >> bfin-lex.c $(NO_WERROR) >> mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po >> else >> if AMDEP >> source='bfin-lex.c' object='$@' libtool=no @AMDEPBACKSLASH@ >> DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ >> endif >> $(COMPILE) -c bfin-lex.c $(NO_WERROR) >> endif >> >> Should I add back "bfin-parse.h $(srcdir)/config/bfin-defs.h" as the >> dependency of bfin-lex.o? > > Perhaps $(srcdir)/config/bfin-defs.h should be added as a preqrequisite of > bfin-parse.c (and hence implicitly of bfin-parse.h). > > Really the whole thing needs some kind of sentinel or stamp wrapped around > it(*); what we've got here is the typical "make doesn't understand when a > single rule updates more than one target at once" situation. Running the rule > for bfin-parse.c actually also creates bfin-parse.h, which is what > necessitates the not-really-true-actually dependency of bfin-parse.h on > bfin-parse.c and the corresponding "@true" build rule. See also Paul D. > Smith's Rules of Makefiles; this violates #2. > The corresponding "@true" build rules are wrong here! They are bfin-defs.h: ; @true $(srcdir)/config/bfin-defs.h: ; @true They should be bfin-parse.h: ; @true $(srcdir)/config/bfin-parse.h: ; @true With this change, the bfin-* targets build well for me now. I'll make a patch and send out for approve soon. Thanks! Jie