Existem três variáveis diferentes para registrar um conflito entre pacotes e ports: CONFLICTS, CONFLICTS_INSTALL e CONFLICTS_BUILD.
As variáveis de conflito definem automaticamente a variável IGNORE, que é mais amplamente documentada em Seção 13.13, “Marcando um Port não Instalável com a variável BROKEN, FORBIDDEN ou IGNORE”.
Ao remover um dos vários ports conflitados, é aconselhável reter CONFLICTS nos outros ports por alguns meses para atender usuários que apenas fazem atualizações de vez em quando.
CONFLICTS_INSTALLSe o pacote não puder coexistir com outros pacotes (devido a conflitos de arquivos, incompatibilidades de tempo de execução, etc.). A checagem CONFLICTS_INSTALL é feita após o estágio de compilação e antes do estágio de instalação.
CONFLICTS_BUILDSe o port não puder ser compilado quando outros ports específicos já estiverem instalados. Conflitos de compilação não serão registrados no pacote final.
CONFLICTSSe o port não puder ser compilado quando um certo port estiver instalado e o pacote final não puder coexistir com o outro pacote. A checagem CONFLICTS é feita antes do estágio de compilação e antes do estágio de instalação.
O conteúdo mais comum de uma dessas variáveis é o pacote base de outro port. O pacote base é o nome do pacote sem a versão, ele pode ser obtido executando make -V PKGBASE.
CONFLICTS*dns/bind99 não pode ser instalado se dns/bind910 está presente porque eles instalam os mesmos arquivos. Primeiro, reúna o pacote base para usar:
%make -C dns/bind99 -V PKGBASEbind99%make -C dns/bind910 -V PKGBASEbind910
Então adicione ao Makefile do dns/bind99:
CONFLICTS_INSTALL= bind910
E adicione ao Makefile do dns/bind910:
CONFLICTS_INSTALL= bind99
Às vezes, apenas uma versão de outro port é incompatível, neste caso, use o nome completo do pacote, com a versão, e use shell globs, como * e ? para garantir que todas as versões possíveis sejam correspondidas.
CONFLICTS* Com Globs.Nas versões 2.0 até 2.4.1_2, deskutils/gnotime instalava uma versão integrada de databases/qof.
Para refletir este passado, o Makefile do database/qof contém:
CONFLICTS_INSTALL= gnotime-2.[0-3]* \ gnotime-2.4.0* gnotime-2.4.1 \ gnotime-2.4.1_[12]
As primeira entrada corresponde as versões 2.0 até 2.3, a segunda corresponde todas as revisões de 2.4.0, a terceira corresponde a versão exata 2.4.1, e a última corresponde a primeira e segunda revisão da versão 2.4.1.
deskutils/gnotime não possui nenhuma linha de conflitos porque sua versão atual não conflita com mais nada.
All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/
Questions that are not answered by the
documentation may be
sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.