summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRicardo Ribalda Delgado <ricardo.ribalda@gmail.com>2016-09-13 10:31:28 +0200
committerMaxin B. John <maxin.john@intel.com>2016-10-10 16:35:54 +0300
commit3d7f23b1541592dfd49e8fecaa31d38e9053bce3 (patch)
tree3fa8bca9e0e47837fa4576067bc2b8581860f0b0
parent6823b0b1449b5047c1800589bb44ead79d7a5c00 (diff)
downloadmeta-java-3d7f23b1541592dfd49e8fecaa31d38e9053bce3.tar.gz
icedtea7-native: Fix IOException constructor compile error
Under some circumstances, the bootstrap error fails with the following error: build-bootstrap-javac: [javac] Compiling 1 source file to build/openjdk.build-boot/langtools/build/bootstrap/classes [javac] 1. ERROR in /com/sun/tools/javac/file/ZipFileIndex.java [javac] super(message, cause); [javac] The constructor IOException(String, Throwable) is undefined The reason for that error is that rt.jar does not contain the openjdk classes but the ones from classpath 0.99. The error eventually goes away after a couple of hours :S. After some tedious debug, I figured out that the problem was the timestamp handling of zip/unzip. The Makefile launches zip with the following options: $(ZIP) -qur which only updates the content of the classes that have a timestamp older than the new ones. According to zip manpage: """ Note that under many operating systems, the TZ (timezone) environment variable must be set correctly in order for -f and -u to work properly """ On this patch, I remove the -u option from zip, always replacing the classes inside rt.jar with the classes from openjdk. I cannot think of an scenario where this may fail. Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Signed-off-by: Maxin B. John <maxin.john@intel.com>
-rw-r--r--recipes-core/icedtea/icedtea7-native.inc1
-rw-r--r--recipes-core/icedtea/openjdk-7-03b147/timezoneszip.patch13
2 files changed, 14 insertions, 0 deletions
diff --git a/recipes-core/icedtea/icedtea7-native.inc b/recipes-core/icedtea/icedtea7-native.inc
index 4314fb5..727998c 100644
--- a/recipes-core/icedtea/icedtea7-native.inc
+++ b/recipes-core/icedtea/icedtea7-native.inc
@@ -41,6 +41,7 @@ SRC_URI = " \
41 ${OPENJDK_PATCHES} \ 41 ${OPENJDK_PATCHES} \
42 file://allow-headless-build.patch;striplevel=0 \ 42 file://allow-headless-build.patch;striplevel=0 \
43 file://jaxws_fix_NullPointerException.patch;apply=no \ 43 file://jaxws_fix_NullPointerException.patch;apply=no \
44 file://timezoneszip.patch \
44 " 45 "
45 46
46S = "${WORKDIR}/${ICEDTEA}" 47S = "${WORKDIR}/${ICEDTEA}"
diff --git a/recipes-core/icedtea/openjdk-7-03b147/timezoneszip.patch b/recipes-core/icedtea/openjdk-7-03b147/timezoneszip.patch
new file mode 100644
index 0000000..befb7c7
--- /dev/null
+++ b/recipes-core/icedtea/openjdk-7-03b147/timezoneszip.patch
@@ -0,0 +1,13 @@
1diff --git a/Makefile.am b/Makefile.am
2index 5eaff4c40aac..a4f0f63f3e43 100644
3--- a/Makefile.am
4+++ b/Makefile.am
5@@ -2294,7 +2294,7 @@ if LACKS_SUN_AWT_TOOLKIT
6 mkdir -p `dirname $$destpath` ; \
7 cp -a ../../$$dirs $$destpath ; \
8 done ; \
9- $(ZIP) -qur $(STAGE1_BOOT_DIR)/jre/lib/rt.jar \
10+ $(ZIP) -qr $(STAGE1_BOOT_DIR)/jre/lib/rt.jar \
11 com java javax sun );
12 endif
13 mkdir -p stamps