From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22395 invoked from network); 15 Apr 2004 06:48:04 -0000 Received: from sunsite.dk (130.225.247.90) by ns1.primenet.com.au with SMTP; 15 Apr 2004 06:48:04 -0000 Received: (qmail 11294 invoked by alias); 15 Apr 2004 06:47:59 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 19779 Received: (qmail 11251 invoked from network); 15 Apr 2004 06:47:59 -0000 Received: from localhost (HELO sunsite.dk) (127.0.0.1) by localhost with SMTP; 15 Apr 2004 06:47:59 -0000 X-MessageWall-Score: 0 (sunsite.dk) Received: from [130.225.247.86] by sunsite.dk (MessageWall 1.0.8) with SMTP; 15 Apr 2004 6:47:58 -0000 Received: (qmail 26318 invoked from network); 15 Apr 2004 06:47:58 -0000 Received: from ip-66-80-62-153.dsl.sca.megapath.net (HELO ripple.fruitbat.org) (66.80.62.153) by a.mx.sunsite.dk with SMTP; 15 Apr 2004 06:47:55 -0000 Received: (from daemon@localhost) by ripple.fruitbat.org (8.10.2/8.8.8/PAC-1.3) id i3F6kqY00693; Wed, 14 Apr 2004 23:46:52 -0700 Received: from ming.fruitbat.org(192.168.1.2) by ripple.fruitbat.org via smap (V2.1/2.1+anti-relay+anti-spam) id xma000689; Wed, 14 Apr 04 23:46:33 -0700 Received: from gremlin.fruitbat.org (IDENT:202@gremlin.fruitbat.org [192.168.1.4]) by ming.fruitbat.org (8.10.2/8.10.2/PAC-1.6) with ESMTP id i3F7hOi08686; Thu, 15 Apr 2004 00:43:24 -0700 Date: Wed, 14 Apr 2004 23:43:30 -0700 (PDT) From: "Peter A. Castro" To: Clint Adams cc: zsh-workers@sunsite.dk Subject: Re: zsh and line breaks In-Reply-To: <20040415050315.GA26270@scowler.net> Message-ID: References: <29767.1081186817@csr.com> <20040415050315.GA26270@scowler.net> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Spam-Checker-Version: SpamAssassin 2.63 on a.mx.sunsite.dk X-Spam-Level: X-Spam-Status: No, hits=0.0 required=6.0 tests=none autolearn=no version=2.63 X-Spam-Hits: 0.0 On Thu, 15 Apr 2004, Clint Adams wrote: Greetings Clint, > > args and a fix to the install.html target to use sdir. > > Wait, why are you doing this? It breaks the install target completely > for VPATH builds. I fail to see how. Make may be able to resolve the source and target files implicitly from VPATH, reguardless of the current directory at the time, but the shell code it executes for commands does not use VPATH and breaks when run from a build directory which is not the same as the source directory. Here's the diff lines from Doc/Makefile.in: install.html: html ${SHELL} $(sdir_top)/mkinstalldirs $(DESTDIR)$(htmldir) - for file in zsh*.html; do \ + for file in ${sdir}/zsh*.html; do \ $(INSTALL_DATA) $$file $(DESTDIR)$(htmldir) || exit 1; \ done The use of the shell wildcard (zsh*.html) makes the shell do a pattern match against the list of files in the directory in which it is run. If I was building from a work directory (say zsh-4.2.0/.build/Doc) and installing into a destination root other that "/" (say zsh-4.2.0/.inst) make executes this bit of shell code and it fails to find any zsh*.html files because make isn't currently in that directory (it's in .build/Doc). Prepending ${sdir} ensures the zsh*.html files are addressable to the shell code. Another solution would be to have a static list, like the list of man pages in the MAN macro, but even then, the shell code references the files using $(sdir). So how, exactly, does this break VPATH? Can you give me an example? I'll try and correct it, but I don't yet see how it's broken. -- Peter A. Castro or "Cats are just autistic Dogs" -- Dr. Tony Attwood