openjdk25: init at 25+36

Changed files
+48 -1
pkgs
development
compilers
top-level
+25
pkgs/development/compilers/openjdk/25/patches/make-4.4.1.patch
···
+
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
+
+6
pkgs/development/compilers/openjdk/25/source.json
···
+
{
+
"hash": "sha256-5kQ7xPyWGk/weVYVVNEFPUF1HspfisqcPHA+DM6Q35c=",
+
"owner": "openjdk",
+
"repo": "jdk25u",
+
"rev": "refs/tags/jdk-25+36"
+
}
+7 -1
pkgs/development/compilers/openjdk/generic.nix
···
temurin-bin-21,
temurin-bin-23,
temurin-bin-24,
+
temurin-bin-25,
jdk-bootstrap ?
{
"8" = temurin-bin-8.__spliced.buildBuild or temurin-bin-8;
···
"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},
}:
···
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;
···
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 {
···
url = "https://github.com/openjdk/jdk/commit/9341d135b855cc208d48e47d30cd90aafa354c36.patch";
hash = "sha256-Qcm3ZmGCOYLZcskNjj7DYR85R4v07vYvvavrVOYL8vg=";
})
+
]
+
++ lib.optionals atLeast25 [
+
./25/patches/make-4.4.1.patch
]
++ lib.optionals (!headless && enableGtk) [
(
+9
pkgs/top-level/all-packages.nix
···
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;
···
jre21_minimal = callPackage ../development/compilers/openjdk/jre.nix {
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;
+1
pkgs/top-level/java-packages.nix
···
openjdk21 = mkOpenjdk "21";
openjdk23 = mkOpenjdk "23";
openjdk24 = mkOpenjdk "24";
+
openjdk25 = mkOpenjdk "25";
# Legacy aliases
openjdk8-bootstrap = temurin-bin.jdk-8;