=================================================================== RCS file: /cvs/openbsd/update_openbsd/release.sh,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- openbsd/update_openbsd/release.sh 2008/04/16 21:54:28 1.18 +++ openbsd/update_openbsd/release.sh 2008/05/22 18:39:20 1.19 @@ -1,7 +1,7 @@ #!/bin/sh -# $RedRiver: release.sh,v 1.17 2008/04/16 20:49:54 andrew Exp $ +# $RedRiver: release.sh,v 1.18 2008/04/16 20:54:28 andrew Exp $ # -# Copyright (c) 2002 - 2007 Steven Roberts +# Copyright (c) 2002, 2008 Steven Roberts # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above @@ -16,22 +16,14 @@ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # -#TAG="OPENBSD_4_2" +TAG=${TAG:=`uname -sr | tr '[:lower:] .' '[:upper:]_'`} KERNEL="GENERIC" -ARCH="i386" +ARCH=`machine` DEST="/home/destdir" RELEASE="/home/releasedir" XSRCDIR="/usr/src/xenocara" PORTSPATH="/usr/ports" -DEST="/usr/dest" -RELEASE="/usr/release" -TAG=${TAG:=`uname -sr | tr '[:lower:] .' '[:upper:]_'`} -ARCH=`machine` -#SOURCES="src ports XF4" -#SOURCES="src ports" -SOURCES="/usr/src $XSRCDIR $PORTSPATH" - # Anonymous CVS - http://www.openbsd.org/anoncvs.html #CVSROOT="anoncvs@anoncvs3.usa.openbsd.org:/cvs" #CVSROOT="anoncvs@anoncvs1.usa.openbsd.org:/cvs" @@ -47,13 +39,13 @@ update_sources() { echo "---------- Update sources ----------" -for d in $SOURCES; do - _cvstag=-r$TAG - if [ X"$TAG" == X"HEAD" ]; then - _cvstag="" - fi - echo "cd $d && cvs -q -z6 update $_cvstag -Pd" - cd $d && cvs -q -z6 update $_cvstag -Pd +for d in /usr/src ${XSRCDIR} ${PORTSPATH}; do + _cvstag=-r$TAG + if [ X"$TAG" == X"HEAD" ]; then + _cvstag="" + fi + echo "cd $d && cvs update $_cvstag -Pd" + cd $d && cvs update $_cvstag -Pd done } @@ -63,14 +55,14 @@ config $KERNEL cd ../compile/$KERNEL make clean depend && make -cp /bsd /bsd.old && cp bsd / +make install } build_system() { echo "---------- Build a new system ----------" rm -rf /usr/obj/* cd /usr/src && nice make obj -cd /usr/src/etc && export DESTDIR=/ && make distrib-dirs +cd /usr/src/etc && env DESTDIR=/ make distrib-dirs cd /usr/src && nice make build # Update /etc, /var, and /dev/MAKEDEV by hand. } @@ -79,11 +71,7 @@ echo "---------- Make and validate the system release ----------" cd /usr/src/distrib/crunch && make obj depend && make all install export DESTDIR=$DEST; export RELEASEDIR=$RELEASE -if (-e $DESTDIR); then - mkdir $DESTDIR/old- - mv $DESTDIR/* $DESTDIR/old- 2>/dev/null - rm -rf $DESTDIR/old- & -fi +rm -rf $DESTDIR mkdir -p $DESTDIR $RELEASEDIR cd /usr/src/etc && nice make release cd /usr/src/distrib/sets && sh checkflist @@ -93,6 +81,7 @@ build_xenocara() { echo "---------- Build and install xenocara ----------" rm -rf /usr/xobj/* +mkdir -p /usr/xobj cd $XSRCDIR make bootstrap make obj @@ -102,11 +91,7 @@ make_xenocara_release() { echo "---------- Make and validate the xenocara release ----------" export DESTDIR=$DEST RELEASEDIR=$RELEASE -if (-e $DESTDIR); then - mkdir $DESTDIR/old- - mv $DESTDIR/* $DESTDIR/old- 2>/dev/null - rm -rf $DESTDIR/old- & -fi +rm -rf $DESTDIR mkdir -p $DESTDIR $RELEASEDIR cd $XSRCDIR nice make release @@ -124,13 +109,12 @@ echo " system-release - Make and validate the system release" echo " xenocara - Build and install xenocara" echo " xenocara-release - Make and validate the xenocara release" +echo " full-release - Do system, xenocara, system-release, xenocara-release" echo } -if [ $# = 0 ]; then usage; exit 1; fi - if [ `whoami` != "root" ]; then -echo "You must be root to create a release." +echo "You must be root to build a release." exit 1 fi @@ -144,6 +128,8 @@ echo " Dest: $DEST" echo "Release: $RELEASE" echo + +if [ $# = 0 ]; then usage; exit 1; fi for i in $* do