[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: Gecko/20070508 (Debian- Galeon/2.0.2 (Debian package 2.0.2-4)


                 Summary: # still needs to be escaped in a function like
                 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



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

FOO:=$(shell echo '#')
        echo '$(FOO)'


Makefile:1: *** unterminated call to function `shell': missing `)'.  Stop.


FOO:=$(shell echo '\#')
        echo '$(FOO)'

works, and the backslash is _not_ passed to the shell.


Reply to this item at:


  Message sent via/by Savannah

reply via email to

[Prev in Thread] Current Thread [Next in Thread]