Esse comportamento é o resultado das regras internas de sufixo Make (neste caso, para versões herdadas do sistema de controle de código-fonte [ 1 ]). As regras do sufixo interno podem ser desabilitadas especificando um% pseudo-alvo .SUFFIXES
vazio [ 2 ]:
$ echo '.SUFFIXES:' > Makefile
$ echo 'all: randomFilename' >> Makefile
$ make
make: *** No rule to make target 'randomFilename', needed by 'all'. Stop.
$ touch randomFilename.sh
$ make
make: *** No rule to make target 'randomFilename', needed by 'all'. Stop.