diff --git a/pkgs/development/tools/analysis/spin/default.nix b/pkgs/development/tools/analysis/spin/default.nix new file mode 100644 index 00000000000..6bfc6fe7de0 --- /dev/null +++ b/pkgs/development/tools/analysis/spin/default.nix @@ -0,0 +1,27 @@ +{stdenv, fetchurl, flex, yacc, tk }: + +stdenv.mkDerivation { + name = "spin-5.1.7"; + + src = fetchurl { + url = http://spinroot.com/spin/Src/spin517.tar.gz; + sha256 = "03c6bmar4z13jx7dddb029f0qnmgl8x4hyfwn3qijjyd4dbliiw6"; + }; + + preConfigure = "cd Src*"; + buildInputs = [ flex yacc tk ]; + + installPhase = '' + ensureDir $out/bin + cp ../Xspin*/xsp* $out/bin/xspin + sed -i -e '1s@^#!/bin/sh@#!${tk}/bin/wish8.4@' \ + -e '/exec wish/d' $out/bin/xspin + cp spin $out/bin + ''; + + meta = { + description = "Formal verification tool for distributed software systems"; + homepage = http://spinroot.com/; + license = "free"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d08c0824071..dd02204b087 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2588,6 +2588,10 @@ let inherit fetchurl stdenv pkgconfig; }; + spin = import ../development/tools/analysis/spin { + inherit fetchurl stdenv flex yacc tk; + }; + splint = import ../development/tools/analysis/splint { inherit fetchurl stdenv flex; };