Do not write anything after the
.include <bsd.port.mk> line. It
usually can be avoided by including
bsd.port.pre.mk somewhere in the middle of
the Makefile and
bsd.port.post.mk at the end.
Include either the
bsd.port.pre.mk/bsd.port.post.mk
pair or bsd.port.mk only; do not mix
these two usages.
bsd.port.pre.mk only defines a few
variables, which can be used in tests in the
Makefile,
bsd.port.post.mk defines the rest.
Here are some important variables defined in
bsd.port.pre.mk (this is not the complete
list, please read bsd.port.mk for the
complete list).
| Variable | 描述 |
|---|---|
ARCH | The architecture as returned by
uname -m (for example,
i386) |
OPSYS | The operating system type, as returned by
uname -s (for example,
FreeBSD) |
OSREL | The release version of the operating system
(for example, 2.1.5 or
2.2.7) |
OSVERSION | The numeric version of the operating system; the
same as __FreeBSD_version. |
LOCALBASE | The base of the “local” tree (for
example, /usr/local) |
PREFIX | Where the port installs itself (see
more on
PREFIX). |
When MASTERDIR is needed, always define
it before including
bsd.port.pre.mk.
Here are some examples of things that can be added after
bsd.port.pre.mk:
# no need to compile lang/perl5 if perl5 is already in system
.if ${OSVERSION} > 300003
BROKEN= perl is in system
.endifAlways use tab instead of spaces after
BROKEN=.
本文及其他文件,可由此下載: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/。
若有 FreeBSD 方面疑問,請先閱讀
FreeBSD 相關文件,如不能解決的話,再洽詢
<questions@FreeBSD.org>。
關於本文件的問題,請洽詢
<doc@FreeBSD.org>。