tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
openjdk-make-bootstrap: Use openjdk8
William A. Kennington III
10 years ago
0cc68fa4
bdcb7215
+32
-23
3 changed files
expand all
collapse all
unified
split
pkgs
development
compilers
openjdk
make-bootstrap.nix
openjdk8.nix
top-level
all-packages.nix
+22
-17
pkgs/development/compilers/openjdk/make-bootstrap.nix
···
1
1
{ runCommand, openjdk, nukeReferences }:
2
2
3
3
-
let arch = openjdk.architecture; in
4
4
-
5
3
runCommand "${openjdk.name}-bootstrap.tar.xz" {} ''
6
6
-
mkdir -p openjdk-bootstrap/bin
7
7
-
mkdir -p openjdk-bootstrap/lib
8
8
-
mkdir -p openjdk-bootstrap/jre/lib/{security,ext,${arch}/{jli,server,client,headless}}
9
9
-
cp ${openjdk}/bin/{idlj,ja{va{,c,p,h},r},rmic} openjdk-bootstrap/bin
10
10
-
cp ${openjdk}/lib/tools.jar openjdk-bootstrap/lib
11
11
-
cp ${openjdk}/jre/lib/{meta-index,{charsets,jce,jsse,rt,resources}.jar,currency.data} openjdk-bootstrap/jre/lib
12
12
-
cp ${openjdk}/jre/lib/security/java.security openjdk-bootstrap/jre/lib/security
13
13
-
cp ${openjdk}/jre/lib/ext/{meta-index,sunjce_provider.jar} openjdk-bootstrap/jre/lib/ext
14
14
-
cp ${openjdk}/jre/lib/${arch}/{jvm.cfg,lib{awt,java,verify,zip,nio,net}.so} openjdk-bootstrap/jre/lib/${arch}
15
15
-
cp ${openjdk}/jre/lib/${arch}/jli/libjli.so openjdk-bootstrap/jre/lib/${arch}/jli
16
16
-
cp ${openjdk}/jre/lib/${arch}/server/libjvm.so openjdk-bootstrap/jre/lib/${arch}/server
17
17
-
cp ${openjdk}/jre/lib/${arch}/client/libjvm.so openjdk-bootstrap/jre/lib/${arch}/client ||
18
18
-
rmdir openjdk-bootstrap/jre/lib/${arch}/client
19
19
-
cp ${openjdk}/jre/lib/${arch}/headless/libmawt.so openjdk-bootstrap/jre/lib/${arch}/headless
20
20
-
cp -a ${openjdk}/include openjdk-bootstrap
4
4
+
mkdir -pv openjdk-bootstrap/lib
5
5
+
6
6
+
# Do a deep copy of the openjdk
7
7
+
cp -vrL ${openjdk.home} openjdk-bootstrap/lib
8
8
+
9
9
+
# Includes are needed for building the native jvm
10
10
+
cp -vrL ${openjdk}/include openjdk-bootstrap
11
11
+
12
12
+
# The binaries are actually stored in the openjdk lib
13
13
+
ln -sv lib/openjdk/bin openjdk-bootstrap/bin
14
14
+
find . -name libjli.so
15
15
+
(cd openjdk-bootstrap/lib; find . -name libjli.so -exec ln -sfv {} libjli.so \;)
21
16
22
17
chmod -R +w openjdk-bootstrap
18
18
+
19
19
+
# Remove components we don't need
20
20
+
find openjdk-bootstrap -name \*.diz -exec rm {} \;
21
21
+
find openjdk-bootstrap -name \*.ttf -exec rm {} \;
22
22
+
find openjdk-bootstrap -name \*.gif -exec rm {} \;
23
23
+
find openjdk-bootstrap -name src.zip -exec rm {} \;
24
24
+
rm -rf openjdk-bootstrap/lib/openjdk/jre/bin
25
25
+
26
26
+
# Remove all of the references to the native nix store
23
27
find openjdk-bootstrap -print0 | xargs -0 ${nukeReferences}/bin/nuke-refs
24
28
29
29
+
# Create the output tarball
25
30
tar cv openjdk-bootstrap | xz > $out
26
31
''
+6
-6
pkgs/development/compilers/openjdk/openjdk8.nix
···
1
1
-
{ stdenv, fetchurl, cpio, file, which, unzip, zip, xorg, cups, freetype, alsaLib, bootjdk, cacert, perl, liberation_ttf, fontconfig } :
1
1
+
{ stdenv, fetchurl, cpio, file, which, unzip, zip, xorg, cups, freetype, alsaLib, bootjdk, cacert, perl, liberation_ttf, fontconfig
2
2
+
3
3
+
, minimal ? false } :
2
4
let
3
5
update = "40";
4
6
build = "27";
···
66
68
./read-truststore-from-env-jdk8.patch
67
69
./currency-date-range-jdk8.patch
68
70
./JDK-8074312-hotspot.patch
69
69
-
70
71
];
71
72
preConfigure = ''
72
73
chmod +x configure
···
84
85
"--with-override-nashorn=../nashorn-${repover}"
85
86
"--with-boot-jdk=${bootjdk.home}"
86
87
"--with-update-version=${update}"
87
87
-
"--with-build-number=b${build}"
88
88
+
"--with-build-number=${build}"
88
89
"--with-milestone=fcs"
89
90
"--disable-debug-symbols"
90
90
-
];
91
91
-
NIX_LDFLAGS= "-lfontconfig";
91
91
+
] ++ stdenv.lib.optional minimal "--disable-headful";
92
92
+
NIX_LDFLAGS= if minimal then null else "-lfontconfig";
92
93
buildFlags = "all";
93
94
installPhase = ''
94
95
mkdir -p $out/lib/openjdk $out/share $jre/lib/openjdk
···
142
143
143
144
ln -s $out/lib/openjdk/bin $out/bin
144
145
ln -s $jre/lib/openjdk/jre/bin $jre/bin
145
145
-
146
146
'';
147
147
148
148
meta = with stdenv.lib; {
+4
pkgs/top-level/all-packages.nix
···
3933
3933
3934
3934
openjdk-bootstrap = callPackage ../development/compilers/openjdk/bootstrap.nix { };
3935
3935
3936
3936
+
openjdk-make-bootstrap = callPackage ../development/compilers/openjdk/make-bootstrap.nix {
3937
3937
+
openjdk = openjdk.override { minimal = true; };
3938
3938
+
};
3939
3939
+
3936
3940
openjdk-darwin = callPackage ../development/compilers/openjdk-darwin { };
3937
3941
3938
3942
openjdk7 = callPackage ../development/compilers/openjdk {