about summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
authorLorenzo Manacorda <lorenzo@mailbox.org>2019-02-20 18:05:27 +0100
committerLorenzo Manacorda <lorenzo@mailbox.org>2019-02-20 18:15:45 +0100
commite639f2468121d1008f9b52d7e5d0819ead56e58c (patch)
treed01273911c9a8f1265f9499f4557a3527f3cdf24 /pkgs/development/compilers
parent83568dc5feeabca0137f867f76d305dbff837cb5 (diff)
downloadnixlib-e639f2468121d1008f9b52d7e5d0819ead56e58c.tar
nixlib-e639f2468121d1008f9b52d7e5d0819ead56e58c.tar.gz
nixlib-e639f2468121d1008f9b52d7e5d0819ead56e58c.tar.bz2
nixlib-e639f2468121d1008f9b52d7e5d0819ead56e58c.tar.lz
nixlib-e639f2468121d1008f9b52d7e5d0819ead56e58c.tar.xz
nixlib-e639f2468121d1008f9b52d7e5d0819ead56e58c.tar.zst
nixlib-e639f2468121d1008f9b52d7e5d0819ead56e58c.zip
solc: make z3 dependency optional
It is an optional dependency, which defaults to true.

https://solidity.readthedocs.io/en/latest/installing-solidity.html#smt-solvers
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/solc/default.nix11
1 files changed, 9 insertions, 2 deletions
diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix
index b7a2f602cc63..bd4b10ddec05 100644
--- a/pkgs/development/compilers/solc/default.nix
+++ b/pkgs/development/compilers/solc/default.nix
@@ -1,4 +1,8 @@
-{ stdenv, fetchzip, fetchFromGitHub, boost, cmake, z3 }:
+{ stdenv, fetchzip, fetchFromGitHub, boost, cmake
+, z3Support ? true, z3 ? null
+}:
+
+assert z3Support -> z3 != null;
 
 let
   version = "0.5.3";
@@ -33,6 +37,8 @@ stdenv.mkDerivation {
   cmakeFlags = [
     "-DBoost_USE_STATIC_LIBS=OFF"
     "-DBUILD_SHARED_LIBS=ON"
+  ] ++ stdenv.lib.optionals (!z3Support) [
+    "-DUSE_Z3=OFF"
   ];
 
   doCheck = stdenv.hostPlatform.isLinux && stdenv.hostPlatform == stdenv.buildPlatform;
@@ -40,7 +46,8 @@ stdenv.mkDerivation {
                "./test/soltest -p -- --no-ipc --no-smt --testpath ../test";
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ boost z3 ];
+  buildInputs = [ boost ]
+    ++ stdenv.lib.optionals z3Support [ z3 ];
 
   outputs = [ "out" "dev" ];