[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #63840] make allows match-anything rules to match files with the de
From: |
Dmitry Goncharov |
Subject: |
[bug #63840] make allows match-anything rules to match files with the default suffixes |
Date: |
Sun, 26 Feb 2023 22:18:23 -0500 (EST) |
Follow-up Comment #3, bug #63840 (project make):
> If you use -r then you've removed all the implicit rules in the makefile,
including suffix rules, and so I don't necessarily agree with the idea that
even in this case we should still treat these suffixes as special when
considering match-anything rules.
My opinion is that, removal of the built-in rules is all about relieving make
from doing extra work. This helps performance, troubleshooting and reduces -d
output. imo, the current behavior, when -r causes match-anything rules to be
eligible does the opposite of -r should do, which is it increases the amount
of work, rather then reduces it. i also think, presence or absence of built-in
rules, including suffix rules, is orthogonal to whether match-anything rules
are eligible for files with specific data.
Looks like i did not convey it well enough in the original description. It is
removal of the built-in rules that causes match-anything rules to be eligible.
It is not clearing of the default suffixes that causes this behavior. If you
clear the list of the default suffixes, match-anything rules are still not
eligible for the files with the (now cleared) default suffixes.
Example 5
++++
$ ls
hello.c.o makefile
$ cat makefile
.SUFFIXES:
hello.c:
%: %.o; $(info $@ from $<)
$ make-4.4
make-4.4: Nothing to be done for 'hello.c'.
----
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?63840>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/