diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix index 941f92fd322e..f34283938326 100644 --- a/pkgs/development/compilers/solc/default.nix +++ b/pkgs/development/compilers/solc/default.nix @@ -1,9 +1,10 @@ { stdenv, fetchzip, boost, cmake, ncurses, python2 -, z3Support ? true, z3 ? null +, z3Support ? true, z3 ? null, cvc4Support ? true, cvc4 ? null +, cln ? null, gmp ? null }: -assert z3Support -> z3 != null; -assert z3Support -> stdenv.lib.versionAtLeast z3.version "4.6.0"; +assert z3Support -> z3 != null && stdenv.lib.versionAtLeast z3.version "4.6.0"; +assert cvc4Support -> cvc4 != null && cln != null && gmp != null; let jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.8.4.tar.gz; @@ -16,12 +17,12 @@ in stdenv.mkDerivation rec { name = "solc-${version}"; - version = "0.5.10"; + version = "0.5.11"; # upstream suggests avoid using archive generated by github src = fetchzip { url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz"; - sha256 = "1ns562h8blvv32lz462rf5835fs2hgn698mvi6ss5y7ar6k5y5xw"; + sha256 = "0679s5pqbfy7fgpb4f3ppgj8iafxb64g046v8vhp29mf3dsdcnyl"; }; patches = stdenv.lib.optionals buildSharedLibs [ ./patches/shared-libs-install.patch ]; @@ -37,10 +38,14 @@ stdenv.mkDerivation rec { "-DBUILD_SHARED_LIBS=ON" ] ++ stdenv.lib.optionals (!z3Support) [ "-DUSE_Z3=OFF" + ] ++ stdenv.lib.optionals (!cvc4Support) [ + "-DUSE_CVC4=OFF" ]; nativeBuildInputs = [ cmake ]; - buildInputs = [ boost ] ++ stdenv.lib.optionals z3Support [ z3 ]; + buildInputs = [ boost ] + ++ stdenv.lib.optionals z3Support [ z3 ] + ++ stdenv.lib.optionals cvc4Support [ cvc4 cln gmp ]; checkInputs = [ ncurses python2 ]; # Test fails on darwin for unclear reason