I can\'t seem to force make
to use a more specific rule. I\'m working with version 3.81, which is supposed to use the first rule it comes to, but this doesn\'t
You are forgetting a very important aspect of the implicit rule search algorithm: make
always prefers implicit rules which have prerequisites which are explicit targets, over an implicit rule where one of the prerequisite patterns does not match a known target and must be built by rule chaining. See step #5 in the algorithm, vs. step #6. This is apart from the normal "first in the makefile" ordering of pattern rules.
If you want to do this you'll have to write the bbl
rule as a static pattern rule, not a real pattern rule, so that the bbl
files are explicit targets not implicit targets.