This page will, when completed, provide the necessary guidance. Until then, however, please look at the available porting information, the OpenBSD porting policy, and the other helpful hints provided on this page.
If you are not capable of doing all the steps in a port, please do as much as you can before submitting it. When you do submit the port, make sure you point out which parts you didn't do.
/usr/share/mk/bsd.port.mk
. This is the
system ports makefile included at the end of each individual
port makefile. Read the comments at the start of the makefile.
They do a good job of describing the available make options.
/usr/local
is often shared between several machines
thanks to NFS. For this reason, configuration files that are specific
to a given machine can't be stored under /usr/local
,
/etc
is the central repository for per machine
configuration files. Moreover, OpenBSD policy is to never update
files under /etc
automatically. Ports that need some
specific boot setup should advise the administrator about what to do
instead of blindly installing files.
-lcrypt
.libc
.
mktemp
warnings to be fixed.
This is not as simple as s/mktemp/mkstemp/g
. If
you are not absolutely sure of what you are doing please request
help from the ports mailing
list.
strcat/strcpy/strcmp/sprintf
. In general,
sprintf
should be replaced with snprintf
.
$
OpenBSD$
CVS tag to
the Makefile. If importing a port from another system be sure to
leave their tag in the Makefile, too. However, replace the FreeBSD
$
Id$
tag with the
$
FreeBSD$
tag.
/usr/local/bin
or
/usr/X11R6/bin
is in the installers path. A good
way to verify this is to create and install your port while
running as root
with only /bin
and
/usr/bin
in your path.
${MACHINE_ARCH} ==
alpha
curses.h/libcurses/libtermlib
are the
``new curses''. Change:ncurses.h ==> curses.h
-lncurses ==> -lcurses
ocurses.h/libocurses
.