# HG changeset patch # User duke # Date 1499285709 -7200 # Node ID beab448904d307c2dbbdcd382aac7d9d680cfb34 # Parent b4b4c1119f39f3c2bbb3eeacf5e8a6e3ea61d61d# Parent de6f69208f8281195dedcabcf5379dccc8e27c89 Merge diff -r b4b4c1119f39 -r beab448904d3 .hgtags-top-repo --- a/.hgtags-top-repo Thu Sep 22 18:32:20 2016 +0000 +++ b/.hgtags-top-repo Wed Jul 05 22:15:09 2017 +0200 @@ -379,3 +379,4 @@ 065724348690eda41fc69112278d8da6dcde548c jdk-9+134 82b94cb5f342319d2cda77f9fa59703ad7fde576 jdk-9+135 3ec350f5f32af249b59620d7e37b54bdcd77b233 jdk-9+136 +d7f519b004254b19e384131d9f0d0e40e31a0fd3 jdk-9+137 diff -r b4b4c1119f39 -r beab448904d3 Makefile --- a/Makefile Thu Sep 22 18:32:20 2016 +0000 +++ b/Makefile Wed Jul 05 22:15:09 2017 +0200 @@ -28,8 +28,8 @@ ### It also performs some sanity checks on make. ### -# The shell code below will be executed on /usr/ccs/bin/make on Solaris, but not in GNU Make. -# /usr/ccs/bin/make lacks basically every other flow control mechanism. +# The shell code below will be executed on /usr/bin/make on Solaris, but not in GNU Make. +# /usr/bin/make lacks basically every other flow control mechanism. .TEST_FOR_NON_GNUMAKE:sh=echo You are not using GNU Make/gmake, this is a requirement. Check your path. 1>&2 && exit 1 # The .FEATURES variable is likely to be unique for GNU Make. diff -r b4b4c1119f39 -r beab448904d3 README-builds.html --- a/README-builds.html Thu Sep 22 18:32:20 2016 +0000 +++ b/README-builds.html Wed Jul 05 22:15:09 2017 +0200 @@ -626,8 +626,7 @@

The Common UNIX Printing System (CUPS) Headers are required for building the OpenJDK on Solaris and Linux. The Solaris header files can be obtained by - installing the package SFWcups from the Solaris Software Companion - CD/DVD, these often will be installed into the directory /opt/sfw/cups.

+ installing the package print/cups.

The CUPS header files can always be downloaded from www.cups.org.

@@ -1111,8 +1110,7 @@
  • Place the location of the GNU make binary in the PATH.
  • Solaris: Do NOT use /usr/bin/make on Solaris. If your Solaris system has the software from the Solaris Developer Companion CD installed, you -should try and use gmake which will be located in either the /usr/bin, -/opt/sfw/bin or /usr/sfw/bin directory.
  • +should try and use /usr/bin/gmake or /usr/gnu/bin/make.
  • Windows: Make sure you start your build inside a bash shell.
  • Mac OS X: The XCode "command line tools" must be installed on your Mac.
  • diff -r b4b4c1119f39 -r beab448904d3 README-builds.md --- a/README-builds.md Thu Sep 22 18:32:20 2016 +0000 +++ b/README-builds.md Wed Jul 05 22:15:09 2017 +0200 @@ -560,8 +560,7 @@ > The Common UNIX Printing System (CUPS) Headers are required for building the OpenJDK on Solaris and Linux. The Solaris header files can be obtained by - installing the package **SFWcups** from the Solaris Software Companion - CD/DVD, these often will be installed into the directory `/opt/sfw/cups`. + installing the package **print/cups**. > The CUPS header files can always be downloaded from [www.cups.org](http://www.cups.org). @@ -1017,8 +1016,7 @@ * Place the location of the GNU make binary in the `PATH`. * **Solaris:** Do NOT use `/usr/bin/make` on Solaris. If your Solaris system has the software from the Solaris Developer Companion CD installed, you - should try and use `gmake` which will be located in either the `/usr/bin`, - `/opt/sfw/bin` or `/usr/sfw/bin` directory. + should try and use `/usr/bin/gmake` or `/usr/gnu/bin/make`. * **Windows:** Make sure you start your build inside a bash shell. * **Mac OS X:** The XCode "command line tools" must be installed on your Mac. diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/basics.m4 --- a/common/autoconf/basics.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/basics.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -750,11 +750,6 @@ # Prepend the extra path to the global path BASIC_PREPEND_TO_PATH([PATH],$EXTRA_PATH) - if test "x$OPENJDK_BUILD_OS" = "xsolaris"; then - # Add extra search paths on solaris for utilities like ar, as, dtrace etc... - PATH="$PATH:/usr/ccs/bin:/usr/sfw/bin:/opt/csw/bin:/usr/sbin" - fi - AC_MSG_CHECKING([for sysroot]) AC_MSG_RESULT([$SYSROOT]) AC_MSG_CHECKING([for toolchain path]) diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/flags.m4 --- a/common/autoconf/flags.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/flags.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -88,8 +88,7 @@ # inlining of system functions and intrinsics. $1SYSROOT_CFLAGS="-I-xbuiltin -I[$]$1SYSROOT/usr/include" $1SYSROOT_LDFLAGS="-L[$]$1SYSROOT/usr/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L[$]$1SYSROOT/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L[$]$1SYSROOT/usr/ccs/lib$OPENJDK_TARGET_CPU_ISADIR" + -L[$]$1SYSROOT/lib$OPENJDK_TARGET_CPU_ISADIR" fi elif test "x$TOOLCHAIN_TYPE" = xgcc; then $1SYSROOT_CFLAGS="--sysroot=[$]$1SYSROOT" diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/generated-configure.sh --- a/common/autoconf/generated-configure.sh Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/generated-configure.sh Wed Jul 05 22:15:09 2017 +0200 @@ -926,9 +926,7 @@ INCLUDE_SA UNLIMITED_CRYPTO CACERTS_FILE -BUILD_HEADLESS -SUPPORT_HEADFUL -SUPPORT_HEADLESS +ENABLE_HEADLESS_ONLY DEFAULT_MAKE_TARGET OS_VERSION_MICRO OS_VERSION_MINOR @@ -1153,7 +1151,7 @@ with_conf_name with_output_sync with_default_make_target -enable_headful +enable_headless_only with_cacerts_file enable_unlimited_crypto with_copyright_year @@ -1976,8 +1974,7 @@ [disabled] --enable-debug set the debug level to fastdebug (shorthand for --with-debug-level=fastdebug) [disabled] - --disable-headful disable building headful support (graphical UI - support) [enabled] + --enable-headless-only only build headless (no GUI) support [disabled] --enable-unlimited-crypto Enable unlimited crypto policy [disabled] --disable-keep-packaged-modules @@ -5095,7 +5092,7 @@ #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1472718471 +DATE_WHEN_GENERATED=1474894604 ############################################################################### # @@ -17213,11 +17210,6 @@ fi - if test "x$OPENJDK_BUILD_OS" = "xsolaris"; then - # Add extra search paths on solaris for utilities like ar, as, dtrace etc... - PATH="$PATH:/usr/ccs/bin:/usr/sfw/bin:/opt/csw/bin:/usr/sbin" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 $as_echo_n "checking for sysroot... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SYSROOT" >&5 @@ -24197,36 +24189,30 @@ # We need build & target for this. - # Should we build a JDK/JVM with headful support (ie a graphical ui)? - # We always build headless support. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking headful support" >&5 -$as_echo_n "checking headful support... " >&6; } - # Check whether --enable-headful was given. -if test "${enable_headful+set}" = set; then : - enableval=$enable_headful; SUPPORT_HEADFUL=${enable_headful} -else - SUPPORT_HEADFUL=yes -fi - - - SUPPORT_HEADLESS=yes - BUILD_HEADLESS="BUILD_HEADLESS:=true" - - if test "x$SUPPORT_HEADFUL" = xyes; then - # We are building both headful and headless. - headful_msg="include support for both headful and headless" - fi - - if test "x$SUPPORT_HEADFUL" = xno; then - # Thus we are building headless only. - BUILD_HEADLESS="BUILD_HEADLESS:=true" - headful_msg="headless only" - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $headful_msg" >&5 -$as_echo "$headful_msg" >&6; } - - + # Should we build a JDK without a graphical UI? + { $as_echo "$as_me:${as_lineno-$LINENO}: checking headless only" >&5 +$as_echo_n "checking headless only... " >&6; } + # Check whether --enable-headless-only was given. +if test "${enable_headless_only+set}" = set; then : + enableval=$enable_headless_only; +fi + + + if test "x$enable_headless_only" = "xyes"; then + ENABLE_HEADLESS_ONLY="true" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + elif test "x$enable_headless_only" = "xno"; then + ENABLE_HEADLESS_ONLY="false" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + elif test "x$enable_headless_only" = "x"; then + ENABLE_HEADLESS_ONLY="false" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + else + as_fn_error $? "--enable-headless-only can only take yes or no" "$LINENO" 5 + fi @@ -31475,8 +31461,7 @@ # inlining of system functions and intrinsics. SYSROOT_CFLAGS="-I-xbuiltin -I$SYSROOT/usr/include" SYSROOT_LDFLAGS="-L$SYSROOT/usr/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L$SYSROOT/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L$SYSROOT/usr/ccs/lib$OPENJDK_TARGET_CPU_ISADIR" + -L$SYSROOT/lib$OPENJDK_TARGET_CPU_ISADIR" fi elif test "x$TOOLCHAIN_TYPE" = xgcc; then SYSROOT_CFLAGS="--sysroot=$SYSROOT" @@ -32992,14 +32977,6 @@ fi - # For solaris we really need solaris tools, and not the GNU equivalent. - # The build tools on Solaris reside in /usr/ccs (C Compilation System), - # so add that to path before starting to probe. - # FIXME: This was originally only done for AS,NM,GNM,STRIP,OBJCOPY,OBJDUMP. - if test "x$OPENJDK_BUILD_OS" = xsolaris; then - PATH="/usr/ccs/bin:$PATH" - fi - # Finally add TOOLCHAIN_PATH at the beginning, to allow --with-tools-dir to # override all other locations. if test "x$TOOLCHAIN_PATH" != x; then @@ -44000,8 +43977,7 @@ # inlining of system functions and intrinsics. BUILD_SYSROOT_CFLAGS="-I-xbuiltin -I$BUILD_SYSROOT/usr/include" BUILD_SYSROOT_LDFLAGS="-L$BUILD_SYSROOT/usr/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L$BUILD_SYSROOT/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L$BUILD_SYSROOT/usr/ccs/lib$OPENJDK_TARGET_CPU_ISADIR" + -L$BUILD_SYSROOT/lib$OPENJDK_TARGET_CPU_ISADIR" fi elif test "x$TOOLCHAIN_TYPE" = xgcc; then BUILD_SYSROOT_CFLAGS="--sysroot=$BUILD_SYSROOT" @@ -53060,13 +53036,9 @@ # No X11 support on windows or macosx NEEDS_LIB_X11=false else - if test "x$SUPPORT_HEADFUL" = xno; then - # No X11 support if building headless-only - NEEDS_LIB_X11=false - else - # All other instances need X11 - NEEDS_LIB_X11=true - fi + # All other instances need X11, even if building headless only, libawt still + # needs X11 headers. + NEEDS_LIB_X11=true fi # Check if cups is needed @@ -56730,9 +56702,7 @@ if test "x$OPENJDK_TARGET_OS" = xsolaris; then OPENWIN_HOME="/usr/openwin" X_CFLAGS="-I$SYSROOT$OPENWIN_HOME/include -I$SYSROOT$OPENWIN_HOME/include/X11/extensions" - X_LIBS="-L$SYSROOT$OPENWIN_HOME/sfw/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L$SYSROOT$OPENWIN_HOME/lib$OPENJDK_TARGET_CPU_ISADIR \ - -R$OPENWIN_HOME/sfw/lib$OPENJDK_TARGET_CPU_ISADIR \ + X_LIBS="-L$SYSROOT$OPENWIN_HOME/lib$OPENJDK_TARGET_CPU_ISADIR \ -R$OPENWIN_HOME/lib$OPENJDK_TARGET_CPU_ISADIR" fi @@ -56911,23 +56881,6 @@ fi if test "x$CUPS_FOUND" = xno; then - # Getting nervous now? Lets poke around for standard Solaris third-party - # package installation locations. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cups headers" >&5 -$as_echo_n "checking for cups headers... " >&6; } - if test -s $SYSROOT/opt/sfw/cups/include/cups/cups.h; then - # An SFW package seems to be installed! - CUPS_FOUND=yes - CUPS_CFLAGS="-I$SYSROOT/opt/sfw/cups/include" - elif test -s $SYSROOT/opt/csw/include/cups/cups.h; then - # A CSW package seems to be installed! - CUPS_FOUND=yes - CUPS_CFLAGS="-I$SYSROOT/opt/csw/include" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_FOUND" >&5 -$as_echo "$CUPS_FOUND" >&6; } - fi - if test "x$CUPS_FOUND" = xno; then # Print a helpful message on how to acquire the necessary build dependency. # cups is the help tag: freetype, cups, alsa etc @@ -61167,346 +61120,6 @@ fi if test "x$FOUND_FREETYPE" != xyes; then - FREETYPE_BASE_DIR="$SYSROOT/usr/sfw" - - POTENTIAL_FREETYPE_INCLUDE_PATH="$FREETYPE_BASE_DIR/include" - POTENTIAL_FREETYPE_LIB_PATH="$FREETYPE_BASE_DIR/lib" - METHOD="well-known location" - - # Let's start with an optimistic view of the world :-) - FOUND_FREETYPE=yes - - # First look for the canonical freetype main include file ft2build.h. - if ! test -s "$POTENTIAL_FREETYPE_INCLUDE_PATH/ft2build.h"; then - # Oh no! Let's try in the freetype2 directory. This is needed at least at Mac OS X Yosemite. - POTENTIAL_FREETYPE_INCLUDE_PATH="$POTENTIAL_FREETYPE_INCLUDE_PATH/freetype2" - if ! test -s "$POTENTIAL_FREETYPE_INCLUDE_PATH/ft2build.h"; then - # Fail. - FOUND_FREETYPE=no - fi - fi - - if test "x$FOUND_FREETYPE" = xyes; then - # Include file found, let's continue the sanity check. - { $as_echo "$as_me:${as_lineno-$LINENO}: Found freetype include files at $POTENTIAL_FREETYPE_INCLUDE_PATH using $METHOD" >&5 -$as_echo "$as_me: Found freetype include files at $POTENTIAL_FREETYPE_INCLUDE_PATH using $METHOD" >&6;} - - # Reset to default value - FREETYPE_BASE_NAME=freetype - FREETYPE_LIB_NAME="${LIBRARY_PREFIX}${FREETYPE_BASE_NAME}${SHARED_LIBRARY_SUFFIX}" - if ! test -s "$POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME"; then - if test "x$OPENJDK_TARGET_OS" = xmacosx \ - && test -s "$POTENTIAL_FREETYPE_LIB_PATH/${LIBRARY_PREFIX}freetype.6${SHARED_LIBRARY_SUFFIX}"; then - # On Mac OS X Yosemite, the symlink from libfreetype.dylib to libfreetype.6.dylib disappeared. Check - # for the .6 version explicitly. - FREETYPE_BASE_NAME=freetype.6 - FREETYPE_LIB_NAME="${LIBRARY_PREFIX}${FREETYPE_BASE_NAME}${SHARED_LIBRARY_SUFFIX}" - { $as_echo "$as_me:${as_lineno-$LINENO}: Compensating for missing symlink by using version 6 explicitly" >&5 -$as_echo "$as_me: Compensating for missing symlink by using version 6 explicitly" >&6;} - else - { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find $POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME. Ignoring location." >&5 -$as_echo "$as_me: Could not find $POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME. Ignoring location." >&6;} - FOUND_FREETYPE=no - fi - else - if test "x$OPENJDK_TARGET_OS" = xwindows; then - # On Windows, we will need both .lib and .dll file. - if ! test -s "$POTENTIAL_FREETYPE_LIB_PATH/${FREETYPE_BASE_NAME}.lib"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find $POTENTIAL_FREETYPE_LIB_PATH/${FREETYPE_BASE_NAME}.lib. Ignoring location." >&5 -$as_echo "$as_me: Could not find $POTENTIAL_FREETYPE_LIB_PATH/${FREETYPE_BASE_NAME}.lib. Ignoring location." >&6;} - FOUND_FREETYPE=no - fi - elif test "x$OPENJDK_TARGET_OS" = xsolaris \ - && test -s "$POTENTIAL_FREETYPE_LIB_PATH$OPENJDK_TARGET_CPU_ISADIR/$FREETYPE_LIB_NAME"; then - # Found lib in isa dir, use that instead. - POTENTIAL_FREETYPE_LIB_PATH="$POTENTIAL_FREETYPE_LIB_PATH$OPENJDK_TARGET_CPU_ISADIR" - { $as_echo "$as_me:${as_lineno-$LINENO}: Rewriting to use $POTENTIAL_FREETYPE_LIB_PATH instead" >&5 -$as_echo "$as_me: Rewriting to use $POTENTIAL_FREETYPE_LIB_PATH instead" >&6;} - fi - fi - fi - - if test "x$FOUND_FREETYPE" = xyes; then - - # Only process if variable expands to non-empty - - if test "x$POTENTIAL_FREETYPE_INCLUDE_PATH" != x; then - if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then - - # Input might be given as Windows format, start by converting to - # unix format. - path="$POTENTIAL_FREETYPE_INCLUDE_PATH" - new_path=`$CYGPATH -u "$path"` - - # Cygwin tries to hide some aspects of the Windows file system, such that binaries are - # named .exe but called without that suffix. Therefore, "foo" and "foo.exe" are considered - # the same file, most of the time (as in "test -f"). But not when running cygpath -s, then - # "foo.exe" is OK but "foo" is an error. - # - # This test is therefore slightly more accurate than "test -f" to check for file precense. - # It is also a way to make sure we got the proper file name for the real test later on. - test_shortpath=`$CYGPATH -s -m "$new_path" 2> /dev/null` - if test "x$test_shortpath" = x; then - { $as_echo "$as_me:${as_lineno-$LINENO}: The path of POTENTIAL_FREETYPE_INCLUDE_PATH, which resolves as \"$path\", is invalid." >&5 -$as_echo "$as_me: The path of POTENTIAL_FREETYPE_INCLUDE_PATH, which resolves as \"$path\", is invalid." >&6;} - as_fn_error $? "Cannot locate the the path of POTENTIAL_FREETYPE_INCLUDE_PATH" "$LINENO" 5 - fi - - # Call helper function which possibly converts this using DOS-style short mode. - # If so, the updated path is stored in $new_path. - - input_path="$new_path" - # Check if we need to convert this using DOS-style short mode. If the path - # contains just simple characters, use it. Otherwise (spaces, weird characters), - # take no chances and rewrite it. - # Note: m4 eats our [], so we need to use [ and ] instead. - has_forbidden_chars=`$ECHO "$input_path" | $GREP [^-._/a-zA-Z0-9]` - if test "x$has_forbidden_chars" != x; then - # Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \) - shortmode_path=`$CYGPATH -s -m -a "$input_path"` - path_after_shortmode=`$CYGPATH -u "$shortmode_path"` - if test "x$path_after_shortmode" != "x$input_to_shortpath"; then - # Going to short mode and back again did indeed matter. Since short mode is - # case insensitive, let's make it lowercase to improve readability. - shortmode_path=`$ECHO "$shortmode_path" | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - # Now convert it back to Unix-style (cygpath) - input_path=`$CYGPATH -u "$shortmode_path"` - new_path="$input_path" - fi - fi - - test_cygdrive_prefix=`$ECHO $input_path | $GREP ^/cygdrive/` - if test "x$test_cygdrive_prefix" = x; then - # As a simple fix, exclude /usr/bin since it's not a real path. - if test "x`$ECHO $new_path | $GREP ^/usr/bin/`" = x; then - # The path is in a Cygwin special directory (e.g. /home). We need this converted to - # a path prefixed by /cygdrive for fixpath to work. - new_path="$CYGWIN_ROOT_PATH$input_path" - fi - fi - - - if test "x$path" != "x$new_path"; then - POTENTIAL_FREETYPE_INCLUDE_PATH="$new_path" - { $as_echo "$as_me:${as_lineno-$LINENO}: Rewriting POTENTIAL_FREETYPE_INCLUDE_PATH to \"$new_path\"" >&5 -$as_echo "$as_me: Rewriting POTENTIAL_FREETYPE_INCLUDE_PATH to \"$new_path\"" >&6;} - fi - - elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then - - path="$POTENTIAL_FREETYPE_INCLUDE_PATH" - has_colon=`$ECHO $path | $GREP ^.:` - new_path="$path" - if test "x$has_colon" = x; then - # Not in mixed or Windows style, start by that. - new_path=`cmd //c echo $path` - fi - - - input_path="$new_path" - # Check if we need to convert this using DOS-style short mode. If the path - # contains just simple characters, use it. Otherwise (spaces, weird characters), - # take no chances and rewrite it. - # Note: m4 eats our [], so we need to use [ and ] instead. - has_forbidden_chars=`$ECHO "$input_path" | $GREP [^-_/:a-zA-Z0-9]` - if test "x$has_forbidden_chars" != x; then - # Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \) - new_path=`cmd /c "for %A in (\"$input_path\") do @echo %~sA"|$TR \\\\\\\\ / | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - fi - - - windows_path="$new_path" - if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then - unix_path=`$CYGPATH -u "$windows_path"` - new_path="$unix_path" - elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then - unix_path=`$ECHO "$windows_path" | $SED -e 's,^\\(.\\):,/\\1,g' -e 's,\\\\,/,g'` - new_path="$unix_path" - fi - - if test "x$path" != "x$new_path"; then - POTENTIAL_FREETYPE_INCLUDE_PATH="$new_path" - { $as_echo "$as_me:${as_lineno-$LINENO}: Rewriting POTENTIAL_FREETYPE_INCLUDE_PATH to \"$new_path\"" >&5 -$as_echo "$as_me: Rewriting POTENTIAL_FREETYPE_INCLUDE_PATH to \"$new_path\"" >&6;} - fi - - # Save the first 10 bytes of this path to the storage, so fixpath can work. - all_fixpath_prefixes=("${all_fixpath_prefixes[@]}" "${new_path:0:10}") - - else - # We're on a unix platform. Hooray! :) - path="$POTENTIAL_FREETYPE_INCLUDE_PATH" - has_space=`$ECHO "$path" | $GREP " "` - if test "x$has_space" != x; then - { $as_echo "$as_me:${as_lineno-$LINENO}: The path of POTENTIAL_FREETYPE_INCLUDE_PATH, which resolves as \"$path\", is invalid." >&5 -$as_echo "$as_me: The path of POTENTIAL_FREETYPE_INCLUDE_PATH, which resolves as \"$path\", is invalid." >&6;} - as_fn_error $? "Spaces are not allowed in this path." "$LINENO" 5 - fi - - # Use eval to expand a potential ~ - eval path="$path" - if test ! -f "$path" && test ! -d "$path"; then - as_fn_error $? "The path of POTENTIAL_FREETYPE_INCLUDE_PATH, which resolves as \"$path\", is not found." "$LINENO" 5 - fi - - if test -d "$path"; then - POTENTIAL_FREETYPE_INCLUDE_PATH="`cd "$path"; $THEPWDCMD -L`" - else - dir="`$DIRNAME "$path"`" - base="`$BASENAME "$path"`" - POTENTIAL_FREETYPE_INCLUDE_PATH="`cd "$dir"; $THEPWDCMD -L`/$base" - fi - fi - fi - - - # Only process if variable expands to non-empty - - if test "x$POTENTIAL_FREETYPE_LIB_PATH" != x; then - if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then - - # Input might be given as Windows format, start by converting to - # unix format. - path="$POTENTIAL_FREETYPE_LIB_PATH" - new_path=`$CYGPATH -u "$path"` - - # Cygwin tries to hide some aspects of the Windows file system, such that binaries are - # named .exe but called without that suffix. Therefore, "foo" and "foo.exe" are considered - # the same file, most of the time (as in "test -f"). But not when running cygpath -s, then - # "foo.exe" is OK but "foo" is an error. - # - # This test is therefore slightly more accurate than "test -f" to check for file precense. - # It is also a way to make sure we got the proper file name for the real test later on. - test_shortpath=`$CYGPATH -s -m "$new_path" 2> /dev/null` - if test "x$test_shortpath" = x; then - { $as_echo "$as_me:${as_lineno-$LINENO}: The path of POTENTIAL_FREETYPE_LIB_PATH, which resolves as \"$path\", is invalid." >&5 -$as_echo "$as_me: The path of POTENTIAL_FREETYPE_LIB_PATH, which resolves as \"$path\", is invalid." >&6;} - as_fn_error $? "Cannot locate the the path of POTENTIAL_FREETYPE_LIB_PATH" "$LINENO" 5 - fi - - # Call helper function which possibly converts this using DOS-style short mode. - # If so, the updated path is stored in $new_path. - - input_path="$new_path" - # Check if we need to convert this using DOS-style short mode. If the path - # contains just simple characters, use it. Otherwise (spaces, weird characters), - # take no chances and rewrite it. - # Note: m4 eats our [], so we need to use [ and ] instead. - has_forbidden_chars=`$ECHO "$input_path" | $GREP [^-._/a-zA-Z0-9]` - if test "x$has_forbidden_chars" != x; then - # Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \) - shortmode_path=`$CYGPATH -s -m -a "$input_path"` - path_after_shortmode=`$CYGPATH -u "$shortmode_path"` - if test "x$path_after_shortmode" != "x$input_to_shortpath"; then - # Going to short mode and back again did indeed matter. Since short mode is - # case insensitive, let's make it lowercase to improve readability. - shortmode_path=`$ECHO "$shortmode_path" | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - # Now convert it back to Unix-style (cygpath) - input_path=`$CYGPATH -u "$shortmode_path"` - new_path="$input_path" - fi - fi - - test_cygdrive_prefix=`$ECHO $input_path | $GREP ^/cygdrive/` - if test "x$test_cygdrive_prefix" = x; then - # As a simple fix, exclude /usr/bin since it's not a real path. - if test "x`$ECHO $new_path | $GREP ^/usr/bin/`" = x; then - # The path is in a Cygwin special directory (e.g. /home). We need this converted to - # a path prefixed by /cygdrive for fixpath to work. - new_path="$CYGWIN_ROOT_PATH$input_path" - fi - fi - - - if test "x$path" != "x$new_path"; then - POTENTIAL_FREETYPE_LIB_PATH="$new_path" - { $as_echo "$as_me:${as_lineno-$LINENO}: Rewriting POTENTIAL_FREETYPE_LIB_PATH to \"$new_path\"" >&5 -$as_echo "$as_me: Rewriting POTENTIAL_FREETYPE_LIB_PATH to \"$new_path\"" >&6;} - fi - - elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then - - path="$POTENTIAL_FREETYPE_LIB_PATH" - has_colon=`$ECHO $path | $GREP ^.:` - new_path="$path" - if test "x$has_colon" = x; then - # Not in mixed or Windows style, start by that. - new_path=`cmd //c echo $path` - fi - - - input_path="$new_path" - # Check if we need to convert this using DOS-style short mode. If the path - # contains just simple characters, use it. Otherwise (spaces, weird characters), - # take no chances and rewrite it. - # Note: m4 eats our [], so we need to use [ and ] instead. - has_forbidden_chars=`$ECHO "$input_path" | $GREP [^-_/:a-zA-Z0-9]` - if test "x$has_forbidden_chars" != x; then - # Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \) - new_path=`cmd /c "for %A in (\"$input_path\") do @echo %~sA"|$TR \\\\\\\\ / | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - fi - - - windows_path="$new_path" - if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then - unix_path=`$CYGPATH -u "$windows_path"` - new_path="$unix_path" - elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then - unix_path=`$ECHO "$windows_path" | $SED -e 's,^\\(.\\):,/\\1,g' -e 's,\\\\,/,g'` - new_path="$unix_path" - fi - - if test "x$path" != "x$new_path"; then - POTENTIAL_FREETYPE_LIB_PATH="$new_path" - { $as_echo "$as_me:${as_lineno-$LINENO}: Rewriting POTENTIAL_FREETYPE_LIB_PATH to \"$new_path\"" >&5 -$as_echo "$as_me: Rewriting POTENTIAL_FREETYPE_LIB_PATH to \"$new_path\"" >&6;} - fi - - # Save the first 10 bytes of this path to the storage, so fixpath can work. - all_fixpath_prefixes=("${all_fixpath_prefixes[@]}" "${new_path:0:10}") - - else - # We're on a unix platform. Hooray! :) - path="$POTENTIAL_FREETYPE_LIB_PATH" - has_space=`$ECHO "$path" | $GREP " "` - if test "x$has_space" != x; then - { $as_echo "$as_me:${as_lineno-$LINENO}: The path of POTENTIAL_FREETYPE_LIB_PATH, which resolves as \"$path\", is invalid." >&5 -$as_echo "$as_me: The path of POTENTIAL_FREETYPE_LIB_PATH, which resolves as \"$path\", is invalid." >&6;} - as_fn_error $? "Spaces are not allowed in this path." "$LINENO" 5 - fi - - # Use eval to expand a potential ~ - eval path="$path" - if test ! -f "$path" && test ! -d "$path"; then - as_fn_error $? "The path of POTENTIAL_FREETYPE_LIB_PATH, which resolves as \"$path\", is not found." "$LINENO" 5 - fi - - if test -d "$path"; then - POTENTIAL_FREETYPE_LIB_PATH="`cd "$path"; $THEPWDCMD -L`" - else - dir="`$DIRNAME "$path"`" - base="`$BASENAME "$path"`" - POTENTIAL_FREETYPE_LIB_PATH="`cd "$dir"; $THEPWDCMD -L`/$base" - fi - fi - fi - - - FREETYPE_INCLUDE_PATH="$POTENTIAL_FREETYPE_INCLUDE_PATH" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for freetype includes" >&5 -$as_echo_n "checking for freetype includes... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FREETYPE_INCLUDE_PATH" >&5 -$as_echo "$FREETYPE_INCLUDE_PATH" >&6; } - FREETYPE_LIB_PATH="$POTENTIAL_FREETYPE_LIB_PATH" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for freetype libraries" >&5 -$as_echo_n "checking for freetype libraries... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FREETYPE_LIB_PATH" >&5 -$as_echo "$FREETYPE_LIB_PATH" >&6; } - fi - - fi - - if test "x$FOUND_FREETYPE" != xyes; then FREETYPE_BASE_DIR="$SYSROOT/usr" if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/jdk-options.m4 --- a/common/autoconf/jdk-options.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/jdk-options.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -134,32 +134,25 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS], [ - # Should we build a JDK/JVM with headful support (ie a graphical ui)? - # We always build headless support. - AC_MSG_CHECKING([headful support]) - AC_ARG_ENABLE([headful], [AS_HELP_STRING([--disable-headful], - [disable building headful support (graphical UI support) @<:@enabled@:>@])], - [SUPPORT_HEADFUL=${enable_headful}], [SUPPORT_HEADFUL=yes]) + # Should we build a JDK without a graphical UI? + AC_MSG_CHECKING([headless only]) + AC_ARG_ENABLE([headless-only], [AS_HELP_STRING([--enable-headless-only], + [only build headless (no GUI) support @<:@disabled@:>@])]) - SUPPORT_HEADLESS=yes - BUILD_HEADLESS="BUILD_HEADLESS:=true" - - if test "x$SUPPORT_HEADFUL" = xyes; then - # We are building both headful and headless. - headful_msg="include support for both headful and headless" + if test "x$enable_headless_only" = "xyes"; then + ENABLE_HEADLESS_ONLY="true" + AC_MSG_RESULT([yes]) + elif test "x$enable_headless_only" = "xno"; then + ENABLE_HEADLESS_ONLY="false" + AC_MSG_RESULT([no]) + elif test "x$enable_headless_only" = "x"; then + ENABLE_HEADLESS_ONLY="false" + AC_MSG_RESULT([no]) + else + AC_MSG_ERROR([--enable-headless-only can only take yes or no]) fi - if test "x$SUPPORT_HEADFUL" = xno; then - # Thus we are building headless only. - BUILD_HEADLESS="BUILD_HEADLESS:=true" - headful_msg="headless only" - fi - - AC_MSG_RESULT([$headful_msg]) - - AC_SUBST(SUPPORT_HEADLESS) - AC_SUBST(SUPPORT_HEADFUL) - AC_SUBST(BUILD_HEADLESS) + AC_SUBST(ENABLE_HEADLESS_ONLY) # Choose cacerts source file AC_ARG_WITH(cacerts-file, [AS_HELP_STRING([--with-cacerts-file], diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/lib-cups.m4 --- a/common/autoconf/lib-cups.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/lib-cups.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -76,21 +76,6 @@ ]) fi if test "x$CUPS_FOUND" = xno; then - # Getting nervous now? Lets poke around for standard Solaris third-party - # package installation locations. - AC_MSG_CHECKING([for cups headers]) - if test -s $SYSROOT/opt/sfw/cups/include/cups/cups.h; then - # An SFW package seems to be installed! - CUPS_FOUND=yes - CUPS_CFLAGS="-I$SYSROOT/opt/sfw/cups/include" - elif test -s $SYSROOT/opt/csw/include/cups/cups.h; then - # A CSW package seems to be installed! - CUPS_FOUND=yes - CUPS_CFLAGS="-I$SYSROOT/opt/csw/include" - fi - AC_MSG_RESULT([$CUPS_FOUND]) - fi - if test "x$CUPS_FOUND" = xno; then HELP_MSG_MISSING_DEPENDENCY([cups]) AC_MSG_ERROR([Could not find cups! $HELP_MSG ]) fi diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/lib-freetype.m4 --- a/common/autoconf/lib-freetype.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/lib-freetype.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -358,11 +358,6 @@ fi if test "x$FOUND_FREETYPE" != xyes; then - FREETYPE_BASE_DIR="$SYSROOT/usr/sfw" - LIB_CHECK_POTENTIAL_FREETYPE([$FREETYPE_BASE_DIR/include], [$FREETYPE_BASE_DIR/lib], [well-known location]) - fi - - if test "x$FOUND_FREETYPE" != xyes; then FREETYPE_BASE_DIR="$SYSROOT/usr" if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then LIB_CHECK_POTENTIAL_FREETYPE([$FREETYPE_BASE_DIR/include], [$FREETYPE_BASE_DIR/lib/x86_64-linux-gnu], [well-known location]) diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/lib-x11.m4 --- a/common/autoconf/lib-x11.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/lib-x11.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -91,9 +91,7 @@ if test "x$OPENJDK_TARGET_OS" = xsolaris; then OPENWIN_HOME="/usr/openwin" X_CFLAGS="-I$SYSROOT$OPENWIN_HOME/include -I$SYSROOT$OPENWIN_HOME/include/X11/extensions" - X_LIBS="-L$SYSROOT$OPENWIN_HOME/sfw/lib$OPENJDK_TARGET_CPU_ISADIR \ - -L$SYSROOT$OPENWIN_HOME/lib$OPENJDK_TARGET_CPU_ISADIR \ - -R$OPENWIN_HOME/sfw/lib$OPENJDK_TARGET_CPU_ISADIR \ + X_LIBS="-L$SYSROOT$OPENWIN_HOME/lib$OPENJDK_TARGET_CPU_ISADIR \ -R$OPENWIN_HOME/lib$OPENJDK_TARGET_CPU_ISADIR" fi diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/libraries.m4 --- a/common/autoconf/libraries.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/libraries.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -42,13 +42,9 @@ # No X11 support on windows or macosx NEEDS_LIB_X11=false else - if test "x$SUPPORT_HEADFUL" = xno; then - # No X11 support if building headless-only - NEEDS_LIB_X11=false - else - # All other instances need X11 - NEEDS_LIB_X11=true - fi + # All other instances need X11, even if building headless only, libawt still + # needs X11 headers. + NEEDS_LIB_X11=true fi # Check if cups is needed diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/spec.gmk.in --- a/common/autoconf/spec.gmk.in Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/spec.gmk.in Wed Jul 05 22:15:09 2017 +0200 @@ -241,12 +241,8 @@ # Control use of precompiled header in hotspot libjvm build USE_PRECOMPILED_HEADER := @USE_PRECOMPILED_HEADER@ -# Should we compile support for running with a graphical UI? (ie headful) -# Should we compile support for running without? (ie headless) -SUPPORT_HEADFUL:=@SUPPORT_HEADFUL@ -SUPPORT_HEADLESS:=@SUPPORT_HEADLESS@ -# Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options. -@BUILD_HEADLESS@ +# Only build headless support or not +ENABLE_HEADLESS_ONLY := @ENABLE_HEADLESS_ONLY@ # Legacy support USE_NEW_HOTSPOT_BUILD:=@USE_NEW_HOTSPOT_BUILD@ diff -r b4b4c1119f39 -r beab448904d3 common/autoconf/toolchain.m4 --- a/common/autoconf/toolchain.m4 Thu Sep 22 18:32:20 2016 +0000 +++ b/common/autoconf/toolchain.m4 Wed Jul 05 22:15:09 2017 +0200 @@ -294,14 +294,6 @@ fi AC_SUBST(TOOLCHAIN_VERSION) - # For solaris we really need solaris tools, and not the GNU equivalent. - # The build tools on Solaris reside in /usr/ccs (C Compilation System), - # so add that to path before starting to probe. - # FIXME: This was originally only done for AS,NM,GNM,STRIP,OBJCOPY,OBJDUMP. - if test "x$OPENJDK_BUILD_OS" = xsolaris; then - PATH="/usr/ccs/bin:$PATH" - fi - # Finally add TOOLCHAIN_PATH at the beginning, to allow --with-tools-dir to # override all other locations. if test "x$TOOLCHAIN_PATH" != x; then diff -r b4b4c1119f39 -r beab448904d3 common/conf/jib-profiles.js --- a/common/conf/jib-profiles.js Thu Sep 22 18:32:20 2016 +0000 +++ b/common/conf/jib-profiles.js Wed Jul 05 22:15:09 2017 +0200 @@ -224,6 +224,23 @@ common.configure_args_slowdebug = ["--with-debug-level=slowdebug"], common.organization = "jpg.infra.builddeps" + var boot_jdk_revision = "8"; + var boot_jdk_subdirpart = "1.8.0"; + // JDK 8 does not work on sparc M7 cpus, need a newer update when building + // on such hardware. + if (input.build_cpu == "sparcv9") { + var cpu_brand = $EXEC("bash -c \"kstat -m cpu_info | grep brand | head -n1 | awk '{ print \$2 }'\""); + if (cpu_brand.trim() == 'SPARC-M7') { + boot_jdk_revision = "8u20"; + boot_jdk_subdirpart = "1.8.0_20"; + } + } + common.boot_jdk_revision = boot_jdk_revision; + common.boot_jdk_subdirpart = boot_jdk_subdirpart; + common.boot_jdk_home = input.get("boot_jdk", "home_path") + "/jdk" + + common.boot_jdk_subdirpart + + (input.build_os == "macosx" ? ".jdk/Contents/Home" : ""); + return common; }; @@ -333,8 +350,11 @@ "run-test": { target_os: input.build_os, target_cpu: input.build_cpu, - dependencies: [ "jtreg", "gnumake" ], - labels: "test" + dependencies: [ "jtreg", "gnumake", "boot_jdk" ], + labels: "test", + environment: { + "JT_JAVA": common.boot_jdk_home + } } }; profiles = concatObjects(profiles, testOnlyProfiles); @@ -357,18 +377,6 @@ var boot_jdk_platform = input.build_os + "-" + (input.build_cpu == "x86" ? "i586" : input.build_cpu); - var boot_jdk_revision = "8"; - var boot_jdk_subdirpart = "1.8.0"; - // JDK 8 does not work on sparc M7 cpus, need a newer update when building - // on such hardware. - if (input.build_cpu == "sparcv9") { - var cpu_brand = $EXEC("bash -c \"kstat -m cpu_info | grep brand | head -n1 | awk '{ print \$2 }'\""); - if (cpu_brand.trim() == 'SPARC-M7') { - boot_jdk_revision = "8u20"; - boot_jdk_subdirpart = "1.8.0_20"; - } - } - var devkit_platform_revisions = { linux_x64: "gcc4.9.2-OEL6.4+1.0", macosx_x64: "Xcode6.3-MacOSX10.9+1.0", @@ -386,12 +394,12 @@ boot_jdk: { server: "javare", module: "jdk", - revision: boot_jdk_revision, + revision: common.boot_jdk_revision, checksum_file: boot_jdk_platform + "/MD5_VALUES", - file: boot_jdk_platform + "/jdk-" + boot_jdk_revision + "-" + boot_jdk_platform + ".tar.gz", - configure_args: (input.build_os == "macosx" - ? "--with-boot-jdk=" + input.get("boot_jdk", "install_path") + "/jdk" + boot_jdk_subdirpart + ".jdk/Contents/Home" - : "--with-boot-jdk=" + input.get("boot_jdk", "install_path") + "/jdk" + boot_jdk_subdirpart) + file: boot_jdk_platform + "/jdk-" + common.boot_jdk_revision + + "-" + boot_jdk_platform + ".tar.gz", + configure_args: "--with-boot-jdk=" + common.boot_jdk_home, + environment_path: common.boot_jdk_home }, devkit: { @@ -420,7 +428,8 @@ build_number: "b03", checksum_file: "MD5_VALUES", file: "jtreg_bin-4.2.zip", - environment_name: "JT_HOME" + environment_name: "JT_HOME", + environment_path: input.get("jtreg", "install_path") + "/jtreg/bin" }, gnumake: { diff -r b4b4c1119f39 -r beab448904d3 make/MainSupport.gmk --- a/make/MainSupport.gmk Thu Sep 22 18:32:20 2016 +0000 +++ b/make/MainSupport.gmk Wed Jul 05 22:15:09 2017 +0200 @@ -31,11 +31,13 @@ _MAINSUPPORT_GMK := 1 # Run the tests specified by $1, with PRODUCT_HOME specified by $2 +# JT_JAVA is picked up by the jtreg launcher and used to run Jtreg itself. define RunTests ($(CD) $(SRC_ROOT)/test && $(MAKE) $(MAKE_ARGS) -j1 -k MAKEFLAGS= \ JT_HOME=$(JT_HOME) PRODUCT_HOME=$(strip $2) \ TEST_IMAGE_DIR=$(TEST_IMAGE_DIR) \ ALT_OUTPUTDIR=$(OUTPUT_ROOT) TEST_JOBS=$(TEST_JOBS) \ + JT_JAVA=$(BOOT_JDK) \ JOBS=$(JOBS) $1) || true endef diff -r b4b4c1119f39 -r beab448904d3 test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/GatherDiagnosticInfoObserver.java --- a/test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/GatherDiagnosticInfoObserver.java Thu Sep 22 18:32:20 2016 +0000 +++ b/test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/GatherDiagnosticInfoObserver.java Wed Jul 05 22:15:09 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2016, 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 @@ -26,8 +26,7 @@ import com.sun.javatest.Harness; import com.sun.javatest.Parameters; import com.sun.javatest.TestResult; -import com.sun.javatest.regtest.RegressionParameters; -import com.sun.javatest.regtest.OS; +import com.sun.javatest.InterviewParameters; import jdk.test.failurehandler.*; import java.io.File; @@ -119,7 +118,7 @@ @Override public void startingTestRun(Parameters params) { // TODO find a better way to get JDKs - RegressionParameters rp = (RegressionParameters) params; + InterviewParameters rp = (InterviewParameters) params; Map map = new HashMap<>(); rp.save(map); compileJdk = (String) map.get("regtest.compilejdk"); diff -r b4b4c1119f39 -r beab448904d3 test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/GatherProcessInfoTimeoutHandler.java --- a/test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/GatherProcessInfoTimeoutHandler.java Thu Sep 22 18:32:20 2016 +0000 +++ b/test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/GatherProcessInfoTimeoutHandler.java Wed Jul 05 22:15:09 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2016, 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 @@ -23,7 +23,6 @@ package jdk.test.failurehandler.jtreg; -import com.sun.javatest.regtest.OS; import com.sun.javatest.regtest.TimeoutHandler; import jdk.test.failurehandler.*; diff -r b4b4c1119f39 -r beab448904d3 test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/OS.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/OS.java Wed Jul 05 22:15:09 2017 +0200 @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2016, 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. + * + * 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. + */ + +package jdk.test.failurehandler.jtreg; + +// Stripped down version of jtreg internal class com.sun.javatest.regtest.config.OS +class OS { + public final String family; + + private static OS current; + + public static OS current() { + if (current == null) { + String name = System.getProperty("os.name"); + current = new OS(name); + } + return current; + } + + private OS(String name) { + if (name.startsWith("Linux")) { + family = "linux"; + } else if (name.startsWith("Mac") || name.startsWith("Darwin")) { + family = "mac"; + } else if (name.startsWith("SunOS") || name.startsWith("Solaris")) { + family = "solaris"; + } else if (name.startsWith("Windows")) { + family = "windows"; + } else { + // use first word of name + family = name.replaceFirst("^([^ ]+).*", "$1"); + } + } +} + + diff -r b4b4c1119f39 -r beab448904d3 test/lib/jdk/test/lib/Platform.java --- a/test/lib/jdk/test/lib/Platform.java Thu Sep 22 18:32:20 2016 +0000 +++ b/test/lib/jdk/test/lib/Platform.java Wed Jul 05 22:15:09 2017 +0200 @@ -116,6 +116,14 @@ return (jdkDebug.toLowerCase().contains("debug")); } + public static boolean isSlowDebugBuild() { + return (jdkDebug.toLowerCase().equals("slowdebug")); + } + + public static boolean isFastDebugBuild() { + return (jdkDebug.toLowerCase().equals("fastdebug")); + } + public static String getVMVersion() { return vmVersion; } diff -r b4b4c1119f39 -r beab448904d3 test/lib/jdk/test/lib/unsafe/UnsafeHelper.java --- a/test/lib/jdk/test/lib/unsafe/UnsafeHelper.java Thu Sep 22 18:32:20 2016 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2016, 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. - * - * 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. - */ - -package jdk.test.lib.unsafe; - -import jdk.internal.misc.Unsafe; -import java.lang.reflect.Field; - - -/** - * Helper class for accessing the jdk.internal.misc.Unsafe functionality - */ -public final class UnsafeHelper { - private static Unsafe unsafe = null; - - /** - * @return Unsafe instance. - */ - public static synchronized Unsafe getUnsafe() { - if (unsafe == null) { - try { - Field f = Unsafe.class.getDeclaredField("theUnsafe"); - f.setAccessible(true); - unsafe = (Unsafe) f.get(null); - } catch (NoSuchFieldException | IllegalAccessException e) { - throw new RuntimeException("Unable to get Unsafe instance.", e); - } - } - return unsafe; - } -} -