#!/bin/sh CLEAN_FLAGS="-DNO_CLEAN -DNO_KERNELCLEAN -DNO_KERNELCONFIG -DNO_KERNELDEPEND" export SRCROOT=/src/FreeBSD/mips export TARGET_ARCH=mips export XDEV=mips export XDEV_ARCH=mips export KERNCONF=AR71XX export MAKEOBJDIRPREFIX=/src/FreeBSD/obj/mips DESTDIR=/src/FreeBSD/tftproot/ args=`getopt twkiucx $*` BUILD_TOOLCHAIN=no BUILD_KERNEL=no BUILD_WORLD=no BUILD_XDEV=no INSTALL_WORLD=no CLEAN=no SMPFLAGS="-j3" MAKEFLAGS="WITHOUT_CDDL=yes" ENDIANFLAGS="-DTARGET_BIG_ENDIAN" if [ $? -ne 0 ] then echo 'Usage: build.sh -tukwi' exit 2 fi set -- $args for i do case "$i" in -t) BUILD_TOOLCHAIN=yes; shift;; -k) BUILD_KERNEL=yes; shift;; -w) BUILD_WORLD=yes; shift;; -x) BUILD_XDEV=yes; shift;; -i) INSTALL_WORLD=yes; shift;; -c) CLEAN=yes; shift;; -u) SMPFLAGS=""; echo UNI; shift;; --) shift; break;; esac done if [ "x$CLEAN" = "xyes" ]; then CLEAN_FLAGS=""; fi set -x cd $SRCROOT || exit 1 if [ "x$BUILD_TOOLCHAIN" = "xyes" ]; then make $MAKEFLAGS $SMPFLAGS $CLEAN_FLAGS $ENDIANFLAGS kernel-toolchain; fi if [ "x$BUILD_XDEV" = "xyes" ]; then make DESTDIR=/src/FreeBSD/opt $MAKEFLAGS $SMPFLAGS $CLEAN_FLAGS $ENDIANFLAGS xdev-build sudo -E make DESTDIR=/src/FreeBSD/opt $MAKEFLAGS $SMPFLAGS $CLEAN_FLAGS $ENDIANFLAGS xdev-install fi if [ "x$BUILD_KERNEL" = "xyes" ]; then make $MAKEFLAGS $SMPFLAGS NO_MODULES=yes $CLEAN_FLAGS buildkernel; KERNOBJDIR=$MAKEOBJDIRPREFIX/$TARGET_ARCH/$SRCROOT/sys/$KERNCONF cp $KERNOBJDIR/kernel /src/FreeBSD/tftpboot/ cp $KERNOBJDIR/kernel.debug /src/FreeBSD/tftpboot/ cp $KERNOBJDIR/kernel.tramp.bin /src/FreeBSD/tftpboot/ fi if [ "x$BUILD_WORLD" = "xyes" ]; then make $MAKEFLAGS $SMPFLAGS NO_MODULES=yes $CLEAN_FLAGS NO_KERBEROS=yes \ WITHOUT_ACPI=yes NO_CLEAN=yes \ NO_KERBEROS=1 NO_RESCUE=1 NO_MAN=1 NO_PROFILE=1 \ WITHOUT_BSNMP=1 WITHOUT_NIS=yes NO_GAMES=1 NO_INFO=1 \ NO_IPX=1 WITHOUT_ATM=1 $ENDIANFLAGS -d l buildworld; fi if [ "x$INSTALL_WORLD" = "xyes" ]; then sudo -E make $MAKEFLAGS $SMPFLAGS NO_MODULES=yes $CLEAN_FLAGS NO_KERBEROS=yes \ WITHOUT_ACPI=yes NO_CLEAN=yes DESTDIR=$DESTDIR\ NO_KERBEROS=1 NO_RESCUE=1 NO_MAN=1 NO_PROFILE=1 \ WITHOUT_BSNMP=1 WITHOUT_NIS=yes NO_GAMES=1 NO_INFO=1 \ NO_IPX=1 WITHOUT_ATM=1 $ENDIANFLAGS installworld sudo -E make $MAKEFLAGS $SMPFLAGS NO_MODULES=yes $CLEAN_FLAGS NO_KERBEROS=yes \ WITHOUT_ACPI=yes NO_CLEAN=yes DESTDIR=$DESTDIR\ NO_KERBEROS=1 NO_RESCUE=1 NO_MAN=1 NO_PROFILE=1 \ WITHOUT_BSNMP=1 WITHOUT_NIS=yes NO_GAMES=1 NO_INFO=1 \ NO_IPX=1 WITHOUT_ATM=1 $ENDIANFLAGS distribution fi # cp $HOME/FreeBSD/mips.build/mips${SRCROOT}/sys/${KERNCONF}/kernel /tftpboot/ # cp $HOME/FreeBSD/mips.build/mips${SRCROOT}/sys/${KERNCONF}/kernel.debug /tftpboot/