Best way to have a port...

Ulrich Spörlein uqs at
Tue Mar 2 12:03:17 UTC 2010

On Mon, 01.03.2010 at 23:51:25 -0700, M. Warner Losh wrote:
> ... that builds part of FreeBSD?
> Let me back up...
> I'm trying to create a port for gcc and binutils that is configured
> for FreeBSD for a given machine.  FreeBSD mips, say.  binutils was
> relatively easy (once I ported our mips support forward).  However,
> gcc vexes me.  It requires, to build libgcc and friends, a fully
> populated include tree.  And it wants to use
> /usr/local/freebsd-mips/include instead of /usr/include (which is
> good).  However, the former doesn't exist.  I'd like to create a port
> for it, but I'm unclear how to even start.  This port should consist
> of all files from make includes TARGET_ARCH=mips.
> So, some questions: First, how do I know where the FreeBSD source tree
> is?  Is there some standard define like SYSDIR that contains this
> infomration?

Simply take a look at ports that required /src or /sys to compile, eg.
lsof or fusefs-kmod:

lsof has: FREEBSD_SYS?=   /usr/src/sys
fusefs-kmod has: SRC_BASE?=      /usr/src

So neither of them use a predefined var.

> Second, I need to invoke make includes (and a few other things), with
> some slightly non-standard args.  is there a stylied way to do this?
> I'd like to avoid extracting everything into myport/work/FreeBSD :)

Not quite sure on *when* you want to run make includes and if you want
to run it for the port or for /usr/src?

You could override the "pre-build:" target with stuff necessary pre
build :)

> Without solving these problems, the notion that we can use a ports
> compiler to build FreeBSD becomes less viable...
> Comments?

Not sure if they were helpful ...


More information about the freebsd-ports mailing list