- Update CONFLICT handling

Submitted by:	beat
Review by:	bcr, jkois
This commit is contained in:
Martin Wilke 2010-12-30 06:24:10 +00:00
parent 0354aa6afc
commit b5e6166534
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=36744

View file

@ -4169,22 +4169,15 @@ PORTVERSION= 1.0</programlisting>
</sect1>
<sect1 id="conflicts">
<title><makevar>CONFLICTS</makevar></title>
<title>Conflict handling</title>
<para>If your package cannot coexist with other packages
(because of file conflicts, runtime incompatibility, etc.),
list the other package names in the <makevar>CONFLICTS</makevar>
variable. You can use shell globs like <literal>*</literal> and
<literal>?</literal> here. Packages names should be
enumerated the same way they appear in
<filename>/var/db/pkg</filename>. Please make sure that
<makevar>CONFLICTS</makevar> does not match this port's
package itself, or else forcing its installation with
<makevar>FORCE_PKG_REGISTER</makevar> will no longer work.
</para>
<para>There are tree different variables to register a conflict
between packages and ports: <makevar>CONFLICTS</makevar>,
<makevar>CONFLICTS_INSTALL</makevar> and
<makevar>CONFLICTS_BUILD</makevar>.</para>
<note>
<para><makevar>CONFLICTS</makevar> automatically sets
<para>The conflict variables automatically set the variable
<makevar>IGNORE</makevar>, which is more fully documented
in <xref linkend="dads-noinstall">.</para>
</note>
@ -4193,6 +4186,53 @@ PORTVERSION= 1.0</programlisting>
retain the <makevar>CONFLICTS</makevar> entries in those other ports
for a few months to cater for users who only update once in a
while.</para>
<sect2>
<title><makevar>CONFLICTS_INSTALL</makevar></title>
<para>If your package cannot coexist with other packages
(because of file conflicts, runtime incompatibilities, etc.),
list the other package names in the
<makevar>CONFLICTS_INSTALL</makevar> variable. You can use shell
globs like <literal>*</literal> and <literal>?</literal> here.
Packages names should be enumerated the same way they appear in
<filename>/var/db/pkg</filename>. Please make sure that
<makevar>CONFLICTS_INSTALL</makevar> does not match this port's
package itself. Otherwise enforcing its installation with
<makevar>FORCE_PKG_REGISTER</makevar> will no longer work.
The CONFLICTS_INSTALL check is done after the build stage and
prior to the install stage.</para>
</sect2>
<sect2>
<title><makevar>CONFLICTS_BUILD</makevar></title>
<para>If your port cannot be built if a certain port is already
installed, list the other port names in the
<makevar>CONFLICTS_BUILD</makevar> variable. You can use shell
globs like <literal>*</literal> and <literal>?</literal> here.
Packages names should be enumerated the same way they appear in
<filename>/var/db/pkg</filename>. The CONFLICTS_BUILD check is
done prior to the build stage. Build conflicts are not recorded
in the resulting package.</para>
</sect2>
<sect2>
<title><makevar>CONFLICTS</makevar></title>
<para>If your port cannot be built if a certain port is already
installed and the resulting package cannot coexist with the
other package, list the other package name in the
<makevar>CONFLICTS</makevar> variable. You can use shell
globs like <literal>*</literal> and <literal>?</literal> here.
Packages names should be enumerated the same way they appear in
<filename>/var/db/pkg</filename>. Please make sure that
<makevar>CONFLICTS_INSTALL</makevar> does not match this port's
package itself. Otherwise enforcing its installation with
<makevar>FORCE_PKG_REGISTER</makevar> will no longer work.
The CONFLICTS check is done prior to the build stage and prior to
the install stage.</para>
</sect2>
</sect1>
<sect1 id="install">