freebsd-ports/Tools/portbuild/scripts/makeworld
2003-09-12 20:42:14 +00:00

88 lines
1.3 KiB
Bash
Executable file

#!/bin/sh
pb=/var/portbuild
if [ $# -lt 2 ]; then
echo "usage: makeworld arch branch [args]"
exit 1
fi
arch=$1
branch=$2
shift 2
. ${pb}/${arch}/portbuild.conf
export TARGET_ARCH=${arch}
client=0
nocvs=0
# optional arguments
while [ $# -gt 0 ]; do
case "x$1" in
x-client)
client=1
;;
x-nocvs)
nocvs=1
;;
*)
break
;;
esac
shift
done
if [ "$client" = "1" ]; then
cd ${pb}/${arch}/src-client
shift 1
else
cd ${pb}/${arch}/${branch}/src
export __MAKE_CONF=/dev/null
fi
if [ "$nocvs" = "0" ]; then
echo "==> Updating source tree"
cvs -Rq update -Pd
error=$?
if [ "$error" != "0" ]; then
exit 1
fi
fi
env
echo "==> Starting make buildworld"
make buildworld $*
error=$?
if [ "$error" != "0" ]; then
exit $?
fi
echo "==> Cleaning up chroot"
rm -rf /var/chroot/
chflags -R noschg /var/chroot/
rm -rf /var/chroot/
mkdir /var/chroot/
echo "==> Starting make installworld"
if [ "$client" = "0" ]; then
make installworld DESTDIR=/var/chroot
error=$?
if [ "$error" != "0" ]; then
exit $?
fi
echo "==> Starting make distribute"
cd etc
make obj
make all
make distribute DISTRIBUTION=/var/chroot/
error=$?
if [ "$error" != "0" ]; then
exit $?
fi
else
echo "==> Not doing installworld of client source tree"
fi