[Top][All Lists]

[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                                                                
%: %.o; $(info $@ from $<)                                                    
$ make-4.4                                                                    
make-4.4: Nothing to be done for 'hello.c'.                                   


Reply to this item at:


Message sent via Savannah

reply via email to

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