Received: from localhost (maia-3.hub.org [200.46.204.184]) by postgresql.org (Postfix) with ESMTP id 7B2669FB302; Sat, 27 Jan 2007 11:14:38 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.184]) (amavisd-new, port 10024) with ESMTP id 95200-10; Sat, 27 Jan 2007 11:14:30 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from momjian.us (momjian.us [70.90.9.53]) by postgresql.org (Postfix) with ESMTP id EB9079FB300; Sat, 27 Jan 2007 11:14:34 -0400 (AST) Received: (from bruce@localhost) by momjian.us (8.11.6/8.11.6) id l0RFEXK19056; Sat, 27 Jan 2007 10:14:33 -0500 (EST) From: Bruce Momjian Message-Id: <200701271514.l0RFEXK19056@momjian.us> Subject: Re: Change draft gmake control In-Reply-To: <200701271046.11947.peter_e@gmx.net> To: Peter Eisentraut Date: Sat, 27 Jan 2007 10:14:33 -0500 (EST) CC: pgsql-docs@postgresql.org, PostgreSQL-patches X-Mailer: ELM [version 2.4ME+ PL123] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="US-ASCII" X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200701/20 X-Sequence-Number: 4116 Peter Eisentraut wrote: > Bruce Momjian wrote: > > I had to change the draft flag for SGML from 'gmake draft html' to > > 'gmake DRAFT=Y html'. Internally the code used to recurse with > > DRAFT=Y, but I found there is no way to exit the makefile after the > > recursion returned, > > exit 0 ? I tried that, but it did nothing. Of course exit 1 works, but throws an error, and exec exit 0 doesn't work either, throws an error. > > so I had to use this new syntax. Though more > > cumbersome, it is more logical because DRAFT is really a modifier, > > not a rule itself. For example, 'gmake html draft' would never have > > worked. > > What would have been the meaning of that command? Nothing, but the point is that draft is a modifier and it isn't clear from that syntax that draft is a modifier and not a target. > Anyway, certainly you could write this to preserve the target: > > draft: > $(MAKE) html DRAFT=Y The problem is that the 'gmake' recursion is done, but then returns and runs the hhml again, so 'gmake draft html' calls "$(MAKE) html DRAFT=Y" and on return from that, the html is called again and rebuilds, so it isn't really draft. -- Bruce Momjian bruce@momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. +