Merge master into staging-next

This commit is contained in:
github-actions[bot]
2021-05-17 06:22:23 +00:00
committed by GitHub
154 changed files with 1062 additions and 1089 deletions

View File

@@ -22,9 +22,9 @@ let
sha256 = "1h8n5figc9q0k9p8b0qggyhvqagvxanfih1lj5j492c74cd1mx1l";
};
nativeBuildInputs = [ pkg-config autoconf ];
nativeBuildInputs = [ pkg-config autoconf unzip zip file which ];
buildInputs = [
cpio file which unzip zip perl zlib cups freetype alsaLib libjpeg giflib
cpio perl zlib cups freetype alsaLib libjpeg giflib
libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
libXi libXinerama libXcursor libXrandr fontconfig openjdk15-bootstrap
] ++ lib.optionals (!headless && enableGnome2) [

View File

@@ -94,7 +94,7 @@ in stdenv.mkDerivation {
with dynamic web pages, prototyping embedded systems).
'';
maintainers = with maintainers; [ kkallio gnidorah ];
maintainers = with maintainers; [ kkallio ];
platforms = platforms.linux;
};
}

View File

@@ -1,78 +0,0 @@
{ lib, gccStdenv, fetchzip, boost, cmake, ncurses, python3, coreutils
, z3Support ? true, z3 ? null, cvc4Support ? true, cvc4 ? null
, cln ? null, gmp ? null
}:
# compiling source/libsmtutil/CVC4Interface.cpp breaks on clang on Darwin,
# general commandline tests fail at abiencoderv2_no_warning/ on clang on NixOS
assert z3Support -> z3 != null && lib.versionAtLeast z3.version "4.6.0";
assert cvc4Support -> cvc4 != null && cln != null && gmp != null;
let
jsoncppVersion = "1.9.4";
jsoncppUrl = "https://github.com/open-source-parsers/jsoncpp/archive/${jsoncppVersion}.tar.gz";
jsoncpp = fetchzip {
url = jsoncppUrl;
sha256 = "0qnx5y6c90fphl9mj9d20j2dfgy6s5yr5l0xnzid0vh71zrp6jwv";
};
in
gccStdenv.mkDerivation rec {
pname = "solc";
version = "0.7.4";
# 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 = "02261l54jdbvxk612z7zsyvmchy1rx4lf27b3f616sd7r56krpkg";
};
postPatch = ''
substituteInPlace cmake/jsoncpp.cmake \
--replace "${jsoncppUrl}" ${jsoncpp}
'';
cmakeFlags = [
"-DBoost_USE_STATIC_LIBS=OFF"
] ++ lib.optionals (!z3Support) [
"-DUSE_Z3=OFF"
] ++ lib.optionals (!cvc4Support) [
"-DUSE_CVC4=OFF"
];
nativeBuildInputs = [ cmake ];
buildInputs = [ boost ]
++ lib.optionals z3Support [ z3 ]
++ lib.optionals cvc4Support [ cvc4 cln gmp ];
checkInputs = [ ncurses python3 ];
# Test fails on darwin for unclear reason
doCheck = gccStdenv.hostPlatform.isLinux;
checkPhase = ''
while IFS= read -r -d ''' dir
do
LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$(pwd)/$dir
export LD_LIBRARY_PATH
done < <(find . -type d -print0)
pushd ..
# IPC tests need aleth avaliable, so we disable it
sed -i "s/IPC_ENABLED=true/IPC_ENABLED=false\nIPC_FLAGS=\"--no-ipc\"/" ./scripts/tests.sh
for i in ./scripts/*.sh ./scripts/*.py ./test/*.sh; do
patchShebangs "$i"
done
TERM=xterm ./scripts/tests.sh
popd
'';
meta = with lib; {
description = "Compiler for Ethereum smart contract language Solidity";
homepage = "https://github.com/ethereum/solidity";
license = licenses.gpl3;
platforms = with platforms; linux; # darwin is currently broken
maintainers = with maintainers; [ dbrock akru lionello sifmelcara ];
inherit version;
};
}