Do not use contractions (as much as possible).

Update the __FreeBSD_version table to include latest -current
and the introduction of 3.2-stable.

PR:             docs/11740
Submitted by:   Chris Costello <chris@calldei.com>
This commit is contained in:
Nik Clayton 1999-05-17 19:55:54 +00:00
parent 56cd686fe9
commit 3f5207bad9
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=4908
5 changed files with 385 additions and 205 deletions

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$Id: chapter.sgml,v 1.17 1999-05-16 13:28:26 nik Exp $
$Id: chapter.sgml,v 1.18 1999-05-17 19:55:54 nik Exp $
-->
<chapter id="ports">
@ -117,7 +117,7 @@
<para>&ldquo;How on earth can this do anything?&rdquo; I hear you cry.
&ldquo;There is no source code there!&rdquo;</para>
<para>Fear not, gentle reader, all will become clear (hopefully). Let's
<para>Fear not, gentle reader, all will become clear (hopefully). Let us
see what happens if we try and install a port. I have chosen
<application>ElectricFence</application>, a useful tool for developers,
as the skeleton is more straightforward than most.</para>
@ -311,8 +311,8 @@ password. Remember to use binary (also known as image) mode!]
did not have a copy of the source locally, so it fetched one before
extracting, patching and building it.</para>
<para>Let's try something more ambitious now. Instead of getting a
single port skeleton, let's get a whole sub-directory, for example all
<para>Let us try something more ambitious now. Instead of getting a
single port skeleton, we will get a whole sub-directory, for example all
the database skeletons in the ports collection. It looks almost the
same:-</para>
@ -762,7 +762,7 @@ do-install:
version shipped with FreeBSD 2.1.0 and 2.1.5), the
<option>-O2</option> option could result in buggy code unless you
used the <option>-fno-strength-reduce</option> option as well.
(Most of the ports don't use <option>-O2</option>). You
(Most of the ports do not use <option>-O2</option>). You
<emphasis>should</emphasis> be able to specify the compiler options
used by something like</para>
@ -794,7 +794,7 @@ do-install:
<listitem>
<para>Q. I went to install the <literal>foo</literal> port but the
system suddenly stopped compiling it and starting compiling the
<literal>bar</literal> port. What's going on?</para>
<literal>bar</literal> port. What is going on?</para>
<para>A. The <literal>foo</literal> port needs something that is
supplied with <literal>bar</literal> &mdash; for instance, if
@ -946,7 +946,7 @@ grizzle-6.5 - the combined piano tutorial, LOGO interpreter and shoot 'em up arc
FreeBSD. The bulk of the work is done by
<filename>/usr/ports/Mk/bsd.port.mk</filename>, which all port Makefiles
include. Please refer to that file for more details on the inner
workings of the ports collection. Even if you don't hack Makefiles
workings of the ports collection. Even if you do not hack Makefiles
daily, it is well commented, and you will still gain much knowledge from
it.</para>
@ -1177,7 +1177,7 @@ lib/X11/oneko/mouse.xpm
</step>
</procedure>
<para>Make sure that there aren't any warnings issued in any of the
<para>Make sure that there are not any warnings issued in any of the
<maketarget>package</maketarget> and
<maketarget>deinstall</maketarget> stages, After step 3, check to
see if all the new directories are correctly deleted. Also, try
@ -1658,7 +1658,7 @@ MASTER_SITE_SUBDIR= applications</programlisting>
<filename>.gz</filename> or <filename>.Z</filename>.</para>
<para>If the patch is distributed with some other files, such as
documentation, in a gzip'd tarball, you can't just use
documentation, in a gzip'd tarball, you cannot just use
<makevar>PATCHFILES</makevar>. If that is the case, add the name
and the location of the patch tarball to
<makevar>DISTFILES</makevar> and <makevar>MASTER_SITES</makevar>.
@ -1847,7 +1847,7 @@ RUN_DEPENDS= ${PREFIX}/etc/innd:${PORTSDIR}/news/inn \
<literal>USE_PERL5=yes</literal> if your port requires version 5
of the perl language. (The last is especially important since
some versions of FreeBSD has perl5 as part of the base system
while others don't.)</para>
while others do not.)</para>
</sect4>
<sect4>
@ -1994,7 +1994,7 @@ lib/libtvl80.so.1
<para>A.out libraries should be moved out of
<filename>/usr/local/lib</filename> and similar to an
<filename>aout</filename> subdirectory. (If you don't move them out
<filename>aout</filename> subdirectory. (If you do not move them out
of the way, ELF ports will happily overwrite a.out libraries.) The
<maketarget>move-aout-libs</maketarget> target in the 3.0-CURRENT
<filename>src/Makefile</filename> (called from
@ -2258,7 +2258,7 @@ MASTERDIR= ${.CURDIR}/../xdvi300
<para><makevar>MANCOMPRESSED</makevar> is automatically set to
<literal>yes</literal> if <makevar>USE_IMAKE</makevar> is set and
<makevar>NO_INSTALL_MANPAGES</makevar> is not set, and to
<literal>no</literal> otherwise. You don't have to explicitly define
<literal>no</literal> otherwise. You do not have to explicitly define
it unless the default is not suitable for your port.</para>
<para>If your port anchors its man tree somewhere other than
@ -2313,7 +2313,7 @@ ${PREFIX}/man/ja/man4/baz.4.gz</programlisting>
<title><makevar>REQUIRES_MOTIF</makevar></title>
<para>If your port requires Motif, define this variable in the
Makefile. This will prevent people who don't own a copy of Motif
Makefile. This will prevent people who do not own a copy of Motif
from even attempting to build it.</para>
</sect3>
@ -2403,7 +2403,7 @@ Options:
<step>
<para>Look at the texinfo sources and make a patch to insert
<literal>@dircategory</literal> and <literal>@direntry</literal>
statements to files that don't have them. This is part of my
statements to files that do not have them. This is part of my
patch:</para>
<programlisting>
@ -2447,7 +2447,7 @@ Options:
<filename>PLIST</filename>; see below). However, if you have a
Japanese (or other multibyte encoding) info files, you will have
to use the extra arguments to <command>install-info</command>
because <command>makeinfo</command> can't handle those texinfo
because <command>makeinfo</command> cannot handle those texinfo
sources. (See <filename>Makefile</filename> and
<filename>PLIST</filename> of <filename>japanese/skk</filename>
for examples on how to do this).</para>
@ -2459,7 +2459,7 @@ Options:
from the texinfo sources. Since the texinfo sources are newer than
the info files, they should be rebuilt when you type
<command>make</command>; but many <filename>Makefile</filename>s
don't include correct dependencies for info files. In
do not include correct dependencies for info files. In
<command>emacs</command>' case, I had to patch the main
<filename>Makefile.in</filename> so it will descend into the
<filename>man</filename> subdirectory to rebuild the info
@ -2583,9 +2583,9 @@ diff -u -r1.26 Makefile
<para>Do not use anything other than
<filename>/usr/share/info/dir</filename> and the above command to
create a new info file. In fact, I'd add the first three lines of
the above patch to <filename>bsd.port.mk</filename> if you (the
porter) wouldn't have to do it in <filename>PLIST</filename> by
create a new info file. In fact, I would add the first three lines
of the above patch to <filename>bsd.port.mk</filename> if you (the
porter) would not have to do it in <filename>PLIST</filename> by
yourself anyway.</para>
</step>
@ -2643,7 +2643,7 @@ diff -u -r1.15 PLIST
<sect2>
<title>The <filename>pkg/</filename> subdirectory</title>
<para>There are some tricks we haven't mentioned yet about the
<para>There are some tricks we have not mentioned yet about the
<filename>pkg/</filename> subdirectory that come in handy
sometimes.</para>
@ -2847,17 +2847,17 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<listitem>
<para>If the port has a &ldquo;do not sell for profit&rdquo; type of
license, set the variable <makevar>NO_CDROM</makevar> to a string
describing the reason why. We will make sure such ports won't go
describing the reason why. We will make sure such ports will not go
into the CD-ROM come release time. The distfile and package will
still be available via ftp.</para>
</listitem>
<listitem>
<para>If the resulting package needs to be built uniquely for each
site, or the resulting binary package can't be distributed due to
site, or the resulting binary package cannot be distributed due to
licensing; set the variable <makevar>NO_PACKAGE</makevar> to a
string describing the reason why. We will make sure such packages
won't go on the ftp site, nor into the CD-ROM come release time.
will not go on the ftp site, nor into the CD-ROM come release time.
The distfile will still be included on both however.</para>
</listitem>
@ -2896,7 +2896,7 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
port right now (because of, for example, stability problems of the new
version).</para>
<para>If the maintainer asks you to do the upgrade or there isn't any
<para>If the maintainer asks you to do the upgrade or there is not any
such person to begin with, please make the upgrade and send the
recursive diff (either unified or context diff is fine, but port
committers appear to prefer unified diff more) of the new and old
@ -2969,7 +2969,7 @@ post-install:
<listitem>
<para><makevar>INSTALL_MAN</makevar> is a command to install
manpages and other documentation (it doesn't compress
manpages and other documentation (it does not compress
anything).</para>
</listitem>
</itemizedlist>
@ -2996,7 +2996,7 @@ post-install:
<title><makevar>WRKDIRPREFIX</makevar></title>
<para>Make sure your port honors <makevar>WRKDIRPREFIX</makevar>.
Most ports don't have to worry about this. In particular, if you
Most ports do not have to worry about this. In particular, if you
are referring to a <makevar>WRKDIR</makevar> of another port, note
that the correct location is
<filename><makevar>WRKDIRPREFIX</makevar><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> not <filename><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or <filename><makevar>.CURDIR</makevar>/../../<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or some such.</para>
@ -3031,7 +3031,7 @@ post-install:
<para>to the proper place in the <filename>.c</filename> file. We
believe that every system that defines these two symbols has
<filename>sys/param.h</filename>. If you find a system that
doesn't, we would like to know. Please send mail to the
does not, we would like to know. Please send mail to the
&a.ports;.</para>
<para>Another way is to use the GNU Autoconf style of doing
@ -3042,7 +3042,7 @@ post-install:
#include &lt;sys/param.h&gt;
#endif</programlisting>
<para>Don't forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<para>Do not forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<makevar>CFLAGS</makevar> in the <filename>Makefile</filename> for
this method.</para>
@ -3299,11 +3299,47 @@ post-install:
<entry>3.1-STABLE after 3.1-RELEASE</entry>
<entry>310001</entry>
</row>
<row>
<entry>3.1-STABLE after C++ constructor/destructor order change</entry>
<entry>310002</entry>
</row>
<row>
<entry>3.2-STABLE</entry>
<entry>320001</entry>
</row>
<row>
<entry>4.0-CURRENT after 3/4 branch</entry>
<entry>400000</entry>
</row>
<row>
<entry>4.0-CURRENT after change in dynamic linker handling</entry>
<entry>400001</entry>
</row>
<row>
<entry>4.0-CURRENT after C++ constructor/destructor order change</entry>
<entry>400002</entry>
</row>
<row>
<entry>4.0-CURRENT after functioning dladdr(3)</entry>
<entry>400003</entry>
</row>
<row>
<entry>4.0-CURRENT after newbus</entry>
<entry>400004</entry>
</row>
<row>
<entry>4.0-CURRENT after suser(9) API change</entry>
<entry>400005</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -3317,7 +3353,7 @@ post-install:
to a more straightforward major/minor system starting from 2.2.
This is because the parallel development on several branches made
it infeasible to classify the releases simply by their real
release dates. If you are making a port now, you don't have to
release dates. If you are making a port now, you do not have to
worry about old -CURRENTs; they are listed here just for your
reference.</para>
</note>
@ -3341,7 +3377,7 @@ post-install:
<note>
<para>You need to include either the
<filename>pre.mk</filename>/<filename>post.mk</filename> pair or
<filename>bsd.port.mk</filename> only; don't mix these two.</para>
<filename>bsd.port.mk</filename> only; do not mix these two.</para>
</note>
<para><filename>bsd.port.pre.mk</filename> only defines a few
@ -3551,7 +3587,7 @@ post-install:
<para>Using the recurse (<option>-r</option>) option to
<command>diff</command> to generate patches is fine, but please take
a look at the resulting patches to make sure you don't have any
a look at the resulting patches to make sure you do not have any
unnecessary junk in there. In particular, diffs between two backup
files, <filename>Makefiles</filename> when the port uses
<command>Imake</command> or GNU <command>configure</command>, etc.,
@ -3687,7 +3723,7 @@ lib/X11/oneko/sounds/cat.au
choose a free UID from 50 to 99 and register it below. Look at
<filename>japanese/Wnn</filename> for an example.</para>
<para>Make sure you don't use a UID already used by the system or
<para>Make sure you do not use a UID already used by the system or
other ports. This is the current list of UIDs between 50 and
99.</para>
@ -3734,7 +3770,7 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
<title>Respect <makevar>CFLAGS</makevar></title>
<para>The port should respect the <makevar>CFLAGS</makevar> variable.
If it doesn't, please add <literal>NO_PACKAGE=ignores
If it does not, please add <literal>NO_PACKAGE=ignores
cflags</literal> to the <filename>Makefile</filename>.</para>
</sect3>
@ -3781,10 +3817,10 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
should each be double-checked. If you are reviewing a port and feel
they can be worded better, do so.</para>
<para>Don't copy more copies of the GNU General Public License into
<para>Do not copy more copies of the GNU General Public License into
our system, please.</para>
<para>Please be careful to note any legal issues! Don't let us
<para>Please be careful to note any legal issues! Do not let us
illegally distribute software!</para>
</sect3>
@ -3841,7 +3877,7 @@ DISTNAME= xdvi
PKGNAME= xdvi-pl18
CATEGORIES= print
[do not forget the trailing slash ("/")!
if you aren't using MASTER_SITE_* macros]
if you are not using MASTER_SITE_* macros]
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= applications
[set this if the source is not in the standard ".tar.gz" form]
@ -3907,7 +3943,7 @@ pre-install:
<para>The package name should look like
<filename><replaceable>language-</replaceable>name<replaceable>-compiled.specifics</replaceable><replaceable>-version.numbers</replaceable></filename>.</para>
<para>If your <makevar>DISTNAME</makevar> doesn't look like that, set
<para>If your <makevar>DISTNAME</makevar> does not look like that, set
<makevar>PKGNAME</makevar> to something in that format.</para>
<orderedlist>
@ -4169,8 +4205,8 @@ pre-install:
<row>
<entry><filename>devel</filename></entry>
<entry>Development utilities. Do not put libraries here just
because they are libraries&mdash;unless they truly don't
belong to anywhere else, they shouldn't be in this
because they are libraries&mdash;unless they truly do not
belong to anywhere else, they should not be in this
category.</entry>
</row>
@ -4251,7 +4287,7 @@ pre-install:
<row>
<entry><filename>misc</filename></entry>
<entry>Miscellaneous utilities&mdash;basically things that
doesn't belong to anywhere else. This is the only category
does not belong to anywhere else. This is the only category
that should not appear with any other non-virtual category.
If you have <literal>misc</literal> with something else in
your <makevar>CATEGORIES</makevar> line, that means you can
@ -4442,7 +4478,7 @@ pre-install:
<listitem>
<para>Specific categories win over less-specific ones. For
instance, an HTML editor should be listed as <literal>www
editors</literal>, not the other way around. Also, you don't
editors</literal>, not the other way around. Also, you do not
need to list <literal>net</literal> when the port belongs to
either of <literal>mail</literal>, <literal>mbone</literal>,
<literal>news</literal>, <literal>security</literal>, or

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$Id: chapter.sgml,v 1.17 1999-05-16 13:28:26 nik Exp $
$Id: chapter.sgml,v 1.18 1999-05-17 19:55:54 nik Exp $
-->
<chapter id="ports">
@ -117,7 +117,7 @@
<para>&ldquo;How on earth can this do anything?&rdquo; I hear you cry.
&ldquo;There is no source code there!&rdquo;</para>
<para>Fear not, gentle reader, all will become clear (hopefully). Let's
<para>Fear not, gentle reader, all will become clear (hopefully). Let us
see what happens if we try and install a port. I have chosen
<application>ElectricFence</application>, a useful tool for developers,
as the skeleton is more straightforward than most.</para>
@ -311,8 +311,8 @@ password. Remember to use binary (also known as image) mode!]
did not have a copy of the source locally, so it fetched one before
extracting, patching and building it.</para>
<para>Let's try something more ambitious now. Instead of getting a
single port skeleton, let's get a whole sub-directory, for example all
<para>Let us try something more ambitious now. Instead of getting a
single port skeleton, we will get a whole sub-directory, for example all
the database skeletons in the ports collection. It looks almost the
same:-</para>
@ -762,7 +762,7 @@ do-install:
version shipped with FreeBSD 2.1.0 and 2.1.5), the
<option>-O2</option> option could result in buggy code unless you
used the <option>-fno-strength-reduce</option> option as well.
(Most of the ports don't use <option>-O2</option>). You
(Most of the ports do not use <option>-O2</option>). You
<emphasis>should</emphasis> be able to specify the compiler options
used by something like</para>
@ -794,7 +794,7 @@ do-install:
<listitem>
<para>Q. I went to install the <literal>foo</literal> port but the
system suddenly stopped compiling it and starting compiling the
<literal>bar</literal> port. What's going on?</para>
<literal>bar</literal> port. What is going on?</para>
<para>A. The <literal>foo</literal> port needs something that is
supplied with <literal>bar</literal> &mdash; for instance, if
@ -946,7 +946,7 @@ grizzle-6.5 - the combined piano tutorial, LOGO interpreter and shoot 'em up arc
FreeBSD. The bulk of the work is done by
<filename>/usr/ports/Mk/bsd.port.mk</filename>, which all port Makefiles
include. Please refer to that file for more details on the inner
workings of the ports collection. Even if you don't hack Makefiles
workings of the ports collection. Even if you do not hack Makefiles
daily, it is well commented, and you will still gain much knowledge from
it.</para>
@ -1177,7 +1177,7 @@ lib/X11/oneko/mouse.xpm
</step>
</procedure>
<para>Make sure that there aren't any warnings issued in any of the
<para>Make sure that there are not any warnings issued in any of the
<maketarget>package</maketarget> and
<maketarget>deinstall</maketarget> stages, After step 3, check to
see if all the new directories are correctly deleted. Also, try
@ -1658,7 +1658,7 @@ MASTER_SITE_SUBDIR= applications</programlisting>
<filename>.gz</filename> or <filename>.Z</filename>.</para>
<para>If the patch is distributed with some other files, such as
documentation, in a gzip'd tarball, you can't just use
documentation, in a gzip'd tarball, you cannot just use
<makevar>PATCHFILES</makevar>. If that is the case, add the name
and the location of the patch tarball to
<makevar>DISTFILES</makevar> and <makevar>MASTER_SITES</makevar>.
@ -1847,7 +1847,7 @@ RUN_DEPENDS= ${PREFIX}/etc/innd:${PORTSDIR}/news/inn \
<literal>USE_PERL5=yes</literal> if your port requires version 5
of the perl language. (The last is especially important since
some versions of FreeBSD has perl5 as part of the base system
while others don't.)</para>
while others do not.)</para>
</sect4>
<sect4>
@ -1994,7 +1994,7 @@ lib/libtvl80.so.1
<para>A.out libraries should be moved out of
<filename>/usr/local/lib</filename> and similar to an
<filename>aout</filename> subdirectory. (If you don't move them out
<filename>aout</filename> subdirectory. (If you do not move them out
of the way, ELF ports will happily overwrite a.out libraries.) The
<maketarget>move-aout-libs</maketarget> target in the 3.0-CURRENT
<filename>src/Makefile</filename> (called from
@ -2258,7 +2258,7 @@ MASTERDIR= ${.CURDIR}/../xdvi300
<para><makevar>MANCOMPRESSED</makevar> is automatically set to
<literal>yes</literal> if <makevar>USE_IMAKE</makevar> is set and
<makevar>NO_INSTALL_MANPAGES</makevar> is not set, and to
<literal>no</literal> otherwise. You don't have to explicitly define
<literal>no</literal> otherwise. You do not have to explicitly define
it unless the default is not suitable for your port.</para>
<para>If your port anchors its man tree somewhere other than
@ -2313,7 +2313,7 @@ ${PREFIX}/man/ja/man4/baz.4.gz</programlisting>
<title><makevar>REQUIRES_MOTIF</makevar></title>
<para>If your port requires Motif, define this variable in the
Makefile. This will prevent people who don't own a copy of Motif
Makefile. This will prevent people who do not own a copy of Motif
from even attempting to build it.</para>
</sect3>
@ -2403,7 +2403,7 @@ Options:
<step>
<para>Look at the texinfo sources and make a patch to insert
<literal>@dircategory</literal> and <literal>@direntry</literal>
statements to files that don't have them. This is part of my
statements to files that do not have them. This is part of my
patch:</para>
<programlisting>
@ -2447,7 +2447,7 @@ Options:
<filename>PLIST</filename>; see below). However, if you have a
Japanese (or other multibyte encoding) info files, you will have
to use the extra arguments to <command>install-info</command>
because <command>makeinfo</command> can't handle those texinfo
because <command>makeinfo</command> cannot handle those texinfo
sources. (See <filename>Makefile</filename> and
<filename>PLIST</filename> of <filename>japanese/skk</filename>
for examples on how to do this).</para>
@ -2459,7 +2459,7 @@ Options:
from the texinfo sources. Since the texinfo sources are newer than
the info files, they should be rebuilt when you type
<command>make</command>; but many <filename>Makefile</filename>s
don't include correct dependencies for info files. In
do not include correct dependencies for info files. In
<command>emacs</command>' case, I had to patch the main
<filename>Makefile.in</filename> so it will descend into the
<filename>man</filename> subdirectory to rebuild the info
@ -2583,9 +2583,9 @@ diff -u -r1.26 Makefile
<para>Do not use anything other than
<filename>/usr/share/info/dir</filename> and the above command to
create a new info file. In fact, I'd add the first three lines of
the above patch to <filename>bsd.port.mk</filename> if you (the
porter) wouldn't have to do it in <filename>PLIST</filename> by
create a new info file. In fact, I would add the first three lines
of the above patch to <filename>bsd.port.mk</filename> if you (the
porter) would not have to do it in <filename>PLIST</filename> by
yourself anyway.</para>
</step>
@ -2643,7 +2643,7 @@ diff -u -r1.15 PLIST
<sect2>
<title>The <filename>pkg/</filename> subdirectory</title>
<para>There are some tricks we haven't mentioned yet about the
<para>There are some tricks we have not mentioned yet about the
<filename>pkg/</filename> subdirectory that come in handy
sometimes.</para>
@ -2847,17 +2847,17 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<listitem>
<para>If the port has a &ldquo;do not sell for profit&rdquo; type of
license, set the variable <makevar>NO_CDROM</makevar> to a string
describing the reason why. We will make sure such ports won't go
describing the reason why. We will make sure such ports will not go
into the CD-ROM come release time. The distfile and package will
still be available via ftp.</para>
</listitem>
<listitem>
<para>If the resulting package needs to be built uniquely for each
site, or the resulting binary package can't be distributed due to
site, or the resulting binary package cannot be distributed due to
licensing; set the variable <makevar>NO_PACKAGE</makevar> to a
string describing the reason why. We will make sure such packages
won't go on the ftp site, nor into the CD-ROM come release time.
will not go on the ftp site, nor into the CD-ROM come release time.
The distfile will still be included on both however.</para>
</listitem>
@ -2896,7 +2896,7 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
port right now (because of, for example, stability problems of the new
version).</para>
<para>If the maintainer asks you to do the upgrade or there isn't any
<para>If the maintainer asks you to do the upgrade or there is not any
such person to begin with, please make the upgrade and send the
recursive diff (either unified or context diff is fine, but port
committers appear to prefer unified diff more) of the new and old
@ -2969,7 +2969,7 @@ post-install:
<listitem>
<para><makevar>INSTALL_MAN</makevar> is a command to install
manpages and other documentation (it doesn't compress
manpages and other documentation (it does not compress
anything).</para>
</listitem>
</itemizedlist>
@ -2996,7 +2996,7 @@ post-install:
<title><makevar>WRKDIRPREFIX</makevar></title>
<para>Make sure your port honors <makevar>WRKDIRPREFIX</makevar>.
Most ports don't have to worry about this. In particular, if you
Most ports do not have to worry about this. In particular, if you
are referring to a <makevar>WRKDIR</makevar> of another port, note
that the correct location is
<filename><makevar>WRKDIRPREFIX</makevar><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> not <filename><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or <filename><makevar>.CURDIR</makevar>/../../<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or some such.</para>
@ -3031,7 +3031,7 @@ post-install:
<para>to the proper place in the <filename>.c</filename> file. We
believe that every system that defines these two symbols has
<filename>sys/param.h</filename>. If you find a system that
doesn't, we would like to know. Please send mail to the
does not, we would like to know. Please send mail to the
&a.ports;.</para>
<para>Another way is to use the GNU Autoconf style of doing
@ -3042,7 +3042,7 @@ post-install:
#include &lt;sys/param.h&gt;
#endif</programlisting>
<para>Don't forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<para>Do not forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<makevar>CFLAGS</makevar> in the <filename>Makefile</filename> for
this method.</para>
@ -3299,11 +3299,47 @@ post-install:
<entry>3.1-STABLE after 3.1-RELEASE</entry>
<entry>310001</entry>
</row>
<row>
<entry>3.1-STABLE after C++ constructor/destructor order change</entry>
<entry>310002</entry>
</row>
<row>
<entry>3.2-STABLE</entry>
<entry>320001</entry>
</row>
<row>
<entry>4.0-CURRENT after 3/4 branch</entry>
<entry>400000</entry>
</row>
<row>
<entry>4.0-CURRENT after change in dynamic linker handling</entry>
<entry>400001</entry>
</row>
<row>
<entry>4.0-CURRENT after C++ constructor/destructor order change</entry>
<entry>400002</entry>
</row>
<row>
<entry>4.0-CURRENT after functioning dladdr(3)</entry>
<entry>400003</entry>
</row>
<row>
<entry>4.0-CURRENT after newbus</entry>
<entry>400004</entry>
</row>
<row>
<entry>4.0-CURRENT after suser(9) API change</entry>
<entry>400005</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -3317,7 +3353,7 @@ post-install:
to a more straightforward major/minor system starting from 2.2.
This is because the parallel development on several branches made
it infeasible to classify the releases simply by their real
release dates. If you are making a port now, you don't have to
release dates. If you are making a port now, you do not have to
worry about old -CURRENTs; they are listed here just for your
reference.</para>
</note>
@ -3341,7 +3377,7 @@ post-install:
<note>
<para>You need to include either the
<filename>pre.mk</filename>/<filename>post.mk</filename> pair or
<filename>bsd.port.mk</filename> only; don't mix these two.</para>
<filename>bsd.port.mk</filename> only; do not mix these two.</para>
</note>
<para><filename>bsd.port.pre.mk</filename> only defines a few
@ -3551,7 +3587,7 @@ post-install:
<para>Using the recurse (<option>-r</option>) option to
<command>diff</command> to generate patches is fine, but please take
a look at the resulting patches to make sure you don't have any
a look at the resulting patches to make sure you do not have any
unnecessary junk in there. In particular, diffs between two backup
files, <filename>Makefiles</filename> when the port uses
<command>Imake</command> or GNU <command>configure</command>, etc.,
@ -3687,7 +3723,7 @@ lib/X11/oneko/sounds/cat.au
choose a free UID from 50 to 99 and register it below. Look at
<filename>japanese/Wnn</filename> for an example.</para>
<para>Make sure you don't use a UID already used by the system or
<para>Make sure you do not use a UID already used by the system or
other ports. This is the current list of UIDs between 50 and
99.</para>
@ -3734,7 +3770,7 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
<title>Respect <makevar>CFLAGS</makevar></title>
<para>The port should respect the <makevar>CFLAGS</makevar> variable.
If it doesn't, please add <literal>NO_PACKAGE=ignores
If it does not, please add <literal>NO_PACKAGE=ignores
cflags</literal> to the <filename>Makefile</filename>.</para>
</sect3>
@ -3781,10 +3817,10 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
should each be double-checked. If you are reviewing a port and feel
they can be worded better, do so.</para>
<para>Don't copy more copies of the GNU General Public License into
<para>Do not copy more copies of the GNU General Public License into
our system, please.</para>
<para>Please be careful to note any legal issues! Don't let us
<para>Please be careful to note any legal issues! Do not let us
illegally distribute software!</para>
</sect3>
@ -3841,7 +3877,7 @@ DISTNAME= xdvi
PKGNAME= xdvi-pl18
CATEGORIES= print
[do not forget the trailing slash ("/")!
if you aren't using MASTER_SITE_* macros]
if you are not using MASTER_SITE_* macros]
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= applications
[set this if the source is not in the standard ".tar.gz" form]
@ -3907,7 +3943,7 @@ pre-install:
<para>The package name should look like
<filename><replaceable>language-</replaceable>name<replaceable>-compiled.specifics</replaceable><replaceable>-version.numbers</replaceable></filename>.</para>
<para>If your <makevar>DISTNAME</makevar> doesn't look like that, set
<para>If your <makevar>DISTNAME</makevar> does not look like that, set
<makevar>PKGNAME</makevar> to something in that format.</para>
<orderedlist>
@ -4169,8 +4205,8 @@ pre-install:
<row>
<entry><filename>devel</filename></entry>
<entry>Development utilities. Do not put libraries here just
because they are libraries&mdash;unless they truly don't
belong to anywhere else, they shouldn't be in this
because they are libraries&mdash;unless they truly do not
belong to anywhere else, they should not be in this
category.</entry>
</row>
@ -4251,7 +4287,7 @@ pre-install:
<row>
<entry><filename>misc</filename></entry>
<entry>Miscellaneous utilities&mdash;basically things that
doesn't belong to anywhere else. This is the only category
does not belong to anywhere else. This is the only category
that should not appear with any other non-virtual category.
If you have <literal>misc</literal> with something else in
your <makevar>CATEGORIES</makevar> line, that means you can
@ -4442,7 +4478,7 @@ pre-install:
<listitem>
<para>Specific categories win over less-specific ones. For
instance, an HTML editor should be listed as <literal>www
editors</literal>, not the other way around. Also, you don't
editors</literal>, not the other way around. Also, you do not
need to list <literal>net</literal> when the port belongs to
either of <literal>mail</literal>, <literal>mbone</literal>,
<literal>news</literal>, <literal>security</literal>, or

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$Id: book.sgml,v 1.17 1999-05-16 13:28:26 nik Exp $
$Id: book.sgml,v 1.18 1999-05-17 19:55:54 nik Exp $
-->
<chapter id="ports">
@ -117,7 +117,7 @@
<para>&ldquo;How on earth can this do anything?&rdquo; I hear you cry.
&ldquo;There is no source code there!&rdquo;</para>
<para>Fear not, gentle reader, all will become clear (hopefully). Let's
<para>Fear not, gentle reader, all will become clear (hopefully). Let us
see what happens if we try and install a port. I have chosen
<application>ElectricFence</application>, a useful tool for developers,
as the skeleton is more straightforward than most.</para>
@ -311,8 +311,8 @@ password. Remember to use binary (also known as image) mode!]
did not have a copy of the source locally, so it fetched one before
extracting, patching and building it.</para>
<para>Let's try something more ambitious now. Instead of getting a
single port skeleton, let's get a whole sub-directory, for example all
<para>Let us try something more ambitious now. Instead of getting a
single port skeleton, we will get a whole sub-directory, for example all
the database skeletons in the ports collection. It looks almost the
same:-</para>
@ -762,7 +762,7 @@ do-install:
version shipped with FreeBSD 2.1.0 and 2.1.5), the
<option>-O2</option> option could result in buggy code unless you
used the <option>-fno-strength-reduce</option> option as well.
(Most of the ports don't use <option>-O2</option>). You
(Most of the ports do not use <option>-O2</option>). You
<emphasis>should</emphasis> be able to specify the compiler options
used by something like</para>
@ -794,7 +794,7 @@ do-install:
<listitem>
<para>Q. I went to install the <literal>foo</literal> port but the
system suddenly stopped compiling it and starting compiling the
<literal>bar</literal> port. What's going on?</para>
<literal>bar</literal> port. What is going on?</para>
<para>A. The <literal>foo</literal> port needs something that is
supplied with <literal>bar</literal> &mdash; for instance, if
@ -946,7 +946,7 @@ grizzle-6.5 - the combined piano tutorial, LOGO interpreter and shoot 'em up arc
FreeBSD. The bulk of the work is done by
<filename>/usr/ports/Mk/bsd.port.mk</filename>, which all port Makefiles
include. Please refer to that file for more details on the inner
workings of the ports collection. Even if you don't hack Makefiles
workings of the ports collection. Even if you do not hack Makefiles
daily, it is well commented, and you will still gain much knowledge from
it.</para>
@ -1177,7 +1177,7 @@ lib/X11/oneko/mouse.xpm
</step>
</procedure>
<para>Make sure that there aren't any warnings issued in any of the
<para>Make sure that there are not any warnings issued in any of the
<maketarget>package</maketarget> and
<maketarget>deinstall</maketarget> stages, After step 3, check to
see if all the new directories are correctly deleted. Also, try
@ -1658,7 +1658,7 @@ MASTER_SITE_SUBDIR= applications</programlisting>
<filename>.gz</filename> or <filename>.Z</filename>.</para>
<para>If the patch is distributed with some other files, such as
documentation, in a gzip'd tarball, you can't just use
documentation, in a gzip'd tarball, you cannot just use
<makevar>PATCHFILES</makevar>. If that is the case, add the name
and the location of the patch tarball to
<makevar>DISTFILES</makevar> and <makevar>MASTER_SITES</makevar>.
@ -1847,7 +1847,7 @@ RUN_DEPENDS= ${PREFIX}/etc/innd:${PORTSDIR}/news/inn \
<literal>USE_PERL5=yes</literal> if your port requires version 5
of the perl language. (The last is especially important since
some versions of FreeBSD has perl5 as part of the base system
while others don't.)</para>
while others do not.)</para>
</sect4>
<sect4>
@ -1994,7 +1994,7 @@ lib/libtvl80.so.1
<para>A.out libraries should be moved out of
<filename>/usr/local/lib</filename> and similar to an
<filename>aout</filename> subdirectory. (If you don't move them out
<filename>aout</filename> subdirectory. (If you do not move them out
of the way, ELF ports will happily overwrite a.out libraries.) The
<maketarget>move-aout-libs</maketarget> target in the 3.0-CURRENT
<filename>src/Makefile</filename> (called from
@ -2258,7 +2258,7 @@ MASTERDIR= ${.CURDIR}/../xdvi300
<para><makevar>MANCOMPRESSED</makevar> is automatically set to
<literal>yes</literal> if <makevar>USE_IMAKE</makevar> is set and
<makevar>NO_INSTALL_MANPAGES</makevar> is not set, and to
<literal>no</literal> otherwise. You don't have to explicitly define
<literal>no</literal> otherwise. You do not have to explicitly define
it unless the default is not suitable for your port.</para>
<para>If your port anchors its man tree somewhere other than
@ -2313,7 +2313,7 @@ ${PREFIX}/man/ja/man4/baz.4.gz</programlisting>
<title><makevar>REQUIRES_MOTIF</makevar></title>
<para>If your port requires Motif, define this variable in the
Makefile. This will prevent people who don't own a copy of Motif
Makefile. This will prevent people who do not own a copy of Motif
from even attempting to build it.</para>
</sect3>
@ -2403,7 +2403,7 @@ Options:
<step>
<para>Look at the texinfo sources and make a patch to insert
<literal>@dircategory</literal> and <literal>@direntry</literal>
statements to files that don't have them. This is part of my
statements to files that do not have them. This is part of my
patch:</para>
<programlisting>
@ -2447,7 +2447,7 @@ Options:
<filename>PLIST</filename>; see below). However, if you have a
Japanese (or other multibyte encoding) info files, you will have
to use the extra arguments to <command>install-info</command>
because <command>makeinfo</command> can't handle those texinfo
because <command>makeinfo</command> cannot handle those texinfo
sources. (See <filename>Makefile</filename> and
<filename>PLIST</filename> of <filename>japanese/skk</filename>
for examples on how to do this).</para>
@ -2459,7 +2459,7 @@ Options:
from the texinfo sources. Since the texinfo sources are newer than
the info files, they should be rebuilt when you type
<command>make</command>; but many <filename>Makefile</filename>s
don't include correct dependencies for info files. In
do not include correct dependencies for info files. In
<command>emacs</command>' case, I had to patch the main
<filename>Makefile.in</filename> so it will descend into the
<filename>man</filename> subdirectory to rebuild the info
@ -2583,9 +2583,9 @@ diff -u -r1.26 Makefile
<para>Do not use anything other than
<filename>/usr/share/info/dir</filename> and the above command to
create a new info file. In fact, I'd add the first three lines of
the above patch to <filename>bsd.port.mk</filename> if you (the
porter) wouldn't have to do it in <filename>PLIST</filename> by
create a new info file. In fact, I would add the first three lines
of the above patch to <filename>bsd.port.mk</filename> if you (the
porter) would not have to do it in <filename>PLIST</filename> by
yourself anyway.</para>
</step>
@ -2643,7 +2643,7 @@ diff -u -r1.15 PLIST
<sect2>
<title>The <filename>pkg/</filename> subdirectory</title>
<para>There are some tricks we haven't mentioned yet about the
<para>There are some tricks we have not mentioned yet about the
<filename>pkg/</filename> subdirectory that come in handy
sometimes.</para>
@ -2847,17 +2847,17 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<listitem>
<para>If the port has a &ldquo;do not sell for profit&rdquo; type of
license, set the variable <makevar>NO_CDROM</makevar> to a string
describing the reason why. We will make sure such ports won't go
describing the reason why. We will make sure such ports will not go
into the CD-ROM come release time. The distfile and package will
still be available via ftp.</para>
</listitem>
<listitem>
<para>If the resulting package needs to be built uniquely for each
site, or the resulting binary package can't be distributed due to
site, or the resulting binary package cannot be distributed due to
licensing; set the variable <makevar>NO_PACKAGE</makevar> to a
string describing the reason why. We will make sure such packages
won't go on the ftp site, nor into the CD-ROM come release time.
will not go on the ftp site, nor into the CD-ROM come release time.
The distfile will still be included on both however.</para>
</listitem>
@ -2896,7 +2896,7 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
port right now (because of, for example, stability problems of the new
version).</para>
<para>If the maintainer asks you to do the upgrade or there isn't any
<para>If the maintainer asks you to do the upgrade or there is not any
such person to begin with, please make the upgrade and send the
recursive diff (either unified or context diff is fine, but port
committers appear to prefer unified diff more) of the new and old
@ -2969,7 +2969,7 @@ post-install:
<listitem>
<para><makevar>INSTALL_MAN</makevar> is a command to install
manpages and other documentation (it doesn't compress
manpages and other documentation (it does not compress
anything).</para>
</listitem>
</itemizedlist>
@ -2996,7 +2996,7 @@ post-install:
<title><makevar>WRKDIRPREFIX</makevar></title>
<para>Make sure your port honors <makevar>WRKDIRPREFIX</makevar>.
Most ports don't have to worry about this. In particular, if you
Most ports do not have to worry about this. In particular, if you
are referring to a <makevar>WRKDIR</makevar> of another port, note
that the correct location is
<filename><makevar>WRKDIRPREFIX</makevar><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> not <filename><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or <filename><makevar>.CURDIR</makevar>/../../<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or some such.</para>
@ -3031,7 +3031,7 @@ post-install:
<para>to the proper place in the <filename>.c</filename> file. We
believe that every system that defines these two symbols has
<filename>sys/param.h</filename>. If you find a system that
doesn't, we would like to know. Please send mail to the
does not, we would like to know. Please send mail to the
&a.ports;.</para>
<para>Another way is to use the GNU Autoconf style of doing
@ -3042,7 +3042,7 @@ post-install:
#include &lt;sys/param.h&gt;
#endif</programlisting>
<para>Don't forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<para>Do not forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<makevar>CFLAGS</makevar> in the <filename>Makefile</filename> for
this method.</para>
@ -3299,11 +3299,47 @@ post-install:
<entry>3.1-STABLE after 3.1-RELEASE</entry>
<entry>310001</entry>
</row>
<row>
<entry>3.1-STABLE after C++ constructor/destructor order change</entry>
<entry>310002</entry>
</row>
<row>
<entry>3.2-STABLE</entry>
<entry>320001</entry>
</row>
<row>
<entry>4.0-CURRENT after 3/4 branch</entry>
<entry>400000</entry>
</row>
<row>
<entry>4.0-CURRENT after change in dynamic linker handling</entry>
<entry>400001</entry>
</row>
<row>
<entry>4.0-CURRENT after C++ constructor/destructor order change</entry>
<entry>400002</entry>
</row>
<row>
<entry>4.0-CURRENT after functioning dladdr(3)</entry>
<entry>400003</entry>
</row>
<row>
<entry>4.0-CURRENT after newbus</entry>
<entry>400004</entry>
</row>
<row>
<entry>4.0-CURRENT after suser(9) API change</entry>
<entry>400005</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -3317,7 +3353,7 @@ post-install:
to a more straightforward major/minor system starting from 2.2.
This is because the parallel development on several branches made
it infeasible to classify the releases simply by their real
release dates. If you are making a port now, you don't have to
release dates. If you are making a port now, you do not have to
worry about old -CURRENTs; they are listed here just for your
reference.</para>
</note>
@ -3341,7 +3377,7 @@ post-install:
<note>
<para>You need to include either the
<filename>pre.mk</filename>/<filename>post.mk</filename> pair or
<filename>bsd.port.mk</filename> only; don't mix these two.</para>
<filename>bsd.port.mk</filename> only; do not mix these two.</para>
</note>
<para><filename>bsd.port.pre.mk</filename> only defines a few
@ -3551,7 +3587,7 @@ post-install:
<para>Using the recurse (<option>-r</option>) option to
<command>diff</command> to generate patches is fine, but please take
a look at the resulting patches to make sure you don't have any
a look at the resulting patches to make sure you do not have any
unnecessary junk in there. In particular, diffs between two backup
files, <filename>Makefiles</filename> when the port uses
<command>Imake</command> or GNU <command>configure</command>, etc.,
@ -3687,7 +3723,7 @@ lib/X11/oneko/sounds/cat.au
choose a free UID from 50 to 99 and register it below. Look at
<filename>japanese/Wnn</filename> for an example.</para>
<para>Make sure you don't use a UID already used by the system or
<para>Make sure you do not use a UID already used by the system or
other ports. This is the current list of UIDs between 50 and
99.</para>
@ -3734,7 +3770,7 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
<title>Respect <makevar>CFLAGS</makevar></title>
<para>The port should respect the <makevar>CFLAGS</makevar> variable.
If it doesn't, please add <literal>NO_PACKAGE=ignores
If it does not, please add <literal>NO_PACKAGE=ignores
cflags</literal> to the <filename>Makefile</filename>.</para>
</sect3>
@ -3781,10 +3817,10 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
should each be double-checked. If you are reviewing a port and feel
they can be worded better, do so.</para>
<para>Don't copy more copies of the GNU General Public License into
<para>Do not copy more copies of the GNU General Public License into
our system, please.</para>
<para>Please be careful to note any legal issues! Don't let us
<para>Please be careful to note any legal issues! Do not let us
illegally distribute software!</para>
</sect3>
@ -3841,7 +3877,7 @@ DISTNAME= xdvi
PKGNAME= xdvi-pl18
CATEGORIES= print
[do not forget the trailing slash ("/")!
if you aren't using MASTER_SITE_* macros]
if you are not using MASTER_SITE_* macros]
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= applications
[set this if the source is not in the standard ".tar.gz" form]
@ -3907,7 +3943,7 @@ pre-install:
<para>The package name should look like
<filename><replaceable>language-</replaceable>name<replaceable>-compiled.specifics</replaceable><replaceable>-version.numbers</replaceable></filename>.</para>
<para>If your <makevar>DISTNAME</makevar> doesn't look like that, set
<para>If your <makevar>DISTNAME</makevar> does not look like that, set
<makevar>PKGNAME</makevar> to something in that format.</para>
<orderedlist>
@ -4169,8 +4205,8 @@ pre-install:
<row>
<entry><filename>devel</filename></entry>
<entry>Development utilities. Do not put libraries here just
because they are libraries&mdash;unless they truly don't
belong to anywhere else, they shouldn't be in this
because they are libraries&mdash;unless they truly do not
belong to anywhere else, they should not be in this
category.</entry>
</row>
@ -4251,7 +4287,7 @@ pre-install:
<row>
<entry><filename>misc</filename></entry>
<entry>Miscellaneous utilities&mdash;basically things that
doesn't belong to anywhere else. This is the only category
does not belong to anywhere else. This is the only category
that should not appear with any other non-virtual category.
If you have <literal>misc</literal> with something else in
your <makevar>CATEGORIES</makevar> line, that means you can
@ -4442,7 +4478,7 @@ pre-install:
<listitem>
<para>Specific categories win over less-specific ones. For
instance, an HTML editor should be listed as <literal>www
editors</literal>, not the other way around. Also, you don't
editors</literal>, not the other way around. Also, you do not
need to list <literal>net</literal> when the port belongs to
either of <literal>mail</literal>, <literal>mbone</literal>,
<literal>news</literal>, <literal>security</literal>, or

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$Id: chapter.sgml,v 1.17 1999-05-16 13:28:26 nik Exp $
$Id: chapter.sgml,v 1.18 1999-05-17 19:55:54 nik Exp $
-->
<chapter id="ports">
@ -117,7 +117,7 @@
<para>&ldquo;How on earth can this do anything?&rdquo; I hear you cry.
&ldquo;There is no source code there!&rdquo;</para>
<para>Fear not, gentle reader, all will become clear (hopefully). Let's
<para>Fear not, gentle reader, all will become clear (hopefully). Let us
see what happens if we try and install a port. I have chosen
<application>ElectricFence</application>, a useful tool for developers,
as the skeleton is more straightforward than most.</para>
@ -311,8 +311,8 @@ password. Remember to use binary (also known as image) mode!]
did not have a copy of the source locally, so it fetched one before
extracting, patching and building it.</para>
<para>Let's try something more ambitious now. Instead of getting a
single port skeleton, let's get a whole sub-directory, for example all
<para>Let us try something more ambitious now. Instead of getting a
single port skeleton, we will get a whole sub-directory, for example all
the database skeletons in the ports collection. It looks almost the
same:-</para>
@ -762,7 +762,7 @@ do-install:
version shipped with FreeBSD 2.1.0 and 2.1.5), the
<option>-O2</option> option could result in buggy code unless you
used the <option>-fno-strength-reduce</option> option as well.
(Most of the ports don't use <option>-O2</option>). You
(Most of the ports do not use <option>-O2</option>). You
<emphasis>should</emphasis> be able to specify the compiler options
used by something like</para>
@ -794,7 +794,7 @@ do-install:
<listitem>
<para>Q. I went to install the <literal>foo</literal> port but the
system suddenly stopped compiling it and starting compiling the
<literal>bar</literal> port. What's going on?</para>
<literal>bar</literal> port. What is going on?</para>
<para>A. The <literal>foo</literal> port needs something that is
supplied with <literal>bar</literal> &mdash; for instance, if
@ -946,7 +946,7 @@ grizzle-6.5 - the combined piano tutorial, LOGO interpreter and shoot 'em up arc
FreeBSD. The bulk of the work is done by
<filename>/usr/ports/Mk/bsd.port.mk</filename>, which all port Makefiles
include. Please refer to that file for more details on the inner
workings of the ports collection. Even if you don't hack Makefiles
workings of the ports collection. Even if you do not hack Makefiles
daily, it is well commented, and you will still gain much knowledge from
it.</para>
@ -1177,7 +1177,7 @@ lib/X11/oneko/mouse.xpm
</step>
</procedure>
<para>Make sure that there aren't any warnings issued in any of the
<para>Make sure that there are not any warnings issued in any of the
<maketarget>package</maketarget> and
<maketarget>deinstall</maketarget> stages, After step 3, check to
see if all the new directories are correctly deleted. Also, try
@ -1658,7 +1658,7 @@ MASTER_SITE_SUBDIR= applications</programlisting>
<filename>.gz</filename> or <filename>.Z</filename>.</para>
<para>If the patch is distributed with some other files, such as
documentation, in a gzip'd tarball, you can't just use
documentation, in a gzip'd tarball, you cannot just use
<makevar>PATCHFILES</makevar>. If that is the case, add the name
and the location of the patch tarball to
<makevar>DISTFILES</makevar> and <makevar>MASTER_SITES</makevar>.
@ -1847,7 +1847,7 @@ RUN_DEPENDS= ${PREFIX}/etc/innd:${PORTSDIR}/news/inn \
<literal>USE_PERL5=yes</literal> if your port requires version 5
of the perl language. (The last is especially important since
some versions of FreeBSD has perl5 as part of the base system
while others don't.)</para>
while others do not.)</para>
</sect4>
<sect4>
@ -1994,7 +1994,7 @@ lib/libtvl80.so.1
<para>A.out libraries should be moved out of
<filename>/usr/local/lib</filename> and similar to an
<filename>aout</filename> subdirectory. (If you don't move them out
<filename>aout</filename> subdirectory. (If you do not move them out
of the way, ELF ports will happily overwrite a.out libraries.) The
<maketarget>move-aout-libs</maketarget> target in the 3.0-CURRENT
<filename>src/Makefile</filename> (called from
@ -2258,7 +2258,7 @@ MASTERDIR= ${.CURDIR}/../xdvi300
<para><makevar>MANCOMPRESSED</makevar> is automatically set to
<literal>yes</literal> if <makevar>USE_IMAKE</makevar> is set and
<makevar>NO_INSTALL_MANPAGES</makevar> is not set, and to
<literal>no</literal> otherwise. You don't have to explicitly define
<literal>no</literal> otherwise. You do not have to explicitly define
it unless the default is not suitable for your port.</para>
<para>If your port anchors its man tree somewhere other than
@ -2313,7 +2313,7 @@ ${PREFIX}/man/ja/man4/baz.4.gz</programlisting>
<title><makevar>REQUIRES_MOTIF</makevar></title>
<para>If your port requires Motif, define this variable in the
Makefile. This will prevent people who don't own a copy of Motif
Makefile. This will prevent people who do not own a copy of Motif
from even attempting to build it.</para>
</sect3>
@ -2403,7 +2403,7 @@ Options:
<step>
<para>Look at the texinfo sources and make a patch to insert
<literal>@dircategory</literal> and <literal>@direntry</literal>
statements to files that don't have them. This is part of my
statements to files that do not have them. This is part of my
patch:</para>
<programlisting>
@ -2447,7 +2447,7 @@ Options:
<filename>PLIST</filename>; see below). However, if you have a
Japanese (or other multibyte encoding) info files, you will have
to use the extra arguments to <command>install-info</command>
because <command>makeinfo</command> can't handle those texinfo
because <command>makeinfo</command> cannot handle those texinfo
sources. (See <filename>Makefile</filename> and
<filename>PLIST</filename> of <filename>japanese/skk</filename>
for examples on how to do this).</para>
@ -2459,7 +2459,7 @@ Options:
from the texinfo sources. Since the texinfo sources are newer than
the info files, they should be rebuilt when you type
<command>make</command>; but many <filename>Makefile</filename>s
don't include correct dependencies for info files. In
do not include correct dependencies for info files. In
<command>emacs</command>' case, I had to patch the main
<filename>Makefile.in</filename> so it will descend into the
<filename>man</filename> subdirectory to rebuild the info
@ -2583,9 +2583,9 @@ diff -u -r1.26 Makefile
<para>Do not use anything other than
<filename>/usr/share/info/dir</filename> and the above command to
create a new info file. In fact, I'd add the first three lines of
the above patch to <filename>bsd.port.mk</filename> if you (the
porter) wouldn't have to do it in <filename>PLIST</filename> by
create a new info file. In fact, I would add the first three lines
of the above patch to <filename>bsd.port.mk</filename> if you (the
porter) would not have to do it in <filename>PLIST</filename> by
yourself anyway.</para>
</step>
@ -2643,7 +2643,7 @@ diff -u -r1.15 PLIST
<sect2>
<title>The <filename>pkg/</filename> subdirectory</title>
<para>There are some tricks we haven't mentioned yet about the
<para>There are some tricks we have not mentioned yet about the
<filename>pkg/</filename> subdirectory that come in handy
sometimes.</para>
@ -2847,17 +2847,17 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<listitem>
<para>If the port has a &ldquo;do not sell for profit&rdquo; type of
license, set the variable <makevar>NO_CDROM</makevar> to a string
describing the reason why. We will make sure such ports won't go
describing the reason why. We will make sure such ports will not go
into the CD-ROM come release time. The distfile and package will
still be available via ftp.</para>
</listitem>
<listitem>
<para>If the resulting package needs to be built uniquely for each
site, or the resulting binary package can't be distributed due to
site, or the resulting binary package cannot be distributed due to
licensing; set the variable <makevar>NO_PACKAGE</makevar> to a
string describing the reason why. We will make sure such packages
won't go on the ftp site, nor into the CD-ROM come release time.
will not go on the ftp site, nor into the CD-ROM come release time.
The distfile will still be included on both however.</para>
</listitem>
@ -2896,7 +2896,7 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
port right now (because of, for example, stability problems of the new
version).</para>
<para>If the maintainer asks you to do the upgrade or there isn't any
<para>If the maintainer asks you to do the upgrade or there is not any
such person to begin with, please make the upgrade and send the
recursive diff (either unified or context diff is fine, but port
committers appear to prefer unified diff more) of the new and old
@ -2969,7 +2969,7 @@ post-install:
<listitem>
<para><makevar>INSTALL_MAN</makevar> is a command to install
manpages and other documentation (it doesn't compress
manpages and other documentation (it does not compress
anything).</para>
</listitem>
</itemizedlist>
@ -2996,7 +2996,7 @@ post-install:
<title><makevar>WRKDIRPREFIX</makevar></title>
<para>Make sure your port honors <makevar>WRKDIRPREFIX</makevar>.
Most ports don't have to worry about this. In particular, if you
Most ports do not have to worry about this. In particular, if you
are referring to a <makevar>WRKDIR</makevar> of another port, note
that the correct location is
<filename><makevar>WRKDIRPREFIX</makevar><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> not <filename><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or <filename><makevar>.CURDIR</makevar>/../../<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or some such.</para>
@ -3031,7 +3031,7 @@ post-install:
<para>to the proper place in the <filename>.c</filename> file. We
believe that every system that defines these two symbols has
<filename>sys/param.h</filename>. If you find a system that
doesn't, we would like to know. Please send mail to the
does not, we would like to know. Please send mail to the
&a.ports;.</para>
<para>Another way is to use the GNU Autoconf style of doing
@ -3042,7 +3042,7 @@ post-install:
#include &lt;sys/param.h&gt;
#endif</programlisting>
<para>Don't forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<para>Do not forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<makevar>CFLAGS</makevar> in the <filename>Makefile</filename> for
this method.</para>
@ -3299,11 +3299,47 @@ post-install:
<entry>3.1-STABLE after 3.1-RELEASE</entry>
<entry>310001</entry>
</row>
<row>
<entry>3.1-STABLE after C++ constructor/destructor order change</entry>
<entry>310002</entry>
</row>
<row>
<entry>3.2-STABLE</entry>
<entry>320001</entry>
</row>
<row>
<entry>4.0-CURRENT after 3/4 branch</entry>
<entry>400000</entry>
</row>
<row>
<entry>4.0-CURRENT after change in dynamic linker handling</entry>
<entry>400001</entry>
</row>
<row>
<entry>4.0-CURRENT after C++ constructor/destructor order change</entry>
<entry>400002</entry>
</row>
<row>
<entry>4.0-CURRENT after functioning dladdr(3)</entry>
<entry>400003</entry>
</row>
<row>
<entry>4.0-CURRENT after newbus</entry>
<entry>400004</entry>
</row>
<row>
<entry>4.0-CURRENT after suser(9) API change</entry>
<entry>400005</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -3317,7 +3353,7 @@ post-install:
to a more straightforward major/minor system starting from 2.2.
This is because the parallel development on several branches made
it infeasible to classify the releases simply by their real
release dates. If you are making a port now, you don't have to
release dates. If you are making a port now, you do not have to
worry about old -CURRENTs; they are listed here just for your
reference.</para>
</note>
@ -3341,7 +3377,7 @@ post-install:
<note>
<para>You need to include either the
<filename>pre.mk</filename>/<filename>post.mk</filename> pair or
<filename>bsd.port.mk</filename> only; don't mix these two.</para>
<filename>bsd.port.mk</filename> only; do not mix these two.</para>
</note>
<para><filename>bsd.port.pre.mk</filename> only defines a few
@ -3551,7 +3587,7 @@ post-install:
<para>Using the recurse (<option>-r</option>) option to
<command>diff</command> to generate patches is fine, but please take
a look at the resulting patches to make sure you don't have any
a look at the resulting patches to make sure you do not have any
unnecessary junk in there. In particular, diffs between two backup
files, <filename>Makefiles</filename> when the port uses
<command>Imake</command> or GNU <command>configure</command>, etc.,
@ -3687,7 +3723,7 @@ lib/X11/oneko/sounds/cat.au
choose a free UID from 50 to 99 and register it below. Look at
<filename>japanese/Wnn</filename> for an example.</para>
<para>Make sure you don't use a UID already used by the system or
<para>Make sure you do not use a UID already used by the system or
other ports. This is the current list of UIDs between 50 and
99.</para>
@ -3734,7 +3770,7 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
<title>Respect <makevar>CFLAGS</makevar></title>
<para>The port should respect the <makevar>CFLAGS</makevar> variable.
If it doesn't, please add <literal>NO_PACKAGE=ignores
If it does not, please add <literal>NO_PACKAGE=ignores
cflags</literal> to the <filename>Makefile</filename>.</para>
</sect3>
@ -3781,10 +3817,10 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
should each be double-checked. If you are reviewing a port and feel
they can be worded better, do so.</para>
<para>Don't copy more copies of the GNU General Public License into
<para>Do not copy more copies of the GNU General Public License into
our system, please.</para>
<para>Please be careful to note any legal issues! Don't let us
<para>Please be careful to note any legal issues! Do not let us
illegally distribute software!</para>
</sect3>
@ -3841,7 +3877,7 @@ DISTNAME= xdvi
PKGNAME= xdvi-pl18
CATEGORIES= print
[do not forget the trailing slash ("/")!
if you aren't using MASTER_SITE_* macros]
if you are not using MASTER_SITE_* macros]
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= applications
[set this if the source is not in the standard ".tar.gz" form]
@ -3907,7 +3943,7 @@ pre-install:
<para>The package name should look like
<filename><replaceable>language-</replaceable>name<replaceable>-compiled.specifics</replaceable><replaceable>-version.numbers</replaceable></filename>.</para>
<para>If your <makevar>DISTNAME</makevar> doesn't look like that, set
<para>If your <makevar>DISTNAME</makevar> does not look like that, set
<makevar>PKGNAME</makevar> to something in that format.</para>
<orderedlist>
@ -4169,8 +4205,8 @@ pre-install:
<row>
<entry><filename>devel</filename></entry>
<entry>Development utilities. Do not put libraries here just
because they are libraries&mdash;unless they truly don't
belong to anywhere else, they shouldn't be in this
because they are libraries&mdash;unless they truly do not
belong to anywhere else, they should not be in this
category.</entry>
</row>
@ -4251,7 +4287,7 @@ pre-install:
<row>
<entry><filename>misc</filename></entry>
<entry>Miscellaneous utilities&mdash;basically things that
doesn't belong to anywhere else. This is the only category
does not belong to anywhere else. This is the only category
that should not appear with any other non-virtual category.
If you have <literal>misc</literal> with something else in
your <makevar>CATEGORIES</makevar> line, that means you can
@ -4442,7 +4478,7 @@ pre-install:
<listitem>
<para>Specific categories win over less-specific ones. For
instance, an HTML editor should be listed as <literal>www
editors</literal>, not the other way around. Also, you don't
editors</literal>, not the other way around. Also, you do not
need to list <literal>net</literal> when the port belongs to
either of <literal>mail</literal>, <literal>mbone</literal>,
<literal>news</literal>, <literal>security</literal>, or

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$Id: book.sgml,v 1.17 1999-05-16 13:28:26 nik Exp $
$Id: book.sgml,v 1.18 1999-05-17 19:55:54 nik Exp $
-->
<chapter id="ports">
@ -117,7 +117,7 @@
<para>&ldquo;How on earth can this do anything?&rdquo; I hear you cry.
&ldquo;There is no source code there!&rdquo;</para>
<para>Fear not, gentle reader, all will become clear (hopefully). Let's
<para>Fear not, gentle reader, all will become clear (hopefully). Let us
see what happens if we try and install a port. I have chosen
<application>ElectricFence</application>, a useful tool for developers,
as the skeleton is more straightforward than most.</para>
@ -311,8 +311,8 @@ password. Remember to use binary (also known as image) mode!]
did not have a copy of the source locally, so it fetched one before
extracting, patching and building it.</para>
<para>Let's try something more ambitious now. Instead of getting a
single port skeleton, let's get a whole sub-directory, for example all
<para>Let us try something more ambitious now. Instead of getting a
single port skeleton, we will get a whole sub-directory, for example all
the database skeletons in the ports collection. It looks almost the
same:-</para>
@ -762,7 +762,7 @@ do-install:
version shipped with FreeBSD 2.1.0 and 2.1.5), the
<option>-O2</option> option could result in buggy code unless you
used the <option>-fno-strength-reduce</option> option as well.
(Most of the ports don't use <option>-O2</option>). You
(Most of the ports do not use <option>-O2</option>). You
<emphasis>should</emphasis> be able to specify the compiler options
used by something like</para>
@ -794,7 +794,7 @@ do-install:
<listitem>
<para>Q. I went to install the <literal>foo</literal> port but the
system suddenly stopped compiling it and starting compiling the
<literal>bar</literal> port. What's going on?</para>
<literal>bar</literal> port. What is going on?</para>
<para>A. The <literal>foo</literal> port needs something that is
supplied with <literal>bar</literal> &mdash; for instance, if
@ -946,7 +946,7 @@ grizzle-6.5 - the combined piano tutorial, LOGO interpreter and shoot 'em up arc
FreeBSD. The bulk of the work is done by
<filename>/usr/ports/Mk/bsd.port.mk</filename>, which all port Makefiles
include. Please refer to that file for more details on the inner
workings of the ports collection. Even if you don't hack Makefiles
workings of the ports collection. Even if you do not hack Makefiles
daily, it is well commented, and you will still gain much knowledge from
it.</para>
@ -1177,7 +1177,7 @@ lib/X11/oneko/mouse.xpm
</step>
</procedure>
<para>Make sure that there aren't any warnings issued in any of the
<para>Make sure that there are not any warnings issued in any of the
<maketarget>package</maketarget> and
<maketarget>deinstall</maketarget> stages, After step 3, check to
see if all the new directories are correctly deleted. Also, try
@ -1658,7 +1658,7 @@ MASTER_SITE_SUBDIR= applications</programlisting>
<filename>.gz</filename> or <filename>.Z</filename>.</para>
<para>If the patch is distributed with some other files, such as
documentation, in a gzip'd tarball, you can't just use
documentation, in a gzip'd tarball, you cannot just use
<makevar>PATCHFILES</makevar>. If that is the case, add the name
and the location of the patch tarball to
<makevar>DISTFILES</makevar> and <makevar>MASTER_SITES</makevar>.
@ -1847,7 +1847,7 @@ RUN_DEPENDS= ${PREFIX}/etc/innd:${PORTSDIR}/news/inn \
<literal>USE_PERL5=yes</literal> if your port requires version 5
of the perl language. (The last is especially important since
some versions of FreeBSD has perl5 as part of the base system
while others don't.)</para>
while others do not.)</para>
</sect4>
<sect4>
@ -1994,7 +1994,7 @@ lib/libtvl80.so.1
<para>A.out libraries should be moved out of
<filename>/usr/local/lib</filename> and similar to an
<filename>aout</filename> subdirectory. (If you don't move them out
<filename>aout</filename> subdirectory. (If you do not move them out
of the way, ELF ports will happily overwrite a.out libraries.) The
<maketarget>move-aout-libs</maketarget> target in the 3.0-CURRENT
<filename>src/Makefile</filename> (called from
@ -2258,7 +2258,7 @@ MASTERDIR= ${.CURDIR}/../xdvi300
<para><makevar>MANCOMPRESSED</makevar> is automatically set to
<literal>yes</literal> if <makevar>USE_IMAKE</makevar> is set and
<makevar>NO_INSTALL_MANPAGES</makevar> is not set, and to
<literal>no</literal> otherwise. You don't have to explicitly define
<literal>no</literal> otherwise. You do not have to explicitly define
it unless the default is not suitable for your port.</para>
<para>If your port anchors its man tree somewhere other than
@ -2313,7 +2313,7 @@ ${PREFIX}/man/ja/man4/baz.4.gz</programlisting>
<title><makevar>REQUIRES_MOTIF</makevar></title>
<para>If your port requires Motif, define this variable in the
Makefile. This will prevent people who don't own a copy of Motif
Makefile. This will prevent people who do not own a copy of Motif
from even attempting to build it.</para>
</sect3>
@ -2403,7 +2403,7 @@ Options:
<step>
<para>Look at the texinfo sources and make a patch to insert
<literal>@dircategory</literal> and <literal>@direntry</literal>
statements to files that don't have them. This is part of my
statements to files that do not have them. This is part of my
patch:</para>
<programlisting>
@ -2447,7 +2447,7 @@ Options:
<filename>PLIST</filename>; see below). However, if you have a
Japanese (or other multibyte encoding) info files, you will have
to use the extra arguments to <command>install-info</command>
because <command>makeinfo</command> can't handle those texinfo
because <command>makeinfo</command> cannot handle those texinfo
sources. (See <filename>Makefile</filename> and
<filename>PLIST</filename> of <filename>japanese/skk</filename>
for examples on how to do this).</para>
@ -2459,7 +2459,7 @@ Options:
from the texinfo sources. Since the texinfo sources are newer than
the info files, they should be rebuilt when you type
<command>make</command>; but many <filename>Makefile</filename>s
don't include correct dependencies for info files. In
do not include correct dependencies for info files. In
<command>emacs</command>' case, I had to patch the main
<filename>Makefile.in</filename> so it will descend into the
<filename>man</filename> subdirectory to rebuild the info
@ -2583,9 +2583,9 @@ diff -u -r1.26 Makefile
<para>Do not use anything other than
<filename>/usr/share/info/dir</filename> and the above command to
create a new info file. In fact, I'd add the first three lines of
the above patch to <filename>bsd.port.mk</filename> if you (the
porter) wouldn't have to do it in <filename>PLIST</filename> by
create a new info file. In fact, I would add the first three lines
of the above patch to <filename>bsd.port.mk</filename> if you (the
porter) would not have to do it in <filename>PLIST</filename> by
yourself anyway.</para>
</step>
@ -2643,7 +2643,7 @@ diff -u -r1.15 PLIST
<sect2>
<title>The <filename>pkg/</filename> subdirectory</title>
<para>There are some tricks we haven't mentioned yet about the
<para>There are some tricks we have not mentioned yet about the
<filename>pkg/</filename> subdirectory that come in handy
sometimes.</para>
@ -2847,17 +2847,17 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<listitem>
<para>If the port has a &ldquo;do not sell for profit&rdquo; type of
license, set the variable <makevar>NO_CDROM</makevar> to a string
describing the reason why. We will make sure such ports won't go
describing the reason why. We will make sure such ports will not go
into the CD-ROM come release time. The distfile and package will
still be available via ftp.</para>
</listitem>
<listitem>
<para>If the resulting package needs to be built uniquely for each
site, or the resulting binary package can't be distributed due to
site, or the resulting binary package cannot be distributed due to
licensing; set the variable <makevar>NO_PACKAGE</makevar> to a
string describing the reason why. We will make sure such packages
won't go on the ftp site, nor into the CD-ROM come release time.
will not go on the ftp site, nor into the CD-ROM come release time.
The distfile will still be included on both however.</para>
</listitem>
@ -2896,7 +2896,7 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
port right now (because of, for example, stability problems of the new
version).</para>
<para>If the maintainer asks you to do the upgrade or there isn't any
<para>If the maintainer asks you to do the upgrade or there is not any
such person to begin with, please make the upgrade and send the
recursive diff (either unified or context diff is fine, but port
committers appear to prefer unified diff more) of the new and old
@ -2969,7 +2969,7 @@ post-install:
<listitem>
<para><makevar>INSTALL_MAN</makevar> is a command to install
manpages and other documentation (it doesn't compress
manpages and other documentation (it does not compress
anything).</para>
</listitem>
</itemizedlist>
@ -2996,7 +2996,7 @@ post-install:
<title><makevar>WRKDIRPREFIX</makevar></title>
<para>Make sure your port honors <makevar>WRKDIRPREFIX</makevar>.
Most ports don't have to worry about this. In particular, if you
Most ports do not have to worry about this. In particular, if you
are referring to a <makevar>WRKDIR</makevar> of another port, note
that the correct location is
<filename><makevar>WRKDIRPREFIX</makevar><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> not <filename><makevar>PORTSDIR</makevar>/<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or <filename><makevar>.CURDIR</makevar>/../../<replaceable>subdir</replaceable>/<replaceable>name</replaceable>/work</filename> or some such.</para>
@ -3031,7 +3031,7 @@ post-install:
<para>to the proper place in the <filename>.c</filename> file. We
believe that every system that defines these two symbols has
<filename>sys/param.h</filename>. If you find a system that
doesn't, we would like to know. Please send mail to the
does not, we would like to know. Please send mail to the
&a.ports;.</para>
<para>Another way is to use the GNU Autoconf style of doing
@ -3042,7 +3042,7 @@ post-install:
#include &lt;sys/param.h&gt;
#endif</programlisting>
<para>Don't forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<para>Do not forget to add <literal>-DHAVE_SYS_PARAM_H</literal> to the
<makevar>CFLAGS</makevar> in the <filename>Makefile</filename> for
this method.</para>
@ -3299,11 +3299,47 @@ post-install:
<entry>3.1-STABLE after 3.1-RELEASE</entry>
<entry>310001</entry>
</row>
<row>
<entry>3.1-STABLE after C++ constructor/destructor order change</entry>
<entry>310002</entry>
</row>
<row>
<entry>3.2-STABLE</entry>
<entry>320001</entry>
</row>
<row>
<entry>4.0-CURRENT after 3/4 branch</entry>
<entry>400000</entry>
</row>
<row>
<entry>4.0-CURRENT after change in dynamic linker handling</entry>
<entry>400001</entry>
</row>
<row>
<entry>4.0-CURRENT after C++ constructor/destructor order change</entry>
<entry>400002</entry>
</row>
<row>
<entry>4.0-CURRENT after functioning dladdr(3)</entry>
<entry>400003</entry>
</row>
<row>
<entry>4.0-CURRENT after newbus</entry>
<entry>400004</entry>
</row>
<row>
<entry>4.0-CURRENT after suser(9) API change</entry>
<entry>400005</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -3317,7 +3353,7 @@ post-install:
to a more straightforward major/minor system starting from 2.2.
This is because the parallel development on several branches made
it infeasible to classify the releases simply by their real
release dates. If you are making a port now, you don't have to
release dates. If you are making a port now, you do not have to
worry about old -CURRENTs; they are listed here just for your
reference.</para>
</note>
@ -3341,7 +3377,7 @@ post-install:
<note>
<para>You need to include either the
<filename>pre.mk</filename>/<filename>post.mk</filename> pair or
<filename>bsd.port.mk</filename> only; don't mix these two.</para>
<filename>bsd.port.mk</filename> only; do not mix these two.</para>
</note>
<para><filename>bsd.port.pre.mk</filename> only defines a few
@ -3551,7 +3587,7 @@ post-install:
<para>Using the recurse (<option>-r</option>) option to
<command>diff</command> to generate patches is fine, but please take
a look at the resulting patches to make sure you don't have any
a look at the resulting patches to make sure you do not have any
unnecessary junk in there. In particular, diffs between two backup
files, <filename>Makefiles</filename> when the port uses
<command>Imake</command> or GNU <command>configure</command>, etc.,
@ -3687,7 +3723,7 @@ lib/X11/oneko/sounds/cat.au
choose a free UID from 50 to 99 and register it below. Look at
<filename>japanese/Wnn</filename> for an example.</para>
<para>Make sure you don't use a UID already used by the system or
<para>Make sure you do not use a UID already used by the system or
other ports. This is the current list of UIDs between 50 and
99.</para>
@ -3734,7 +3770,7 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
<title>Respect <makevar>CFLAGS</makevar></title>
<para>The port should respect the <makevar>CFLAGS</makevar> variable.
If it doesn't, please add <literal>NO_PACKAGE=ignores
If it does not, please add <literal>NO_PACKAGE=ignores
cflags</literal> to the <filename>Makefile</filename>.</para>
</sect3>
@ -3781,10 +3817,10 @@ msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh</programlisting>
should each be double-checked. If you are reviewing a port and feel
they can be worded better, do so.</para>
<para>Don't copy more copies of the GNU General Public License into
<para>Do not copy more copies of the GNU General Public License into
our system, please.</para>
<para>Please be careful to note any legal issues! Don't let us
<para>Please be careful to note any legal issues! Do not let us
illegally distribute software!</para>
</sect3>
@ -3841,7 +3877,7 @@ DISTNAME= xdvi
PKGNAME= xdvi-pl18
CATEGORIES= print
[do not forget the trailing slash ("/")!
if you aren't using MASTER_SITE_* macros]
if you are not using MASTER_SITE_* macros]
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= applications
[set this if the source is not in the standard ".tar.gz" form]
@ -3907,7 +3943,7 @@ pre-install:
<para>The package name should look like
<filename><replaceable>language-</replaceable>name<replaceable>-compiled.specifics</replaceable><replaceable>-version.numbers</replaceable></filename>.</para>
<para>If your <makevar>DISTNAME</makevar> doesn't look like that, set
<para>If your <makevar>DISTNAME</makevar> does not look like that, set
<makevar>PKGNAME</makevar> to something in that format.</para>
<orderedlist>
@ -4169,8 +4205,8 @@ pre-install:
<row>
<entry><filename>devel</filename></entry>
<entry>Development utilities. Do not put libraries here just
because they are libraries&mdash;unless they truly don't
belong to anywhere else, they shouldn't be in this
because they are libraries&mdash;unless they truly do not
belong to anywhere else, they should not be in this
category.</entry>
</row>
@ -4251,7 +4287,7 @@ pre-install:
<row>
<entry><filename>misc</filename></entry>
<entry>Miscellaneous utilities&mdash;basically things that
doesn't belong to anywhere else. This is the only category
does not belong to anywhere else. This is the only category
that should not appear with any other non-virtual category.
If you have <literal>misc</literal> with something else in
your <makevar>CATEGORIES</makevar> line, that means you can
@ -4442,7 +4478,7 @@ pre-install:
<listitem>
<para>Specific categories win over less-specific ones. For
instance, an HTML editor should be listed as <literal>www
editors</literal>, not the other way around. Also, you don't
editors</literal>, not the other way around. Also, you do not
need to list <literal>net</literal> when the port belongs to
either of <literal>mail</literal>, <literal>mbone</literal>,
<literal>news</literal>, <literal>security</literal>, or