4
4
, sha256_i686
5
5
, sha256_x86_64
6
6
, sha256_armv7l
7
+ , sha256_aarch64
7
8
, jceName
8
9
, jceDownloadUrl
9
10
, sha256JCE
38
39
39
40
assert stdenv . system == "i686-linux"
40
41
|| stdenv . system == "x86_64-linux"
41
- || stdenv . system == "armv7l-linux" ;
42
+ || stdenv . system == "armv7l-linux"
43
+ || stdenv . system == "aarch64-linux" ;
42
44
assert swingSupport -> xorg != null ;
43
45
44
46
let
45
- abortArch = abort "jdk requires i686-linux, x86_64-linux, or armv7l-linux" ;
47
+ abortArch = abort "jdk requires i686-linux, x86_64-linux, aarch64-linux or armv7l-linux" ;
46
48
47
49
/**
48
50
* The JRE libraries are in directories that depend on the CPU.
54
56
"amd64"
55
57
else if stdenv . system == "armv7l-linux" then
56
58
"arm"
59
+ else if stdenv . system == "aarch64-linux" then
60
+ "aarch64"
57
61
else
58
62
abortArch ;
59
63
@@ -99,6 +103,12 @@ let result = stdenv.mkDerivation rec {
99
103
url = downloadUrl ;
100
104
sha256 = sha256_armv7l ;
101
105
}
106
+ else if stdenv . system == "aarch64-linux" then
107
+ requireFile {
108
+ name = "jdk-${ productVersion } u${ patchVersion } -linux-arm64-vfp-hflt.tar.gz" ;
109
+ url = downloadUrl ;
110
+ sha256 = sha256_aarch64 ;
111
+ }
102
112
else
103
113
abortArch ;
104
114
@@ -116,7 +126,7 @@ let result = stdenv.mkDerivation rec {
116
126
# Set PaX markings
117
127
exes=$(file $sourceRoot/bin/* $sourceRoot/jre/bin/* 2> /dev/null | grep -E 'ELF.*(executable|shared object)' | sed -e 's/: .*$//')
118
128
for file in $exes; do
119
- paxmark m "$file"
129
+ paxmark m "$file" || true
120
130
# On x86 for heap sizes over 700MB disable SEGMEXEC and PAGEEXEC as well.
121
131
${ stdenv . lib . optionalString stdenv . isi686 ''paxmark msp "$file"'' }
122
132
done
@@ -212,7 +222,7 @@ let result = stdenv.mkDerivation rec {
212
222
213
223
meta = with stdenv . lib ; {
214
224
license = licenses . unfree ;
215
- platforms = [ "i686-linux" "x86_64-linux" "armv7l-linux" ] ; # some inherit jre.meta.platforms
225
+ platforms = [ "i686-linux" "x86_64-linux" "armv7l-linux" "aarch64-linux" ] ; # some inherit jre.meta.platforms
216
226
} ;
217
227
218
228
} ; in result
0 commit comments