Macros USE em pacotes rpm

Foi publicada uma proposta na mailing list do Fedora a proposta para a padronização de macros em arquivos de especificação RPM, permitindo adicionar a capacidade de seleção de flags de compilação e dependências adicionais durante o processo de construção dos pacotes RPM.

Exemplo de uso:

%if %{use ssl}
BuildRequires: openssl-devel
%endif

%prep
%configure %{use_enable ssl openssl}

%check
make test %{?_use_ssl:-DSSL}

Neste exemplo, ao definir a macro USE ssl no arquivo de especificação, uma dependência adicional para o pacote openssl-devel será adicionada, a etapa de configuração será executada com a opção —enable-openssl ativada, e os testes correspondentes serão realizados durante a construção.

Pressupõe-se que a opção de construção será definida pela macro binária %_use_ com envoltórios adicionais do tipo:

  • %{use } – aceita valores 0 ou 1,
  • %{use_enable [ []]} – é expandido em —disable- ou —enable-.

Adicionar opções desse tipo aos arquivos de especificação permitirá construir diferentes variantes da distribuição a partir dos mesmos fontes.

Por exemplo, para minimizar a árvore de dependências de build, pode-se utilizar o parâmetro global %{use docs} que desabilita a construção da documentação.

Um conjunto apropriado de opções poderá ser definido configurando o ambiente de construção. As opções podem ser definidas tanto globalmente quanto redefinidas individualmente por pacote.

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

Fonte: linux.org.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster