Loading pkgs/development/compilers/openjdk/25/patches/make-4.4.1.patch 0 → 100644 +25 −0 Original line number Diff line number Diff line diff --git a/make/PreInit.gmk b/make/PreInit.gmk index 3df44308dd..490d7c24e9 100644 --- a/make/PreInit.gmk +++ b/make/PreInit.gmk @@ -60,13 +60,19 @@ # Extract non-global targets that require a spec file. CALLED_SPEC_TARGETS := $(filter-out $(ALL_GLOBAL_TARGETS), $(CALLED_TARGETS)) +# GNU make-4.4 (and later) include not just single-letter form of the +# options MAKEFILES but also long for and even some of the arguments. +# Skip long form and use only short form: +# MAKEFLAGS=' --debug=basic -- LOG=trace ...' +MAKEFLAGS_SINGLE_LETTER := $(firstword -$(MAKEFLAGS)) + # If we have only global targets, or if we are called with -qp (assuming an # external part, e.g. bash completion, is trying to understand our targets), # we will skip SPEC location and the sanity checks. ifeq ($(CALLED_SPEC_TARGETS), ) SKIP_SPEC := true endif -ifeq ($(findstring p, $(MAKEFLAGS))$(findstring q, $(MAKEFLAGS)), pq) +ifeq ($(findstring p, $(MAKEFLAGS_SINGLE_LETTER))$(findstring q, $(MAKEFLAGS_SINGLE_LETTER)), pq) SKIP_SPEC := true endif pkgs/development/compilers/openjdk/25/source.json 0 → 100644 +6 −0 Original line number Diff line number Diff line { "hash": "sha256-5kQ7xPyWGk/weVYVVNEFPUF1HspfisqcPHA+DM6Q35c=", "owner": "openjdk", "repo": "jdk25u", "rev": "refs/tags/jdk-25+36" } pkgs/development/compilers/openjdk/generic.nix +7 −1 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ temurin-bin-21, temurin-bin-23, temurin-bin-24, temurin-bin-25, jdk-bootstrap ? { "8" = temurin-bin-8.__spliced.buildBuild or temurin-bin-8; Loading @@ -88,6 +89,7 @@ "21" = temurin-bin-21.__spliced.buildBuild or temurin-bin-21; "23" = temurin-bin-23.__spliced.buildBuild or temurin-bin-23; "24" = temurin-bin-24.__spliced.buildBuild or temurin-bin-24; "25" = temurin-bin-25.__spliced.buildBuild or temurin-bin-25; } .${featureVersion}, }: Loading @@ -104,6 +106,7 @@ let atLeast21 = lib.versionAtLeast featureVersion "21"; atLeast23 = lib.versionAtLeast featureVersion "23"; atLeast24 = lib.versionAtLeast featureVersion "24"; atLeast25 = lib.versionAtLeast featureVersion "25"; tagPrefix = if atLeast11 then "jdk-" else "jdk"; version = lib.removePrefix "refs/tags/${tagPrefix}" source.src.rev; Loading Loading @@ -217,7 +220,7 @@ stdenv.mkDerivation (finalAttrs: { sha256 = "sha256-LzmSew51+DyqqGyyMw2fbXeBluCiCYsS1nCjt9hX6zo="; }) ] ++ lib.optionals atLeast11 [ ++ lib.optionals (atLeast11 && !atLeast25) [ # Fix build for gnumake-4.4.1: # https://github.com/openjdk/jdk/pull/12992 (fetchpatch { Loading @@ -226,6 +229,9 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-Qcm3ZmGCOYLZcskNjj7DYR85R4v07vYvvavrVOYL8vg="; }) ] ++ lib.optionals atLeast25 [ ./25/patches/make-4.4.1.patch ] ++ lib.optionals (!headless && enableGtk) [ ( if atLeast17 then Loading pkgs/top-level/all-packages.nix +9 −0 Original line number Diff line number Diff line Loading @@ -5290,6 +5290,11 @@ with pkgs; jdk24 = openjdk24; jdk24_headless = openjdk24_headless; openjdk25 = javaPackages.compiler.openjdk25; openjdk25_headless = javaPackages.compiler.openjdk25.headless; jdk25 = openjdk25; jdk25_headless = openjdk25_headless; # default JDK jdk = jdk21; jdk_headless = jdk21_headless; Loading @@ -5316,6 +5321,10 @@ with pkgs; jdk = jdk21; jdkOnBuild = buildPackages.jdk21; }; jre25_minimal = callPackage ../development/compilers/openjdk/jre.nix { jdk = jdk25; jdkOnBuild = buildPackages.jdk25; }; jre_minimal = callPackage ../development/compilers/openjdk/jre.nix { jdkOnBuild = buildPackages.jdk; }; Loading pkgs/top-level/java-packages.nix +1 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ with pkgs; openjdk21 = mkOpenjdk "21"; openjdk23 = mkOpenjdk "23"; openjdk24 = mkOpenjdk "24"; openjdk25 = mkOpenjdk "25"; # Legacy aliases openjdk8-bootstrap = temurin-bin.jdk-8; Loading Loading
pkgs/development/compilers/openjdk/25/patches/make-4.4.1.patch 0 → 100644 +25 −0 Original line number Diff line number Diff line diff --git a/make/PreInit.gmk b/make/PreInit.gmk index 3df44308dd..490d7c24e9 100644 --- a/make/PreInit.gmk +++ b/make/PreInit.gmk @@ -60,13 +60,19 @@ # Extract non-global targets that require a spec file. CALLED_SPEC_TARGETS := $(filter-out $(ALL_GLOBAL_TARGETS), $(CALLED_TARGETS)) +# GNU make-4.4 (and later) include not just single-letter form of the +# options MAKEFILES but also long for and even some of the arguments. +# Skip long form and use only short form: +# MAKEFLAGS=' --debug=basic -- LOG=trace ...' +MAKEFLAGS_SINGLE_LETTER := $(firstword -$(MAKEFLAGS)) + # If we have only global targets, or if we are called with -qp (assuming an # external part, e.g. bash completion, is trying to understand our targets), # we will skip SPEC location and the sanity checks. ifeq ($(CALLED_SPEC_TARGETS), ) SKIP_SPEC := true endif -ifeq ($(findstring p, $(MAKEFLAGS))$(findstring q, $(MAKEFLAGS)), pq) +ifeq ($(findstring p, $(MAKEFLAGS_SINGLE_LETTER))$(findstring q, $(MAKEFLAGS_SINGLE_LETTER)), pq) SKIP_SPEC := true endif
pkgs/development/compilers/openjdk/25/source.json 0 → 100644 +6 −0 Original line number Diff line number Diff line { "hash": "sha256-5kQ7xPyWGk/weVYVVNEFPUF1HspfisqcPHA+DM6Q35c=", "owner": "openjdk", "repo": "jdk25u", "rev": "refs/tags/jdk-25+36" }
pkgs/development/compilers/openjdk/generic.nix +7 −1 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ temurin-bin-21, temurin-bin-23, temurin-bin-24, temurin-bin-25, jdk-bootstrap ? { "8" = temurin-bin-8.__spliced.buildBuild or temurin-bin-8; Loading @@ -88,6 +89,7 @@ "21" = temurin-bin-21.__spliced.buildBuild or temurin-bin-21; "23" = temurin-bin-23.__spliced.buildBuild or temurin-bin-23; "24" = temurin-bin-24.__spliced.buildBuild or temurin-bin-24; "25" = temurin-bin-25.__spliced.buildBuild or temurin-bin-25; } .${featureVersion}, }: Loading @@ -104,6 +106,7 @@ let atLeast21 = lib.versionAtLeast featureVersion "21"; atLeast23 = lib.versionAtLeast featureVersion "23"; atLeast24 = lib.versionAtLeast featureVersion "24"; atLeast25 = lib.versionAtLeast featureVersion "25"; tagPrefix = if atLeast11 then "jdk-" else "jdk"; version = lib.removePrefix "refs/tags/${tagPrefix}" source.src.rev; Loading Loading @@ -217,7 +220,7 @@ stdenv.mkDerivation (finalAttrs: { sha256 = "sha256-LzmSew51+DyqqGyyMw2fbXeBluCiCYsS1nCjt9hX6zo="; }) ] ++ lib.optionals atLeast11 [ ++ lib.optionals (atLeast11 && !atLeast25) [ # Fix build for gnumake-4.4.1: # https://github.com/openjdk/jdk/pull/12992 (fetchpatch { Loading @@ -226,6 +229,9 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-Qcm3ZmGCOYLZcskNjj7DYR85R4v07vYvvavrVOYL8vg="; }) ] ++ lib.optionals atLeast25 [ ./25/patches/make-4.4.1.patch ] ++ lib.optionals (!headless && enableGtk) [ ( if atLeast17 then Loading
pkgs/top-level/all-packages.nix +9 −0 Original line number Diff line number Diff line Loading @@ -5290,6 +5290,11 @@ with pkgs; jdk24 = openjdk24; jdk24_headless = openjdk24_headless; openjdk25 = javaPackages.compiler.openjdk25; openjdk25_headless = javaPackages.compiler.openjdk25.headless; jdk25 = openjdk25; jdk25_headless = openjdk25_headless; # default JDK jdk = jdk21; jdk_headless = jdk21_headless; Loading @@ -5316,6 +5321,10 @@ with pkgs; jdk = jdk21; jdkOnBuild = buildPackages.jdk21; }; jre25_minimal = callPackage ../development/compilers/openjdk/jre.nix { jdk = jdk25; jdkOnBuild = buildPackages.jdk25; }; jre_minimal = callPackage ../development/compilers/openjdk/jre.nix { jdkOnBuild = buildPackages.jdk; }; Loading
pkgs/top-level/java-packages.nix +1 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ with pkgs; openjdk21 = mkOpenjdk "21"; openjdk23 = mkOpenjdk "23"; openjdk24 = mkOpenjdk "24"; openjdk25 = mkOpenjdk "25"; # Legacy aliases openjdk8-bootstrap = temurin-bin.jdk-8; Loading