1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-28 01:06:17 +00:00

Generalize the packge building scripts to be able to be run on more than

one 'head' node, rather than just pointyhat itself.

Constants are factored out into installation-specific files known as
portbuild/conf/server.conf and portbuild/conf/client.conf.  There is
only one server.conf file.  Individual <arch> directories may have
their own client.conf files, or may symlink to ../conf/client.conf.

Note the very special handling of cvs tag.

Feature safe:	yes
This commit is contained in:
Mark Linimon 2010-06-25 23:24:23 +00:00
parent 8784a39301
commit 338c392806
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=256990

View File

@ -5,6 +5,7 @@
# builds
pb=/var/portbuild
. ${pb}/conf/server.conf
if [ $# -lt 3 ]; then
echo "usage: makeworld arch branch buildid [args]"
@ -18,6 +19,7 @@ shift 3
builddir=${pb}/${arch}/${branch}/builds/${buildid}
. ${pb}/conf/server.conf
. ${pb}/${arch}/portbuild.conf
# NB: we can't use buildenv because it sets ARCH and MACHINE_ARCH that
# confuses cross-builds
@ -26,25 +28,6 @@ export TARGET_ARCH=${arch}
# Workaround needed for zfs - 20090321 erwin
export NO_FSCHG=1
case "$branch" in
6*)
export SRCBRANCH="-r RELENG_6_4"
;;
7*)
export SRCBRANCH="-r RELENG_7_1"
;;
8*)
export SRCBRANCH="-r RELENG_8_0"
;;
9*)
export SRCBRANCH=
;;
*)
echo "Invalid branch ${branch}"
exit 1
;;
esac
client=0
nocvs=0
@ -64,6 +47,7 @@ while [ $# -gt 0 ]; do
shift
done
# XXX MCL I don't know what this is supposed to do.
if [ "$client" = "1" ]; then
SRCBASE=${pb}/${arch}/src-client
shift 1
@ -75,14 +59,15 @@ cd ${SRCBASE}
if [ "$nocvs" = "0" ]; then
echo "==> Updating source tree"
cvs -Rq update -PdA ${SRCBRANCH} || exit $?
eval tag=\$SRC_BRANCH_${branch}_TAG
cvs -Rq update -PdA -r ${tag} || exit $?
fi
echo "==> Starting make buildworld"
make buildworld ${args} || exit $?
echo "==> Cleaning up destdir"
destdir=${worlddir}/${arch}/${branch}
destdir=${WORLDDIR}/${arch}/${branch}
rm -rf ${destdir}/
chflags -R noschg ${destdir}/
rm -rf ${destdir}/