Merge
authorerikj
Mon, 18 Feb 2013 10:46:22 +0100
changeset 15582 3da76885efc3
parent 15581 1dd771c6a1ee (current diff)
parent 15580 e42fd6a4ae92 (diff)
child 15588 e29ed094b804
Merge
--- a/.hgtags-top-repo	Fri Feb 15 10:40:46 2013 +0100
+++ b/.hgtags-top-repo	Mon Feb 18 10:46:22 2013 +0100
@@ -198,3 +198,4 @@
 b43aa5bd8ca5c8121336495382d35ecfa7a71536 jdk8-b74
 2a713921952cbd77a1e699626976cb6cdfe3e57e jdk8-b75
 278af9fc67e7eba2884936b49ec07345f423aabb jdk8-b76
+3933eebc659d58c597aa8cb4b3e58f2250ce3e1a jdk8-b77
--- a/common/bin/hgforest.sh	Fri Feb 15 10:40:46 2013 +0100
+++ b/common/bin/hgforest.sh	Mon Feb 18 10:46:22 2013 +0100
@@ -64,33 +64,33 @@
 mkdir -p ${tmp}
 
 safe_interrupt () {
-  if [ -d ${tmp} ]; then 
-    if [ "`ls ${tmp}`" != "" ]; then 
-      echo "Waiting for processes ( `cat ${tmp}/* | tr '\n' ' '`) to terminate nicely!"
+  if [ -d ${tmp} ]; then
+    if [ "`ls ${tmp}/*.pid`" != "" ]; then
+      echo "Waiting for processes ( `cat ${tmp}/*.pid | tr '\n' ' '`) to terminate nicely!"
       sleep 1
       # Pipe stderr to dev/null to silence kill, that complains when trying to kill
       # a subprocess that has already exited.
-      kill -TERM `cat ${tmp}/* | tr '\n' ' '` 2> /dev/null
-      wait 
-      echo Interrupt complete! 
-    fi 
+      kill -TERM `cat ${tmp}/*.pid | tr '\n' ' '` 2> /dev/null
+      wait
+      echo Interrupt complete!
+    fi
   fi
   rm -f -r ${tmp}
   exit 1
 }
 
 nice_exit () {
-  if [ -d ${tmp} ]; then 
-    if [ "`ls ${tmp}`" != "" ]; then 
-      wait 
-    fi 
+  if [ -d ${tmp} ]; then
+    if [ "`ls ${tmp}`" != "" ]; then
+      wait
+    fi
   fi
   rm -f -r ${tmp}
 }
 
 trap 'safe_interrupt' INT QUIT
 trap 'nice_exit' EXIT
- 
+
 # Only look in specific locations for possible forests (avoids long searches)
 pull_default=""
 repos=""
@@ -172,14 +172,26 @@
       if [ "${command}" = "clone" -o "${command}" = "fclone" ] ; then
         pull_newrepo="`echo ${pull_base}/${i} | sed -e 's@\([^:]/\)//*@\1@g'`"
         echo ${hg} clone ${pull_newrepo} ${i}
-        ${hg} clone ${pull_newrepo} ${i} &
+        path="`dirname ${i}`"
+        if [ "${path}" != "." ] ; then
+          times=0
+          while [ ! -d "${path}" ]   ## nested repo, ensure containing dir exists
+          do
+            times=`expr ${times} '+' 1`
+            if [ `expr ${times} '%' 10` -eq 0 ] ; then
+              echo ${path} still not created, waiting...
+            fi
+            sleep 5
+          done
+        fi
+        (${hg} clone ${pull_newrepo} ${i}; echo "$?" > ${tmp}/${repopidfile}.pid.rc )&
       else
         echo "cd ${i} && ${hg} $*"
-        cd ${i} && ${hg} "$@" &
-      fi 
+        cd ${i} && (${hg} "$@"; echo "$?" > ${tmp}/${repopidfile}.pid.rc )&
+      fi
       echo $! > ${tmp}/${repopidfile}.pid
     ) 2>&1 | sed -e "s@^@${reponame}:   @") &
-  
+
   if [ `expr ${n} '%' ${at_a_time}` -eq 0 ] ; then
     sleep 2
     echo Waiting 5 secs before spawning next background command.
@@ -189,6 +201,15 @@
 # Wait for all hg commands to complete
 wait
 
-# Terminate with exit 0 all the time (hard to know when to say "failed")
-exit 0
-
+# Terminate with exit 0 only if all subprocesses were successful
+ec=0
+if [ -d ${tmp} ]; then
+  for rc in ${tmp}/*.pid.rc ; do
+    exit_code=`cat ${rc} | tr -d ' \n\r'`
+    if [ "${exit_code}" != "0" ] ; then
+      echo "WARNING: ${rc} exited abnormally."
+      ec=1
+    fi
+  done
+fi
+exit ${ec}
--- a/common/makefiles/Main.gmk	Fri Feb 15 10:40:46 2013 +0100
+++ b/common/makefiles/Main.gmk	Mon Feb 18 10:46:22 2013 +0100
@@ -167,7 +167,7 @@
 
 test: start-make
 	@$(call TargetEnter)
-	@($(CD) $(SRC_ROOT)/test && $(BUILD_LOG_WRAPPER) $(MAKE) MAKEFLAGS= -j1 PRODUCT_HOME=$(OUTPUT_ROOT)/jdk JPRT_JAVA_HOME=$(OUTPUT_ROOT)/jdk ALT_OUTPUTDIR=$(OUTPUT_ROOT) $(TEST)) || true
+	@($(CD) $(SRC_ROOT)/test && $(BUILD_LOG_WRAPPER) $(MAKE) -j1 -k MAKEFLAGS= PRODUCT_HOME=$(OUTPUT_ROOT)/jdk JPRT_JAVA_HOME=$(OUTPUT_ROOT)/jdk ALT_OUTPUTDIR=$(OUTPUT_ROOT) $(TEST)) || true
 	@$(call TargetExit)
 
 # Stores the tips for each repository. This file is be used when constructing the jdk image and can be
--- a/common/makefiles/javadoc/CORE_PKGS.gmk	Fri Feb 15 10:40:46 2013 +0100
+++ b/common/makefiles/javadoc/CORE_PKGS.gmk	Mon Feb 18 10:46:22 2013 +0100
@@ -128,9 +128,9 @@
   java.text                                      \
   java.text.spi                                  \
   java.time                                      \
+  java.time.chrono                               \
+  java.time.format                               \
   java.time.temporal                             \
-  java.time.calendar                             \
-  java.time.format                               \
   java.time.zone                                 \
   java.util                                      \
   java.util.concurrent                           \
--- a/get_source.sh	Fri Feb 15 10:40:46 2013 +0100
+++ b/get_source.sh	Mon Feb 18 10:46:22 2013 +0100
@@ -26,7 +26,7 @@
 #
 
 # Get clones of all nested repositories
-sh ./common/bin/hgforest.sh clone "$@"
+sh ./common/bin/hgforest.sh clone "$@" || exit 1
 
 # Update all existing repositories to the latest sources
 sh ./common/bin/hgforest.sh pull -u
--- a/make/scripts/webrev.ksh	Fri Feb 15 10:40:46 2013 +0100
+++ b/make/scripts/webrev.ksh	Mon Feb 18 10:46:22 2013 +0100
@@ -19,7 +19,7 @@
 #
 # CDDL HEADER END
 #
-# Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
 # Use is subject to license terms.
 #
 # This script takes a file list and a workspace and builds a set of html files
@@ -27,7 +27,7 @@
 # Documentation is available via 'webrev -h'.
 #
 
-WEBREV_UPDATED=23.18-hg
+WEBREV_UPDATED=23.18-hg+jbs
 
 HTML='<?xml version="1.0"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
@@ -146,7 +146,7 @@
 #
 bug2url()
 {
-	sed -e 's|[0-9]\{5,\}|<a href=\"'$BUGURL'&\">&</a>|g'
+	sed -e 's|[0-9]\{5,\}|<a href=\"'$BUGURL$IDPREFIX'&\">&</a>|g'
 }
 
 #
@@ -230,8 +230,8 @@
 #   $ sdiff_to_html old/usr/src/tools/scripts/webrev.sh \
 #         new/usr/src/tools/scripts/webrev.sh \
 #         webrev.sh usr/src/tools/scripts \
-#         '<a href="http://monaco.sfbay.sun.com/detail.jsp?cr=1234567">
-#          1234567</a> my bugid' > <file>.html
+#         '<a href="https://jbs.oracle.com/bugs/browse/JDK-1234567">
+#          JDK-1234567</a> my bugid' > <file>.html
 #
 # framed_sdiff() is then called which creates $2.frames.html
 # in the webrev tree.
@@ -1160,7 +1160,7 @@
 	            print "$comm"
 	            return
 	        fi
-	  
+
 	        print "$comm" | html_quote | bug2url | sac2url
                 )
         fi
@@ -1418,7 +1418,7 @@
                   next;}
         END       {for (tree in trees)
                         { rev=revs[trees[tree]];
-                          if (rev > 0) 
+                          if (rev > 0)
                                 {printf("%s %d\n",trees[tree],rev-1)}
                         }}' | while read LINE
     do
@@ -1459,7 +1459,7 @@
 {
     TREE=$1
     HGCMD="hg -R $CWS/$TREE status $FSTAT_OPT"
-    
+
     $HGCMD -mdn 2>/dev/null | $FILTER | while read F
     do
         echo $TREE/$F
@@ -1543,7 +1543,7 @@
 			 if (n == 0)
 				{ printf("A %s/%s\n",tree,$2)}
 			 else
-				{ printf("A %s\n",$2)}; 
+				{ printf("A %s\n",$2)};
 			 next}
 	/^ /		{n=index($1,tree);
 			 if (n == 0)
@@ -1604,7 +1604,7 @@
 # We need at least one of default-push or default paths set in .hg/hgrc
 # If neither are set we don't know who to compare with.
 
-function flist_from_mercurial 
+function flist_from_mercurial
 {
 #	if [ "${PWS##ssh://}" != "$PWS" -o \
 #	     "${PWS##http://}" != "$PWS" -o \
@@ -1757,7 +1757,7 @@
 	elif [[ "$OS" == "Linux" ]]; then
 	    DEVTOOLS="/java/devtools/linux/bin"
 	fi
-	    
+
 	ppath=$PATH
 	ppath=$ppath:/usr/sfw/bin:/usr/bin:/usr/sbin
 	ppath=$ppath:/opt/teamware/bin:/opt/onbld/bin
@@ -1844,7 +1844,7 @@
 	ssh_host=`echo $CMD | sed -e 's/ssh:\/\/\([^/]*\)\/.*/\1/'`
 	ssh_dir=`echo $CMD | sed -e 's/ssh:\/\/[^/]*\/\(.*\)/\1/'`
     fi
-    
+
 }
 
 function build_old_new_mercurial
@@ -2096,7 +2096,7 @@
 		PARENT_REV=$OPTARG;;
 
 	v)	print "$0 version: $WEBREV_UPDATED";;
-		
+
 
 	?)	usage;;
 	esac
@@ -2338,7 +2338,7 @@
 	#
 	[[ -z $codemgr_ws && -n $CODEMGR_WS ]] && codemgr_ws=$CODEMGR_WS
 	[[ -z $codemgr_ws && -n $WSPACE ]] && codemgr_ws=`$WSPACE name`
-	    
+
 	if [[ -n $codemgr_ws && ! -d $codemgr_ws ]]; then
 		print -u2 "$codemgr_ws: no such workspace"
 		exit 1
@@ -2521,10 +2521,16 @@
 #    Bug IDs will be replaced by a URL.  Order of precedence
 #    is: default location, $WEBREV_BUGURL, the -O flag.
 #
-BUGURL='http://monaco.sfbay.sun.com/detail.jsp?cr='
+BUGURL='https://jbs.oracle.com/bugs/browse/'
 [[ -n $WEBREV_BUGURL ]] && BUGURL="$WEBREV_BUGURL"
-[[ -n "$Oflag" ]] && \
+if [[ -n "$Oflag" ]]; then
+    CRID=`echo $CRID | sed -e 's/JDK-//'`
     BUGURL='http://bugs.sun.com/bugdatabase/view_bug.do?bug_id='
+    IDPREFIX=''
+else
+    IDPREFIX='JDK-'
+fi
+
 
 #
 #    Likewise, ARC cases will be replaced by a URL.  Order of precedence
@@ -2561,7 +2567,7 @@
 
 #
 # Should we ignore changes in white spaces when generating diffs?
-# 
+#
 if [[ -n $bflag ]]; then
     DIFFOPTS="-t"
 else
@@ -2748,7 +2754,7 @@
 		fi
 	    fi
 	else
-	    
+
 	    #
 	    # If we have old and new versions of the file then run the
 	    # appropriate diffs.  This is complicated by a couple of factors:
@@ -3000,22 +3006,31 @@
 # external URL has a <title> like:
 # <title>Bug ID: 6641309 Wrong Cookie separator used in HttpURLConnection</title>
 # while internal URL has <title> like:
-# <title>6641309: Wrong Cookie separator used in HttpURLConnection</title>
+# <title>[#JDK-6641309] Wrong Cookie separator used in HttpURLConnection</title>
 #
 if [[ -n $CRID ]]; then
     for id in $CRID
     do
+        if [[ -z "$Oflag" ]]; then
+            #add "JDK-" to raw bug id for jbs links.
+            id=`echo ${id} | sed 's/^\([0-9]\{5,\}\)$/JDK-\1/'`
+        fi
         print "<tr><th>Bug id:</th><td>"
         url="${BUGURL}${id}"
-        if [[ -n $WGET ]]; then
-            msg=`$WGET -q $url -O - | grep '<title>' | sed 's/<title>\(.*\)<\/title>/\1/' | sed 's/Bug ID://'`
+        if [[ -n "$Oflag" ]]; then
+            cleanup='s/Bug ID: \([0-9]\{5,\}\) \(.*\)/JDK-\1 : \2/'
+        else
+            cleanup='s|\[#\(JDK-[0-9]\{5,\}\)\] \(.*\)|\1 : \2|'
         fi
-        if [[ -n $msg ]]; then
-            print "<a href=\"$url\">$msg</a>"
-        else
-            print $id | bug2url
+        if [[ -n $WGET ]]; then
+            msg=`$WGET --timeout=10 --tries=1 -q $url -O - | grep '<title>' | sed 's/<title>\(.*\)<\/title>/\1/' | sed "$cleanup"`
         fi
-        
+        if [[ -z $msg ]]; then
+            msg="${id}"
+        fi
+
+        print "<a href=\"$url\">$msg</a>"
+
         print "</td></tr>"
     done
 fi
@@ -3179,4 +3194,3 @@
 
 print "Done."
 print "Output to: $WDIR"
-
--- a/test/Makefile	Fri Feb 15 10:40:46 2013 +0100
+++ b/test/Makefile	Mon Feb 18 10:46:22 2013 +0100
@@ -38,8 +38,8 @@
 define SUBDIR_TEST # subdirectory target
 if [ -d $1 ] ; then \
   if [ -r $1/test/Makefile ] ; then \
-    echo "$(MAKE) -C $1/test $2" ; \
-    $(MAKE) -C $1/test $2 ; \
+    echo "$(MAKE) -k -C $1/test $2" ; \
+    $(MAKE) -k -C $1/test $2 ; \
   else \
     echo "ERROR: File does not exist: $1/test/Makefile"; \
     exit 1; \
@@ -53,7 +53,7 @@
 LANGTOOLS_TEST_LIST = langtools_jtreg
 
 # Test target list for jdk repository
-JDK_DEFAULT_TEST_LIST = \
+JDK_ALL_TEST_LIST = \
 	jdk_beans1 \
 	jdk_io  \
 	jdk_lang  \
@@ -64,10 +64,7 @@
 	jdk_security1 \
 	jdk_text  \
 	jdk_util  \
-	jdk_time
-
-# These tests are not part of the default testing list
-JDK_NONDEFAULT_TEST_LIST = \
+	jdk_time \
 	jdk_awt \
 	jdk_beans2 jdk_beans3  \
 	jdk_management \
@@ -80,14 +77,14 @@
 	jdk_jdi \
 	jdk_jfr
 
-# All jdk tests
-JDK_ALL_TEST_LIST = $(JDK_DEFAULT_TEST_LIST) $(JDK_NONDEFAULT_TEST_LIST)
+# Theses are meta test targets in jdk
+JDK_META_TEST_LIST = jdk_all jdk_default jdk_core
 
 # These are the current jck test targets in the jdk repository
 JDK_JCK7_LIST = jck7devtools jck7compiler jck7runtime
 
-# Default test target (everything)
-default: $(JDK_DEFAULT_TEST_LIST) $(LANGTOOLS_TEST_LIST)
+# Default test target (core)
+default: jdk_core $(LANGTOOLS_TEST_LIST)
 
 # All testing
 all: $(JDK_ALL_TEST_LIST) $(LANGTOOLS_TEST_LIST)
@@ -95,7 +92,8 @@
 # Test targets
 $(LANGTOOLS_TEST_LIST):
 	@$(NO_STOPPING)$(call SUBDIR_TEST, $(LANGTOOLS_DIR), $(subst langtools_,,$@))
-$(JDK_ALL_TEST_LIST) $(JDK_JCK7_LIST):
+
+$(JDK_ALL_TEST_LIST) $(JDK_META_TEST_LIST) $(JDK_JCK7_LIST):
 	@$(NO_STOPPING)$(call SUBDIR_TEST, $(JDK_DIR), $@)
 
 clean:
@@ -104,7 +102,7 @@
 
 # Phony targets (e.g. these are not filenames)
 .PHONY: all clean \
-        $(JDK_ALL_TEST_LIST) $(JDK_JCK7_LIST) \
+        $(JDK_ALL_TEST_LIST) $(JDK_META_TEST_LIST) $(JDK_JCK7_LIST) \
         $(LANGTOOLS_TEST_LIST)
 
 ################################################################