Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8145188

Add --{disable,enable}-java-debug-symbols configure flag

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P4
    • Resolution: Won't Fix
    • Affects Version/s: 9
    • Fix Version/s: 9
    • Component/s: infrastructure
    • Labels:

      Description

      We should add a new high-level boolean configure option: --enable-java-debug-symbols/--disable-java-debug-symbols. This avoids issues such as JDK-8145115.

      From the review thread of JDK-8145115:
      On Fri, 2015-12-11 at 14:10 +0100, Magnus Ihse Bursie wrote:
      > On 2015-12-10 16:02, Severin Gehwolf wrote:
      > > Yes, pretty please :) This is a long standing issue (not just java
      > > class debug info, but debug info in general). See
      > > JDK-8036003 with review thread:
      > > http://mail.openjdk.java.net/pipermail/build-dev/2015-December/016155.html
      > >
      > > Once JDK-8036003 is fixed we'd need something similar for Java classes
      > > and we can get rid of invoking make with build internal variables.
      >
      > I agree. Yasumasa Suenaga had a pretty good implementation in
      > http://cr.openjdk.java.net/~ysuenaga/JDK-8036003/webrev.04/.
      >
      > I think it could form the basis of getting a proper java debug symbol
      > support flag to configure. My main issue with that is that it must also
      > work with the case "--enable-debug --disable-java-debug-symbols", to
      > produce a build without java debug symbols. This means that this logic
      > need to interact with the logic in flags.m4:
      > case $DEBUG_LEVEL in
      > fastdebug | slowdebug )
      > CFLAGS_JDK="$CFLAGS_JDK $CFLAGS_DEBUG_SYMBOLS $CFLAGS_DEBUG_OPTIONS"
      > CXXFLAGS_JDK="$CXXFLAGS_JDK $CXXFLAGS_DEBUG_SYMBOLS
      > $CXXFLAGS_DEBUG_OPTIONS"
      > JAVAC_FLAGS="$JAVAC_FLAGS -g"
      >
      > Without digging a bit deeper in the source, I can't say the best way to
      > achieve this. Perhaps the configure flag check should set a variable
      > like JAVA_DEBUG_SYMBOLS:=true/false/default that can be checked in
      > flags.m4? Or we should defer the modification of JAVAC_FLAGS.
      >
      > /Magnus

        Issue Links

          Activity

          Hide
          ihse Magnus Ihse Bursie added a comment -
          In jdk9, we build with debug symbols always. Instead, we let jlink strip them for the JRE image, but not for the JDK image. So if you need debug symbols, use the JDK image.
          Show
          ihse Magnus Ihse Bursie added a comment - In jdk9, we build with debug symbols always. Instead, we let jlink strip them for the JRE image, but not for the JDK image. So if you need debug symbols, use the JDK image.

            People

            • Assignee:
              Unassigned
              Reporter:
              sgehwolf Severin Gehwolf
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: