--- old/common/autoconf/generated-configure.sh 2015-11-21 22:02:31.125716361 +0900 +++ new/common/autoconf/generated-configure.sh 2015-11-21 22:02:30.934717059 +0900 @@ -683,6 +683,9 @@ GCOV_ENABLED ZIP_DEBUGINFO_FILES ENABLE_DEBUG_SYMBOLS +STRIP_POLICY +DEBUG_BINARIES +DEBUG_SYMBOLS CFLAGS_WARNINGS_ARE_ERRORS DISABLE_WARNING_PREFIX HOTSPOT_SET_WARNINGS_AS_ERRORS @@ -1084,6 +1087,7 @@ with_build_devkit with_jtreg enable_warnings_as_errors +with_debug_symbols enable_debug_symbols enable_zip_debug_info enable_native_coverage @@ -1858,9 +1862,10 @@ --disable-warnings-as-errors do not consider native warnings to be an error [enabled] - --disable-debug-symbols disable generation of debug symbols [enabled] - --disable-zip-debug-info - disable zipping of debug-info files [enabled] + --enable-debug-symbols Deprecated. Option is kept for backwards + compatibility and is ignored + --enable-zip-debug-info Deprecated. Option is kept for backwards + compatibility and is ignored --enable-native-coverage enable native compilation with code coverage data[disabled] @@ -1951,6 +1956,8 @@ dependent] --with-build-devkit Devkit to use for the build platform toolchain --with-jtreg Regression Test Harness [probed] + --with-debug-symbols set the debug symbol configuration (none, internal, + external, zipped) [zipped] --with-stdc++lib=,, force linking of the C++ runtime on Linux to either static or dynamic, default is static with dynamic as @@ -4610,7 +4617,7 @@ #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1446762265 +DATE_WHEN_GENERATED=1448110876 ############################################################################### # @@ -45307,66 +45314,97 @@ # Setup debug symbols (need objcopy from the toolchain for that) # - # ENABLE_DEBUG_SYMBOLS - # This must be done after the toolchain is setup, since we're looking at objcopy. + # DEBUG_SYMBOLS # - # Check whether --enable-debug-symbols was given. -if test "${enable_debug_symbols+set}" = set; then : - enableval=$enable_debug_symbols; + { $as_echo "$as_me:${as_lineno-$LINENO}: checking what type of debug symbols to use" >&5 +$as_echo_n "checking what type of debug symbols to use... " >&6; } + +# Check whether --with-debug-symbols was given. +if test "${with_debug_symbols+set}" = set; then : + withval=$with_debug_symbols; +else + with_debug_symbols="zipped" fi + DEBUG_SYMBOLS=$with_debug_symbols + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DEBUG_SYMBOLS" >&5 +$as_echo "$DEBUG_SYMBOLS" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we should generate debug symbols" >&5 -$as_echo_n "checking if we should generate debug symbols... " >&6; } + if test "x$DEBUG_SYMBOLS" = xzipped; then - if test "x$enable_debug_symbols" = "xyes" && test "x$OBJCOPY" = x; then - # explicit enabling of enable-debug-symbols and can't find objcopy - # this is an error - as_fn_error $? "Unable to find objcopy, cannot enable debug-symbols" "$LINENO" 5 - fi + if test "x$OBJCOPY" = x; then + # explicit enabling of enable-debug-symbols and can't find objcopy + # this is an error + as_fn_error $? "Unable to find objcopy, cannot enable debug-symbols" "$LINENO" 5 + fi - if test "x$enable_debug_symbols" = "xyes"; then ENABLE_DEBUG_SYMBOLS=true - elif test "x$enable_debug_symbols" = "xno"; then + ZIP_DEBUGINFO_FILES=true + DEBUG_BINARIES=true + STRIP_POLICY=min_strip + JAVAC_FLAGS="$JAVAC_FLAGS -g" + elif test "x$DEBUG_SYMBOLS" = xnone; then ENABLE_DEBUG_SYMBOLS=false - else - # Default is on if objcopy is found - if test "x$OBJCOPY" != x; then - ENABLE_DEBUG_SYMBOLS=true - # MacOS X and Windows don't use objcopy but default is on for those OSes - elif test "x$OPENJDK_TARGET_OS" = xmacosx || test "x$OPENJDK_TARGET_OS" = xwindows; then - ENABLE_DEBUG_SYMBOLS=true - else - ENABLE_DEBUG_SYMBOLS=false + ZIP_DEBUGINFO_FILES=false + DEBUG_BINARIES=false + STRIP_POLICY=min_strip + elif test "x$DEBUG_SYMBOLS" = xinternal; then + ENABLE_DEBUG_SYMBOLS=false # -g option only + ZIP_DEBUGINFO_FILES=false + DEBUG_BINARIES=true + STRIP_POLICY=no_strip + STRIP="" + JAVAC_FLAGS="$JAVAC_FLAGS -g" + elif test "x$DEBUG_SYMBOLS" = xexternal; then + + if test "x$OBJCOPY" = x; then + # explicit enabling of enable-debug-symbols and can't find objcopy + # this is an error + as_fn_error $? "Unable to find objcopy, cannot enable debug-symbols" "$LINENO" 5 fi + + ENABLE_DEBUG_SYMBOLS=true + ZIP_DEBUGINFO_FILES=false + DEBUG_BINARIES=true + STRIP_POLICY=min_strip + JAVAC_FLAGS="$JAVAC_FLAGS -g" + else + as_fn_error $? "Allowed debug symbols are: none, internal, external, zipped" "$LINENO" 5 fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ENABLE_DEBUG_SYMBOLS" >&5 -$as_echo "$ENABLE_DEBUG_SYMBOLS" >&6; } + # --enable-debug-symbols is deprecated. + # Please use --with-debug-symbols=[internal,external,zipped] . + + # Check whether --enable-debug-symbols was given. +if test "${enable_debug_symbols+set}" = set; then : + enableval=$enable_debug_symbols; +fi + + if test "x$enable_debug_symbols" != x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Option --enable-debug-symbols is deprecated and will be ignored." >&5 +$as_echo "$as_me: WARNING: Option --enable-debug-symbols is deprecated and will be ignored." >&2;} + fi + + + # --enable-zip-debug-info is deprecated. + # Please use --with-debug-symbols=zipped . - # - # ZIP_DEBUGINFO_FILES - # - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we should zip debug-info files" >&5 -$as_echo_n "checking if we should zip debug-info files... " >&6; } # Check whether --enable-zip-debug-info was given. if test "${enable_zip_debug_info+set}" = set; then : - enableval=$enable_zip_debug_info; enable_zip_debug_info="${enableval}" -else - enable_zip_debug_info="yes" + enableval=$enable_zip_debug_info; fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${enable_zip_debug_info}" >&5 -$as_echo "${enable_zip_debug_info}" >&6; } - - if test "x${enable_zip_debug_info}" = "xno"; then - ZIP_DEBUGINFO_FILES=false - else - ZIP_DEBUGINFO_FILES=true + if test "x$enable_zip_debug_info" != x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Option --enable-zip-debug-info is deprecated and will be ignored." >&5 +$as_echo "$as_me: WARNING: Option --enable-zip-debug-info is deprecated and will be ignored." >&2;} fi + + + + # Check whether --enable-native-coverage was given. --- old/common/autoconf/jdk-options.m4 2015-11-21 22:02:33.262708558 +0900 +++ new/common/autoconf/jdk-options.m4 2015-11-21 22:02:33.151708964 +0900 @@ -577,53 +577,69 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS], [ # - # ENABLE_DEBUG_SYMBOLS - # This must be done after the toolchain is setup, since we're looking at objcopy. + # DEBUG_SYMBOLS # - AC_ARG_ENABLE([debug-symbols], - [AS_HELP_STRING([--disable-debug-symbols],[disable generation of debug symbols @<:@enabled@:>@])]) - - AC_MSG_CHECKING([if we should generate debug symbols]) - - if test "x$enable_debug_symbols" = "xyes" && test "x$OBJCOPY" = x; then - # explicit enabling of enable-debug-symbols and can't find objcopy - # this is an error - AC_MSG_ERROR([Unable to find objcopy, cannot enable debug-symbols]) - fi + AC_MSG_CHECKING([what type of debug symbols to use]) + AC_ARG_WITH([debug-symbols], [AS_HELP_STRING([--with-debug-symbols], + [set the debug symbol configuration (none, internal, external, zipped) @<:@zipped@:>@])], + [], + [with_debug_symbols="zipped"]) + DEBUG_SYMBOLS=$with_debug_symbols + AC_MSG_RESULT([$DEBUG_SYMBOLS]) + + if test "x$DEBUG_SYMBOLS" = xzipped; then + + if test "x$OBJCOPY" = x; then + # explicit enabling of enable-debug-symbols and can't find objcopy + # this is an error + AC_MSG_ERROR([Unable to find objcopy, cannot enable debug-symbols]) + fi - if test "x$enable_debug_symbols" = "xyes"; then ENABLE_DEBUG_SYMBOLS=true - elif test "x$enable_debug_symbols" = "xno"; then + ZIP_DEBUGINFO_FILES=true + DEBUG_BINARIES=true + STRIP_POLICY=min_strip + JAVAC_FLAGS="$JAVAC_FLAGS -g" + elif test "x$DEBUG_SYMBOLS" = xnone; then ENABLE_DEBUG_SYMBOLS=false - else - # Default is on if objcopy is found - if test "x$OBJCOPY" != x; then - ENABLE_DEBUG_SYMBOLS=true - # MacOS X and Windows don't use objcopy but default is on for those OSes - elif test "x$OPENJDK_TARGET_OS" = xmacosx || test "x$OPENJDK_TARGET_OS" = xwindows; then - ENABLE_DEBUG_SYMBOLS=true - else - ENABLE_DEBUG_SYMBOLS=false + ZIP_DEBUGINFO_FILES=false + DEBUG_BINARIES=false + STRIP_POLICY=min_strip + elif test "x$DEBUG_SYMBOLS" = xinternal; then + ENABLE_DEBUG_SYMBOLS=false # -g option only + ZIP_DEBUGINFO_FILES=false + DEBUG_BINARIES=true + STRIP_POLICY=no_strip + STRIP="" + JAVAC_FLAGS="$JAVAC_FLAGS -g" + elif test "x$DEBUG_SYMBOLS" = xexternal; then + + if test "x$OBJCOPY" = x; then + # explicit enabling of enable-debug-symbols and can't find objcopy + # this is an error + AC_MSG_ERROR([Unable to find objcopy, cannot enable debug-symbols]) fi - fi - - AC_MSG_RESULT([$ENABLE_DEBUG_SYMBOLS]) - # - # ZIP_DEBUGINFO_FILES - # - AC_MSG_CHECKING([if we should zip debug-info files]) - AC_ARG_ENABLE([zip-debug-info], - [AS_HELP_STRING([--disable-zip-debug-info],[disable zipping of debug-info files @<:@enabled@:>@])], - [enable_zip_debug_info="${enableval}"], [enable_zip_debug_info="yes"]) - AC_MSG_RESULT([${enable_zip_debug_info}]) - - if test "x${enable_zip_debug_info}" = "xno"; then + ENABLE_DEBUG_SYMBOLS=true ZIP_DEBUGINFO_FILES=false + DEBUG_BINARIES=true + STRIP_POLICY=min_strip + JAVAC_FLAGS="$JAVAC_FLAGS -g" else - ZIP_DEBUGINFO_FILES=true + AC_MSG_ERROR([Allowed debug symbols are: none, internal, external, zipped]) fi + # --enable-debug-symbols is deprecated. + # Please use --with-debug-symbols=[internal,external,zipped] . + BASIC_DEPRECATED_ARG_ENABLE(debug-symbols, debug_symbols) + + # --enable-zip-debug-info is deprecated. + # Please use --with-debug-symbols=zipped . + BASIC_DEPRECATED_ARG_ENABLE(zip-debug-info, zip_debug_info) + + AC_SUBST(DEBUG_SYMBOLS) + AC_SUBST(DEBUG_BINARIES) + AC_SUBST(STRIP_POLICY) AC_SUBST(ENABLE_DEBUG_SYMBOLS) AC_SUBST(ZIP_DEBUGINFO_FILES) ]) --- old/common/autoconf/spec.gmk.in 2015-11-21 22:02:33.757706751 +0900 +++ new/common/autoconf/spec.gmk.in 2015-11-21 22:02:33.643707167 +0900 @@ -392,6 +392,9 @@ CFLAGS_DEBUG_SYMBOLS:=@CFLAGS_DEBUG_SYMBOLS@ CXXFLAGS_DEBUG_SYMBOLS:=@CXXFLAGS_DEBUG_SYMBOLS@ ZIP_DEBUGINFO_FILES:=@ZIP_DEBUGINFO_FILES@ +DEBUG_SYMBOLS:=@DEBUG_SYMBOLS@ +DEBUG_BINARIES:=@DEBUG_BINARIES@ +STRIP_POLICY:=@STRIP_POLICY@ # # Compress (or not) jars --- old/make/common/NativeCompilation.gmk 2015-11-21 22:02:34.251704947 +0900 +++ new/make/common/NativeCompilation.gmk 2015-11-21 22:02:34.133705378 +0900 @@ -507,6 +507,10 @@ $1_EXTRA_CXXFLAGS:=$$($1_EXTRA_CFLAGS) endif + ifeq ($(DEBUG_BINARIES), true) + $1_EXTRA_CFLAGS+=$(CFLAGS_DEBUG_SYMBOLS) + $1_EXTRA_CXXFLAGS+=$(CXXFLAGS_DEBUG_SYMBOLS) + endif ifeq ($$($1_DEBUG_SYMBOLS), true) ifeq ($(ENABLE_DEBUG_SYMBOLS), true) ifdef OPENJDK