changeset 2808:139f2a8f085d

PR2520: --enable-cacao builds broken, missing JVM_GetTemporaryDirectory impl. 2015-07-13 Andrew John Hughes <gnu_andrew@member.fsf.org> PR2520: --enable-cacao builds broken, missing JVM_GetTemporaryDirectory impl. * Makefile.am: (ICEDTEA_PATCHES): Add CACAO patch for PR2520. * NEWS: Updated. * patches/cacao/pr2520-tempdir.patch: Implement JVM_GetTemporaryDirectory.
author Andrew John Hughes <gnu_andrew@member.fsf.org>
date Mon, 13 Jul 2015 11:10:03 +0100
parents d00dc752ed83
children e3ceb97f3089
files ChangeLog Makefile.am NEWS patches/cacao/pr2520-tempdir.patch
diffstat 4 files changed, 58 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Jul 13 10:18:58 2015 +0100
+++ b/ChangeLog	Mon Jul 13 11:10:03 2015 +0100
@@ -1,3 +1,13 @@
+2015-07-13  Andrew John Hughes  <gnu_andrew@member.fsf.org>
+
+	PR2520: --enable-cacao builds broken, missing
+	JVM_GetTemporaryDirectory impl.
+	* Makefile.am:
+	(ICEDTEA_PATCHES): Add CACAO patch for PR2520.
+	* NEWS: Updated.
+	* patches/cacao/pr2520-tempdir.patch:
+	Implement JVM_GetTemporaryDirectory.
+
 2015-05-12  Andrew John Hughes  <gnu_andrew@member.fsf.org>
 
 	PR2519: Update to latest CACAO
--- a/Makefile.am	Mon Jul 13 10:18:58 2015 +0100
+++ b/Makefile.am	Mon Jul 13 11:10:03 2015 +0100
@@ -255,7 +255,8 @@
 ICEDTEA_PATCHES += \
 	patches/cacao/launcher.patch \
 	patches/cacao/memory.patch \
-	patches/cacao/pr2032.patch
+	patches/cacao/pr2032.patch \
+	patches/cacao/pr2520-tempdir.patch
 else
 if USING_CACAO
 ICEDTEA_PATCHES += \
--- a/NEWS	Mon Jul 13 10:18:58 2015 +0100
+++ b/NEWS	Mon Jul 13 11:10:03 2015 +0100
@@ -437,6 +437,7 @@
   - PR2250: JSSE server is still limited to 768-bit DHE
 * CACAO
   - PR2519: Update to latest CACAO
+  - PR2520: --enable-cacao builds broken, missing JVM_GetTemporaryDirectory impl.
 * ARM32 port
   - PR2228: Add ARM32 JIT
   - PR2297: Use the IcedTea 2.6.0 HotSpot on ARM32 by default
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/cacao/pr2520-tempdir.patch	Mon Jul 13 11:10:03 2015 +0100
@@ -0,0 +1,45 @@
+diff -r 73c53a02de5d contrib/mapfile-vers-product
+--- cacao/cacao/contrib/mapfile-vers-product	Mon Jul 13 01:38:19 2015 +0100
++++ cacao/cacao/contrib/mapfile-vers-product	Mon Jul 13 10:44:59 2015 +0100
+@@ -161,6 +161,7 @@
+                 JVM_GetStackTraceElement;
+                 JVM_GetSystemPackage;
+                 JVM_GetSystemPackages;
++		JVM_GetTemporaryDirectory;
+                 JVM_GetThreadStateNames;
+                 JVM_GetThreadStateValues;
+                 JVM_GetVersionInfo;
+diff -r 73c53a02de5d src/native/vm/openjdk/jvm.cpp
+--- cacao.orig/cacao/src/native/vm/openjdk/jvm.cpp	Mon Jul 13 01:38:19 2015 +0100
++++ cacao/cacao/src/native/vm/openjdk/jvm.cpp	Mon Jul 13 10:21:20 2015 +0100
+@@ -3821,6 +3821,30 @@
+ 	return -1;
+ }
+ 
++/*
++ * Return the temporary directory that the VM uses for the attach
++ * and perf data files.
++ *
++ * It is important that this directory is well-known and the
++ * same for all VM instances. It cannot be affected by configuration
++ * variables such as java.io.tmpdir.
++ */
++jstring JVM_GetTemporaryDirectory(JNIEnv *env)
++{
++	TRACEJVMCALLS(("JVM_GetTemporaryDirectory(env=%p)", env));
++
++#if (defined(__LINUX__) || defined (__SOLARIS__) || \
++	 defined(__FREEBSD__) || defined (__DARWIN__))
++	// This must be hard coded because it's the system's temporary
++	// directory not the java application's temp directory, ala java.io.tmpdir.
++	return JavaString::from_utf8("/tmp");
++#else
++# error Not implemented for this OS.
++#endif
++
++	return NULL;
++}
++	
+ } // extern "C"
+ 
+