Quando você executa make com esse makefile, o destino padrão é out e o primeiro pré-requisito é calc.o , que a linha de construção para esse destino é o que está em seu erro.
O que parece estar acontecendo é que toda a linha de construção está sendo executada pelo shell como se fosse citada - o que não é, e um% normalsh não fará isso.
Mas talvez você não esteja usando algo que se qualifique como sh compatible:
SHELL=cpp2
Redefinir isso (já está definido no ambiente) significa que cpp2 está sendo usado e, evidentemente, não se comporta adequadamente.