[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #20513] # still needs to be escaped in a function like $(shell)
From: |
Lionel Elie Mamane |
Subject: |
[bug #20513] # still needs to be escaped in a function like $(shell) |
Date: |
Wed, 18 Jul 2007 15:50:10 +0000 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.4) Gecko/20070508 (Debian-1.8.1.4-1) Galeon/2.0.2 (Debian package 2.0.2-4) |
URL:
<http://savannah.gnu.org/bugs/?20513>
Summary: # still needs to be escaped in a function like
$(shell)
Project: make
Submitted by: lmamane
Submitted on: Wednesday 18/07/07 at 17:50
Severity: 3 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Component Version: 3.81
Operating System: POSIX-Based
Fixed Release: None
_______________________________________________________
Details:
The NEWS file says:
Version 3.81
* WARNING: Backward-incompatibility!
Some previous versions of GNU make had a bug where "#" in a function
invocation such as $(shell ...) was treated as a make comment. A
workaround was to escape these with backslashes. This bug has been
fixed: if your makefile uses "\#" in a function invocation the
backslash is now preserved, so you'll need to remove it.
But I still get that bug with 3.81 and with CVS HEAD. The following
makefile:
FOO:=$(shell echo '#')
foo:
echo '$(FOO)'
gives:
Makefile:1: *** unterminated call to function `shell': missing `)'. Stop.
while
FOO:=$(shell echo '\#')
foo:
echo '$(FOO)'
works, and the backslash is _not_ passed to the shell.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?20513>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [bug #20513] # still needs to be escaped in a function like $(shell),
Lionel Elie Mamane <=