rpm spec file build requer mais de um critério

1

É possível especificar em um arquivo de especificação de rpm que para ser capaz de construir você precisa de uma versão de um pacote maior e menor que algo?

Por exemplo, eu gostaria de especificar python > = 2.7 e < 3,0.

Pode ser feito com buildrequires e, se for possível, qual seria a sintaxe?

Como não vi nenhum exemplo como esse, pensei:

BuildRequires: python >= 2.7
BuildRequires: python < 3.0
    
por paulsm25 19.09.2015 / 16:26

1 resposta

2

Você colocou o exemplo correto em sua pergunta:

BuildRequires: python >= 2.7
BuildRequires: python < 3.0

é a maneira correta de fazer isso.

No entanto, você precisa ter cuidado ao usar o mesmo esquema para a seção Requer clássico. Se você colocar:

Requires: python >= 2.7
Requires: python < 3.0

no seu arquivo de especificação, e o pacote python-3.0 entra em um dos seus yum repos, o yum o oferecerá como uma atualização, o que causará problemas de dependência na sua execução do 'yum update'. Run iria abortar com um erro, e a única forma de evitar seria colocar:

exclude=python-3*

para sua seção de recompra ou para executá-lo com:

yum update --exclude=python

Se você usar essa abordagem apenas para BuildRequires, não terá problemas, a menos que o pacote python-3.0 esteja instalado antes de executar o yum-builddep. Nesse caso, você precisará removê-lo primeiro.

    
por 19.09.2015 / 20:17

Tags