Entendendo como o comando make usa variáveis de ambiente

Cada vez que o comando make é executado, ele lê as variáveis de ambiente atuais e as adiciita em suas macros definidas.

Usando a macro MAKEFLAGS ou a macro MFLAGS , o usuário pode especificar sinalizadores para serem passados para o comando make . Se ambos forem configurados, a macro MAKEFLAGS sobrevoa a macro MFLAGS . As bandeiras especificadas usando essas variáveis são passadas para o comando make juntamente com quaisquer opções de linha de comandos. No caso de chamadas recursivas para o comando make , usando a macro $(MAKE) no arquivo de descrição, o comando make passa todas as bandeiras com cada chamada.

Quando o comando make é executado, ele designa definições macro na seguinte ordem:

  1. Reads a variável de ambiente MAKEFLAGS .

    Se a variável de ambiente MAKEFLAGS não estiver presente ou nula, o comando make verifica por um valor não nulo na variável de ambiente MFLAGS . Se uma dessas variáveis tiver um valor, o comando make assume que cada letra no valor é uma sinalização de entrada. O comando ' make usa esses sinalizadores (exceto os sinalizadores -f, -p e -d, que não podem ser definidos a partir da variável de ambiente MAKEFLAGS ou MFLAGS ) para determinar suas condições operacionais.

  2. Lê e define as bandeiras de entrada da linha de comando. A linha de comando se adicializa às configurações anteriores a partir da variável de ambiente MAKEFLAGS ou MFLAGS .
  3. Lê definições de macro da linha de comando. O comandomake ignora quaisquer designações adicionais a esses nomes.
  4. Lê as definições de macro internas.
  5. Lê o ambiente. O comando make trata as variáveis de ambiente como definições macro e as passa para outros programas de shell.