gnu: classpath: Add aarch64-linux support.

* gnu/packages/java.scm (classpath-bootstrap, classpath-0.99)[source]:
Add patch.
* gnu/packages/patches/classpath-aarch64-support.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
This commit is contained in:
Efraim Flashner 2018-03-26 12:19:14 +03:00
parent 5dc8f5de0c
commit bab9793f54
No known key found for this signature in database
GPG Key ID: 41AAE7DCCA3D8351
3 changed files with 34 additions and 2 deletions

View File

@ -594,6 +594,7 @@ dist_patch_DATA = \
%D%/packages/patches/clang-3.8-libc-search-path.patch \
%D%/packages/patches/clang-runtime-asan-build-fixes.patch \
%D%/packages/patches/clang-runtime-esan-build-fixes.patch \
%D%/packages/patches/classpath-aarch64-support.patch \
%D%/packages/patches/clementine-remove-crypto++-dependency.patch \
%D%/packages/patches/clementine-use-openssl.patch \
%D%/packages/patches/clisp-glibc-2.26.patch \

View File

@ -129,7 +129,8 @@ and binary format defined in The Java Virtual Machine Specification.")
version ".tar.gz"))
(sha256
(base32
"0i99wf9xd3hw1sj2sazychb9prx8nadxh2clgvk3zlmb28v0jbfz"))))
"0i99wf9xd3hw1sj2sazychb9prx8nadxh2clgvk3zlmb28v0jbfz"))
(patches (search-patches "classpath-aarch64-support.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -424,7 +425,8 @@ the standard javac executable.")))
version ".tar.gz"))
(sha256
(base32
"1j7cby4k66f1nvckm48xcmh352b1d1b33qk7l6hi7dp9i9zjjagr"))))
"1j7cby4k66f1nvckm48xcmh352b1d1b33qk7l6hi7dp9i9zjjagr"))
(patches (search-patches "classpath-aarch64-support.patch"))))
(arguments
`(#:configure-flags
(list (string-append "--with-ecj-jar="

View File

@ -0,0 +1,29 @@
This is modeled after the ia64 support. Aarch64 can be either big endian
or little endian, so we add the case for both.
---
native/fdlibm/ieeefp.h | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/native/fdlibm/ieeefp.h b/native/fdlibm/ieeefp.h
index 1a9740f..73455c0 100644
--- a/native/fdlibm/ieeefp.h
+++ b/native/fdlibm/ieeefp.h
@@ -27,6 +27,14 @@
#endif
#endif
+#ifdef __aarch64__
+#ifdef __BIG_ENDIAN__
+#define __IEEE_BIG_ENDIAN
+#else
+#define __IEEE_LITTLE_ENDIAN
+#endif
+#endif
+
#ifdef __hppa__
#define __IEEE_BIG_ENDIAN
#endif
--
2.16.3