diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/science/logic/z3')
-rw-r--r-- | nixpkgs/pkgs/applications/science/logic/z3/default.nix | 42 | ||||
-rw-r--r-- | nixpkgs/pkgs/applications/science/logic/z3/tptp.nix | 31 |
2 files changed, 73 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/science/logic/z3/default.nix b/nixpkgs/pkgs/applications/science/logic/z3/default.nix new file mode 100644 index 000000000000..14f75fb68b5e --- /dev/null +++ b/nixpkgs/pkgs/applications/science/logic/z3/default.nix @@ -0,0 +1,42 @@ +{ stdenv, fetchFromGitHub, python, fixDarwinDylibNames }: + +stdenv.mkDerivation rec { + pname = "z3"; + version = "4.8.5"; + + src = fetchFromGitHub { + owner = "Z3Prover"; + repo = pname; + rev = "Z3-${version}"; + sha256 = "11sy98clv7ln0a5vqxzvh6wwqbswsjbik2084hav5kfws4xvklfa"; + }; + + buildInputs = [ python fixDarwinDylibNames ]; + propagatedBuildInputs = [ python.pkgs.setuptools ]; + enableParallelBuilding = true; + + configurePhase = '' + ${python.interpreter} scripts/mk_make.py --prefix=$out --python --pypkgdir=$out/${python.sitePackages} + cd build + ''; + + postInstall = '' + mkdir -p $dev $lib $python/lib + + mv $out/lib/python* $python/lib/ + mv $out/lib $lib/lib + mv $out/include $dev/include + + ln -sf $lib/lib/libz3${stdenv.hostPlatform.extensions.sharedLibrary} $python/${python.sitePackages}/z3/lib/libz3${stdenv.hostPlatform.extensions.sharedLibrary} + ''; + + outputs = [ "out" "lib" "dev" "python" ]; + + meta = { + description = "A high-performance theorem prover and SMT solver"; + homepage = "https://github.com/Z3Prover/z3"; + license = stdenv.lib.licenses.mit; + platforms = stdenv.lib.platforms.x86_64; + maintainers = [ stdenv.lib.maintainers.thoughtpolice ]; + }; +} diff --git a/nixpkgs/pkgs/applications/science/logic/z3/tptp.nix b/nixpkgs/pkgs/applications/science/logic/z3/tptp.nix new file mode 100644 index 000000000000..34449542abb2 --- /dev/null +++ b/nixpkgs/pkgs/applications/science/logic/z3/tptp.nix @@ -0,0 +1,31 @@ +{stdenv, z3, cmake}: +stdenv.mkDerivation rec { + pname = "z3-tptp"; + version = z3.version; + + src = z3.src; + + sourceRoot = "source/examples/tptp"; + + nativeBuildInputs = [cmake]; + buildInputs = [z3]; + + preConfigure = '' + echo 'set(Z3_LIBRARIES "-lz3")' >> CMakeLists.new + cat CMakeLists.txt | grep -E 'add_executable|project|link_libraries' >> CMakeLists.new + mv CMakeLists.new CMakeLists.txt + ''; + + installPhase = '' + mkdir -p "$out/bin" + cp "z3_tptp5" "$out/bin/" + ln -s "z3_tptp5" "$out/bin/z3-tptp" + ''; + + meta = { + inherit version; + inherit (z3.meta) license homepage platforms; + description = ''TPTP wrapper for Z3 prover''; + maintainers = [stdenv.lib.maintainers.raskin]; + }; +} |