Print this page
4526 nightly contains a great deal of effectively dead code

@@ -44,12 +44,11 @@
 #       Where flag is:  y - enable lint noise diff output
 #                       n - disable lint noise diff output
 #
 #       For example: LINTDIRS="$SRC/uts n $SRC/stand y $SRC/psm y"
 #
-# OPTHOME and TEAMWARE may be set in the environment to override /opt
-# and /opt/teamware defaults.
+# OPTHOME  may be set in the environment to override /opt
 #
 
 #
 # The CDPATH variable causes ksh's `cd' builtin to emit messages to stdout
 # under certain circumstances, which can really screw things up; unset it.

@@ -95,14 +94,10 @@
 
         if [ "$F_FLAG" = "n" ]; then
                 set_non_debug_build_flags
                 CODESIGN_USER="$crypto_signer" \
                     build "non-DEBUG" "$suffix-nd" "-nd" "$MULTI_PROTO"
-                if [ "$build_ok" = "y" -a "$X_FLAG" = "y" -a \
-                    "$p_FLAG" = "y" ]; then
-                        copy_ihv_pkgs non-DEBUG -nd
-                fi
         else
                 echo "\n==== No non-DEBUG $open_only build ====\n" >> "$LOGFILE"
         fi
 
         # non-DEBUG build ends

@@ -111,14 +106,10 @@
 
         if [ "$D_FLAG" = "y" ]; then
                 set_debug_build_flags
                 CODESIGN_USER="$crypto_signer" \
                     build "DEBUG" "$suffix" "" "$MULTI_PROTO"
-                if [ "$build_ok" = "y" -a "$X_FLAG" = "y" -a \
-                    "$p_FLAG" = "y" ]; then
-                        copy_ihv_pkgs DEBUG ""
-                fi
         else
                 echo "\n==== No DEBUG $open_only build ====\n" >> "$LOGFILE"
         fi
 
         # DEBUG build ends

@@ -154,84 +145,10 @@
                         exit 1
                 fi
         fi
 }
 
-#
-# usage: filelist DESTDIR PATTERN
-#
-function filelist {
-        DEST=$1
-        PATTERN=$2
-        cd ${DEST}
-}
-
-# function to save off binaries after a full build for later
-# restoration
-function save_binaries {
-        # save off list of binaries
-        echo "\n==== Saving binaries from build at `date` ====\n" | \
-            tee -a $mail_msg_file >> $LOGFILE
-        rm -f ${BINARCHIVE}
-        cd ${CODEMGR_WS}
-        filelist ${CODEMGR_WS} '^preserve:' >> $LOGFILE
-        filelist ${CODEMGR_WS} '^preserve:' | \
-            cpio -ocB 2>/dev/null | compress \
-            > ${BINARCHIVE}
-}
-
-# delete files
-# usage: hybridize_files DESTDIR MAKE_TARGET
-function hybridize_files {
-        DEST=$1
-        MAKETARG=$2
-
-        echo "\n==== Hybridizing files at `date` ====\n" | \
-            tee -a $mail_msg_file >> $LOGFILE
-        for i in `filelist ${DEST} '^delete:'`
-        do
-                echo "removing ${i}." | tee -a $mail_msg_file >> $LOGFILE
-                rm -rf "${i}"
-        done
-        for i in `filelist ${DEST} '^hybridize:' `
-        do
-                echo "hybridizing ${i}." | tee -a $mail_msg_file >> $LOGFILE
-                rm -f ${i}+
-                sed -e "/^# HYBRID DELETE START/,/^# HYBRID DELETE END/d" \
-                    < ${i} > ${i}+
-                mv ${i}+ ${i}
-        done
-}
-
-# restore binaries into the proper source tree.
-# usage: restore_binaries DESTDIR MAKE_TARGET
-function restore_binaries {
-        DEST=$1
-        MAKETARG=$2
-
-        echo "\n==== Restoring binaries to ${MAKETARG} at `date` ====\n" | \
-            tee -a $mail_msg_file >> $LOGFILE
-        cd ${DEST}
-        zcat ${BINARCHIVE} | \
-            cpio -idmucvB 2>/dev/null | tee -a $mail_msg_file >> ${LOGFILE}
-}
-
-# rename files we save binaries of
-# usage: rename_files DESTDIR MAKE_TARGET
-function rename_files {
-        DEST=$1
-        MAKETARG=$2
-        echo "\n==== Renaming source files in ${MAKETARG} at `date` ====\n" | \
-            tee -a $mail_msg_file >> $LOGFILE
-        for i in `filelist ${DEST} '^rename:'`
-        do
-                echo ${i} | tee -a $mail_msg_file >> ${LOGFILE}
-                rm -f ${i}.export
-                mv ${i} ${i}.export
-        done
-}
-
 # Return library search directive as function of given root.
 function myldlibs {
         echo "-L$1/lib -L$1/usr/lib"
 }
 

@@ -275,16 +192,10 @@
         rm -f $SRC/${INSTALLOG}.out
         cd $SRC
         /bin/time $MAKE -e install 2>&1 | \
             tee -a $SRC/${INSTALLOG}.out >> $LOGFILE
 
-        if [[ "$SCM_TYPE" = teamware ]]; then
-                echo "\n==== SCCS Noise ($LABEL) ====\n" >> $mail_msg_file
-                egrep 'sccs(check:| *get)' $SRC/${INSTALLOG}.out >> \
-                        $mail_msg_file
-        fi
-
         echo "\n==== Build errors ($LABEL) ====\n" >> $mail_msg_file
         egrep ":" $SRC/${INSTALLOG}.out |
                 egrep -e "(^${MAKE}:|[  ]error[:        \n])" | \
                 egrep -v "Ignoring unknown host" | \
                 egrep -v "cc .* -o error " | \

@@ -298,28 +209,26 @@
         if [ "$?" = "0" ]; then
                 build_ok=n
                 this_build_ok=n
         fi
 
-        if [ "$W_FLAG" = "n" ]; then
                 echo "\n==== Build warnings ($LABEL) ====\n" >>$mail_msg_file
                 egrep -i warning: $SRC/${INSTALLOG}.out \
                         | egrep -v '^tic:' \
                         | egrep -v "symbol (\`|')timezone' has differing types:" \
                         | egrep -v "parameter <PSTAMP> set to" \
                         | egrep -v "Ignoring unknown host" \
                         | egrep -v "redefining segment flags attribute for" \
                         >> $mail_msg_file
-        fi
 
         echo "\n==== Ended OS-Net source build at `date` ($LABEL) ====\n" \
                 >> $LOGFILE
 
         echo "\n==== Elapsed build time ($LABEL) ====\n" >>$mail_msg_file
         tail -3  $SRC/${INSTALLOG}.out >>$mail_msg_file
 
-        if [ "$i_FLAG" = "n" -a "$W_FLAG" = "n" ]; then
+        if [ "$i_FLAG" = "n" ]; then
                 rm -f $SRC/${NOISE}.ref
                 if [ -f $SRC/${NOISE}.out ]; then
                         mv $SRC/${NOISE}.out $SRC/${NOISE}.ref
                 fi
                 grep : $SRC/${INSTALLOG}.out \

@@ -404,45 +313,34 @@
 
         #
         #       Building Packages
         #
         if [ "$p_FLAG" = "y" -a "$this_build_ok" = "y" ]; then
-                if [ -d $SRC/pkg -o -d $SRC/pkgdefs ]; then
+                if [ -d $SRC/pkg ]; then
                         echo "\n==== Creating $LABEL packages at `date` ====\n" \
                                 >> $LOGFILE
                         echo "Clearing out $PKGARCHIVE ..." >> $LOGFILE
                         rm -rf $PKGARCHIVE >> "$LOGFILE" 2>&1
                         mkdir -p $PKGARCHIVE >> "$LOGFILE" 2>&1
 
-                        for d in pkg pkgdefs; do
-                                if [ ! -f "$SRC/$d/Makefile" ]; then
-                                        continue
-                                fi
-                                rm -f $SRC/$d/${INSTALLOG}.out
-                                cd $SRC/$d
+                        rm -f $SRC/pkg/${INSTALLOG}.out
+                        cd $SRC/pkg
                                 /bin/time $MAKE -e install 2>&1 | \
-                                        tee -a $SRC/$d/${INSTALLOG}.out >> $LOGFILE
-                        done
+                            tee -a $SRC/pkg/${INSTALLOG}.out >> $LOGFILE
 
                         echo "\n==== package build errors ($LABEL) ====\n" \
                                 >> $mail_msg_file
 
-                        for d in pkg pkgdefs; do
-                                if [ ! -f "$SRC/$d/Makefile" ]; then
-                                        continue
-                                fi
-
-                                egrep "${MAKE}|ERROR|WARNING" $SRC/$d/${INSTALLOG}.out | \
+                        egrep "${MAKE}|ERROR|WARNING" $SRC/pkg/${INSTALLOG}.out | \
                                         grep ':' | \
                                         grep -v PSTAMP | \
                                         egrep -v "Ignoring unknown host" \
                                         >> $mail_msg_file
-                        done
                 else
                         #
                         # Handle it gracefully if -p was set but there are
-                        # neither pkg nor pkgdefs directories.
+                        # neither pkg directories.
                         #
                         echo "\n==== No $LABEL packages to build ====\n" \
                                 >> $LOGFILE
                 fi
         else

@@ -534,79 +432,10 @@
                 diff ${LINTNOISE}.ref ${LINTNOISE}.out \
                         >> $mail_msg_file
         fi
 }
 
-# Install proto area from IHV build
-
-function copy_ihv_proto {
-
-        echo "\n==== Installing IHV proto area ====\n" \
-                >> $LOGFILE
-        if [ -d "$IA32_IHV_ROOT" ]; then
-                if [ ! -d "$ROOT" ]; then
-                        echo "mkdir -p $ROOT" >> $LOGFILE
-                        mkdir -p $ROOT
-                fi
-                echo "copying $IA32_IHV_ROOT to $ROOT\n" >> $LOGFILE
-                cd $IA32_IHV_ROOT
-                tar cf - . | (cd $ROOT; umask 0; tar xpf - ) 2>&1 >> $LOGFILE
-        else
-                echo "$IA32_IHV_ROOT: not found" >> $LOGFILE
-        fi
-
-        if [ "$MULTI_PROTO" = yes ]; then
-                if [ ! -d "$ROOT-nd" ]; then
-                        echo "mkdir -p $ROOT-nd" >> $LOGFILE
-                        mkdir -p $ROOT-nd
-                fi
-                # If there's a non-DEBUG version of the IHV proto area,
-                # copy it, but copy something if there's not.
-                if [ -d "$IA32_IHV_ROOT-nd" ]; then
-                        echo "copying $IA32_IHV_ROOT-nd to $ROOT-nd\n" >> $LOGFILE
-                        cd $IA32_IHV_ROOT-nd
-                elif [ -d "$IA32_IHV_ROOT" ]; then
-                        echo "copying $IA32_IHV_ROOT to $ROOT-nd\n" >> $LOGFILE
-                        cd $IA32_IHV_ROOT
-                else
-                        echo "$IA32_IHV_ROOT{-nd,}: not found" >> $LOGFILE
-                        return
-                fi
-                tar cf - . | (cd $ROOT-nd; umask 0; tar xpf - ) 2>&1 >> $LOGFILE
-        fi
-}
-
-# Install IHV packages in PKGARCHIVE
-# usage: copy_ihv_pkgs LABEL SUFFIX
-function copy_ihv_pkgs {
-        LABEL=$1
-        SUFFIX=$2
-        # always use non-DEBUG IHV packages
-        IA32_IHV_PKGS=${IA32_IHV_PKGS_ORIG}-nd
-        PKGARCHIVE=${PKGARCHIVE_ORIG}${SUFFIX}
-
-        echo "\n==== Installing IHV packages from $IA32_IHV_PKGS ($LABEL) ====\n" \
-                >> $LOGFILE
-        if [ -d "$IA32_IHV_PKGS" ]; then
-                cd $IA32_IHV_PKGS
-                tar cf - * | \
-                   (cd $PKGARCHIVE; umask 0; tar xpf - ) 2>&1 >> $LOGFILE
-        else
-                echo "$IA32_IHV_PKGS: not found" >> $LOGFILE
-        fi
-
-        echo "\n==== Installing IHV packages from $IA32_IHV_BINARY_PKGS ($LABEL) ====\n" \
-                >> $LOGFILE
-        if [ -d "$IA32_IHV_BINARY_PKGS" ]; then
-                cd $IA32_IHV_BINARY_PKGS
-                tar cf - * | \
-                    (cd $PKGARCHIVE; umask 0; tar xpf - ) 2>&1 >> $LOGFILE
-        else
-                echo "$IA32_IHV_BINARY_PKGS: not found" >> $LOGFILE
-        fi
-}
-
 #
 # Build and install the onbld tools.
 #
 # usage: build_tools DESTROOT
 #

@@ -717,24 +546,20 @@
                 eval su $STAFFER -c \'$arg\'
         fi
 }
 
 #
-# Verify that the closed tree is present if it needs to be.
+# Verify that the closed bins are present
 #
-function check_closed_tree {
+function check_closed_bins {
         if [[ ! -d "$ON_CLOSED_BINS" ]]; then
                 echo "ON_CLOSED_BINS must point to the closed binaries tree."
                 build_ok=n
                 exit 1
         fi
 }
 
-function obsolete_build {
-        echo "WARNING: Obsolete $1 build requested; request will be ignored"
-}
-
 #
 # wrapper over wsdiff.
 # usage: do_wsdiff LABEL OLDPROTO NEWPROTO
 #
 function do_wsdiff {

@@ -775,14 +600,10 @@
 
 if [ "$OPTHOME" = "" ]; then
         OPTHOME=/opt
         export OPTHOME
 fi
-if [ "$TEAMWARE" = "" ]; then
-        TEAMWARE=$OPTHOME/teamware
-        export TEAMWARE
-fi
 
 USAGE='Usage: nightly [-in] [+t] [-V VERS ] <env_file>
 
 Where:
         -i      Fast incremental options (no clobber, lint, check)

@@ -807,26 +628,22 @@
         -M      do not run pmodes (safe file permission checker)
         -N      do not run protocmp
         -R      default group of options for building a release (-mp)
         -U      update proto area in the parent
         -V VERS set the build version string to VERS
-        -X      copy x86 IHV proto area
         -f      find unreferenced files
         -i      do an incremental build (no "make clobber")
         -l      do "make lint" in $LINTDIRS (default: $SRC y)
         -m      send mail to $MAILTO at end of build
         -n      do not do a bringover
-        -o      build using root privileges to set OWNER/GROUP (old style)
         -p      create packages
         -r      check ELF runtime attributes in the proto area
         -t      build and use the tools in $SRC/tools (default setting)
         +t      Use the build tools in $ONBLD_TOOLS/bin
         -u      update proto_list_$MACH and friends in the parent workspace;
                 when used with -f, also build an unrefmaster.out in the parent
         -w      report on differences between previous and current proto areas
-        -z      compress cpio archives with gzip
-        -W      Do not report warnings (freeware gate ONLY)
 '
 #
 #       A log file will be generated under the name $LOGFILE
 #       for partially completed build and log.`date '+%F'`
 #       in the same directory for fully completed builds.

@@ -842,24 +659,17 @@
 l_FLAG=n
 M_FLAG=n
 m_FLAG=n
 N_FLAG=n
 n_FLAG=n
-o_FLAG=n
-P_FLAG=n
 p_FLAG=n
 r_FLAG=n
-T_FLAG=n
 t_FLAG=y
 U_FLAG=n
 u_FLAG=n
 V_FLAG=n
-W_FLAG=n
 w_FLAG=n
-X_FLAG=n
-#
-XMOD_OPT=
 #
 build_ok=y
 
 #
 # examine arguments

@@ -1008,32 +818,25 @@
 if [ "$BRINGOVER_WS" = "" ]; then
         BRINGOVER_WS=$CLONE_WS
 fi
 
 #
-# If CLOSED_BRINGOVER_WS was not specified, let it default to CLOSED_CLONE_WS
-#
-if [ "$CLOSED_BRINGOVER_WS" = "" ]; then
-        CLOSED_BRINGOVER_WS=$CLOSED_CLONE_WS
-fi
-
-#
 # If BRINGOVER_FILES was not specified, default to usr
 #
 if [ "$BRINGOVER_FILES" = "" ]; then
         BRINGOVER_FILES="usr"
 fi
 
-check_closed_tree
+check_closed_bins
 
 #
 # Note: changes to the option letters here should also be applied to the
 #       bldenv script.  `d' is listed for backward compatibility.
 #
 NIGHTLY_OPTIONS=-${NIGHTLY_OPTIONS#-}
 OPTIND=1
-while getopts +ABCDdFfGIilMmNnoPpRrTtUuWwXxz FLAG $NIGHTLY_OPTIONS
+while getopts +ABCDdFfGIilMmNnpRrtUuw FLAG $NIGHTLY_OPTIONS
 do
         case $FLAG in
           A )   A_FLAG=y
                 ;;
           B )   D_FLAG=y

@@ -1062,23 +865,17 @@
                 ;;
           N )   N_FLAG=y
                 ;;
           n )   n_FLAG=y
                 ;;
-          o )   o_FLAG=y
-                ;;
-          P )   P_FLAG=y
-                ;; # obsolete
           p )   p_FLAG=y
                 ;;
           R )   m_FLAG=y
                 p_FLAG=y
                 ;;
           r )   r_FLAG=y
                 ;;
-          T )   T_FLAG=y
-                ;; # obsolete
          +t )   t_FLAG=n
                 ;;
           U )   if [ -z "${PARENT_ROOT}" ]; then
                         echo "PARENT_ROOT must be set if the U flag is" \
                             "present in NIGHTLY_OPTIONS."

@@ -1090,35 +887,19 @@
                 fi
                 U_FLAG=y
                 ;;
           u )   u_FLAG=y
                 ;;
-          W )   W_FLAG=y
-                ;;
-
           w )   w_FLAG=y
                 ;;
-          X )   # now that we no longer need realmode builds, just
-                # copy IHV packages.  only meaningful on x86.
-                if [ "$MACH" = "i386" ]; then
-                        X_FLAG=y
-                fi
-                ;;
-          x )   XMOD_OPT="-x"
-                ;;
          \? )   echo "$USAGE"
                 exit 1
                 ;;
         esac
 done
 
 if [ $ISUSER -ne 0 ]; then
-        if [ "$o_FLAG" = "y" ]; then
-                echo "Old-style build requires root permission."
-                exit 1
-        fi
-
         # Set default value for STAFFER, if needed.
         if [ -z "$STAFFER" -o "$STAFFER" = "nobody" ]; then
                 STAFFER=`/usr/xpg4/bin/id -un`
                 export STAFFER
         fi

@@ -1128,42 +909,32 @@
         MAILTO=$STAFFER
         export MAILTO
 fi
 
 PATH="$OPTHOME/onbld/bin:$OPTHOME/onbld/bin/${MACH}:/usr/ccs/bin"
-PATH="$PATH:$OPTHOME/SUNWspro/bin:$TEAMWARE/bin:/usr/bin:/usr/sbin:/usr/ucb"
+PATH="$PATH:$OPTHOME/SUNWspro/bin:/usr/bin:/usr/sbin:/usr/ucb"
 PATH="$PATH:/usr/openwin/bin:/usr/sfw/bin:/opt/sfw/bin:."
 export PATH
 
 # roots of source trees, both relative to $SRC and absolute.
 relsrcdirs="."
 abssrcdirs="$SRC"
 
-unset CH
-if [ "$o_FLAG" = "y" ]; then
-# root invoked old-style build -- make sure it works as it always has
-# by exporting 'CH'.  The current Makefile.master doesn't use this, but
-# the old ones still do.
-        PROTOCMPTERSE="protocmp.terse"
-        CH=
-        export CH
-else
-        PROTOCMPTERSE="protocmp.terse -gu"
-fi
+PROTOCMPTERSE="protocmp.terse -gu"
 POUND_SIGN="#"
 # have we set RELEASE_DATE in our env file?
 if [ -z "$RELEASE_DATE" ]; then
         RELEASE_DATE=$(LC_ALL=C date +"%B %Y")
 fi
 BUILD_DATE=$(LC_ALL=C date +%Y-%b-%d)
 BASEWSDIR=$(basename $CODEMGR_WS)
 DEV_CM="\"@(#)SunOS Internal Development: $LOGNAME $BUILD_DATE [$BASEWSDIR]\""
 
 # we export POUND_SIGN, RELEASE_DATE and DEV_CM to speed up the build process
-# by avoiding repeated shell invocations to evaluate Makefile.master definitions.
-# we export o_FLAG and X_FLAG for use by makebfu, and by usr/src/pkg/Makefile
-export o_FLAG X_FLAG POUND_SIGN RELEASE_DATE DEV_CM
+# by avoiding repeated shell invocations to evaluate Makefile.master
+# definitions.
+export POUND_SIGN RELEASE_DATE DEV_CM
 
 maketype="distributed"
 if [[ -z "$MAKE" ]]; then
         MAKE=dmake
 elif [[ ! -x "$MAKE" ]]; then

@@ -1194,13 +965,12 @@
         fi
         echo `whence $MAKE`" version is:"
         echo "  ${DMAKE_VERSION}"
         cat <<EOF
 
-This version may not be safe for use.  Either set TEAMWARE to a better
-path or (if you really want to use this version of dmake anyway), add
-the following to your environment to disable this check:
+This version may not be safe for use, if you really want to use this version
+anyway add the following to your environment to disable this check:
 
   CHECK_DMAKE=n
 EOF
         exit 1
 fi

@@ -1247,32 +1017,10 @@
 #
 if [ "$V_FLAG" = "y" ]; then
         VERSION=$V_ARG
 fi
 
-#
-# Check for IHV root for copying ihv proto area
-#
-if [ "$X_FLAG" = "y" ]; then
-        if [ "$IA32_IHV_ROOT" = "" ]; then
-                echo "IA32_IHV_ROOT: must be set for copying ihv proto"
-                args_ok=n
-        fi
-        if [ ! -d "$IA32_IHV_ROOT" ]; then
-                echo "$IA32_IHV_ROOT: not found"
-                args_ok=n
-        fi
-        if [ "$IA32_IHV_WS" = "" ]; then
-                echo "IA32_IHV_WS: must be set for copying ihv proto"
-                args_ok=n
-        fi
-        if [ ! -d "$IA32_IHV_WS" ]; then
-                echo "$IA32_IHV_WS: not found"
-                args_ok=n
-        fi
-fi
-
 TMPDIR="/tmp/nightly.tmpdir.$$"
 export TMPDIR
 rm -rf ${TMPDIR}
 mkdir -p $TMPDIR || exit 1
 chmod 777 $TMPDIR

@@ -1342,11 +1090,10 @@
 
 export ENVLDLIBS3 ENVCPPFLAGS1 ENVCPPFLAGS2 ENVCPPFLAGS3 ENVCPPFLAGS4 \
         ENVLDLIBS1 ENVLDLIBS2 PARENT_ROOT
 
 PKGARCHIVE_ORIG=$PKGARCHIVE
-IA32_IHV_PKGS_ORIG=$IA32_IHV_PKGS
 
 #
 # Juggle the logs and optionally send mail on completion.
 #
 

@@ -1575,18 +1322,10 @@
 echo "\n==== list of environment variables ====\n" >> $LOGFILE
 env >> $LOGFILE
 
 echo "\n==== Nightly argument issues ====\n" | tee -a $mail_msg_file >> $LOGFILE
 
-if [ "$P_FLAG" = "y" ]; then
-        obsolete_build GPROF | tee -a $mail_msg_file >> $LOGFILE
-fi
-
-if [ "$T_FLAG" = "y" ]; then
-        obsolete_build TRACE | tee -a $mail_msg_file >> $LOGFILE
-fi
-
 if [ "$N_FLAG" = "y" ]; then
         if [ "$p_FLAG" = "y" ]; then
                 cat <<EOF | tee -a $mail_msg_file >> $LOGFILE
 WARNING: the p option (create packages) is set, but so is the N option (do
          not run protocmp); this is dangerous; you should unset the N option

@@ -1691,32 +1430,24 @@
 
         CODEMGR_WS="$BRINGOVER_WS" "$WHICH_SCM" 2>/dev/null \
             | read scm_type junk
         if [[ -z "$scm_type" || "$scm_type" == unknown ]]; then
                 # Probe BRINGOVER_WS to determine its type
-                if [[ $BRINGOVER_WS == svn*://* ]]; then
-                        scm_type="subversion"
-                elif [[ $BRINGOVER_WS == file://* ]] &&
-                    egrep -s "This is a Subversion repository" \
-                    ${BRINGOVER_WS#file://}/README.txt 2> /dev/null; then
-                        scm_type="subversion"
-                elif [[ $BRINGOVER_WS == ssh://* ]]; then
+                if [[ $BRINGOVER_WS == ssh://* ]]; then
                         scm_type="mercurial"
                 elif [[ $BRINGOVER_WS == http://* ]] && \
                     wget -q -O- --save-headers "$BRINGOVER_WS/?cmd=heads" | \
                     egrep -s "application/mercurial" 2> /dev/null; then
                         scm_type="mercurial"
-                elif svn info $BRINGOVER_WS > /dev/null 2>&1; then
-                        scm_type="subversion"
                 else
                         scm_type="none"
                 fi
         fi    
 
         # fold both unsupported and unrecognized results into "none"
         case "$scm_type" in
-        none|subversion|teamware|mercurial)
+        mercurial)
                 ;;
         *)      scm_type=none
                 ;;
         esac
 

@@ -1731,11 +1462,11 @@
         if [[ -d $CODEMGR_WS ]]; then
                 $WHICH_SCM | read scm_type junk || exit 1
         fi
 
         case "$scm_type" in
-        none|subversion|git|teamware|mercurial)
+        none|git|mercurial)
                 ;;
         *)      scm_type=none
                 ;;
         esac
 

@@ -1799,32 +1530,10 @@
             grep -v 'tools/ctf/dwarf/.*/libdwarf' | xargs rm -f
 else
         echo "\n==== No clobber at `date` ====\n" >> $LOGFILE
 fi
 
-type bringover_teamware > /dev/null 2>&1 || function bringover_teamware {
-        # sleep on the parent workspace's lock
-        while egrep -s write $BRINGOVER_WS/Codemgr_wsdata/locks
-        do
-                sleep 120
-        done
-
-        if [[ -z $BRINGOVER ]]; then
-                BRINGOVER=$TEAMWARE/bin/bringover
-        fi
-
-        staffer $BRINGOVER -c "nightly update" -p $BRINGOVER_WS \
-            -w $CODEMGR_WS $BRINGOVER_FILES < /dev/null 2>&1 ||
-                touch $TMPDIR/bringover_failed
-
-        staffer bringovercheck $CODEMGR_WS >$TMPDIR/bringovercheck.out 2>&1
-        if [ -s $TMPDIR/bringovercheck.out ]; then
-                echo "\n==== POST-BRINGOVER CLEANUP NOISE ====\n"
-                cat $TMPDIR/bringovercheck.out
-        fi
-}
-
 type bringover_mercurial > /dev/null 2>&1 || function bringover_mercurial {
         typeset -x PATH=$PATH
 
         # If the repository doesn't exist yet, then we want to populate it.
         if [[ ! -d $CODEMGR_WS/.hg ]]; then

@@ -1939,53 +1648,10 @@
                 return
         fi
 
         printf "\nadded the following changesets to open repository:\n"
         cat $TMPDIR/incoming_open.out
-
-        #
-        # The closed repository could have been newly created, even though
-        # the open one previously existed...
-        #
-        if [ -f $TMPDIR/new_closed ]; then
-                return
-        fi
-
-        if [ -f $TMPDIR/incoming_closed.out ]; then
-                printf "\nadded the following changesets to closed repository:\n"
-                cat $TMPDIR/incoming_closed.out
-        fi
-}
-
-type bringover_subversion > /dev/null 2>&1 || function bringover_subversion {
-        typeset -x PATH=$PATH
-
-        if [[ ! -d $CODEMGR_WS/.svn ]]; then
-                staffer svn checkout $BRINGOVER_WS $CODEMGR_WS ||
-                        touch $TMPDIR/bringover_failed
-        else
-                typeset root
-                root=$(staffer svn info $CODEMGR_WS |
-                        nawk '/^Repository Root:/ {print $NF}')
-                if [[ $root != $BRINGOVER_WS ]]; then
-                        # We fail here because there's no way to update
-                        # from a named repo.
-                        cat <<-EOF
-                        \$BRINGOVER_WS doesn't match repository root:
-                          \$BRINGOVER_WS:  $BRINGOVER_WS
-                          Repository root: $root
-                        EOF
-                        touch $TMPDIR/bringover_failed
-                else
-                        # If a conflict happens, svn still exits 0.
-                        staffer svn update $CODEMGR_WS | tee $TMPDIR/pull.out ||
-                                touch $TMPDIR/bringover_failed
-                        if grep "^C" $TMPDIR/pull.out > /dev/null 2>&1; then
-                                touch $TMPDIR/bringover_failed
-                        fi
-                fi
-        fi
 }
 
 type bringover_none > /dev/null 2>&1 || function bringover_none {
         echo "Couldn't figure out what kind of SCM to use for $BRINGOVER_WS."
         touch $TMPDIR/bringover_failed

@@ -2026,11 +1692,11 @@
         #
         [[ $SCM_TYPE = none ]] && SCM_TYPE=$PARENT_SCM_TYPE
 
         run_hook POST_BRINGOVER
 
-        check_closed_tree
+        check_closed_bins
 
 else
         echo "\n==== No bringover to $CODEMGR_WS ====\n" >> $LOGFILE
 fi
 

@@ -2115,17 +1781,10 @@
         if [[ $? != 0  && "$t_FLAG" = y ]]; then
                 use_tools $TOOLS_PROTO
         fi
 fi
 
-#
-# copy ihv proto area in addition to the build itself
-#
-if [ "$X_FLAG" = "y" ]; then
-        copy_ihv_proto
-fi
-
 # timestamp the start of the normal build; the findunref tool uses it.
 touch $SRC/.build.tstamp
 
 normal_build
 

@@ -2153,17 +1812,10 @@
 
         if [ "$N_FLAG" != "y" ]; then
 
                 E1=
                 f1=
-                if [ -d "$SRC/pkgdefs" ]; then
-                        f1="$SRC/pkgdefs/etc/exception_list_$MACH"
-                        if [ "$X_FLAG" = "y" ]; then
-                                f1="$f1 $IA32_IHV_WS/usr/src/pkgdefs/etc/exception_list_$MACH"
-                        fi
-                fi
-
                 for f in $f1; do
                         if [ -f "$f" ]; then
                                 E1="$E1 -e $f"
                         fi
                 done

@@ -2177,72 +1829,10 @@
                 for f in $f2; do
                         if [ -f "$f" ]; then
                                 E2="$E2 -e $f"
                         fi
                 done
-
-                if [ -f "$REF_PROTO_LIST" ]; then
-                        #
-                        # For builds that copy the IHV proto area (-X), add the
-                        # IHV proto list to the reference list if the reference
-                        # was built without -X.
-                        #
-                        # For builds that don't copy the IHV proto area, add the
-                        # IHV proto list to the build's proto list if the
-                        # reference was built with -X.
-                        #
-                        # Use the presence of the first file entry of the cached
-                        # IHV proto list in the reference list to determine
-                        # whether it was built with -X or not.
-                        #
-                        IHV_REF_PROTO_LIST=$SRC/pkg/proto_list_ihv_$MACH
-                        grepfor=$(nawk '$1 == "f" { print $2; exit }' \
-                                $IHV_REF_PROTO_LIST 2> /dev/null)
-                        if [ $? = 0 -a -n "$grepfor" ]; then
-                                if [ "$X_FLAG" = "y" ]; then
-                                        grep -w "$grepfor" \
-                                                $REF_PROTO_LIST > /dev/null
-                                        if [ ! "$?" = "0" ]; then
-                                                REF_IHV_PROTO="-d $IHV_REF_PROTO_LIST"
-                                        fi
-                                else
-                                        grep -w "$grepfor" \
-                                                $REF_PROTO_LIST > /dev/null
-                                        if [ "$?" = "0" ]; then
-                                                IHV_PROTO_LIST="$IHV_REF_PROTO_LIST"
-                                        fi
-                                fi
-                        fi
-                fi
-        fi
-
-        if [ "$N_FLAG" != "y" -a -f $SRC/pkgdefs/Makefile ]; then
-                echo "\n==== Impact on SVr4 packages ====\n" >> $mail_msg_file
-                #
-                # Compare the build's proto list with current package
-                # definitions to audit the quality of package
-                # definitions and makefile install targets. Use the
-                # current exception list.
-                #
-                PKGDEFS_LIST=""
-                for d in $abssrcdirs; do
-                        if [ -d $d/pkgdefs ]; then
-                                PKGDEFS_LIST="$PKGDEFS_LIST -d $d/pkgdefs"
-                        fi
-                done
-                if [ "$X_FLAG" = "y" -a \
-                    -d $IA32_IHV_WS/usr/src/pkgdefs ]; then
-                        PKGDEFS_LIST="$PKGDEFS_LIST -d $IA32_IHV_WS/usr/src/pkgdefs"
-                fi
-                $PROTOCMPTERSE \
-                    "Files missing from the proto area:" \
-                    "Files missing from packages:" \
-                    "Inconsistencies between pkgdefs and proto area:" \
-                    ${E1} \
-                    ${PKGDEFS_LIST} \
-                    $ATLOG/proto_list_${MACH} \
-                    >> $mail_msg_file
         fi
 
         if [ "$N_FLAG" != "y" -a -d $SRC/pkg ]; then
                 echo "\n==== Validating manifests against proto area ====\n" \
                     >> $mail_msg_file

@@ -2262,13 +1852,11 @@
                         "Files in yesterday's proto area, but not today's:" \
                         "Files in today's proto area, but not yesterday's:" \
                         "Files that changed between yesterday and today:" \
                         ${ELIST} \
                         -d $REF_PROTO_LIST \
-                        $REF_IHV_PROTO \
                         $ATLOG/proto_list_${MACH} \
-                        $IHV_PROTO_LIST \
                         >> $mail_msg_file
         fi
 fi
 
 if [ "$u_FLAG" = "y"  -a "$build_ok" = "y" ]; then

@@ -2500,15 +2088,10 @@
         fi
 
         diff $SRC/unref-${MACH}.ref $SRC/unref-${MACH}.out >>$mail_msg_file
 fi
 
-#
-# Generate the OpenSolaris deliverables if requested.  Some of these
-# steps need to come after findunref and are commented below.
-#
-
 # Verify that the usual lists of files, such as exception lists,
 # contain only valid references to files.  If the build has failed,
 # then don't check the proto area.
 CHECK_PATHS=${CHECK_PATHS:-y}
 if [ "$CHECK_PATHS" = y -a "$N_FLAG" != y ]; then

@@ -2521,28 +2104,17 @@
 
 if [ "$M_FLAG" != "y" -a "$build_ok" = y ]; then
         echo "\n==== Impact on file permissions ====\n" \
                 >> $mail_msg_file
 
-        abspkgdefs=
         abspkg=
         for d in $abssrcdirs; do
-                if [ -d "$d/pkgdefs" ]; then
-                        abspkgdefs="$abspkgdefs $d"
-                fi
                 if [ -d "$d/pkg" ]; then
                         abspkg="$abspkg $d"
                 fi
         done
 
-        if [ -n "$abspkgdefs" ]; then
-                pmodes -qvdP \
-                    `find $abspkgdefs -name pkginfo.tmpl -print -o \
-                    -name .del\* -prune | sed -e 's:/pkginfo.tmpl$::' | \
-                    sort -u` >> $mail_msg_file
-        fi
-
         if [ -n "$abspkg" ]; then
                 for d in "$abspkg"; do
                         ( cd $d/pkg ; $MAKE -e pmodes ) >> $mail_msg_file
                 done
         fi