summaryrefslogtreecommitdiffstats
path: root/release/arm
diff options
context:
space:
mode:
authorgjb <gjb@FreeBSD.org>2015-05-05 16:28:04 +0000
committergjb <gjb@FreeBSD.org>2015-05-05 16:28:04 +0000
commit0f66edf8be01f74ac022eadb471b253aa185f101 (patch)
treefc35778596391a73aeffe2b88fef465c323c6997 /release/arm
parentaba3d65bdf32c12cf1c4d1bbcb186fae22b7de7d (diff)
downloadFreeBSD-src-0f66edf8be01f74ac022eadb471b253aa185f101.zip
FreeBSD-src-0f66edf8be01f74ac022eadb471b253aa185f101.tar.gz
Add initial support for building RPI2 images.
In release.sh, allow overriding buildenv_setup() before the handoff to arm/release.sh. Copy arm/RPI-B.conf -> arm/RPI2.conf, set UBOOT_PORT and the correct KERNEL, and add the buildenv_setup() override to install the sysutils/u-boot-rpi2 port/package. Copy tools/arm/crochet-RPI-B.conf -> tools/arm/crochet-RPI2.conf, and set the correct entries for the RaspberryPi2 board. Thanks to: loos@ Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'release/arm')
-rw-r--r--release/arm/RPI2.conf53
1 files changed, 53 insertions, 0 deletions
diff --git a/release/arm/RPI2.conf b/release/arm/RPI2.conf
new file mode 100644
index 0000000..5cf31ff
--- /dev/null
+++ b/release/arm/RPI2.conf
@@ -0,0 +1,53 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# Global variables.
+export SVNROOT="svn://svn.FreeBSD.org/"
+export SRCBRANCH="base/head@rHEAD"
+export DOCBRANCH="doc/head@rHEAD"
+export PORTBRANCH="ports/head@rHEAD"
+export NODOC=yes
+export WORLD_FLAGS="-j $(sysctl -n hw.ncpu)"
+export KERNEL_FLAGS="-j $(( $(( $(sysctl -n hw.ncpu) + 1 )) / 2 ))"
+export CHROOTDIR="/scratch"
+export EMBEDDEDBUILD=1
+export UBOOT_PORT="sysutils/u-boot-rpi2"
+
+# Build chroot configuration
+load_chroot_env() {
+ # Avoid collision with TARGET and XDEV.
+ unset XDEV XDEV_ARCH KERNEL
+ export TARGET="amd64"
+ export TARGET_ARCH="amd64"
+}
+
+# Build target configuration
+load_target_env() {
+ # Avoid collision with TARGET and XDEV.
+ unset TARGET TARGET_ARCH
+ export XDEV="arm"
+ export XDEV_ARCH="armv6"
+ export XDEV_FLAGS="WITH_GCC=1 WITH_GCC_BOOTSTRAP=1 WITHOUT_CLANG_IS_CC=1"
+ export XDEV_FLAGS="${XDEV_FLAGS} MK_TESTS=no"
+ export KERNEL="RPI2"
+ export CROCHETSRC="https://github.com/freebsd/crochet"
+ export CROCHETBRANCH="trunk@rHEAD"
+}
+
+# Build environment setup
+buildenv_setup() {
+ if [ ! -d ${CHROOTDIR}/usr/ports/${UBOOT_PORT} ]; then
+ chroot ${CHROOTDIR} env ASSUME_ALWAYS_YES=yes \
+ /usr/sbin/pkg bootstrap -y
+ chroot ${CHROOTDIR} env ASSUME_ALWAYS_YES=yes \
+ /usr/sbin/pkg install -y ${UBOOT_PORT}
+ else
+ chroot ${CHROOTDIR} env BATCH=1 \
+ make -C /usr/ports/${UBOOT_PORT} \
+ all install clean
+ fi
+ return 0
+}
+
OpenPOWER on IntegriCloud