Makefiles become a horrific technology the minute dynamic variables and the ensuing escaping games get involved. Massive footgun. Bash is already a fairly bonkers language (think from a junior engineer's perspective) and Makefiles so frequently compound that by an order of magnitude.
It doesn't help that it's easy to trip over something where the right answer is "use the more recent version with the feature which fixes that" but because everyone's so used to make being ancient tech, they don't think it would be worth upgrading.