bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #37237] Second exapnsion with substitution confuse parser:


From: Paul D. Smith
Subject: [bug #37237] Second exapnsion with substitution confuse parser:
Date: Sun, 09 Sep 2012 20:06:24 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1

Update of bug #37237 (project make):

                  Status:                    None => Not A Bug              
             Open/Closed:                    Open => Closed                 

    _______________________________________________________

Follow-up Comment #1:

GNU make's behavior here is correct.  Because the ":" does not appear within a
known macro reference (because the "$" is escaped), it's treated as part of
the rule.  This makes the rule appear to be a static pattern rule, which is
missing a "%", and hence the error.  In other words, make parses this into
words as follows: "dir/hello.o", ":", "$$(@F", ":", and ".o=.c)".

To make this work right you need to escape the ":" from make, like so:

dir/hello.o: $$(@F\:.o=.c)


This works in CVS make but I'm not sure it will work in earlier versions;
there have been some issues with escaping in target and prerequisite lists.

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?37237>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

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