From 28b2a1e0254b4bc35d7e1982ce1ddcba1c756ab7 Mon Sep 17 00:00:00 2001 From: sempiternal-aurora <78790545+sempiternal-aurora@users.noreply.github.com> Date: Mon, 19 Jan 2026 20:44:03 +0800 Subject: [PATCH] isabelle: fix vampire build * Add install to Cmake now that latest version has it * Add move because isabelle needs the binary to be 'vampire' * Add flag to ignore search for Z3, it doesn't work and isn't required * Change build to only use gcc14 on linux, on darwin clang21 is fine --- pkgs/by-name/is/isabelle/package.nix | 14 ++++++++++++-- .../isabelle/vampire-add-install-directive.patch | 11 +++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 pkgs/by-name/is/isabelle/vampire-add-install-directive.patch diff --git a/pkgs/by-name/is/isabelle/package.nix b/pkgs/by-name/is/isabelle/package.nix index c44851d0e337..0e483c20773e 100644 --- a/pkgs/by-name/is/isabelle/package.nix +++ b/pkgs/by-name/is/isabelle/package.nix @@ -50,7 +50,8 @@ let # Isabelle uses a branch of vampire that is not in the normal release line # that adds support for higher order goals - vampire' = (vampire.override { stdenv = gcc14Stdenv; }).overrideAttrs (_: { + vampireStdenv = if stdenv.hostPlatform.isLinux then gcc14Stdenv else stdenv; + vampire' = (vampire.override { stdenv = vampireStdenv; }).overrideAttrs (_: { pname = "vampire-for-isabelle"; version = "4.8"; @@ -61,7 +62,16 @@ let hash = "sha256-CmppaGa4M9tkE1b25cY1LSPFygJy5yV4kpHKbPqvcVE="; }; - cmakeFlags = [ (lib.cmakeFeature "CMAKE_BUILD_HOL" "On") ]; + patches = [ ./vampire-add-install-directive.patch ]; + + postInstall = '' + mv $out/bin/vampire_rel $out/bin/vampire + ''; + + cmakeFlags = [ + (lib.cmakeFeature "CMAKE_BUILD_HOL" "On") + (lib.cmakeFeature "CMAKE_DISABLE_FIND_PACKAGE_Z3" "On") + ]; }); sha1 = stdenv.mkDerivation { diff --git a/pkgs/by-name/is/isabelle/vampire-add-install-directive.patch b/pkgs/by-name/is/isabelle/vampire-add-install-directive.patch new file mode 100644 index 000000000000..5be3502600b8 --- /dev/null +++ b/pkgs/by-name/is/isabelle/vampire-add-install-directive.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -997,6 +997,8 @@ set_target_properties(vampire PROPERTIES + ) + configure_file(version.cpp.in version.cpp) + ++install(TARGETS vampire) ++ + if(CMAKE_BUILD_TYPE STREQUAL Release AND IPO) + message(STATUS "compiling Vampire with IPO: this might take a while") + set_property(TARGET obj PROPERTY INTERPROCEDURAL_OPTIMIZATION true)