bug-make
[Top][All Lists]
Advanced

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

[bug #63359] patsubst messes up functions in replacement


From: Robert Sachunsky
Subject: [bug #63359] patsubst messes up functions in replacement
Date: Sun, 13 Nov 2022 12:30:40 -0500 (EST)

URL:
  <https://savannah.gnu.org/bugs/?63359>

                 Summary: patsubst messes up functions in replacement
                 Project: make
               Submitter: bertsky
               Submitted: Sun 13 Nov 2022 05:30:38 PM UTC
                Severity: 3 - Normal
              Item Group: Bug
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
       Component Version: SCM
        Operating System: POSIX-Based
           Fixed Release: None
           Triage Status: None


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Sun 13 Nov 2022 05:30:38 PM UTC By: Robert Sachunsky <bertsky>
Consider the following Makefile:


FOO = a/b/c
$(info $(patsubst %/c,%,$(FOO)))
$(info $(patsubst %/c,$(notdir %),$(FOO)))
$(info $(patsubst %/c,$(dir %),$(FOO)))


The following output can be *expected* from that:


a/b
b
a/
make: *** No targets.  Stop.


However, to my surprise, this is what we *actually* get:


a/b
a/b
./
make: *** No targets.  Stop.


It seems like _make_ cannot properly deal with function calls inside
substitution references.

Since the documentation does not indicate that, and it is certainly unexpected
(and a severe limitation for no apparent reason), I would consider this a
*bug*.

Tested on GNU make v 4.1, 4.3 and git master (rev 11f7198f).









    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?63359>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

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