[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#49990: [PATCH] gnu: Fix classpath-bootstrap compilation
From: |
muradm |
Subject: |
bug#49990: [PATCH] gnu: Fix classpath-bootstrap compilation |
Date: |
Fri, 3 Sep 2021 01:27:49 +0300 |
---
gnu/packages/java.scm | 3 +-
.../patches/classpath-instruction-order.patch | 35 +++++++++++++++++++
2 files changed, 37 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/classpath-instruction-order.patch
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 08ef7a8213..1e29cac401 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -230,7 +230,8 @@ only faster.")
(sha256
(base32
"0i99wf9xd3hw1sj2sazychb9prx8nadxh2clgvk3zlmb28v0jbfz"))
- (patches (search-patches "classpath-aarch64-support.patch"))))
+ (patches (search-patches "classpath-aarch64-support.patch"
+ "classpath-instruction-order.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
diff --git a/gnu/packages/patches/classpath-instruction-order.patch
b/gnu/packages/patches/classpath-instruction-order.patch
new file mode 100644
index 0000000000..278ae912c7
--- /dev/null
+++ b/gnu/packages/patches/classpath-instruction-order.patch
@@ -0,0 +1,35 @@
+diff -ruN ../classpath/classpath-0.93/native/jni/java-io/java_io_VMFile.c
./native/jni/java-io/java_io_VMFile.c
+--- ../classpath/classpath-0.93/native/jni/java-io/java_io_VMFile.c
2006-09-23 08:17:45.000000000 +0300
++++ ./native/jni/java-io/java_io_VMFile.c 2021-09-03 01:08:17.073644627
+0300
+@@ -278,6 +278,7 @@
+ const char *filename;
+ int result;
+ jint entryType;
++ int fres;
+
+ /* Don't use the JCL convert function because it throws an exception
+ on failure */
+@@ -288,9 +289,22 @@
+ }
+
+ result = cpio_checkType (filename, &entryType);
++
++ fres = 1;
++
++ if (result != CPNATIVE_OK)
++ {
++ fres = 0;
++ }
++
++ if (entryType != CPFILE_FILE)
++ {
++ fres = 0;
++ }
++
+ (*env)->ReleaseStringUTFChars (env, name, filename);
+
+- return result == CPNATIVE_OK && entryType == CPFILE_FILE ? 1 : 0;
++ return fres;
+ #else /* not WITHOUT_FILESYSTEM */
+ return 0;
+ #endif /* not WITHOUT_FILESYSTEM */
--
2.33.0
- bug#49990: [PATCH] gnu: Fix classpath-bootstrap compilation,
muradm <=