delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2002/08/28/00:50:13

Date: Wed, 28 Aug 2002 07:44:50 +0300 (IDT)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: JT Williams <jeffw AT darwin DOT sfbr DOT org>
cc: djgpp AT delorie DOT com
Subject: Re: file names in Makefile
In-Reply-To: <20020827163539.GA27849@kendall.sfbr.org>
Message-ID: <Pine.SUN.3.91.1020828074253.14990A-100000@is>
MIME-Version: 1.0
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Tue, 27 Aug 2002, JT Williams wrote:

> % cat Makefile
> # Makefile
> 
> SRC = 2001\;6(2)\:126--135.pdf
> 
> all:	$(SRC)
> 	test -f "$<" && echo yes
> 
> # end of Makefile
> 
> % touch '2001;6(2):126--135.pdf'
> 
> % make all
> make: *** No rule to make target `2001;6(2)\:126--135.pdf', needed by `all'.  Stop.
> 
> The semicolon is properly escaped, but the `\' used to escape the colon
> survives as part of the file name.  The file (with the backslash in the
> name) does not exist, and `make' complains.

I think this is a bug in Make; suggest reporting it to the GNU Make 
maintainer (<bug-make AT gnu DOT org>).

Thanks for working on this.

> BTW, the colon must be escaped in the Makefile or `make'
> interprets $(SRC) as a munged archive member reference, e.g.,

Yes, of course.  That's why the fact the backslash isn't removed is IMHO 
a serious bug.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019