From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5206 invoked from network); 13 Jan 2007 18:21:58 -0000 X-Spam-Checker-Version: SpamAssassin 3.1.7 (2006-10-05) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00, FORGED_RCVD_HELO autolearn=ham version=3.1.7 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by ns1.primenet.com.au with SMTP; 13 Jan 2007 18:21:58 -0000 Received-SPF: none (ns1.primenet.com.au: domain at sunsite.dk does not designate permitted sender hosts) Received: (qmail 14000 invoked from network); 13 Jan 2007 18:21:53 -0000 Received: from sunsite.dk (130.225.247.90) by a.mx.sunsite.dk with SMTP; 13 Jan 2007 18:21:53 -0000 Received: (qmail 12445 invoked by alias); 13 Jan 2007 18:21:51 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 23103 Received: (qmail 12436 invoked from network); 13 Jan 2007 18:21:50 -0000 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by sunsite.dk with SMTP; 13 Jan 2007 18:21:50 -0000 Received: (qmail 13722 invoked from network); 13 Jan 2007 18:21:50 -0000 Received: from vms046pub.verizon.net (206.46.252.46) by a.mx.sunsite.dk with SMTP; 13 Jan 2007 18:21:46 -0000 Received: from torch.brasslantern.com ([71.116.79.148]) by vms046.mailsrvcs.net (Sun Java System Messaging Server 6.2-6.01 (built Apr 3 2006)) with ESMTPA id <0JBT00LHOKC75L93@vms046.mailsrvcs.net> for zsh-workers@sunsite.dk; Sat, 13 Jan 2007 12:21:44 -0600 (CST) Received: from torch.brasslantern.com (localhost.localdomain [127.0.0.1]) by torch.brasslantern.com (8.13.1/8.13.1) with ESMTP id l0DILggS026287; Sat, 13 Jan 2007 10:21:43 -0800 Received: (from schaefer@localhost) by torch.brasslantern.com (8.13.1/8.13.1/Submit) id l0DILft1026286; Sat, 13 Jan 2007 10:21:41 -0800 Date: Sat, 13 Jan 2007 10:21:41 -0800 From: Bart Schaefer Subject: Re: Building zsh should work with "make -j2" In-reply-to: <20070112235849.GZ22968@prunille.vinc17.org> To: Vincent Lefevre , zsh-workers@sunsite.dk Message-id: <070113102141.ZM26285@torch.brasslantern.com> MIME-version: 1.0 X-Mailer: OpenZMail Classic (0.9.2 24April2005) Content-type: text/plain; charset=us-ascii References: <20070112235849.GZ22968@prunille.vinc17.org> Comments: In reply to Vincent Lefevre "Building zsh should work with "make -j2"" (Jan 13, 12:58am) On Jan 13, 12:58am, Vincent Lefevre wrote: } } When building zsh with make -j2, in fact } } A dependency bug in the Makefile? Yes, but it's a really insidious one -- it's an implicit dependency on a sequential build rather than a true file-to-file dependency that can be expressed in make syntax. I've tried several different ways to introduce dummy build targets to force the one portion of the build that is required to be sequetial to really be sequential, and failed every time. The problem is related to the way that zsh uses recursive invocations of make with makefiles that are (re)compiled as part of the outer invocation; it appears to be truly impossible to create a description of this in make syntax because the necessary parts of the syntax can't even exist until the outer make has already decided that it's OK to parallelize the recurive make. That's not the whole story, but it's a large subset of it ...