Explain a much better way of automatically generating a packing list now that makeplist is available.

Leave mention of the older scripts as long as they exist.
This commit is contained in:
Eitan Adler 2013-10-28 19:24:11 +00:00
parent 7fd18f8169
commit 997f82aefd
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=43056

View file

@ -10092,39 +10092,12 @@ etc/orbit.conf.sample
<title>Automated Package List Creation</title>
<para>First, make sure your port is almost complete, with only
<filename>pkg-plist</filename> missing.</para>
<filename>pkg-plist</filename> missing. You may then run
<command>make <maketarget>makeplist</maketarget></command> to
generate a <filename>pkg-plist</filename> automatically. Thie
file must be double checked for correctness.</para>
<para>Next, create a temporary directory tree into which your
port can be installed, and install any dependencies.</para>
<screen>&prompt.root; <userinput>mkdir /var/tmp/`make -V PORTNAME`</userinput>
&prompt.root; <userinput>mtree -U -f `make -V MTREE_FILE` -d -e -p /var/tmp/`make -V PORTNAME`</userinput>
&prompt.root; <userinput>make depends PREFIX=/var/tmp/`make -V PORTNAME`</userinput></screen>
<para>Store the directory structure in a new file.</para>
<screen>&prompt.root; <userinput>(cd /var/tmp/`make -V PORTNAME` &amp;&amp; find -d * -type d) | sort &gt; OLD-DIRS</userinput></screen>
<para>Create an empty <filename>pkg-plist</filename>
file:</para>
<screen>&prompt.root; <userinput>:&gt;pkg-plist</userinput></screen>
<para>If your port honors <makevar>PREFIX</makevar> (which it
should) you can then install the port and create the package
list.</para>
<screen>&prompt.root; <userinput>make install PREFIX=/var/tmp/`make -V PORTNAME`</userinput>
&prompt.root; <userinput>(cd /var/tmp/`make -V PORTNAME` &amp;&amp; find -d * \! -type d) | sort &gt; pkg-plist</userinput></screen>
<para>You must also add any newly created directories to the
packing list.</para>
<screen>&prompt.root; <userinput>(cd /var/tmp/`make -V PORTNAME` &amp;&amp; find -d * -type d) | sort | comm -13 OLD-DIRS - | sort -r | sed -e 's#^#@dirrm #' &gt;&gt; pkg-plist</userinput></screen>
<para>Finally, you need to tidy up the packing list by hand; it
is not <emphasis>all</emphasis> automated.
User configuration files should be
<para>User configuration files should be
removed, or installed as
<filename><replaceable>filename</replaceable>.sample</filename>.
The <filename>info/dir</filename> file should not be listed
@ -10137,10 +10110,7 @@ etc/orbit.conf.sample
<para>Alternatively, use the <command>plist</command> script in
<filename>/usr/ports/Tools/scripts/</filename> to build the
package list automatically. The <filename>plist</filename>
script is a <application>Ruby</application> script that
automates most of the manual steps outlined in the previous
paragraphs.</para>
package list automatically.</para>
<para>The first step is the same as above: take the first three
lines, that is, <command>mkdir</command>,