Files
ap-cs-klee/klee.nix

40 lines
874 B
Nix

{ stdenv
, lib
, fetchFromGitHub
, cmake
, llvmPackages_9
, clang_9
, z3
, stp
, cryptominisat
, gperftools
, sqlite
, gtest
, lit
, debug ? false
}:
stdenv.mkDerivation rec {
pname = "klee";
version = "2.2";
src = fetchFromGitHub {
owner = "klee";
repo = "klee";
rev = "v${version}";
sha256 = "Ar3BKfADjJvvP0dI9+x/l3RDs8ncx4jmO7ol4MgOr4M=";
};
buildInputs = [ llvmPackages_9.llvm clang_9 z3 stp cryptominisat gperftools sqlite ];
nativeBuildInputs = [ cmake gtest lit ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}"
"-DKLEE_RUNTIME_BUILD_TYPE=${if debug then "Debug" else "Release"}"
"-DENABLE_UNIT_TESTS=ON"
"-DGTEST_SRC_DIR=${gtest.src}"
"-DGTEST_INCLUDE_DIR=${gtest.src}/googletest/include"
"-DENABLE_POSIX_RUNTIME=ON"
];
/*testPhase = ''
make systemtests unittests
'';*/
}