URL: <http://savannah.gnu.org/bugs/?31621>
Summary: interaction of pattern rules and globs Project: make Submitted by: pmachata Submitted on: Чтв 11 Ноя 2010 15:39:36 Severity: 3 - Normal Item Group: Bug Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Component Version: CVS Operating System: None Fixed Release: None Triage Status: None _______________________________________________________ Details: make doesn't seem to like pattern rule prerequisites that use globs. I found no reference in the manual that states that this should be supported, so I don't actually know if what I'm asking for is a bug fix or enhancement. Anyway: $ find xxx xxx xxx/sums xxx/sums/zzz.md5 $ make -rd -f x.mk xxx/md5 Reading makefiles... Reading makefile `x.mk'... # the following are my two debug printfs -> parse_file_seq %/md5 -> parse_file_seq %/sums/*.md5 Updating makefiles.... <--- snip ---> Updating goal targets.... Considering target file `xxx/md5'. File `xxx/md5' does not exist. Looking for an implicit rule for `xxx/md5'. Trying pattern rule with stem `xxx'. Trying implicit prerequisite `xxx/sums/*.md5'. Trying pattern rule with stem `xxx'. Trying implicit prerequisite `xxx/sums/*.md5'. Looking for a rule with intermediate file `xxx/sums/*.md5'. Avoiding implicit rule recursion. No implicit rule found for `xxx/md5'. Finished prerequisites of target file `xxx/md5'. Must remake target `xxx/md5'. make: *** No rule to make target `xxx/md5'. Stop. ... the problem being that the wildcard expansion takes place in read.c:parse_file_seq, when reading the makefile. That doesn't find any file matching the %/... path, so it leaves the wild card as is, and later after the stem-replacement, make looks for xxx/sums/*.md5. _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?31621> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/ _______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make