# HG changeset patch # User Andrew John Hughes # Date 1469726187 -3600 # Node ID a37b25ac34eef1649d7f6f5ac2812f3edaa6e58f # Parent e374840aec785ab6bd20e9a0f68d512b2271888f PR3116: Add tests for Java debug info and source files 2016-07-28 Andrew John Hughes PR3116: 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 PR3116: 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 e374840aec78 -r a37b25ac34ee ChangeLog --- a/ChangeLog Thu Jul 28 16:04:20 2016 +0100 +++ b/ChangeLog Thu Jul 28 18:16:27 2016 +0100 @@ -1,3 +1,32 @@ +2016-07-28 Andrew John Hughes + + PR3116: 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 + + PR3116: 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. + 2016-07-28 Andrew John Hughes S7175845, PR1437, RH1207129: 'jar uf' changes file diff -r e374840aec78 -r a37b25ac34ee Makefile.am --- a/Makefile.am Thu Jul 28 16:04:20 2016 +0100 +++ b/Makefile.am Thu Jul 28 18:16:27 2016 +0100 @@ -934,10 +934,12 @@ all-local: icedtea-stage2 $(DESKTOP_FILES) -check-local: jtregcheck $(SYSTEMTAP_TEST_SUITE) check-ecc check-mimetype +check-local: jtregcheck $(SYSTEMTAP_TEST_SUITE) check-ecc check-mimetype \ + check-java-debug check-java-src clean-tests: clean-jtreg clean-tapset-report clean-jtreg-reports \ - clean-check-ecc clean-check-mimetype + clean-check-ecc 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 ; \ @@ -978,7 +980,7 @@ clean-bootstrap-directory-symlink-stage1 icedtea icedtea-debug \ clean-icedtea icedtea-stage2 clean-icedtea-boot \ clean-rt hotspot hotspot-helper clean-jtreg clean-jtreg-reports \ - jtregcheck clean-remove-intree-libraries \ + jtregcheck clean-remove-intree-libraries clean-check-java-src \ clean-jamvm clean-extract-jamvm clean-add-jamvm clean-add-jamvm-debug \ clean-extract-hotspot clean-sanitise-openjdk \ clean-tests clean-tapset-report clean-add-systemtap \ @@ -995,7 +997,7 @@ clean-fonts clean-add-mime-types-file clean-add-mime-types-file-debug clean-add-mime-types-file-boot \ clean-tests clean-tapset-report clean-ecccheck clean-check-ecc \ check-jdk check-hotspot check-langtools jtregcheck check-tapset check-tapset-probes \ - check-tapset-jstack + check-tapset-jstack clean-check-java-debug env: @echo 'unset JAVA_HOME' @@ -3067,6 +3069,35 @@ rm -rf $(MIME_TYPE_CHECK_BUILD_DIR) rm -f stamps/mimetypecheck.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 + # File substitution policytool-@JAVA_VER@.desktop: policytool.desktop @@ -3404,6 +3435,10 @@ check-ecc: stamps/check-ecc.stamp +check-java-src: stamps/check-java-src.stamp + +check-java-debug: stamps/check-java-debug.stamp + clone-boot: stamps/clone-boot.stamp cryptocheck: stamps/cryptocheck.stamp diff -r e374840aec78 -r a37b25ac34ee NEWS --- a/NEWS Thu Jul 28 16:04:20 2016 +0100 +++ b/NEWS Thu Jul 28 18:16:27 2016 +0100 @@ -51,6 +51,7 @@ - PR3111: Provide option to disable SystemTap tests - PR3114: Don't assume system mime.types supports text/x-java-source - PR3115: Add check for elliptic curve cryptography implementation + - PR3116: Add tests for Java debug info and source files * AArch64 port - S8148328: aarch64: redundant lsr instructions in stub code. - S8148783: aarch64: SEGV running SpecJBB2013