RFR: 8033580: Old debug information in IMPORT_JDK is not removed

Erik Helin erik.helin at oracle.com
Wed Feb 12 15:03:39 UTC 2014


Hi all,

this patch changes how old debug information copied from IMPORT_JDK is 
treated.

When running the copy_*_jdk target, HotSpot's makefiles copies the 
entire IMPORT_JDK folder, including additional files (such as unzipped 
debug information). The export_*_jdk targets will then, via the 
generic_export target, copy the build artifacts via implicit rules to 
the correct destination in hotspot/build/JDK_IMAGE_DIR.

The bug arises when IMPORT_JDK contains unzipped debug info 
(libjvm.debuginfo) and the make target produces zipped debug info 
(libjvm.diz), or vice versa. hotspot/build/JDK_IMAGE_DIR will then 
contain both libjvm.debuginfo and libjvm.diz, but only one of them will 
match libjvm.so.

Finally, the JPRT make targets jprt_build_* just zips 
hotspot/build/$(JDK_IMAGE_DIR). The zipped JPRT bundle will end up 
having different zipped and unzipped debug info, since the IMPORT_JDK in 
JPRT contains libjvm.debuginfo and we build libjvm.diz by default.

This patch removes the debug info that we did *not* build. If we build 
libjvm.diz, then libjvm.debuginfo will be removed (if it exists). 
Correspondingly, if we build libjvm.debuginfo, then libjvm.diz will be 
removed (if it exists).

Patch:
http://cr.openjdk.java.net/~ehelin/8033580/webrev.00/

Bug:
https://bugs.openjdk.java.net/browse/JDK-8033580

Testing:
- Building in JPRT
- Building Linux 32-bit locally on a Linux 64-bit machine
- Building Linux 64-bit locally on a Linux 64-bit machine

For all of the above, verify that only the correct debug info is present 
in the output.

Thanks,
Erik



More information about the build-dev mailing list