Remove mention of some old WANT_* and USE_* variables from the Porter's Handbook

WANT_PHP_WEB
USE_FIREFOX*
USE_SEAMONKEY*
USE_THUNDERBIRD*
WANT_GNOME
HAVE_GNOME
USE_BDB
USE_PGSQL
USE_SQLITE

are all not supported anymore or have been replaced by USES=x.

Rewrite "Using Databases", add examples, and point to the various
USES macros for dealing with database dependencies.

Approved by:	mat
Differential Revision:	https://reviews.freebsd.org/D15704
This commit is contained in:
Tobias Kortkamp 2018-06-11 11:15:11 +00:00
parent 36e397eecc
commit 4b3c52099b
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=51819
2 changed files with 64 additions and 157 deletions

View file

@ -5895,45 +5895,6 @@ BAR_LIB_DEPENDS= libbar.so:foo/bar</programlisting>
installation, and updating of these ports and their
packages.</para>
</sect2>
<sect2 xml:id="use-want">
<title><varname>USE_<replaceable>*</replaceable></varname> and
<varname>WANT_<replaceable>*</replaceable></varname></title>
<para><varname>USE_<replaceable>*</replaceable></varname> are
set by the port maintainer to define software on which this
port depends. A port that needs Firefox would set</para>
<programlisting>USE_FIREFOX= yes</programlisting>
<para>Some <varname>USE_<replaceable>*</replaceable></varname>
can accept version numbers or other parameters. For example,
a port that requires Apache 2.2 would set</para>
<programlisting>USE_APACHE= 22</programlisting>
<para>For more control over dependencies in some cases,
<varname>WANT_<replaceable>*</replaceable></varname> are
available to more precisely specify what is needed. For
example, consider the <package
role="port">mail/squirrelmail</package> port. This
port needs some PHP modules, which are listed in
<varname>USE_PHP</varname>:</para>
<programlisting>USE_PHP= session mhash gettext mbstring pcre openssl xml</programlisting>
<para>Those modules may be available in CLI or web versions, so
the web version is selected with
<varname>WANT_<replaceable>*</replaceable></varname>:</para>
<programlisting>WANT_PHP_WEB= yes</programlisting>
<para>Available
<varname>USE_<replaceable>*</replaceable></varname> and
<varname>WANT_<replaceable>*</replaceable></varname> are
defined in the files in
<filename>/usr/ports/Mk</filename>.</para>
</sect2>
</sect1>
<sect1 xml:id="makefile-masterdir">

View file

@ -2518,28 +2518,6 @@ GLIB_SCHEMAS= org.regexxer.gschema.xml
</thead>
<tbody>
<row>
<entry><literal>HAVE_GNOME</literal></entry>
<entry>Deprecated, do not use. Was used to check if a
component was installed. This was used for ports
that did not have
<literal>--enable</literal>/<literal>--disable</literal>
switches for their configure script. But the building
of parts of a port without a implicit request is
discouraged.</entry>
</row>
<row>
<entry><literal>WANT_GNOME</literal></entry>
<entry>Deprecated, do not use. Was used by ports that
needed <varname>USE_GNOME</varname> for optional
dependencies, which where defined after
<filename>bsd.port.pre.mk</filename>. Since
<varname>USE_GNOME</varname> can be used after the
inclusion of <filename>bsd.port.options.mk</filename>,
there is little need for this macro any more.</entry>
</row>
<row>
<entry><literal>pangox-compat</literal></entry>
<entry><application>pangox-compat</application> has been
@ -5386,127 +5364,95 @@ USE_XFCE= libexo libmenu libutil panel</programlisting>
</tip>
</sect1>
<sect1 xml:id="using-mozilla">
<title>Using Mozilla</title>
<table frame="none" xml:id="using-mozilla-variables">
<title>Variables for Ports That Use Mozilla</title>
<tgroup cols="2">
<tbody>
<row>
<entry><varname>USE_GECKO</varname></entry>
<entry>Gecko backend the port can handle. Possible
values: <literal>libxul</literal>
(<filename>libxul.so</filename>),
<literal>seamonkey</literal>
(<filename>libgtkembedmoz.so</filename>, deprecated,
must not be used any more).</entry>
</row>
<row>
<entry><varname>USE_FIREFOX</varname></entry>
<entry>The port requires Firefox as a runtime
dependency. Possible values: <literal>yes</literal>
(get default version), <literal>40</literal>,
<literal>36</literal>, <literal>35</literal>. Default
dependency is on version
<literal>40</literal>.</entry>
</row>
<row>
<entry><varname>USE_FIREFOX_BUILD</varname></entry>
<entry>The port requires Firefox as a buildtime
dependency. Possible values: see USE_FIREFOX. This
automatically sets USE_FIREFOX and assigns the same
value.</entry>
</row>
<row>
<entry><varname>USE_SEAMONKEY</varname></entry>
<entry>The port requires SeaMonkey as a runtime
dependency. Possible values: <literal>yes</literal>
(get default version), <literal>20</literal>,
<literal>11</literal> (deprecated, must not be used
any more). Default dependency is on version
<literal>20</literal>.</entry>
</row>
<row>
<entry><varname>USE_SEAMONKEY_BUILD</varname></entry>
<entry>The port requires SeaMonkey as a buildtime
dependency. Possible values: see USE_SEAMONKEY. This
automatically sets USE_SEAMONKEY and assigns the same
value.</entry>
</row>
<row>
<entry><varname>USE_THUNDERBIRD</varname></entry>
<entry>The port requires Thunderbird as a runtime
dependency. Possible values: <literal>yes</literal>
(get default version), <literal>31</literal>,
<literal>30</literal> (deprecated, must not be used
any more). Default dependency is on version
<literal>31</literal>.</entry>
</row>
<row>
<entry><varname>USE_THUNDERBIRD_BUILD</varname></entry>
<entry>The port requires Thunderbird as a buildtime
dependency. Possible values: see USE_THUNDERBIRD.
This automatically sets USE_THUNDERBIRD and assigns
the same value.</entry>
</row>
</tbody>
</tgroup>
</table>
<para>A complete list of available variables can be found in
<filename>/usr/ports/Mk/bsd.gecko.mk</filename>.</para>
</sect1>
<sect1 xml:id="using-databases">
<title>Using Databases</title>
<table frame="none" xml:id="using-databases-variables">
<title>Variables for Ports Using Databases</title>
<para>Use one of the <varname>USES</varname> macros from
<xref linkend="using-databases-uses" /> to add a dependency
on a database.</para>
<table frame="none" xml:id="using-databases-uses">
<title>Database <varname>USES</varname> Macros</title>
<tgroup cols="2">
<thead>
<row>
<entry>Variable</entry>
<entry>Means</entry>
<entry>Database</entry>
<entry><varname>USES</varname> Macro</entry>
</row>
</thead>
<tbody>
<row>
<entry><varname>USE_BDB</varname></entry>
<entry>Obsolete. Replaced by <link
linkend="uses-bdb"><literal>USES=bdb</literal></link></entry>
<entry>Berkeley DB</entry>
<entry><link
linkend="uses-bdb"><literal>bdb</literal></link></entry>
</row>
<row>
<entry><varname>USE_MYSQL</varname></entry>
<entry>Obsolete. Replaced by <link
linkend="uses-mysql"><literal>USES=mysql</literal></link></entry>
<entry>MariaDB, MySQL, Percona</entry>
<entry><link
linkend="uses-mysql"><literal>mysql</literal></link></entry>
</row>
<row>
<entry><varname>USE_PGSQL</varname></entry>
<entry>Obsolete. Replaced by <link
linkend="uses-pgsql"><literal>USES=pgsql</literal></link>.</entry>
<entry>PostgreSQL</entry>
<entry><link
linkend="uses-pgsql"><literal>pgsql</literal></link></entry>
</row>
<row>
<entry><varname>USE_SQLITE</varname></entry>
<entry>Obsolete. Replaced by <link
linkend="uses-sqlite"><literal>USES=sqlite</literal></link></entry>
<entry>SQLite</entry>
<entry><link
linkend="uses-sqlite"><literal>sqlite</literal></link></entry>
</row>
</tbody>
</tgroup>
</table>
<example xml:id="using-databases-bdb-ex1">
<title>Using Berkeley DB 6</title>
<programlisting>USES= bdb:6</programlisting>
<para>See <xref linkend="uses-bdb" /> for more
information.</para>
</example>
<example xml:id="using-databases-mysql-ex1">
<title>Using MySQL</title>
<para>When a port needs the <application>MySQL</application>
client library add</para>
<programlisting>USES= mysql</programlisting>
<para>See <xref linkend="uses-mysql" /> for more
information.</para>
</example>
<example xml:id="using-databases-pgsql-ex1">
<title>Using PostgreSQL</title>
<para>When a port needs the
<application>PostgreSQL</application> server version 9.6
or later add</para>
<programlisting>USES= pgsql:9.6+
WANT_PGSQL= server</programlisting>
<para>See <xref linkend="uses-pgsql" /> for more
information.</para>
</example>
<example xml:id="using-databases-sqlite-ex1">
<title>Using SQLite 3</title>
<programlisting>USES= sqlite:3</programlisting>
<para>See <xref linkend="uses-sqlite" /> for more
information.</para>
</example>
</sect1>
<sect1 xml:id="rc-scripts">