Como qualquer processo, make
não pode modificar o ambiente de um processo existente , ele só pode controlar o ambiente que é passado para os processos iniciados. Tão curto de encher o buffer de entrada, não há como fazer o que você está tentando fazer.
Além disso, make
processa cada linha de comando em um shell diferente, portanto, as linhas set -a
, . ./.env
e set +a
são executadas em shells separadas. Os efeitos de . ./.env
só serão vistos no shell que executa esse comando.