lock: 1.3.0 -> 1.3.4 (#364295)
[NixPkgs.git] / pkgs / by-name / ve / verifast / package.nix
blob3f990a6fb5544c165cb4ba0ca4bbaaa4bb954aaf
1 { lib, stdenv, fetchurl, gtk2, gdk-pixbuf, atk, pango, glib, cairo, freetype
2 , fontconfig, libxml2, gnome2 }:
4 let
6   libPath = lib.makeLibraryPath
7     [ stdenv.cc.libc stdenv.cc.cc gtk2 gdk-pixbuf atk pango glib cairo
8       freetype fontconfig libxml2 gnome2.gtksourceview
9     ] + ":${lib.getLib stdenv.cc.cc}/lib64:$out/libexec";
11   patchExe = x: ''
12     patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
13       --set-rpath ${libPath} ${x}
14   '';
16   patchLib = x: ''
17     patchelf --set-rpath ${libPath} ${x}
18   '';
21 stdenv.mkDerivation rec {
22   pname = "verifast";
23   version = "24.08.30";
25   src = fetchurl {
26     url    = "https://github.com/verifast/verifast/releases/download/${version}/${pname}-${version}-linux.tar.gz";
27     sha256 = "sha256-hIS5e+zVlxSOqr1/ZDy0PangyWjB9uLCvN8Qr688msg=";
28   };
30   dontConfigure = true;
31   dontStrip = true;
32   installPhase = ''
33     mkdir -p $out/bin
34     cp -R bin $out/libexec
36     ${patchExe "$out/libexec/verifast"}
37     ${patchExe "$out/libexec/vfide"}
38     ${patchLib "$out/libexec/libz3.so"}
39     ln -s $out/libexec/verifast $out/bin/verifast
40     ln -s $out/libexec/vfide    $out/bin/vfide
41   '';
43   meta = {
44     description = "Verification for C and Java programs via separation logic";
45     homepage    = "https://people.cs.kuleuven.be/~bart.jacobs/verifast/";
46     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
47     license     = lib.licenses.mit;
48     platforms   = [ "x86_64-linux" ];
49     maintainers = [ lib.maintainers.thoughtpolice ];
50   };