From aabf45c1637f3de98c5ca89188573985fbff153d Mon Sep 17 00:00:00 2001 From: Matt McHenry Date: Sun, 25 Mar 2018 20:14:55 -0400 Subject: [PATCH] openjdk10: minor cleanups * with only one source bundle (per JEP-296), we can use src instead of srcs, and avoid the need to cd in prePatch * fetch sources from jdk10u instead of jdk10, to make it easier to grab updates when they start coming. * removed commented-out code that became irrelevant in the 8 -> 9 transition (*.pf files, infinality font rendering) * create jdk10, jre10, and jre10_headless attributes in all-packages.nix --- pkgs/development/compilers/openjdk/10.nix | 23 +++++------------------ pkgs/top-level/all-packages.nix | 14 ++++++++++++++ 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/pkgs/development/compilers/openjdk/10.nix b/pkgs/development/compilers/openjdk/10.nix index d84b0c302426..2a0c7a1ac01c 100644 --- a/pkgs/development/compilers/openjdk/10.nix +++ b/pkgs/development/compilers/openjdk/10.nix @@ -4,7 +4,6 @@ , libjpeg, giflib , setJavaClassPath , minimal ? false -#, enableInfinality ? true # font rendering patch , enableGnome2 ? true, gtk2, gnome_vfs, glib, GConf }: @@ -20,18 +19,16 @@ let update = "10"; build = "46"; - baseurl = "http://hg.openjdk.java.net/jdk/jdk10"; repover = "jdk-${update}+${build}"; paxflags = if stdenv.isi686 then "msp" else "m"; - jdk10 = fetchurl { - url = "${baseurl}/archive/${repover}.tar.gz"; - sha256 = "1n5jccf2rw15hzwppnvy87bysb84g3fcnkxbjhj8gi0iv79dxlc7"; - }; + openjdk10 = stdenv.mkDerivation { name = "openjdk-${update}-b${build}"; - srcs = [ jdk10 ]; - sourceRoot = "."; + src = fetchurl { + url = "http://hg.openjdk.java.net/jdk-updates/jdk10u/archive/${repover}.tar.gz"; + sha256 = "1a2cjad816qilsigkq035rqzfhzmq5vaz1klilrrws456flbsjlg"; + }; outputs = [ "out" "jre" ]; @@ -44,10 +41,6 @@ let gtk2 gnome_vfs GConf glib ]; - prePatch = '' - cd jdk10* - ''; - patches = [ ./fix-java-home-jdk10.patch ./read-truststore-from-env-jdk10.patch @@ -126,12 +119,6 @@ let lndir $jre/lib/openjdk/jre $out/lib/openjdk/jre - # Make sure cmm/*.pf are not symlinks: - # https://youtrack.jetbrains.com/issue/IDEA-147272 - # in 9, it seems no *.pf files end up in $out ... ? - # rm -rf $out/lib/openjdk/jre/lib/cmm - # ln -s {$jre,$out}/lib/openjdk/jre/lib/cmm - # Set PaX markings exes=$(file $out/lib/openjdk/bin/* $jre/lib/openjdk/jre/bin/* 2> /dev/null | grep -E 'ELF.*(executable|shared object)' | sed -e 's/: .*$//') echo "to mark: *$exes*" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a4726f59b893..969f94b5cde7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6423,6 +6423,20 @@ with pkgs; (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } ((openjdk9.override { minimal = true; }).jre // { outputs = [ "jre" ]; })); + jdk10 = if stdenv.isArm || stdenv.isAarch64 then oraclejdk10 else openjdk10 // { outputs = [ "out" ]; }; + jre10 = if stdenv.isArm || stdenv.isAarch64 then oraclejre10 else lib.setName "openjre-${lib.getVersion pkgs.openjdk10.jre}" + (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } + (openjdk10.jre // { outputs = [ "jre" ]; })); + jre10_headless = + if stdenv.isArm || stdenv.isAarch64 then + oraclejre10 + else if stdenv.isDarwin then + jre10 + else + lib.setName "openjre-${lib.getVersion pkgs.openjdk10.jre}-headless" + (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } + ((openjdk10.override { minimal = true; }).jre // { outputs = [ "jre" ]; })); + jdk = jdk8; jre = jre8; jre_headless = jre8_headless;