diff --git a/README.md b/README.md
index 1c0d4288d8a..9f3beec2d60 100644
--- a/README.md
+++ b/README.md
@@ -109,7 +109,7 @@ The following dependencies are needed either at build time or runtime:
* [fmt](https://fmt.dev/)
* [gcc](https://gcc.gnu.org/)
* [gmp](https://gmplib.org/)
-* [jdk](https://openjdk.java.net/) (version 11 or greater)
+* [jdk](https://openjdk.java.net/) (version 17 or greater)
* [libjemalloc](https://github.com/jemalloc/jemalloc)
* [libyaml](https://pyyaml.org/wiki/LibYAML)
* [llvm](https://llvm.org/) (We require version 10 or greater for clang, lld, and llvm-tools. On some distributions, the utilities below are also needed and packaged separately.)
@@ -135,10 +135,10 @@ See the notes below.
### Installation Notes
-1. Java Development Kit (required JDK11 or higher)
+1. Java Development Kit (required JDK 17 or higher)
* Linux: Download from package manager
- (e.g. `sudo apt-get install openjdk-11-jdk`).
+ (e.g. `sudo apt-get install openjdk-17-jdk`).
* macOS/brew: Download from package manager
(e.g. `brew install java`).
@@ -419,10 +419,6 @@ Common build-time error messages:
build path of your IDE. Generally this is solved by regenerating your project /
re-syncing it with the pom.xml.
-- `[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile
- (default-compile) on project k-core: Fatal error compiling: invalid target release: 11 -> [Help 1]`
- + You either do not have Java 11 installed, or `$JAVA_HOME` does not point to a Java 11 JDK.
-
- `[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run
(build-haskell) on project haskell-backend: An Ant BuildException has occured: exec returned: 1`
diff --git a/flake.nix b/flake.nix
index e5690b2fce5..ea4a8ed148b 100644
--- a/flake.nix
+++ b/flake.nix
@@ -64,6 +64,7 @@
k-framework = { haskell-backend-bins, llvm-kompile-libs }:
prev.callPackage ./nix/k.nix {
inherit (prev) llvm-backend;
+ clang = prev."clang_${toString final.llvm-version}";
booster = booster-backend.packages.${prev.system}.kore-rpc-booster;
mavenix = { inherit (prev) buildMaven; };
haskell-backend = haskell-backend-bins;
diff --git a/nix/k.nix b/nix/k.nix
index e96bc7e0dc7..7d29456b8fa 100644
--- a/nix/k.nix
+++ b/nix/k.nix
@@ -1,6 +1,7 @@
{ src, clang, stdenv, lib, mavenix, runCommand, makeWrapper, bison, flex, gcc
-, git, gmp, jdk, mpfr, ncurses, pkgconfig, python3, z3, haskell-backend, booster ? null
-, prelude-kore, llvm-backend, llvm-backend-matching, debugger, version, llvm-kompile-libs }:
+, git, gmp, jdk, jre_minimal, mpfr, ncurses, pkgconfig, python3, z3
+, haskell-backend, booster ? null, prelude-kore, llvm-backend, debugger, version
+, llvm-kompile-libs }:
let
unwrapped = mavenix.buildMaven {
@@ -46,13 +47,14 @@ let
fi
done
- mkdir -p $out/lib/cmake/kframework && ln -sf ${llvm-backend.src}/cmake/* $out/lib/cmake/kframework/
+ mkdir -p $out/lib/cmake/kframework && cp ${llvm-backend.src}/cmake/* $out/lib/cmake/kframework/
ln -sf ${llvm-backend}/include/kllvm $out/include/
ln -sf ${llvm-backend}/include/kllvm-c $out/include/
ln -sf ${llvm-backend}/lib/kllvm $out/lib/
ln -sf ${llvm-backend}/lib/scripts $out/lib/
ln -sf ${llvm-backend}/bin/* $out/bin/
- ${lib.optionalString (booster != null ) "ln -sf ${booster}/bin/* $out/bin/"}
+ ${lib.optionalString (booster != null)
+ "ln -sf ${booster}/bin/* $out/bin/"}
prelude_kore="$out/include/kframework/kore/prelude.kore"
mkdir -p "$(dirname "$prelude_kore")"
@@ -75,7 +77,10 @@ in let
flex
(if stdenv.isDarwin then clang else gcc)
gmp
- jdk
+ (jre_minimal.override {
+ modules = [ "java.base" "java.desktop" "java.logging" "java.rmi" ];
+ jdk = if stdenv.isDarwin then jdk else jdk.override { headless = true; };
+ })
mpfr
ncurses
pkgconfig
@@ -123,6 +128,5 @@ in let
ln -sf ${haskell-backend}/bin/kore-parser $out/bin/kore-parser
ln -sf ${haskell-backend}/bin/kore-repl $out/bin/kore-repl
ln -sf ${haskell-backend}/bin/kore-match-disjunction $out/bin/kore-match-disjunction
- ln -sf ${llvm-backend-matching}/bin/llvm-backend-matching $out/bin/llvm-backend-matching
'';
in final [ ]
diff --git a/package/debian/control.bookworm b/package/debian/control.bookworm
index dffbfae42c7..9a3cfe171ff 100644
--- a/package/debian/control.bookworm
+++ b/package/debian/control.bookworm
@@ -10,7 +10,7 @@ Package: kframework
Architecture: any
Section: devel
Priority: optional
-Depends: bison , clang-14 , default-jre-headless , flex , gcc , g++ , libboost-dev , libfmt-dev , libgmp-dev , libjemalloc-dev , libmpfr-dev , libsecp256k1-1 , libyaml-0-2 , libz3-4 , lld-14 , pkg-config , llvm-14
+Depends: bison , clang-14 , openjdk-17-jre-headless , flex , gcc , g++ , libboost-dev , libfmt-dev , libgmp-dev , libjemalloc-dev , libmpfr-dev , libsecp256k1-1 , libyaml-0-2 , libz3-4 , lld-14 , pkg-config , llvm-14
Recommends: z3
Description: K framework toolchain
Includes K Framework compiler for K language definitions, and K interpreter
diff --git a/package/debian/control.jammy b/package/debian/control.jammy
index 30972fdf9c1..2a08ce17c6c 100644
--- a/package/debian/control.jammy
+++ b/package/debian/control.jammy
@@ -10,7 +10,7 @@ Package: kframework
Architecture: any
Section: devel
Priority: optional
-Depends: bison , clang-14 , default-jre-headless , flex , gcc , g++ , libboost-dev , libffi-dev , libfmt-dev , libgmp-dev , libjemalloc-dev , libmpfr-dev , libsecp256k1-0 , libtinfo-dev , libyaml-0-2 , libz3-4 , lld-14 , llvm-14 , pkg-config
+Depends: bison , clang-14 , openjdk-17-jre-headless , flex , gcc , g++ , libboost-dev , libffi-dev , libfmt-dev , libgmp-dev , libjemalloc-dev , libmpfr-dev , libsecp256k1-0 , libtinfo-dev , libyaml-0-2 , libz3-4 , lld-14 , llvm-14 , pkg-config
Recommends: z3
Description: K framework toolchain
Includes K Framework compiler for K language definitions, and K interpreter
diff --git a/pom.xml b/pom.xml
index 90c2ea620b6..4497bebb742 100644
--- a/pom.xml
+++ b/pom.xml
@@ -145,8 +145,8 @@
maven-compiler-plugin
3.7.0
-
- 11
+
+ 17