diff options
Diffstat (limited to 'pkgs/development/compilers/openjdk/openjfx/19.nix')
-rw-r--r-- | pkgs/development/compilers/openjdk/openjfx/19.nix | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/pkgs/development/compilers/openjdk/openjfx/19.nix b/pkgs/development/compilers/openjdk/openjfx/19.nix index 802a0eb9b457f..2100f962917ad 100644 --- a/pkgs/development/compilers/openjdk/openjfx/19.nix +++ b/pkgs/development/compilers/openjdk/openjfx/19.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchFromGitHub, fetchpatch, writeText, openjdk17_headless , openjdk19_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst -, libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, icu68 +, libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, fetchurl, runCommand , withMedia ? true , withWebKit ? false }: @@ -15,6 +15,16 @@ let java = openjdk17_headless; }); + icuVersionWithSep = s: "68${s}2"; + icuPath = "download/release-${icuVersionWithSep "-"}/icu4c-${icuVersionWithSep "."}-data-bin-l.zip"; + icuData = fetchurl { + url = "https://github.com/unicode-org/icu/releases/${icuPath}"; + hash = "sha256-ieQCLBTNrskuf8j3IUQS3QLIAQzLom/O58muMP363Lw="; + }; + icuFakeRepository = runCommand "icu-data-repository" {} '' + install -Dm644 ${icuData} $out/${icuPath} + ''; + makePackage = args: stdenv.mkDerivation ({ version = "${major}${update}${build}"; @@ -38,7 +48,14 @@ let }) ]; - buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 icu68 ]; + postPatch = '' + # Add missing includes for gcc-13 for webkit build: + sed -e '1i #include <cstdio>' \ + -i modules/javafx.web/src/main/native/Source/bmalloc/bmalloc/Heap.cpp \ + modules/javafx.web/src/main/native/Source/bmalloc/bmalloc/IsoSharedPageInlines.h + ''; + + buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 ]; nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ]; dontUseCmakeConfigure = true; @@ -55,7 +72,7 @@ let export GRADLE_USER_HOME=$(mktemp -d) ln -s $config gradle.properties export NIX_CFLAGS_COMPILE="$(pkg-config --cflags glib-2.0) $NIX_CFLAGS_COMPILE" - gradle --no-daemon $gradleFlags sdk + gradle --no-daemon --console=plain $gradleFlags sdk runHook postBuild ''; @@ -89,6 +106,7 @@ in makePackage { gradleProperties = '' COMPILE_MEDIA = ${lib.boolToString withMedia} COMPILE_WEBKIT = ${lib.boolToString withWebKit} + ${lib.optionalString withWebKit "icuRepositoryURL = file://${icuFakeRepository}"} ''; preBuild = '' @@ -123,5 +141,8 @@ in makePackage { description = "The next-generation Java client toolkit"; maintainers = with maintainers; [ abbradar ]; platforms = platforms.unix; + knownVulnerabilities = [ + "This OpenJFX version has reached its end of life." + ]; }; } |