FreeBSD 10 on Dockstar (Marvell Kirkwood)
Ian Lepore
ian at FreeBSD.org
Sun Jan 5 19:55:19 UTC 2014
On Sun, 2014-01-05 at 12:51 -0700, Ian Lepore wrote:
> On Sun, 2014-01-05 at 14:40 +0100, Torfinn Ingolfsen wrote:
> > On Fri, 3 Jan 2014 17:59:14 +0000
> > Markus Pfeiffer <markus.pfeiffer at morphism.de> wrote:
> >
> > > It does indeed work. I am a bit surprised that noone seems to be running
> > > FreeBSD on a dockstar seriously enough to run into these problems.
> >
> > FWIW, my Dockstar still runs FreeBSD 8.2-stable from 2011, due to problems getting anything newer working on it[1].
> >
> > Another thing, how does one set up a build environment that doesn't clobber source builds on the host?
> > The last time I did this, I just let the Kirkwood build clobber the files on the host and fixed it afterwards.
> > Having a permanent build environment for Kirkwood would be much nicer.
>
> A lot of folks use the freebsd-crochet script to create images for arm
> systems. I've never learned to use it myself (and I usualy don't want a
> ready-to-flash image).
>
> I generally have a dozen or so active development "sandboxes" for
> different boards. For each board/project I'm working on I create a
> directory, and within it I have a script named "mk" and these
> subdirectories:
>
> config/ nfsroot/ obj/ src/
>
> In config I put a make.conf and src.conf (even if they're empty), and a
> custom kernel config file if I'm not using one of the stock files. The
> src directory is a straight svn checkout of head or a stable branch or
> whatever. nfsroot is my default DESTDIR for installs; for development I
> tend to use nfs root.
>
> The mk script is attached. It basically sets up the usual defaults for
> whatever the sandbox is (kernel config name and such), then does a cd
> into the src directory and fires up make with whatever args I put on the
> command line. I can just type "mk buildworld" or "mk installkernel" or
> whatever and the mk script supplies the env vars and make options that
> never change. If I want to install to an sdcard or usb thumb drive
> instead of nfsroot/ I can just format and mount it and "mk installworld
> DESTDIR=/mnt".
>
Hrm, the attachment got scrubbed, I'll just paste the mk script here:
#!/bin/sh
# Build beaglebone from source.
case "$*" in
*DESTDIR* ) insdir="$DESTDIR" ;;
* ) insdir="$(pwd)/nfsroot"
esac
case "$*" in
*installworld* | *installkernel* | *distribution* ) SUDO=sudo;;
esac
set -x
kernel="BB"
if [ -r "config/${kernel}" ] ; then
ln -fs "../../../../config/${kernel}" "src/sys/arm/conf/${kernel}"
fi
srcconf="$(pwd)/config/src.conf"
makeconf="$(pwd)/config/make.conf"
objdir="$(pwd)/obj"
tobjdir="${objdir}/arm.armv6/$(pwd)/src"
kobjdir="${tobjdir}/sys/${kernel}"
export MAKEOBJDIRPREFIX="${objdir}"
cd ./src && time nice -15 ${SUDO} make -j ${MAX_JOBS:-1} \
"-DNO_CLEAN" \
"TARGET_ARCH=armv6" \
"DESTDIR=${insdir}" \
"__MAKE_CONF=${makeconf}" \
"SRCCONF=${srcconf}" \
"KERNCONF=${kernel}" \
"$@"
-- Ian
More information about the freebsd-arm
mailing list