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

Annotation of www/porting.html, Revision 1.2

1.1       marc        1: <html>
                      2:  <head>
                      3:   <meta http-equiv="Content-Type"
                      4:        content="text/html; charset=iso-8859-1">
                      5:   <meta name="resource-type"
                      6:        content="document">
                      7:   <meta name="description"
                      8:        CONTENT="How to make an OpenBSD port">
                      9:   <meta name="keywords"
                     10:        content="openbsd,ports">
                     11:   <meta name="distribution"
                     12:        content="global">
                     13:   <meta name="copyright"
                     14:        content="This document copyright 1997 by the OpenBSD project">
                     15:   <title>Building an OpenBSD port</title>
                     16:   <link rev="made" HREF="mailto:www@openbsd.org">
                     17:  </head>
                     18:  <body text="#000000" bgcolor="#FFFFFF" link="#23238E">
                     19:   <img src=images/smalltitle.gif alt="[OpenBSD]" >
                     20:
                     21:   <h2><font color=#0000e0>Building an OpenBSD port</font></h2>
                     22:
                     23:    So you've just compiled your favorite software package on your
                     24:    OpenBSD machine and you want to share your effort by turning
                     25:    it into a standard port.  What to do?
                     26:   <p>
                     27:    This page will, when completed, provide the necessary guidance.
                     28:    Until then, however, please look at the available porting information,
                     29:    the OpenBSD porting policy, and the other helpful hints provided
                     30:    on this page.
                     31:   <p>
                     32:    If you are not capable of doing all the steps in a port, please do as
                     33:    much as you can before submitting it.  When you do submit the port,
                     34:    make sure you point out which parts you didn't do.
                     35:   <p>
                     36:   <h3><font color=#0000e0>Available Porting Information</font></h3>
                     37:   <ul>
                     38:    <li>The file <code>/usr/share/mk/bsd.port.mk</code>.  This is the
                     39:        system ports makefile included at the end of each individual
                     40:        port makefile.  Read the comments at the start of the makefile.
                     41:        They do a good job of describing the available make options.
                     42:    <li>The
                     43:        <a href="http://www.netbsd.org/Documentation/netbsd/Packages.txt">NetBSD
                     44:        Package System</a> documentation.  This document describes NetBSD's
                     45:        version of the FreeBSD ports system and is quite helpful.
1.2     ! marc       46:    <li>Section 17.2.5 of the
1.1       marc       47:        <a href="http://www.freebsd.org/handbook/porting.html">FreeBSD
                     48:        Handbook</a>.  This is the FreeBSD porting bible.
                     49:    <li>The OpenBSD ports mailing list,
                     50:        <a href="mailto:ports@openbsd.org">ports@OpenBSD.ORG</a>.
                     51:   </ul>
                     52:   <h3><font color=#0000e0>OpenBSD Porting Policy</font></h3>
                     53:   <ul>
                     54:    <li>OpenBSD does NOT use /usr/local/etc/rc.d.<br>
                     55:        <code>/usr/local</code> is often NFS mounted; shared between
                     56:        machines in a cluster.  For this reason per machine configuration
                     57:        files are places in <code>/etc</code>.
                     58:    <li>OpenBSD does NOT compress man pages.
                     59:    <li>OpenBSD does NOT require <code>-lcrypt</code>.<br>
                     60:        DES encryption is part of the standard <code>libc</code>.
                     61:    <li>OpenBSD requests all <code>mktemp</code> warnings to be fixed.
                     62:        This is not as simple as <code>s/mktemp/mkstemp/g</code>.  If
1.2     ! marc       63:        you are not absolutely sure of what you are doing please request
1.1       marc       64:        help from the <a href="mailto:ports@openbsd.org">ports</a> mailing
                     65:        list.
                     66:    <li>Any software to be installed as a server should be scanned
                     67:        for buffer overflows, especially unsafe use of
                     68:        <code>strcat/strcpy/strcmp/sprintf</code>.  In general,
                     69:        <code>sprintf</code> should be replaced with <code>snprintf</code>.
                     70:   </ul>
                     71:   <h3><font color=#0000e0>Other Helpful Hints</font></h3>
                     72:   <ul>
                     73:    <li>Do not assume <code>/usr/local/bin</code> or
                     74:        <code>/usr/X11R6/bin</code> is in the installers path.  A good
                     75:        way to verify this is to create and install your port while
                     76:        running as <code>root</code> with only <code>/bin</code> and
                     77:        <code>/usr/bin</code> in your path.
                     78:    <li>Do NOT generate shared libraries for <code>${MACHINE_ARCH} ==
                     79:        alpha</code>
                     80:    <li>In OpenBSD <code>curses.h/libcurses/libtermlib</code> are the
                     81:        ``new curses''.  Change:<br>
                     82:        <code>ncurses.h ==> curses.h</code><br>
                     83:        <code>-lncurses ==> -lcurses</code><br>
                     84:        ``Old curses'' is available as <code>ocurses.h/libocurses</code>.
                     85:   </ul>
                     86:   <hr>
                     87:   <a href="index.html"><img src=back.gif border=0 alt=OpenBSD></a>
                     88:   <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.2     ! marc       89:   <br><small>$OpenBSD: porting.html,v 1.1 1998/02/15 06:02:57 marc Exp $</small>
1.1       marc       90:  </body>
                     91: </html>