--- a/README Fri Dec 11 17:45:48 2015 -0800
+++ b/README Tue Dec 15 09:50:04 2015 -0800
@@ -6,7 +6,7 @@
The root repository can be obtained with something like:
hg clone http://hg.openjdk.java.net/jdk9/jdk9 openjdk9
-
+
You can run the get_source.sh script located in the root repository to get
the other needed repositories:
cd openjdk9 && sh ./get_source.sh
@@ -17,7 +17,7 @@
See http://openjdk.java.net/ for more information about OpenJDK.
Simple Build Instructions:
-
+
0. Get the necessary system software/packages installed on your system, see
http://hg.openjdk.java.net/jdk9/jdk9/raw-file/tip/README-builds.html
@@ -28,10 +28,10 @@
2. Configure the build:
bash ./configure
-
+
3. Build the OpenJDK:
make all
- The resulting JDK image should be found in build/*/images/j2sdk-image
+ The resulting JDK image should be found in build/*/images/jdk
where make is GNU make 3.81 or newer, /usr/bin/make on Linux usually
is 3.81 or newer. Note that on Solaris, GNU make is called "gmake".
--- a/README-builds.html Fri Dec 11 17:45:48 2015 -0800
+++ b/README-builds.html Tue Dec 15 09:50:04 2015 -0800
@@ -250,9 +250,7 @@
</ul></li>
<li><p><strong>Mac OS X</strong></p>
-<p>Install <a href="https://developer.apple.com/xcode/">XCode 4.5.2</a> and also
-install the "Command line tools" found under the preferences pane
-"Downloads"</p></li>
+<p>Install <a href="https://developer.apple.com/xcode/">XCode 6.3</a></p></li>
</ul>
<p><a name="linux"></a></p>
@@ -279,39 +277,67 @@
<h5>Studio Compilers</h5>
<p>At a minimum, the <a href="http://www.oracle.com/
-technetwork/server-storage/solarisstudio/downloads/index.htm">Studio 12 Update 1 Compilers</a> (containing
-version 5.10 of the C and C++ compilers) is required, including specific
+technetwork/server-storage/solarisstudio/downloads/index.htm">Studio 12 Update 4 Compilers</a> (containing
+version 5.13 of the C and C++ compilers) is required, including specific
patches.</p>
-<p>The Solaris SPARC patch list is:</p>
+<p>The Solaris Studio installation should contain at least these packages:</p>
-<ul>
-<li>118683-05: SunOS 5.10: Patch for profiling libraries and assembler</li>
-<li>119963-21: SunOS 5.10: Shared library patch for C++</li>
-<li>120753-08: SunOS 5.10: Microtasking libraries (libmtsk) patch</li>
-<li>128228-09: Sun Studio 12 Update 1: Patch for Sun C++ Compiler</li>
-<li>141860-03: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C
-C++ F77 F95</li>
-<li>141861-05: Sun Studio 12 Update 1: Patch for Sun C Compiler</li>
-<li>142371-01: Sun Studio 12.1 Update 1: Patch for dbx</li>
-<li>143384-02: Sun Studio 12 Update 1: Patch for debuginfo handling</li>
-<li>143385-02: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C
-C++ F77 F95</li>
-<li>142369-01: Sun Studio 12.1: Patch for Performance Analyzer Tools</li>
-</ul>
+<blockquote>
+ <p><table border="1">
+ <thead>
+ <tr>
+ <td><strong>Package</strong></td>
+ <td><strong>Version</strong></td>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>developer/solarisstudio-124/backend</td>
+ <td>12.4-1.0.6.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/c++</td>
+ <td>12.4-1.0.10.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/cc</td>
+ <td>12.4-1.0.4.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/library/c++-libs</td>
+ <td>12.4-1.0.10.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/library/math-libs</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/library/studio-gccrt</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-common</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-ja</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-legal</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-zhCN</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ </tbody>
+ </table></p>
+</blockquote>
-<p>The Solaris X86 patch list is:</p>
-
-<ul>
-<li>119961-07: SunOS 5.10_x86, x64, Patch for profiling libraries and assembler</li>
-<li>119964-21: SunOS 5.10_x86: Shared library patch for C++_x86</li>
-<li>120754-08: SunOS 5.10_x86: Microtasking libraries (libmtsk) patch</li>
-<li>141858-06: Sun Studio 12 Update 1_x86: Sun Compiler Common patch for x86
-backend</li>
-<li>128229-09: Sun Studio 12 Update 1_x86: Patch for C++ Compiler</li>
-<li>142363-05: Sun Studio 12 Update 1_x86: Patch for C Compiler</li>
-<li>142368-01: Sun Studio 12.1_x86: Patch for Performance Analyzer Tools</li>
-</ul>
+<p>In particular backend 12.4-1.0.6.0 contains a critical patch for the sparc
+version.</p>
<p>Place the <code>bin</code> directory in <code>PATH</code>.</p>
@@ -1144,10 +1170,6 @@
<p>With Linux, it was just a matter of picking a stable distribution that is a
good representative for Linux in general.</p>
-<p><strong>NOTE: We expect a change here from Fedora 9 to something else, but it has not
-been completely determined yet, possibly Ubuntu 12.04 X64, unbiased community
-feedback would be welcome on what a good choice would be here.</strong></p>
-
<p>It is understood that most developers will NOT be using these specific
versions, and in fact creating these specific versions may be difficult due to
the age of some of this software. It is expected that developers are more often
@@ -1176,7 +1198,7 @@
<tr>
<td>Linux X86 (32-bit) and X64 (64-bit)</td>
<td>Oracle Enterprise Linux 6.4</td>
- <td>gcc 4.8.2 </td>
+ <td>gcc 4.9.2 </td>
<td>JDK 8</td>
<td>2 or more</td>
<td>1 GB</td>
@@ -1184,8 +1206,8 @@
</tr>
<tr>
<td>Solaris SPARCV9 (64-bit)</td>
- <td>Solaris 10 Update 10</td>
- <td>Studio 12 Update 3 + patches</td>
+ <td>Solaris 11 Update 1</td>
+ <td>Studio 12 Update 4 + patches</td>
<td>JDK 8</td>
<td>4 or more</td>
<td>4 GB</td>
@@ -1193,8 +1215,8 @@
</tr>
<tr>
<td>Solaris X64 (64-bit)</td>
- <td>Solaris 10 Update 10</td>
- <td>Studio 12 Update 3 + patches</td>
+ <td>Solaris 11 Update 1</td>
+ <td>Studio 12 Update 4 + patches</td>
<td>JDK 8</td>
<td>4 or more</td>
<td>4 GB</td>
@@ -1221,7 +1243,7 @@
<tr>
<td>Mac OS X X64 (64-bit)</td>
<td>Mac OS X 10.9 "Mavericks"</td>
- <td>XCode 5.1.1 or newer</td>
+ <td>Xcode 6.3 or newer</td>
<td>JDK 8</td>
<td>2 or more</td>
<td>4 GB</td>
--- a/README-builds.md Fri Dec 11 17:45:48 2015 -0800
+++ b/README-builds.md Tue Dec 15 09:50:04 2015 -0800
@@ -215,9 +215,7 @@
* **Mac OS X**
- Install [XCode 4.5.2](https://developer.apple.com/xcode/) and also
- install the "Command line tools" found under the preferences pane
- "Downloads"
+ Install [XCode 6.3](https://developer.apple.com/xcode/)
<a name="linux"></a>
#### Linux
@@ -239,36 +237,66 @@
<a name="studio"></a>
##### Studio Compilers
-At a minimum, the [Studio 12 Update 1 Compilers](http://www.oracle.com/
+At a minimum, the [Studio 12 Update 4 Compilers](http://www.oracle.com/
technetwork/server-storage/solarisstudio/downloads/index.htm) (containing
-version 5.10 of the C and C++ compilers) is required, including specific
+version 5.13 of the C and C++ compilers) is required, including specific
patches.
-The Solaris SPARC patch list is:
+The Solaris Studio installation should contain at least these packages:
- * 118683-05: SunOS 5.10: Patch for profiling libraries and assembler
- * 119963-21: SunOS 5.10: Shared library patch for C++
- * 120753-08: SunOS 5.10: Microtasking libraries (libmtsk) patch
- * 128228-09: Sun Studio 12 Update 1: Patch for Sun C++ Compiler
- * 141860-03: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C
- C++ F77 F95
- * 141861-05: Sun Studio 12 Update 1: Patch for Sun C Compiler
- * 142371-01: Sun Studio 12.1 Update 1: Patch for dbx
- * 143384-02: Sun Studio 12 Update 1: Patch for debuginfo handling
- * 143385-02: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C
- C++ F77 F95
- * 142369-01: Sun Studio 12.1: Patch for Performance Analyzer Tools
+> <table border="1">
+ <thead>
+ <tr>
+ <td>**Package**</td>
+ <td>**Version**</td>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>developer/solarisstudio-124/backend</td>
+ <td>12.4-1.0.6.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/c++</td>
+ <td>12.4-1.0.10.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/cc</td>
+ <td>12.4-1.0.4.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/library/c++-libs</td>
+ <td>12.4-1.0.10.0</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/library/math-libs</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/library/studio-gccrt</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-common</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-ja</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-legal</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ <tr>
+ <td>developer/solarisstudio-124/studio-zhCN</td>
+ <td>12.4-1.0.0.1</td>
+ </tr>
+ </tbody>
+ </table>
-The Solaris X86 patch list is:
-
- * 119961-07: SunOS 5.10_x86, x64, Patch for profiling libraries and assembler
- * 119964-21: SunOS 5.10_x86: Shared library patch for C++\_x86
- * 120754-08: SunOS 5.10_x86: Microtasking libraries (libmtsk) patch
- * 141858-06: Sun Studio 12 Update 1_x86: Sun Compiler Common patch for x86
- backend
- * 128229-09: Sun Studio 12 Update 1_x86: Patch for C++ Compiler
- * 142363-05: Sun Studio 12 Update 1_x86: Patch for C Compiler
- * 142368-01: Sun Studio 12.1_x86: Patch for Performance Analyzer Tools
+In particular backend 12.4-1.0.6.0 contains a critical patch for the sparc
+version.
Place the `bin` directory in `PATH`.
@@ -1044,10 +1072,6 @@
With Linux, it was just a matter of picking a stable distribution that is a
good representative for Linux in general.
-**NOTE: We expect a change here from Fedora 9 to something else, but it has not
-been completely determined yet, possibly Ubuntu 12.04 X64, unbiased community
-feedback would be welcome on what a good choice would be here.**
-
It is understood that most developers will NOT be using these specific
versions, and in fact creating these specific versions may be difficult due to
the age of some of this software. It is expected that developers are more often
@@ -1075,7 +1099,7 @@
<tr>
<td>Linux X86 (32-bit) and X64 (64-bit)</td>
<td>Oracle Enterprise Linux 6.4</td>
- <td>gcc 4.8.2 </td>
+ <td>gcc 4.9.2 </td>
<td>JDK 8</td>
<td>2 or more</td>
<td>1 GB</td>
@@ -1083,8 +1107,8 @@
</tr>
<tr>
<td>Solaris SPARCV9 (64-bit)</td>
- <td>Solaris 10 Update 10</td>
- <td>Studio 12 Update 3 + patches</td>
+ <td>Solaris 11 Update 1</td>
+ <td>Studio 12 Update 4 + patches</td>
<td>JDK 8</td>
<td>4 or more</td>
<td>4 GB</td>
@@ -1092,8 +1116,8 @@
</tr>
<tr>
<td>Solaris X64 (64-bit)</td>
- <td>Solaris 10 Update 10</td>
- <td>Studio 12 Update 3 + patches</td>
+ <td>Solaris 11 Update 1</td>
+ <td>Studio 12 Update 4 + patches</td>
<td>JDK 8</td>
<td>4 or more</td>
<td>4 GB</td>
@@ -1120,7 +1144,7 @@
<tr>
<td>Mac OS X X64 (64-bit)</td>
<td>Mac OS X 10.9 "Mavericks"</td>
- <td>XCode 5.1.1 or newer</td>
+ <td>Xcode 6.3 or newer</td>
<td>JDK 8</td>
<td>2 or more</td>
<td>4 GB</td>
--- a/common/autoconf/build-performance.m4 Fri Dec 11 17:45:48 2015 -0800
+++ b/common/autoconf/build-performance.m4 Tue Dec 15 09:50:04 2015 -0800
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -149,6 +149,19 @@
AC_SUBST(JOBS)
])
+AC_DEFUN_ONCE([BPERF_SETUP_TEST_JOBS],
+[
+ # The number of test jobs will be chosen automatically if TEST_JOBS is 0
+ AC_ARG_WITH(test-jobs, [AS_HELP_STRING([--with-test-jobs],
+ [number of parallel tests jobs to run @<:@based on build jobs@:>@])])
+ if test "x$with_test_jobs" = x; then
+ TEST_JOBS=0
+ else
+ TEST_JOBS=$with_test_jobs
+ fi
+ AC_SUBST(TEST_JOBS)
+])
+
AC_DEFUN([BPERF_SETUP_CCACHE],
[
AC_ARG_ENABLE([ccache],
--- a/common/autoconf/configure.ac Fri Dec 11 17:45:48 2015 -0800
+++ b/common/autoconf/configure.ac Tue Dec 15 09:50:04 2015 -0800
@@ -233,6 +233,7 @@
BPERF_SETUP_BUILD_CORES
BPERF_SETUP_BUILD_MEMORY
BPERF_SETUP_BUILD_JOBS
+BPERF_SETUP_TEST_JOBS
# Setup arguments for the boot jdk (after cores and memory have been setup)
BOOTJDK_SETUP_BOOT_JDK_ARGUMENTS
--- a/common/autoconf/generated-configure.sh Fri Dec 11 17:45:48 2015 -0800
+++ b/common/autoconf/generated-configure.sh Tue Dec 15 09:50:04 2015 -0800
@@ -646,6 +646,7 @@
JAVA_FLAGS_JAVAC
JAVA_FLAGS_BIG
JAVA_FLAGS
+TEST_JOBS
JOBS
MEMORY_SIZE
NUM_CORES
@@ -1142,6 +1143,7 @@
with_num_cores
with_memory_size
with_jobs
+with_test_jobs
with_boot_jdk_jvmargs
with_sjavac_server_java
enable_sjavac
@@ -2061,6 +2063,8 @@
--with-memory-size=1024 [probed]
--with-jobs number of parallel jobs to let make run [calculated
based on cores and memory]
+ --with-test-jobs number of parallel tests jobs to run [based on build
+ jobs]
--with-boot-jdk-jvmargs specify JVM arguments to be passed to all java
invocations of boot JDK, overriding the default
values, e.g --with-boot-jdk-jvmargs="-Xmx8G
@@ -3747,7 +3751,7 @@
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -3785,6 +3789,8 @@
+
+
################################################################################
#
# Optionally enable distributed compilation of native code using icecc/icecream
@@ -4728,7 +4734,7 @@
#CUSTOM_AUTOCONF_INCLUDE
# Do not change or remove the following line, it is needed for consistency checks:
-DATE_WHEN_GENERATED=1449850507
+DATE_WHEN_GENERATED=1450172823
###############################################################################
#
@@ -57253,6 +57259,21 @@
+ # The number of test jobs will be chosen automatically if TEST_JOBS is 0
+
+# Check whether --with-test-jobs was given.
+if test "${with_test_jobs+set}" = set; then :
+ withval=$with_test_jobs;
+fi
+
+ if test "x$with_test_jobs" = x; then
+ TEST_JOBS=0
+ else
+ TEST_JOBS=$with_test_jobs
+ fi
+
+
+
# Setup arguments for the boot jdk (after cores and memory have been setup)
##############################################################################
--- a/common/autoconf/spec.gmk.in Fri Dec 11 17:45:48 2015 -0800
+++ b/common/autoconf/spec.gmk.in Tue Dec 15 09:50:04 2015 -0800
@@ -270,6 +270,7 @@
# Number of parallel jobs to use for compilation
JOBS?=@JOBS@
+TEST_JOBS?=@TEST_JOBS@
# Default make target
DEFAULT_MAKE_TARGET:=@DEFAULT_MAKE_TARGET@
--- a/common/conf/jib-profiles.js Fri Dec 11 17:45:48 2015 -0800
+++ b/common/conf/jib-profiles.js Tue Dec 15 09:50:04 2015 -0800
@@ -357,8 +357,8 @@
var devkit_platform_revisions = {
linux_x64: "gcc4.9.2-OEL6.4+1.0",
macosx_x64: "Xcode6.3-MacOSX10.9+1.0",
- solaris_x64: "SS12u3-Solaris10u10+1.0",
- solaris_sparcv9: "SS12u3-Solaris10u10+1.0",
+ solaris_x64: "SS12u4-Solaris11u1+1.0",
+ solaris_sparcv9: "SS12u4-Solaris11u1+1.0",
windows_x64: "VS2013SP4+1.0"
};
--- a/make/Help.gmk Fri Dec 11 17:45:48 2015 -0800
+++ b/make/Help.gmk Tue Dec 15 09:50:04 2015 -0800
@@ -83,6 +83,7 @@
$(info $(_) # To see executed command lines, use LOG=debug)
$(info $(_) JOBS=<n> # Run <n> parallel make jobs)
$(info $(_) # Note that -jN does not work as expected!)
+ $(info $(_) TEST_JOBS=<n> # Run <n> parallel test jobs)
$(info $(_) CONF_CHECK=<method> # What to do if spec file is out of date)
$(info $(_) # method is 'auto', 'ignore' or 'fail' (default))
$(info $(_) make test TEST=<test> # Only run the given test or tests, e.g.)
--- a/make/InitSupport.gmk Fri Dec 11 17:45:48 2015 -0800
+++ b/make/InitSupport.gmk Tue Dec 15 09:50:04 2015 -0800
@@ -40,7 +40,8 @@
##############################################################################
# Make control variables, handled by Init.gmk
- INIT_CONTROL_VARIABLES := LOG CONF CONF_NAME SPEC JOBS CONF_CHECK COMPARE_BUILD
+ INIT_CONTROL_VARIABLES := LOG CONF CONF_NAME SPEC JOBS TEST_JOBS CONF_CHECK \
+ COMPARE_BUILD
# All known make control variables
MAKE_CONTROL_VARIABLES := $(INIT_CONTROL_VARIABLES) TEST JDK_FILTER
--- a/make/MainSupport.gmk Fri Dec 11 17:45:48 2015 -0800
+++ b/make/MainSupport.gmk Tue Dec 15 09:50:04 2015 -0800
@@ -35,7 +35,8 @@
($(CD) $(SRC_ROOT)/test && $(MAKE) $(MAKE_ARGS) -j1 -k MAKEFLAGS= \
JT_HOME=$(JT_HOME) PRODUCT_HOME=$(JDK_IMAGE_DIR) \
TEST_IMAGE_DIR=$(TEST_IMAGE_DIR) \
- ALT_OUTPUTDIR=$(OUTPUT_ROOT) CONCURRENCY=$(JOBS) $1) || true
+ ALT_OUTPUTDIR=$(OUTPUT_ROOT) TEST_JOBS=$(TEST_JOBS) \
+ JOBS=$(JOBS) $1) || true
endef
# Cleans the dir given as $1
--- a/make/devkit/Tools.gmk Fri Dec 11 17:45:48 2015 -0800
+++ b/make/devkit/Tools.gmk Tue Dec 15 09:50:04 2015 -0800
@@ -82,7 +82,9 @@
libXi libXi-devel \
libXdmcp libXdmcp-devel \
libXau libXau-devel \
- libgcc
+ libgcc \
+ elfutils elfutils-devel \
+ elfutils-libelf elfutils-libelf-devel
ifeq ($(ARCH),x86_64)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/make/devkit/createSolarisDevkit.sh Tue Dec 15 09:50:04 2015 -0800
@@ -0,0 +1,147 @@
+#!/bin/bash
+#
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation. Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# This script creates a devkit for building OpenJDK on Solaris by copying
+# part of a Solaris Studio installation and cretaing a sysroot by installing
+# a limited set of system packages. It is assumed that a suitable pkg
+# publisher is configured for the system where the script is executed.
+#
+# The Solaris Studio installation must contain at least these packages:
+# developer/solarisstudio-124/backend 12.4-1.0.6.0 i--
+# developer/solarisstudio-124/c++ 12.4-1.0.10.0 i--
+# developer/solarisstudio-124/cc 12.4-1.0.4.0 i--
+# developer/solarisstudio-124/library/c++-libs 12.4-1.0.10.0 i--
+# developer/solarisstudio-124/library/math-libs 12.4-1.0.0.1 i--
+# developer/solarisstudio-124/library/studio-gccrt 12.4-1.0.0.1 i--
+# developer/solarisstudio-124/studio-common 12.4-1.0.0.1 i--
+# developer/solarisstudio-124/studio-ja 12.4-1.0.0.1 i--
+# developer/solarisstudio-124/studio-legal 12.4-1.0.0.1 i--
+# developer/solarisstudio-124/studio-zhCN 12.4-1.0.0.1 i--
+# In particular backend 12.4-1.0.6.0 contains a critical patch for the sparc
+# version.
+#
+# erik.joelsson@oracle.com
+
+USAGE="$0 <Solaris Studio installation> <Path to gnu make binary>"
+
+if [ "$1" = "" ] || [ "$2" = "" ]; then
+ echo $USAGE
+ exit 1
+fi
+
+SOLARIS_STUDIO_VERSION=12u4
+SOLARIS_VERSION=11u1
+case `uname -p` in
+ i*)
+ ARCH=x86
+ ;;
+ sparc*)
+ ARCH=sparc
+ ;;
+esac
+
+SOLARIS_STUDIO_SRC=$1
+GNU_MAKE=$2
+
+SCRIPT_DIR="$(cd "$(dirname $0)" > /dev/null && pwd)"
+BUILD_DIR="${SCRIPT_DIR}/../../build/devkit"
+
+DEVKIT_NAME=SS${SOLARIS_STUDIO_VERSION}-Solaris${SOLARIS_VERSION}
+DEVKIT_ROOT=${BUILD_DIR}/${DEVKIT_NAME}
+BUNDLE_NAME=${DEVKIT_NAME}.tar.gz
+BUNDLE=${BUILD_DIR}/${BUNDLE_NAME}
+INSTALL_ROOT=${BUILD_DIR}/install-root
+SYSROOT=${DEVKIT_ROOT}/sysroot
+SOLARIS_STUDIO_SUBDIR=SS${SOLARIS_STUDIO_VERSION}
+SOLARIS_STUDIO_DIR=${DEVKIT_ROOT}/${SOLARIS_STUDIO_SUBDIR}
+
+# Extract the publisher from the system
+if [ -z "${PUBLISHER_URI}" ]; then
+ PUBLISHER_URI="$(pkg publisher solaris | grep URI | awk '{ print $3 }')"
+fi
+
+if [ ! -d $INSTALL_ROOT ]; then
+ echo "Creating $INSTALL_ROOT and installing packages"
+ pkg image-create $INSTALL_ROOT
+ pkg -R $INSTALL_ROOT set-publisher -P -g ${PUBLISHER_URI} solaris
+ pkg -R $INSTALL_ROOT install --accept $(cat solaris11.1-package-list.txt)
+else
+ echo "Skipping installing packages"
+fi
+
+if [ ! -d $SYSROOT ]; then
+ echo "Copying from $INSTALL_ROOT to $SYSROOT"
+ mkdir -p $SYSROOT
+ cp -rH $INSTALL_ROOT/lib $SYSROOT/
+ mkdir $SYSROOT/usr
+ # Some of the tools in sysroot are needed in the OpenJDK build but cannot be
+ # run from their current location due to relative runtime paths in the
+ # binaries. Move the sysroot/usr/bin directory to the outer bin and have them
+ # be runnable from there to force them to link to the system libraries
+ cp -rH $INSTALL_ROOT/usr/bin $DEVKIT_ROOT
+ cp -rH $INSTALL_ROOT/usr/lib $SYSROOT/usr/
+ cp -rH $INSTALL_ROOT/usr/include $SYSROOT/usr/
+ pkg -R $INSTALL_ROOT list > $SYSROOT/pkg-list.txt
+else
+ echo "Skipping copying to $SYSROOT"
+fi
+
+if [ ! -d $SOLARIS_STUDIO_DIR ]; then
+ echo "Copying Solaris Studio from $SOLARIS_STUDIO_SRC"
+ cp -rH $SOLARIS_STUDIO_SRC ${SOLARIS_STUDIO_DIR%/*}
+ mv ${SOLARIS_STUDIO_DIR%/*}/${SOLARIS_STUDIO_SRC##*/} $SOLARIS_STUDIO_DIR
+ # Solaris Studio 12.4 requires /lib/libmmheap.so.1 to run, but this lib is not
+ # installed by default on all Solaris systems. Sneak it in from the sysroot to
+ # make it run OOTB on more systems.
+ cp $SYSROOT/lib/libmmheap.so.1 $SOLARIS_STUDIO_DIR/lib/compilers/sys/
+else
+ echo "Skipping copying of Solaris Studio"
+fi
+
+echo "Copying gnu make to $DEVKIT_ROOT/bin"
+mkdir -p $DEVKIT_ROOT/bin
+cp $GNU_MAKE $DEVKIT_ROOT/bin/
+if [ ! -e $DEVKIT_ROOT/bin/gmake ]; then
+ ln -s make $DEVKIT_ROOT/bin/gmake
+fi
+
+# Create the devkit.info file
+echo Creating devkit.info
+INFO_FILE=$DEVKIT_ROOT/devkit.info
+rm -f $INFO_FILE
+echo "# This file describes to configure how to interpret the contents of this devkit" >> $INFO_FILE
+echo "DEVKIT_NAME=\"Solaris Studio $SOLARIS_STUDIO_VERSION - Solaris $SOLARIS_VERSION - $ARCH\"" >> $INFO_FILE
+echo "DEVKIT_TOOLCHAIN_PATH=\"\$DEVKIT_ROOT/$SOLARIS_STUDIO_SUBDIR/bin:\$DEVKIT_ROOT/bin\"" >> $INFO_FILE
+echo "DEVKIT_EXTRA_PATH=\"\$DEVKIT_ROOT/bin\"" >> $INFO_FILE
+echo "DEVKIT_SYSROOT=\"\$DEVKIT_ROOT/sysroot\"" >> $INFO_FILE
+
+if [ ! -e $BUNDLE ]; then
+ echo "Creating $BUNDLE from $DEVKIT_ROOT"
+ cd $DEVKIT_ROOT/..
+ tar zcf $BUNDLE $DEVKIT_NAME
+else
+ echo "Skipping creation of $BUNDLE"
+fi
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/make/devkit/solaris11.1-package-list.txt Tue Dec 15 09:50:04 2015 -0800
@@ -0,0 +1,156 @@
+compress/bzip2@1.0.6-0.175.1.0.0.24.0
+consolidation/X/X-incorporation@0.5.11-0.175.1.21.0.3.1357
+consolidation/desktop/desktop-incorporation@0.5.11-0.175.1.21.0.4.0
+consolidation/install/install-incorporation@0.5.11-0.175.2.0.0.5.0
+consolidation/ips/ips-incorporation@0.5.11-0.175.1.20.0.3.0
+consolidation/l10n/l10n-incorporation@0.5.11-0.175.1.16.0.2.2
+consolidation/osnet/osnet-incorporation@0.5.11-0.175.1.21.0.4.2
+consolidation/sic_team/sic_team-incorporation@0.5.11-0.175.2.0.0.39.0
+consolidation/solaris_re/solaris_re-incorporation@0.5.11-0.175.2.4.0.4.0
+consolidation/sunpro/sunpro-incorporation@0.5.11-0.175.1.19.0.4.0
+crypto/ca-certificates@0.5.11-0.175.1.0.0.24.2
+database/berkeleydb-5@5.1.25-0.175.1.0.0.24.0
+database/mysql-51/library@5.1.37-0.175.1.10.0.5.0
+database/sqlite-3@3.7.14.1-0.175.1.10.0.4.0
+developer/base-developer-utilities@0.5.11-0.175.1.11.0.1.2
+developer/macro/cpp@0.5.11-0.175.1.19.0.4.0
+driver/management/bmc@0.5.11-0.175.1.0.0.24.2
+driver/management/ipmi@0.5.11-0.175.1.6.0.3.2
+driver/serial/usbser@0.5.11-0.175.1.0.0.24.2
+driver/storage/mpt@0.5.11-0.175.1.18.0.3.2
+image/library/libjpeg@6.0.2-0.175.0.0.0.0.0
+image/library/libpng@1.4.11-0.175.1.0.0.16.0
+image/library/libtiff@3.9.5-0.175.1.15.0.2.0
+library/apr-13@1.3.9-0.175.1.0.0.24.0
+library/apr-util-13@1.3.9-0.175.1.0.0.24.0
+library/apr-util-13/apr-ldap@1.3.9-0.175.1.0.0.24.0
+library/apr-util-13/dbd-mysql@1.3.9-0.175.1.0.0.24.0
+library/apr-util-13/dbd-sqlite@1.3.9-0.175.1.0.0.24.0
+library/database/gdbm@1.8.3-0.175.1.0.0.24.0
+library/expat@2.1.0-0.175.1.0.0.24.0
+library/libffi@3.0.9-0.175.0.0.0.0.0
+library/libidn@1.19-0.175.1.0.0.24.0
+library/libtecla@1.6.1-0.175.1.0.0.24.0
+library/libxml2@2.7.6-0.175.1.7.0.3.0
+library/libxslt@1.1.26-0.175.1.11.0.4.0
+library/ncurses@5.7-0.175.1.0.0.15.0
+library/nspr@4.9.5-0.175.2.0.0.39.0
+library/perl-5/sun-solaris-512@0.5.11-0.175.1.11.0.1.2
+library/print/cups-libs@1.4.5-0.175.1.8.0.3.0
+library/python-2/cherrypy@3.1.2-0.175.1.0.0.24.0
+library/python-2/cherrypy-26@3.1.2-0.175.1.0.0.24.0
+library/python-2/jsonrpclib@0.1.3-0.175.2.0.0.42.1
+library/python-2/jsonrpclib-26@0.1.3-0.175.2.0.0.42.1
+library/python-2/libxml2-26@2.7.6-0.175.1.7.0.3.0
+library/python-2/libxsl-26@1.1.26-0.175.1.11.0.4.0
+library/python-2/lxml@2.3.3-0.175.1.0.0.24.0
+library/python-2/lxml-26@2.3.3-0.175.1.0.0.24.0
+library/python-2/m2crypto@0.21.1-0.175.1.0.0.24.0
+library/python-2/m2crypto-26@0.21.1-0.175.1.0.0.24.0
+library/python-2/mako@0.4.1-0.175.1.0.0.24.0
+library/python-2/mako-26@0.4.1-0.175.1.0.0.24.0
+library/python-2/ply@3.1-0.175.1.0.0.24.0
+library/python-2/ply-26@3.1-0.175.1.0.0.24.0
+library/python-2/pybonjour@1.1.1-0.175.1.0.0.24.0
+library/python-2/pybonjour-26@1.1.1-0.175.1.0.0.24.0
+library/python-2/pycurl@7.19.0.1-0.175.1.0.0.24.0
+library/python-2/pycurl-26@7.19.0.1-0.175.1.0.0.24.0
+library/python-2/pyopenssl@0.11-0.175.1.0.0.24.0
+library/python-2/pyopenssl-26@0.11-0.175.1.0.0.24.0
+library/python-2/python-extra-26@2.6.4-0.175.1.0.0.15.0
+library/python-2/simplejson-26@2.1.2-0.175.1.7.0.4.0
+library/readline@5.2-0.175.1.0.0.24.0
+library/security/nss@4.14.3-0.175.2.0.0.39.0
+library/security/openssl@1.0.0.13-0.175.1.21.0.2.0
+library/security/trousers@0.3.6-0.175.1.0.0.24.0
+library/zlib@1.2.3-0.175.1.0.0.24.0
+media/cdrtools@3.0-0.175.1.21.0.4.0
+media/xorriso@0.6.0-0.175.1.0.0.24.0
+network/bridging@0.5.11-0.175.1.12.0.3.2
+package/pkg@0.5.11-0.175.1.20.0.3.0
+package/pkg/system-repository@0.5.11-0.175.1.9.0.1.0
+package/pkg/zones-proxy@0.5.11-0.175.1.0.0.24.0
+package/svr4@0.5.11-0.175.1.7.0.3.2
+print/cups@1.4.5-0.175.1.8.0.3.0
+release/name@0.5.11-0.175.2.4.0.4.0
+runtime/perl-512@5.12.5-0.175.1.8.0.4.0
+runtime/python-26@2.6.8-0.175.1.17.0.4.0
+service/network/dns/mdns@0.5.11-0.175.1.0.0.24.2
+service/network/slp@0.5.11-0.175.1.0.0.24.2
+service/security/gss@0.5.11-0.175.1.0.0.24.2
+service/security/kerberos-5@0.5.11-0.175.1.18.0.2.2
+shell/bash@4.1.9-0.175.1.13.0.1.0
+shell/ksh93@93.21.0.20110208-0.175.1.19.0.2.0
+system/boot-environment-utilities@0.5.11-0.175.1.9.0.1.2
+system/boot/grub@1.99-0.175.1.14.0.2.2
+system/boot/wanboot@0.5.11-0.175.1.0.0.24.2
+system/core-os@0.5.11-0.175.1.20.0.4.2
+system/data/keyboard/keytables@0.5.11-0.175.1.0.0.24.2
+system/data/terminfo/terminfo-core@0.5.11-0.175.1.14.0.3.2
+system/data/timezone@0.5.11-0.175.2.5.0.2.0
+system/device-administration@0.5.11-0.175.1.9.0.2.2
+system/dtrace@0.5.11-0.175.1.20.0.4.2
+system/dynamic-reconfiguration@0.5.11-0.175.1.13.0.2.2
+system/fault-management@0.5.11-0.175.1.18.0.4.2
+system/file-system/hsfs@0.5.11-0.175.1.0.0.24.2
+system/file-system/pcfs@0.5.11-0.175.1.0.0.24.2
+system/file-system/ufs@0.5.11-0.175.1.18.0.3.2
+system/file-system/zfs@0.5.11-0.175.1.21.0.3.2
+system/header@0.5.11-0.175.1.20.0.4.2
+system/install@0.5.11-0.175.1.0.0.24.1736
+system/install/auto-install/auto-install-common@0.5.11-0.175.1.18.0.3.1736
+system/install/configuration@0.5.11-0.175.1.10.0.3.1736
+system/install/locale@0.5.11-0.175.1.0.0.23.1134
+system/io/infiniband@0.5.11-0.175.1.20.0.4.2
+system/io/ultra-wideband@0.5.11-0.175.1.0.0.24.2
+system/io/usb@0.5.11-0.175.1.19.0.2.2
+system/kernel@0.5.11-0.175.1.21.0.4.2
+system/kernel/cpu-counters@0.5.11-0.175.1.17.0.1.2
+system/kernel/platform@0.5.11-0.175.1.21.0.4.2
+system/keyboard/keyboard-utilities@0.5.11-0.175.1.0.0.24.2
+system/library@0.5.11-0.175.1.20.0.3.2
+system/library/boot-management@0.5.11-0.175.1.19.0.1.2
+system/library/c++-runtime@0.5.11-0.175.1.19.0.4.0
+system/library/freetype-2@2.4.11-0.175.1.18.0.1.1350
+system/library/gcc-3-runtime@3.4.3-0.175.1.0.0.24.0
+system/library/iconv/utf-8@0.5.11-0.175.1.9.0.1.1150
+system/library/install@0.5.11-0.175.1.18.0.3.1736
+system/library/libdbus@1.2.28-0.175.1.16.0.2.0
+system/library/math@0.5.11-0.175.1.19.0.4.0
+system/library/mmheap@0.5.11-0.175.1.19.0.4.0
+system/library/security/gss@0.5.11-0.175.1.18.0.3.2
+system/library/security/gss/diffie-hellman@0.5.11-0.175.1.0.0.24.2
+system/library/security/gss/spnego@0.5.11-0.175.1.16.0.1.2
+system/library/security/libsasl@0.5.11-0.175.1.0.0.24.2
+system/library/storage/libdiskmgt@0.5.11-0.175.1.5.0.3.2
+system/library/storage/scsi-plugins@0.5.11-0.175.1.0.0.24.2
+system/library/storage/snia-ima@0.5.11-0.175.1.0.0.24.2
+system/library/storage/suri@0.5.11-0.175.1.0.0.24.2
+system/linker@0.5.11-0.175.1.20.0.1.2
+system/network@0.5.11-0.175.1.20.0.3.2
+system/picl@0.5.11-0.175.1.17.0.3.2
+system/resource-mgmt/resource-pools@0.5.11-0.175.1.0.0.24.2
+system/storage/iscsi/iscsi-initiator@0.5.11-0.175.1.19.0.3.2
+system/storage/iscsi/iscsi-iser@0.5.11-0.175.1.20.0.3.2
+system/system-events@0.5.11-0.175.1.0.0.24.2
+system/xopen/xcu4@0.5.11-0.175.1.13.0.4.2
+system/zones@0.5.11-0.175.1.17.0.4.2
+system/zones/brand/brand-solaris@0.5.11-0.175.1.17.0.4.2
+text/spelling-utilities@0.5.11-0.175.1.0.0.24.2
+web/curl@7.21.2-0.175.1.18.0.3.0
+web/server/apache-22@2.2.27-0.175.1.19.0.4.0
+web/server/apache-22/module/apache-wsgi-26@3.3-0.175.1.0.0.24.0
+x11/header/x11-protocols@7.7-0.175.1.0.0.24.1317
+x11/library/libice@1.0.8-0.175.1.0.0.24.1317
+x11/library/libpthread-stubs@0.3-0.175.1.0.0.24.1317
+x11/library/libsm@1.2.1-0.175.1.0.0.24.1317
+x11/library/libx11@1.5.0-0.175.1.8.0.4.1336
+x11/library/libxau@1.0.7-0.175.1.0.0.24.1317
+x11/library/libxcb@1.8.1-0.175.1.8.0.3.1332
+x11/library/libxdmcp@1.1.1-0.175.1.0.0.24.1317
+x11/library/libxevie@1.0.3-0.175.1.0.0.24.1317
+x11/library/libxext@1.3.1-0.175.1.8.0.3.1332
+x11/library/libxrender@0.9.7-0.175.1.8.0.3.1332
+x11/library/libxscrnsaver@1.2.2-0.175.1.0.0.24.1317
+x11/library/libxtst@1.2.1-0.175.1.8.0.3.1332
+x11/library/toolkit/libxt@1.1.3-0.175.1.8.0.3.1332
--- a/make/jprt.properties Fri Dec 11 17:45:48 2015 -0800
+++ b/make/jprt.properties Tue Dec 15 09:50:04 2015 -0800
@@ -142,6 +142,8 @@
--with-devkit=$GCC492_OEL64_HOME
jprt.macosx_x64.build.configure.args= \
--with-devkit=$XCODE63_MACOSX109_HOME
+jprt.solaris.build.configure.args= \
+ --with-devkit=$SS124_11u1_HOME
jprt.windows_i586.build.configure.args= \
--with-devkit=$VS2013SP4_HOME \
${jprt.i586.build.configure.args}
--- a/modules.xml Fri Dec 11 17:45:48 2015 -0800
+++ b/modules.xml Tue Dec 15 09:50:04 2015 -0800
@@ -428,6 +428,7 @@
<to>java.naming</to>
<to>java.rmi</to>
<to>java.security.jgss</to>
+ <to>java.security.sasl</to>
<to>java.smartcardio</to>
<to>jdk.crypto.ec</to>
<to>jdk.crypto.mscapi</to>
@@ -437,6 +438,7 @@
<to>jdk.jartool</to>
<to>jdk.policytool</to>
<to>jdk.security.auth</to>
+ <to>jdk.security.jgss</to>
</export>
<export>
<name>sun.security.x509</name>
--- a/test/Makefile Fri Dec 11 17:45:48 2015 -0800
+++ b/test/Makefile Tue Dec 15 09:50:04 2015 -0800
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -60,18 +60,28 @@
# Bring in closed test targets if present
-include $(TOPDIR)/closed/test/Makefile
+ifeq ($(TEST_JOBS), 0)
+ JDK_TEST_JOBS=$(JOBS)
+else
+ JDK_TEST_JOBS=$(TEST_JOBS)
+endif
# Test targets
langtools_% :
- @$(NO_STOPPING)$(call SUBDIR_TEST, $(LANGTOOLS_DIR), JT_JAVA=$(PRODUCT_HOME) JTREG_HOME=$(JT_HOME) TEST="$(subst langtools_,,$@)" $(subst langtools_,,$@))
+ @$(NO_STOPPING)$(call SUBDIR_TEST, $(LANGTOOLS_DIR), CONCURRENCY=$(JDK_TEST_JOBS) JT_JAVA=$(PRODUCT_HOME) JTREG_HOME=$(JT_HOME) TEST="$(subst langtools_,,$@)" $(subst langtools_,,$@))
jdk_% core_%s svc_%:
- @$(NO_STOPPING)$(call SUBDIR_TEST, $(JDK_DIR), TEST="$@" $@)
+ @$(NO_STOPPING)$(call SUBDIR_TEST, $(JDK_DIR), CONCURRENCY=$(JDK_TEST_JOBS) TEST="$@" $@)
jaxp_%:
- @$(NO_STOPPING)$(call SUBDIR_TEST, $(JAXP_DIR), TEST="$@" $@)
+ @$(NO_STOPPING)$(call SUBDIR_TEST, $(JAXP_DIR), CONCURRENCY=$(JDK_TEST_JOBS) TEST="$@" $@)
+ifeq ($(TEST_JOBS), 0)
+ HOTSPOT_TEST_JOBS=1
+else
+ HOTSPOT_TEST_JOBS=$(TEST_JOBS)
+endif
hotspot_%:
- @$(NO_STOPPING)$(call SUBDIR_TEST, $(HOTSPOT_DIR), TEST="$@" $@)
+ @$(NO_STOPPING)$(call SUBDIR_TEST, $(HOTSPOT_DIR), CONCURRENCY=$(HOTSPOT_TEST_JOBS) TEST="$@" $@)
#
# jtreg_tests