[BACK]Return to porttest.html CVS log [TXT][DIR] Up to [local] / www

Annotation of www/porttest.html, Revision 1.7

1.1       couderc     1: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
                      2:
                      3: <html>
                      4:   <head>
                      5:     <meta http-equiv="content-type" content="text/html; charset=UTF-8">
                      6:
1.6       couderc     7:     <title>OpenBSD Port Testing Guide</title>
1.1       couderc     8:   </head>
                      9:
                     10:   <body text="#000000" bgcolor="#FFFFFF" link="#23238E">
                     11:     <a href="index.html"><img alt="[OpenBSD]" height="30" width="141" src=
                     12:     "images/smalltitle.gif" border="0"></a>
                     13:
1.6       couderc    14:     <h2><font color="#e00000">Port Testing Guide</font></h2>
1.1       couderc    15:     <hr>
                     16:
                     17:     <h2><font color="#0000e0">Index</font></h2>
                     18:
                     19:     <ul>
                     20:       <li><a href="#Introduction">Introduction</a></li>
                     21:
                     22:       <li><a href="#How">How</a></li>
                     23:
                     24:       <li><a href="#First">First step</a></li>
                     25:
                     26:       <li><a href="#Testing">Testing</a></li>
                     27:
                     28:       <li><a href="#Commenting">Commenting</a></li>
                     29:
                     30:       <li><a href="#More">More testing</a></li>
                     31:     </ul>
                     32:     <hr>
                     33:
                     34:     <h2><a name="Introduction"><font color=
                     35:     "#0000e0">Introduction</font></a></h2>
                     36:
                     37:     <p>The <a href="ports.html">ports tree</a> is an huge piece of work that
1.5       avsm       38:     permits OpenBSD users to use third-party programs without losing time in
1.3       couderc    39:     patching, configuring, etc. This work is done by a few volunteers who
                     40:     spend hours making your favorite applications work fine on your
1.1       couderc    41:     system. Many people think that they can't help our project because they
1.3       couderc    42:     don't have enough knowledge; this is false because they can help porters
1.5       avsm       43:     work better and faster.</p>
1.1       couderc    44:
                     45:     <h2><a name="How"><font color="#0000e0">How</font></a></h2>
                     46:
                     47:     <p>Simply by testing submitted updates or new ports which are posted on
1.6       couderc    48:     <a href="mail.html">ports mailing list</a>. By doing this
1.3       couderc    49:     you reduce the latency of commits and also increase the number of ports to
                     50:     be committed (many ports are not committed because of lack of testing!).</p>
1.1       couderc    51:
                     52:     <h2><a name="First"><font color="#0000e0">First step</font></a></h2>
                     53:
1.7     ! couderc    54:     <p>Before starting the tester must have in mind that ports development is
        !            55:     done with <a href="plus.html">OpenBSD-current</a> as target.This means
        !            56:     that there is no guarantee that new ports will work correctly on the other
        !            57:     branches. This also means that the tester should upgrade his system to
        !            58:     -current as well as the ports tree (instructions on how to do this can be
        !            59:     found at the <a href="../anoncvs.html">anoncvs</a> page and in the
        !            60:     proper <a href="./upgrade-minifaq.html">faq section</a>.
        !            61:     Having this done, the system is now prepared to do port testing. It is also
        !            62:     advisable the subscription of ports and ports-changes
        !            63:     <a href="../mail.html">mailing-lists</a>, this way the tester will be notified
        !            64:     about new/updated ports (to be tested) and about changes in the ports
        !            65:     tree.</p>
        !            66:
1.1       couderc    67:     <h2><a name="Testing"><font color="#0000e0">Testing</font></a></h2>
                     68:
1.7     ! couderc    69:     <p>In the mailing-lists two types of submission can be found; new ports
        !            70:     and updates. New ports are generally posted as tarball attachment
        !            71:     (or an url is given) which contains the port tree. A good idea is to extract
        !            72:     it into the <tt>/usr/ports/mystuff/</tt> directory and test the port from here.
        !            73:     Updates are generally a diff against current ports tree, so it is suggested
        !            74:     to copy the port in <tt>mystuff/</tt> and apply the diff to prevent tree
        !            75:     breakage.</p>
1.1       couderc    76:
1.7     ! couderc    77:     <p>Step-by-step building is needed to verify that every target, see
1.6       couderc    78:     <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=ports&amp;sektion=7&amp;">
1.7     ! couderc    79:     ports(7)</a>, is achieved correctly :</p>
1.1       couderc    80:
                     81:     <ul>
1.7     ! couderc    82:       <li>fetch : Needed to verify that distfile(s) are correctly downloaded.</li>
1.1       couderc    83:
1.7     ! couderc    84:       <li>extract : Generally extract is done without a problem, this target can
        !            85:       be ignored in most cases.</li>
1.1       couderc    86:
1.7     ! couderc    87:       <li>patch : Check if patches are applied correctly and track down
        !            88:       forgotten <tt>.orig</tt> files.</li>
1.1       couderc    89:
1.7     ! couderc    90:       <li>configure : For ports which use a configure script the tester can
        !            91:       verify if it has the correct path for dependencies, use(less) features,
        !            92:       etc ...</li>
1.1       couderc    93:
1.3       couderc    94:       <li>build : The build itself should not give errors but could contain
                     95:       minor warnings about <a href=
1.6       couderc    96:       "http://www.openbsd.org/cgi-bin/man.cgi?query=tmpnam&amp;sektion=3&amp;">
                     97:       tmpnam(3)</a> issues to be resolved by using
                     98:       <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=mkstemp&amp;sektion=3&amp;">
                     99:       mkstemp(3)</a>.</li>
1.1       couderc   100:
1.7     ! couderc   101:       <li>fake : This target fakes installation of the package and prepares
        !           102:       its installation. Checking can be done by verifying that files are
        !           103:       properly installed in the fake directory.</li>
1.1       couderc   104:
1.3       couderc   105:       <li>package : Package creation can break if pkg/PLIST* and/or
1.1       couderc   106:       pkg/PFRAG* are wrong.</li>
                    107:
1.3       couderc   108:       <li>install : Check that package installation works fine.</li>
1.1       couderc   109:
1.3       couderc   110:       <li>deinstall : Don't forget to test deinstall.</li>
1.1       couderc   111:     </ul>
                    112:
1.7     ! couderc   113:     <p>Checking of pkg/ files like DESCR, MESSAGE, INSTALL,
        !           114:     DEINSTALL is also to be done</p>
1.1       couderc   115:
                    116:     <h2><a name="Commenting"><font color="#0000e0">Commenting</font></a></h2>
                    117:
                    118:     <p>At the end of the test comes the really important thing : comments.
1.7     ! couderc   119:     Even if the port is working fine comments must be done. If we have ten
1.3       couderc   120:     posts where people say that the port runs fine under different architectures
1.7     ! couderc   121:     then the commit is done faster. If it does not work then some information
        !           122:     must be given.
        !           123:     There are tools that can help in this task, like <a href=
1.1       couderc   124:     "http://www.openbsd.org/cgi-bin/cvsweb/ports/infrastructure/build/portslogger">
                    125:     portslogger</a>.</p>
                    126:
                    127:     <p>Example :<br>
                    128:     </p>
                    129:
                    130:     <div style="margin-left: 2em">
                    131:       <table border="0" cellpadding="3" width="100%">
                    132:         <tr>
                    133:           <td nowrap bgcolor="#EEEEEE">
                    134: <pre>
1.6       couderc   135:     # make install | /usr/ports/infrastructure/build/portslogger .
1.1       couderc   136: </pre>
                    137:           </td>
                    138:         </tr>
                    139:       </table>
                    140:     </div>
                    141:     <br>
                    142:      <br>
                    143:
                    144:
1.3       couderc   145:     <p>This will redirect the output into a log file located in the current
1.1       couderc   146:     directory.</p>
                    147:
                    148:     <h2><a name="More"><font color="#0000e0">More testing</font></a></h2>
                    149:
1.7     ! couderc   150:     <p>Check the port Makefile for typos, incorrect links, useless or
        !           151:     missing variables, correct licensing and correct category.
        !           152:     For those who are more skilled other targets can be tested like
        !           153:     lib-depends-check. Patches and pkg directories deep verification
        !           154:     as well as providing diffs to correct bugs, add flavors, or other
        !           155:     enhancements.</p>
1.1       couderc   156:     <hr>
                    157:
                    158:     <address>
1.6       couderc   159:       <p>$OpenBSD: porttest.html,v 1.5 2002/09/10 21:27:36 avsm Exp $<br>
1.4       couderc   160:        OpenBSD Copyright &copy; 2002 OpenBSD</p>
1.1       couderc   161:     </address>
                    162:   </body>
                    163: </html>