É importante notar que make.conf
não é confiável, para verificar como um pacote é compilado. Na verdade, é apenas um dos arquivos de configuração suplementares em toda uma lista.
Do man make.conf
:
USE_ORDER = "env:pkg:conf:defaults:pkginternal:repo:env.d"
Determines the precedence of layers in the incremental stacking of the USE
variable. Precedence decreases from left to right such that env overrides
pkg, pkg overrides conf, and so forth.
Portanto, a prioridade é tratada como:
- Ambiente do shell ao chamar emerge
- Configuração de USE específica do pacote em /etc/portage/package.use
- make.conf
- Padrões do perfil selecionado
- Padrões definidos no pacote
.ebuild
file
- Padrões de distribuição
- Configurações definidas em /etc/env.d
Portanto, basicamente, um sinalizador USE pode ser definido sem ser mencionado em make.conf
. Da mesma forma para CFLAGS (embora sua ordem de processamento seja fixa, mas funciona de maneira semelhante)
Da mesma forma, os sinalizadores USE podem ser mascarados em um perfil sem nenhum no ebuild ou qualquer outra fonte mencionada acima. Em suma, com base em arquivos de configuração, você não pode.
Se você deseja conhecer as configurações globais resultantes usadas atualmente pelo sistema, use emerge --info
. Isso deve lhe dar uma enorme quantidade de detalhes. Geralmente CFLAGS não são frequentemente substituídos por um único pacote, então você pode considerar essa saída definitiva.
Se você quiser saber os sinalizadores USE de um pacote específico que está instalado, você pode usar equery u <package>
, desde que o pacote gentoolkit esteja instalado.