# HG changeset patch # User Andrew John Hughes # Date 1471237757 -3600 # Node ID 15c751726652633c9ea88e425e69f75a286ae4d7 # Parent 25bd6515fed0b2fbc53bf770502d2eaacc756e66 PR3117: Add tests for Java debug info and source files 2016-07-28 Andrew John Hughes PR3117: Add tests for Java debug info and source files * Makefile.am: (check-java-debug): Guard with ENABLE_JAVA_DEBUGINFO. * NEWS: Updated. 2016-07-15 Andrew John Hughes PR3117: Add tests for Java debug info and source files * Makefile.am: (check-local): Depend on check-java-debug and check-java-src. (clean-tests): Depend on clean-check-java-debug and clean-check-java-src. (.PHONY): Add clean-check-java-src and clean-check-java-debug. (check-java-debug): Adapt Omair Majid's Java debug info test from Fedora RPM to IcedTea. (clean-check-java-debug): Cleanup target for check-java-debug. (check-java-src): Adapt Omair Majid's Java source file test from Fedora RPM to IcedTea. (clean-check-java-src): Cleanup target for check-java-src. diff -r 25bd6515fed0 -r 15c751726652 ChangeLog --- a/ChangeLog Mon Aug 15 06:04:49 2016 +0100 +++ b/ChangeLog Mon Aug 15 06:09:17 2016 +0100 @@ -1,3 +1,32 @@ +2016-07-28 Andrew John Hughes + + PR3117: Add tests for Java debug info and + source files + * Makefile.am: + (check-java-debug): Guard with + ENABLE_JAVA_DEBUGINFO. + * NEWS: Updated. + +2016-07-15 Andrew John Hughes + + PR3117: Add tests for Java debug info and + source files + * Makefile.am: + (check-local): Depend on check-java-debug and + check-java-src. + (clean-tests): Depend on clean-check-java-debug + and clean-check-java-src. + (.PHONY): Add clean-check-java-src and + clean-check-java-debug. + (check-java-debug): Adapt Omair Majid's Java debug + info test from Fedora RPM to IcedTea. + (clean-check-java-debug): Cleanup target for + check-java-debug. + (check-java-src): Adapt Omair Majid's Java source + file test from Fedora RPM to IcedTea. + (clean-check-java-src): Cleanup target for + check-java-src. + 2014-06-10 Andrew John Hughes PR1372: Provide option to build without debugging diff -r 25bd6515fed0 -r 15c751726652 Makefile.am --- a/Makefile.am Mon Aug 15 06:04:49 2016 +0100 +++ b/Makefile.am Mon Aug 15 06:09:17 2016 +0100 @@ -1015,9 +1015,11 @@ all-local: icedtea-against-icedtea -check-local: jtregcheck $(SYSTEMTAP_TEST_SUITE) check-mimetype - -clean-tests: clean-jtreg clean-tapset-report clean-check-mimetype +check-local: jtregcheck $(SYSTEMTAP_TEST_SUITE) check-mimetype \ + check-java-debug check-java-src + +clean-tests: clean-jtreg clean-tapset-report clean-check-mimetype \ + clean-check-java-debug clean-check-java-src if [ $(abs_top_srcdir) != $(abs_top_builddir) ] ; then \ if [ -e test ] ; then \ rmdir test ; \ @@ -1073,7 +1075,8 @@ clean-check-crypto-boot clean-cryptocheck clean-runnable-icedtea clean-runnable-icedtea-debug \ check-jdk check-hotspot check-langtools jtregcheck check-tapset check-tapset-probes \ check-tapset-jstack clean-runnable-icedtea-ecj clean-add-mime-types-file \ - clean-add-mime-types-file-debug clean-add-mime-types-file-boot + clean-add-mime-types-file-debug clean-add-mime-types-file-boot clean-check-java-src \ + clean-check-java-debug env: @echo 'unset JAVA_HOME' @@ -2949,6 +2952,35 @@ rm -f $(MIME_TYPE_CHECK_BUILD_DIR)/test.html rm -f stamps/check-mimetype.stamp +# Check class files, both from in-tree and generated sources, contain debug info +stamps/check-java-debug.stamp: stamps/icedtea.stamp +if ENABLE_JAVA_DEBUGINFO + @echo "Checking that Java classes include debug info" + if [ -e $(BUILD_SDK_DIR)/bin/javap ] ; then \ + $(BUILD_SDK_DIR)/bin/javap -l java.lang.Object | grep "Compiled from" ; \ + $(BUILD_SDK_DIR)/bin/javap -l java.lang.Object | grep LineNumberTable ; \ + $(BUILD_SDK_DIR)/bin/javap -l java.lang.Object | grep LocalVariableTable ; \ + $(BUILD_SDK_DIR)/bin/javap -l java.nio.ByteBuffer | grep "Compiled from" ; \ + $(BUILD_SDK_DIR)/bin/javap -l java.nio.ByteBuffer | grep LineNumberTable ; \ + $(BUILD_SDK_DIR)/bin/javap -l java.nio.ByteBuffer | grep LocalVariableTable ; \ + fi +endif + mkdir -p stamps + touch $@ + +clean-check-java-debug: + rm -f stamps/check-java-debug.stamp + +# Check source files are included in the source zip +stamps/check-java-src.stamp: stamps/icedtea.stamp + @echo "Checking for Java sources in src.zip" + $(UNZIP) -l $(BUILD_SDK_DIR)/src.zip | grep 'sun.misc.Unsafe' + mkdir -p stamps + touch $@ + +clean-check-java-src: + rm -f stamps/check-java-src.stamp + # Support classes for non-OpenJDK bootstraps # rt.jar additional class files. @@ -3088,6 +3120,10 @@ check-crypto-debug: stamps/check-crypto-debug.stamp +check-java-src: stamps/check-java-src.stamp + +check-java-debug: stamps/check-java-debug.stamp + check-mimetype: stamps/check-mimetype.stamp cryptocheck: stamps/cryptocheck.stamp diff -r 25bd6515fed0 -r 15c751726652 NEWS --- a/NEWS Mon Aug 15 06:04:49 2016 +0100 +++ b/NEWS Mon Aug 15 06:09:17 2016 +0100 @@ -41,6 +41,7 @@ - PR2962: System default check doesn't match all GNU/Linux systems - PR2969: ENABLE_SYSTEM_LCMS is not defined if ENABLE_LCMS2 is not set - PR3092: SystemTap is heavily confused by multiple JDKs + - PR3117: Add tests for Java debug info and source files - PR3137: GTKLookAndFeel does not honor gtk-alternative-button-order - PR3139: Update documentation