Author: imp
Date: Fri May  1 17:16:57 2020
New Revision: 360538
URL: https://svnweb.freebsd.org/changeset/base/360538

Log:
  When we have an invalid build option, don't rm -rf the current
  directory.
  
  Add a quick sanity check to objdir before using it.  It must start
  with /. If there was a make error getting it, report that and continue
  with the next target. If there was anything else, bail out.

Modified:
  head/tools/boot/universe.sh

Modified: head/tools/boot/universe.sh
==============================================================================
--- head/tools/boot/universe.sh Fri May  1 16:56:36 2020        (r360537)
+++ head/tools/boot/universe.sh Fri May  1 17:16:57 2020        (r360538)
@@ -19,6 +19,12 @@
 # Output is put into _.boot.$TARGET_ARCH.log in sys.boot.
 #
 
+die()
+{
+    echo $*
+    exit 1
+}
+
 dobuild()
 {
     local ta=$1
@@ -27,6 +33,12 @@ dobuild()
 
     echo -n "Building $ta ${opt} ... "
     objdir=$(make buildenv TARGET_ARCH=$ta BUILDENV_SHELL="make -V .OBJDIR" | 
tail -1)
+    case ${objdir} in
+       /*) ;;
+       make*) echo Error message from make: $objdir
+              continue ;;
+       *) die Crazy object dir: $objdir ;;
+    esac
     rm -rf ${objdir}
     if ! make buildenv TARGET_ARCH=$ta BUILDENV_SHELL="make clean cleandepend 
cleandir obj depend"  \
         > $lf 2>&1; then
@@ -116,4 +128,3 @@ for i in \
     ta=${i##*/}
     dobuild $ta _.boot.${ta}.debug.log "LOADER_DEBUG=yes"
 done
-
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to