[BACK]Return to release.sh CVS log [TXT][DIR] Up to [local] / openbsd / update_openbsd

Diff for /openbsd/update_openbsd/release.sh between version 1.29 and 1.30

version 1.29, 2009/04/25 01:14:12 version 1.30, 2009/12/03 17:28:37
Line 1 
Line 1 
 #!/bin/sh  #!/bin/sh
 # $RedRiver: release.sh,v 1.28 2008/11/05 17:14:40 andrew Exp $  # $RedRiver: release.sh,v 1.29 2009/04/25 00:14:12 andrew Exp $
 #  #
 # Copyright (c) 2002, 2008 Steven Roberts <sroberts@fenderq.com>  # Copyright (c) 2002, 2008 Steven Roberts <sroberts@fenderq.com>
 #  #
Line 38 
Line 38 
 # See http://www.openbsd.org/anoncvs.html for instructions on fetching the  # See http://www.openbsd.org/anoncvs.html for instructions on fetching the
 # sources for the first time.  # sources for the first time.
   
   empty_dir() {
   [ X"" == X"$1" ] && exit
   cd $1 || exit
   
   local _old=`${SUDO} mktemp -d .old.XXXXXXX`
   ${SUDO} mv -f * .* $_old 2>/dev/null
   ${SUDO} rm -rf $_old
   
   sync
   }
   
 update_sources() {  update_sources() {
 echo "---------- Update sources ----------"  echo "---------- Update sources ----------"
 local _d  local _d
 for _d in /usr/src "${XSRCDIR}" "${PORTSPATH}"; do  for _d in /usr/src "${XSRCDIR}" "${PORTSPATH}"; do
     if [ -d $_d ]; then      if [ -d $_d ]; then
         echo [$_d] opencvs update -r $TAG -PAd          echo [$_d] cvs update -r$TAG -Pd
         cd $_d && opencvs update -r $TAG -PAd          cd $_d &&  cvs update -r$TAG -Pd || exit 255
     fi      fi
 done  done
 }  }
   
 build_kernel() {  build_kernel() {
 echo "---------- Build and install a new kernel ----------"  echo "---------- Build and install a new kernel ----------"
   local _status=0
   unset DESTDIR RELEASEDIR
 cd /usr/src/sys/arch/$ARCH/conf  cd /usr/src/sys/arch/$ARCH/conf
 config $KERNEL  config $KERNEL
 cd ../compile/$KERNEL  cd ../compile/$KERNEL
 make clean depend && make  make clean depend && make
 make install  _status=$?
   if [ $_status == 0 ]; then
       make install
       _status=$?
   fi
   if [ $_status != 0 ]; then
       echo Kernel Build Failed
   fi
   exit $_status
 }  }
   
 build_system() {  build_system() {
 echo "---------- Build a new system ----------"  echo "---------- Build a new system ----------"
 rm -rf /usr/obj/*  local _status=0
   unset DESTDIR RELEASEDIR
   empty_dir /usr/obj &
 cd /usr/src && nice make obj  cd /usr/src && nice make obj
 cd /usr/src/etc && env DESTDIR=/ make distrib-dirs  _status=$?
 cd /usr/src && nice make build  if [ $_status == 0 ]; then
       cd /usr/src/etc && env DESTDIR=/ $SUDO make distrib-dirs
       _status=$?
   fi
   if [ $_status == 0 ]; then
       cd /usr/src && nice make SUDO="${SUDO}" build
   fi
   if [ $_status != 0 ]; then
       echo System Build Failed
   fi
 echo Update /etc, /var, and /dev/MAKEDEV, either by hand or using sysmerge\(8\).  echo Update /etc, /var, and /dev/MAKEDEV, either by hand or using sysmerge\(8\).
   exit $_status
 }  }
   
 make_system_release() {  make_system_release() {
 echo "---------- Make and validate the system release ----------"  echo "---------- Make and validate the system release ----------"
 cd /usr/src/distrib/crunch && make obj depend && make all install  local _status=0
 export DESTDIR=$DEST; export RELEASEDIR=$RELEASE  export DESTDIR=$DEST; export RELEASEDIR=$RELEASE
 if [ X"$DESTDIR" == X"" ]; then  if [ X"$DESTDIR" == X"" ]; then
         echo PLEASE SET \$DEST! >2&          echo PLEASE SET \$DEST! >2&
         exit          exit
 fi  fi
 rm -rf $DESTDIR/* $DESTDIR/.*  
 mkdir -p $DESTDIR $RELEASEDIR  mkdir -p $DESTDIR $RELEASEDIR
 cd /usr/src/etc && nice make release  empty_dir $DESTDIR &
 cd /usr/src/distrib/sets && sh checkflist  cd /usr/src/etc && ${SUDO} nice make release
   _status=$?
   if [ $_status == 0 ]; then
       cd /usr/src/distrib/sets && ${SUDO} sh checkflist
       _status=$?
   fi
 unset DESTDIR RELEASEDIR  unset DESTDIR RELEASEDIR
   if [ $_status != 0 ]; then
       echo System Release Failed
   fi
   exit $_status
 }  }
   
 build_xenocara() {  build_xenocara() {
 echo "---------- Build and install xenocara ----------"  echo "---------- Build and install xenocara ----------"
   local _status=0
   unset DESTDIR RELEASEDIR
   empty_dir /usr/xobj &
 cd $XSRCDIR  cd $XSRCDIR
 make bootstrap  make bootstrap
 make obj  _status=$?
 make build  if [ $_status == 0 ]; then
       make obj
       _status=$?
   fi
   if [ $_status == 0 ]; then
       make build
       _status=$?
   fi
   if [ $_status != 0 ]; then
       echo Xenocara Build Failed
   fi
   exit $_status
 }  }
   
 make_xenocara_release() {  make_xenocara_release() {
 echo "---------- Make and validate the xenocara release ----------"  echo "---------- Make and validate the xenocara release ----------"
 export DESTDIR=$DEST RELEASEDIR=$RELEASE  local _status=0
   export DESTDIR=$DEST;export RELEASEDIR=$RELEASE
 if [ X"$DESTDIR" == X"" ]; then  if [ X"$DESTDIR" == X"" ]; then
         echo PLEASE SET \$DEST! >2&          echo PLEASE SET \$DEST! >2&
         exit          exit
 fi  fi
 rm -rf $DESTDIR/* $DESTDIR/.*  
 mkdir -p $DESTDIR $RELEASEDIR  mkdir -p $DESTDIR $RELEASEDIR
   empty_dir $DESTDIR &
 cd $XSRCDIR  cd $XSRCDIR
 nice make release  nice make release
   _status=$?
 unset DESTDIR RELEASEDIR  unset DESTDIR RELEASEDIR
   if [ $_status != 0 ]; then
       echo Xenocara Release Failed
   fi
   exit $_status
 }  }
   
 usage() {  usage() {
Line 119 
Line 180 
 echo  echo
 }  }
   
 if [ `whoami` != "root" ]; then  if [ X"" == X"${SUDO}" -a `whoami` != "root" ]; then
 echo "You must be root to build a release."  echo "You must be root or set SUDO to build a release."
 exit 1  exit 1
 fi  fi
   
Line 144 
Line 205 
 do  do
 case $i in  case $i in
 update)  update)
 update_sources  update_sources || exit 10
 ;;  ;;
 kernel)  kernel)
 build_kernel  build_kernel || exit 20
 ;;  ;;
 system)  system)
 build_system  build_system || exit 30
 ;;  ;;
 system-release)  system-release)
 make_system_release  make_system_release || exit 35
 ;;  ;;
 xenocara)  xenocara)
 build_xenocara  build_xenocara || exit 40
 ;;  ;;
 xenocara-release)  xenocara-release)
 make_xenocara_release  make_xenocara_release || exit 45
 ;;  ;;
 full-release)  full-release)
 build_xenocara  build_xenocara || exit 51
 make_xenocara_release  make_xenocara_release || exit 52
 build_system  build_system || exit 53
 make_system_release  make_system_release || exit 54
 ;;  ;;
 *)  *)
 echo "---------- Abort! Abort! ----------"  echo "---------- Abort! Abort! ----------"

Legend:
Removed from v.1.29  
changed lines
  Added in v.1.30

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>