File icedtea6-1.13.13-aarch64.patch of Package java-1_6_0-openjdk
--- icedtea6-1.13.13/acinclude.m4 2017-01-03 08:07:33.404933031 +0100
+++ icedtea6-1.13.13/acinclude.m4 2017-01-11 11:20:32.758291332 +0100
@@ -22,6 +22,12 @@
JRE_ARCH_DIR=alpha
CROSS_TARGET_ARCH=alpha
;;
+ arm64|aarch64)
+ BUILD_ARCH_DIR=aarch64
+ INSTALL_ARCH_DIR=aarch64
+ JRE_ARCH_DIR=aarch64
+ ARCHFLAG="-D_LITTLE_ENDIAN"
+ ;;
arm*)
BUILD_ARCH_DIR=arm
INSTALL_ARCH_DIR=arm
--- icedtea6-1.13.13/Makefile.am 2017-01-04 21:22:49.112782727 +0100
+++ icedtea6-1.13.13/Makefile.am 2017-01-11 11:21:43.228723394 +0100
@@ -570,6 +570,7 @@
patches/shark-drop_compile_method_arg_following_7083786.patch \
patches/pr1904-icedtea_and_distro_versioning.patch \
patches/openjdk/8017173-xml_cipher_rsa_oaep_cant_be_instantiated.patch \
+ patches/pr2083-aarch64_zero.patch \
patches/pr2070-type_punning_warnings.patch \
patches/pr2082-s390_type_fixes.patch \
patches/pr2096-4096-bit_dh.patch \
--- icedtea6-1.13.13/patches/pr2083-aarch64_zero.patch 1970-01-01 01:00:00.000000000 +0100
+++ icedtea6-1.13.13/patches/pr2083-aarch64_zero.patch 2017-01-11 11:20:32.762291243 +0100
@@ -0,0 +1,97 @@
+diff -Nru openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp openjdk/hotspot/src/os/linux/vm/os_linux.cpp
+--- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp 2014-11-12 22:34:55.098161588 +0000
++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2014-11-12 22:52:15.524181428 +0000
+@@ -387,7 +387,7 @@
+ * ...
+ * 7: The default directories, normally /lib and /usr/lib.
+ */
+-#if defined(AMD64) || defined(_LP64) && (defined(SPARC) || defined(PPC) || defined(S390))
++#if defined(AMD64) || defined(_LP64) && (defined(SPARC) || defined(PPC) || defined(S390) || defined(AARCH64))
+ #define DEFAULT_LIBPATH "/usr/lib64:/lib64:/lib:/usr/lib"
+ #else
+ #define DEFAULT_LIBPATH "/lib:/usr/lib"
+@@ -1441,8 +1441,8 @@
+
+ #ifndef SYS_clock_getres
+
+-#if defined(IA32) || defined(AMD64)
+-#define SYS_clock_getres IA32_ONLY(266) AMD64_ONLY(229)
++#if defined(IA32) || defined(AMD64) || defined(AARCH64)
++#define SYS_clock_getres IA32_ONLY(266) AMD64_ONLY(229) AARCH64_ONLY(114)
+ #define sys_clock_getres(x,y) ::syscall(SYS_clock_getres, x, y)
+ #else
+ #warning "SYS_clock_getres not defined for this platform, disabling fast_thread_cpu_time"
+@@ -1930,7 +1930,7 @@
+ static Elf32_Half running_arch_code=EM_AARCH64;
+ #else
+ #error Method os::dll_load requires that one of following is defined:\
+- IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K, SH
++ IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K, SH, AARCH64
+ #endif
+
+ // Identify compatability class for VM's architecture and library's architecture
+@@ -2725,9 +2725,9 @@
+ unsigned int cpu;
+ int retval = -1;
+
+-#if defined(IA32)
++#if defined(IA32) || defined(AARCH64)
+ # ifndef SYS_getcpu
+-# define SYS_getcpu 318
++# define SYS_getcpu AARCH64_ONLY(168) NOT_AARCH64(318);
+ # endif
+ retval = syscall(SYS_getcpu, &cpu, NULL, NULL);
+ #elif defined(AMD64)
+@@ -3056,7 +3056,7 @@
+
+ #ifndef ZERO
+ _large_page_size = IA32_ONLY(4 * M) AMD64_ONLY(2 * M) IA64_ONLY(256 * M) SPARC_ONLY(4 * M)
+- ARM_ONLY(2 * M) PPC_ONLY(4 * M);
++ ARM_ONLY(2 * M) PPC_ONLY(4 * M) AARCH64_ONLY(2 * M);
+ #endif // ZERO
+
+ FILE *fp = fopen("/proc/meminfo", "r");
+@@ -5484,11 +5484,11 @@
+ extern char** environ;
+
+ #ifndef __NR_fork
+-#define __NR_fork IA32_ONLY(2) IA64_ONLY(not defined) AMD64_ONLY(57)
++#define __NR_fork IA32_ONLY(2) IA64_ONLY(not defined) AMD64_ONLY(57) AARCH64_ONLY(1079)
+ #endif
+
+ #ifndef __NR_execve
+-#define __NR_execve IA32_ONLY(11) IA64_ONLY(1033) AMD64_ONLY(59)
++#define __NR_execve IA32_ONLY(11) IA64_ONLY(1033) AMD64_ONLY(59) AARCH64_ONLY(221)
+ #endif
+
+ // Run the specified command in a separate process. Return its exit value,
+diff -Nru openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
+--- openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2014-11-12 22:34:52.830131030 +0000
++++ openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2014-11-12 22:53:39.365312680 +0000
+@@ -35,7 +35,7 @@
+ #ifdef __powerpc64__
+ define_pd_global(intx, ThreadStackSize, 2048);
+ #else
+-define_pd_global(intx, ThreadStackSize, 1536);
++define_pd_global(intx, ThreadStackSize, AARCH64_ONLY(1664) NOT_AARCH64(1536));
+ #endif
+ #ifdef _LP64
+ define_pd_global(intx, VMThreadStackSize, 1024);
+diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/macros.hpp openjdk/hotspot/src/share/vm/utilities/macros.hpp
+--- openjdk.orig/hotspot/src/share/vm/utilities/macros.hpp 2014-11-12 22:34:54.810157708 +0000
++++ openjdk/hotspot/src/share/vm/utilities/macros.hpp 2014-11-12 22:49:51.182233142 +0000
+@@ -260,6 +260,14 @@
+ #define NOT_ARM(code) code
+ #endif
+
++#ifdef AARCH64
++#define AARCH64_ONLY(code) code
++#define NOT_AARCH64(code)
++#else
++#define AARCH64_ONLY(code)
++#define NOT_AARCH64(code) code
++#endif
++
+ #ifdef JAVASE_EMBEDDED
+ #define EMBEDDED_ONLY(code) code
+ #define NOT_EMBEDDED(code)