From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21598 invoked by alias); 26 Jun 2013 11:47:23 -0000 Mailing-List: contact crossgcc-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: crossgcc-owner@sourceware.org Received: (qmail 21585 invoked by uid 89); 26 Jun 2013 11:47:22 -0000 X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 Received: from mail.binaryboy.net (HELO mail.binaryboy.net) (106.187.99.229) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Wed, 26 Jun 2013 11:47:20 +0000 Received: from localhost (ip6-localhost [IPv6:::1]) by mail.binaryboy.net (Postfix) with ESMTP id 17B47A106 for ; Wed, 26 Jun 2013 21:47:18 +1000 (EST) Received: from mail.binaryboy.net ([IPv6:::1]) by localhost (mail.binaryboy.net [IPv6:::1]) (amavisd-new, port 10032) with ESMTP id Z4IjzJhZ_Kbh for ; Wed, 26 Jun 2013 21:47:17 +1000 (EST) Received: from localhost (ip6-localhost [IPv6:::1]) by mail.binaryboy.net (Postfix) with ESMTP id E547FA109 for ; Wed, 26 Jun 2013 21:47:16 +1000 (EST) Received: from mail.binaryboy.net ([IPv6:::1]) by localhost (mail.binaryboy.net [IPv6:::1]) (amavisd-new, port 10026) with ESMTP id yS0EWNl7f3bf for ; Wed, 26 Jun 2013 21:47:16 +1000 (EST) Received: from [10.1.1.10] (ppp121-44-84-108.lns20.syd6.internode.on.net [121.44.84.108]) by mail.binaryboy.net (Postfix) with ESMTPSA id 57666A106 for ; Wed, 26 Jun 2013 21:47:16 +1000 (EST) From: Nic Hannekum Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Subject: [PATCH] gcc-4.8: Parallel build failure due to missing header insn-opinit.h Message-Id: Date: Wed, 26 Jun 2013 11:47:00 -0000 To: "crossgcc@sourceware.org" Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) X-SW-Source: 2013-06/txt/msg00036.txt.bz2 It appears the generated header file, insn-opinit.h is new as of gcc 4.8. To support parallel builds, gcc/Makefile.in defines a variable containing p= rerequisite files which guarantees they are built early. On inspection of gcc/Makefile.in it is obvious that its absence from the 'g= enerated_files' variable is an oversight - the patch simply adds it. Quoting from gcc/Makefile.in: " # Language-independent object files. # We put the insn-*.o files first so that a parallel make will build # them sooner, because they are large and otherwise tend to be the # last objects to finish building. " Observations: * without patch * A parallel build on my 4-core i5 @ 2.5GHz will always fail. A parallel build on my 2-core Core Duo @ 1.87GHz will always succeed. A non-parallel build (make -j 1) will always succeed on either of the abov= e machines. * with patch * Both non- and parallel builds always succeed. Tested on the following gcc versions: gcc-4.8.0 gcc-4.8.1 gcc-linaro-4.8-2013.04 gcc-linaro-4.8-2013.05 gcc-linaro-4.8-2013.06-1 --- gcc/Makefile.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 4b04d64..e9ee4a0 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -3801,8 +3801,8 @@ s-gtype: build/gengtype$(build_exeext) $(filter-out [= %], $(GTFILES)) \ $(STAMP) s-gtype =20 generated_files =3D config.h tm.h $(TM_P_H) $(TM_H) multilib.h \ - $(simple_generated_h) specs.h \ - tree-check.h genrtl.h insn-modes.h tm-preds.h tm-constrs.h \ + $(simple_generated_h) specs.h tree-check.h insn-opinit.h \ + genrtl.h insn-modes.h tm-preds.h tm-constrs.h \ $(ALL_GTFILES_H) gtype-desc.c gtype-desc.h gcov-iov.h =20 # In order for parallel make to really start compiling the expensive --=20 -- For unsubscribe information see http://sourceware.org/lists.html#faq