USE macros em pacotes rpm

Publicado na lista de discussão do Fedora proposta para padronizar macros em arquivos de especificação RPM, permitindo adicionar aos pacotes RPM a capacidade de selecionar sinalizadores de compilação e dependências adicionais no estágio de construção.

Exemplo de uso:

%se %{usar SSL}
BuildRequires: openssl-devel
%fim se

% prep
%configure %{use_enable ssl openssl}

% Verifica
faça teste %{?_use_ssl:-DSSL}

Neste exemplo, ao especificar a macro USE ssl no arquivo spec, uma dependência adicional no pacote openssl-devel será adicionada, uma etapa de configuração será executada com a opção --enable-openssl habilitada e os testes correspondentes serão executado durante a construção.

Presume-se que a opção de construção será especificada pela macro binária %_use_ com wrappers adicionais como:

  • %{usar } – assume valores 0 ou 1,
  • %{use_enable [ [ ]]} – expande para —disable- ou --enable- .

Adicionar opções deste tipo aos arquivos de especificação permitirá compilar diferentes versões da distribuição a partir das mesmas fontes.

Por exemplo, para minimizar a árvore de dependência de construção, você pode usar o parâmetro global %{use docs}, que desativa a construção de documentação.

É possível definir o conjunto apropriado de opções configurando o ambiente de construção. Além disso, as opções podem ser definidas globalmente e redefinidas separadamente para cada pacote.

A proposta ainda não foi aceita e está em discussão.

Fonte: linux.org.ru

Adicionar um comentário