[PATCH] Enable debug info on all libraries for OpenJDK builds
Andrew Hughes
gnu.andrew at redhat.com
Wed Apr 3 14:58:23 UTC 2013
----- Original Message -----
> On 2013-04-02 18:56, Andrew Hughes wrote:
> > With the new build system, the availability of debugging information in the
> > JDK build is a complete mess, controlled by different flags from those that
> > control the HotSpot build.
> >
> > Even when debugging is asked for, it is only turned on for a small number
> > of
> > libraries on GNU/Linux. On Windows, this is overridden with no real
> > explanation:
> > in 7197849: Update new build-infra makefiles.
> >
> > > From jdk/makefiles/CompileNativeLibraries.gmk:
> >
> > # Use this variable to set DEBUG_SYMBOLS true on windows for all libraries,
> > but
> > # not on other platforms.
> > ifeq ($(OPENJDK_TARGET_OS), windows)
> > WINDOWS_ONLY := true
> > endif
> >
> > and then WINDOWS_ONLY is used as the value for DEBUG_SYMBOLS on most, but
> > not all,
> > libraries (those that are Mac or GNU/Linux only are missed).
> >
> > This webrev:
> >
> > http://cr.openjdk.java.net/~andrew/build/debugging/webrev.01/
> >
> > cleans up the situation, adding DEBUG_ALL_BINARIES in place of WINDOWS_ONLY
> > and
> > adding it to all libraries that don't have DEBUG_SYMBOLS set to true. The
> > previous
> > Windows conditional uses this new symbol in place of WINDOWS_ONLY and the
> > following
> > is also added:
> >
> > ifdef OPENJDK
> > DEBUG_ALL_BINARIES := true
> > endif
> >
> > so non-OpenJDK builds will still get the same situation as before, while
> > OpenJDK
> > builds will get the expected debugging information when it's asked for.
> >
> > All that's now missing compared with a 7 image is debugging on program
> > binaries which
> > I'll look at next.
> >
> > Does this look ok? And if so, can I have a bug ID for it?
> >
> >
> I think this looks fine and I've created
>
> "JDK-8011366: Enable debug info on all libraries for OpenJDK builds"
>
> I think someone more intimately familiar with debugging these libraries
> should also comment on this.
>
Yeah, I need someone who's a reviewer anyway (you're not yet, right?)
as I can't review it myself.
> Note that by adding the new variable to places where there was no
> DEBUG_SYMBOLS before actually will change behavior on windows for non
> open builds. Also, at least for release builds, the new system was
> deliberately mimicking the old system very closely. This has highlighted
> some of the weirdness that was there already. It's good that it can now
> be fixed.
The only ones that didn't have DEBUG_SYMBOLS set to true before (either via
'true' or WINDOWS_ONLY) aren't built on Windows. They are things like the X11
libraries. The first attempt I did (just set WINDOWS_ONLY true on OPENJDK builds)
showed up the few that weren't caught. I could do with someone testing an
OpenJDK Mac build though.
>
> /Erik
>
--
Andrew :)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07
More information about the build-dev
mailing list