- Add new section about static package lists being preferred over dynamic

ones

Submitted by:	netchild
This commit is contained in:
Pav Lucistnik 2005-12-15 08:49:06 +00:00
parent 2f77dda2e9
commit fd82e53bfe
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=26603

View file

@ -6023,6 +6023,46 @@ etc/orbit.conf.sample
to work.</para>
</sect1>
<sect1 id="plist-dynamic">
<title>Dynamic vs. static package list</title>
<para>A <emphasis>static package list</emphasis> is a package list
which is available in the Ports Collection either as a
<filename>pkg-plist</filename> file (with or without variable
substitution), or embedded into the <filename>Makefile</filename>
via <makevar>PLIST_FILES</makevar> and <makevar>PLIST_DIRS</makevar>.
Even if the contents are auto-generated by a tool or a target
in the Makefile <emphasis>before</emphasis> the inclusion into the
Ports Collection by a committer, this is still considered a
static list, since it is possible to examine it without having
to download or compile the distfile.</para>
<para>A <emphasis>dynamic package list</emphasis> is a package list
which is generated at the time the port is compiled based upon the
files and directories which are installed. It is not possible to
examine it before the source code of the ported application
is downloaded and compiled, or after running a <literal>make
clean</literal>.</para>
<para>While the use of dynamic package lists is not forbidden,
maintainers should use static package lists wherever possible, as it
enables users to &man.grep.1; through available ports to discover,
for example, which port installs a certain file. Dynamic lists
should be primarily used for
complex ports where the package list changes drastically based upon
optional features of the port (and thus maintaining a static package
list is infeasible), or ports which change the
package list based upon the version of dependent software used (e.g.
ports which generate docs with
<application>Javadoc</application>).</para>
<para>Maintainers who prefer dynamic package lists are encouraged to
add a new target to their port which generates the
<filename>pkg-plist</filename> file so that users may examine
the contents.</para>
</sect1>
<sect1 id="plist-autoplist">
<title>Automated package list creation</title>