Merge pull request #145273 from fabaff/fix-qiling
python3Packages.qiling: 1.3.0 -> 1.4.0, unicorn: 1.0.3 -> 2.0.0-rc4
This commit is contained in:
commit
f140fdb18d
@ -6,13 +6,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "unicorn";
|
||||
version = "1.0.3";
|
||||
version = "2.0.0-rc4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "unicorn-engine";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "079azb1df4nwsnsck36b200rnf03aqilw30h3fiaqi1ixash957k";
|
||||
sha256 = "sha256-dNBebXp8HVmmY1RVRYuRFoJ3PStCf4taNTeYKi2lhQM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config cmake ];
|
||||
|
@ -1,38 +1,46 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, capstone
|
||||
, crytic-compile
|
||||
, fetchFromGitHub
|
||||
, intervaltree
|
||||
, ply
|
||||
, prettytable
|
||||
, protobuf
|
||||
, pyelftools
|
||||
, pyevmasm
|
||||
, pysha3
|
||||
, pytestCheckHook
|
||||
, pythonOlder
|
||||
, pyyaml
|
||||
, rlp
|
||||
, stdenv
|
||||
, unicorn
|
||||
, wasm
|
||||
, yices
|
||||
, pytestCheckHook
|
||||
, z3
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "manticore";
|
||||
version = "0.3.5";
|
||||
version = "0.3.6";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "trailofbits";
|
||||
repo = "manticore";
|
||||
rev = version;
|
||||
sha256 = "0z2nhfcraa5dx6srbrw8s11awh2la0x7d88yw9in8g548nv6qa69";
|
||||
sha256 = "sha256-L112YwrBcdcLBeBsPLWt3C57u2WDvGLq50EzW9ojdyg=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
crytic-compile
|
||||
intervaltree
|
||||
ply
|
||||
prettytable
|
||||
protobuf
|
||||
pyevmasm
|
||||
pysha3
|
||||
pyyaml
|
||||
@ -49,22 +57,29 @@ buildPythonPackage rec {
|
||||
sed -ie s/z3-solver// setup.py
|
||||
'';
|
||||
|
||||
checkInputs = [ pytestCheckHook ];
|
||||
preCheck = "export PATH=${yices}/bin:${z3}/bin:$PATH";
|
||||
pytestFlagsArray = [
|
||||
"--ignore=tests/ethereum" # TODO: enable when solc works again
|
||||
"--ignore=tests/ethereum_bench"
|
||||
] ++ lib.optionals (!stdenv.isLinux) [
|
||||
"--ignore=tests/native"
|
||||
"--ignore=tests/other/test_locking.py"
|
||||
"--ignore=tests/other/test_state_introspection.py"
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export PATH=${yices}/bin:${z3}/bin:$PATH
|
||||
'';
|
||||
|
||||
disabledTestPaths = [
|
||||
"tests/ethereum" # Enable when solc works again
|
||||
"tests/ethereum_bench"
|
||||
] ++ lib.optionals (!stdenv.isLinux) [
|
||||
"tests/native"
|
||||
"tests/other/test_locking.py"
|
||||
"tests/other/test_state_introspection.py"
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# failing tests
|
||||
# Failing tests
|
||||
"test_chmod"
|
||||
"test_timeout"
|
||||
"test_wasm_main"
|
||||
# slow tests
|
||||
# Slow tests
|
||||
"testmprotectFailSymbReading"
|
||||
"test_ConstraintsForking"
|
||||
"test_resume"
|
||||
@ -97,6 +112,13 @@ buildPythonPackage rec {
|
||||
"test_implicit_call"
|
||||
"test_trace"
|
||||
"test_plugin"
|
||||
# Tests are failing with latest unicorn
|
||||
"Aarch64UnicornInstructions"
|
||||
"test_integration_resume"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"manticore"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -1,22 +1,36 @@
|
||||
{ lib, buildPythonPackage, fetchPypi, dill }:
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, dill
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "multiprocess";
|
||||
version = "0.70.9";
|
||||
version = "0.70.12.2";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "9fd5bd990132da77e73dec6e9613408602a4612e1d73caf2e2b813d2b61508e5";
|
||||
src = fetchFromGitHub {
|
||||
owner = "uqfoundation";
|
||||
repo = pname;
|
||||
rev = "multiprocess-${version}";
|
||||
sha256 = "1npikdgj0qriqj384vg22qgq2xqylypk67sx1qfmdzvk6c4iyg0w";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ dill ];
|
||||
propagatedBuildInputs = [
|
||||
dill
|
||||
];
|
||||
|
||||
# Python-version dependent tests
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [
|
||||
"multiprocess"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Better multiprocessing and multithreading in python";
|
||||
description = "Multiprocessing and multithreading in Python";
|
||||
homepage = "https://github.com/uqfoundation/multiprocess";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
||||
|
@ -1,33 +1,43 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, capstone
|
||||
, unicorn
|
||||
, pefile
|
||||
, python-registry
|
||||
, keystone-engine
|
||||
, pyelftools
|
||||
, fetchFromGitHub
|
||||
, fetchPypi
|
||||
, gevent
|
||||
, keystone-engine
|
||||
, multiprocess
|
||||
, pefile
|
||||
, pyelftools
|
||||
, python-registry
|
||||
, unicorn
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "qiling";
|
||||
version = "1.3.0";
|
||||
version = "1.4.0";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "084ad706f6803d7de2391eab928ecf4cb3e8d892fd2988666d4791a422d6ab9a";
|
||||
sha256 = "sha256-xUoNHMyGN0G2itVcKLsk+7QKxZdguzyh6OZCqCHNB4Y=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
capstone
|
||||
unicorn
|
||||
pefile
|
||||
python-registry
|
||||
keystone-engine
|
||||
pyelftools
|
||||
gevent
|
||||
keystone-engine
|
||||
multiprocess
|
||||
pefile
|
||||
pyelftools
|
||||
python-registry
|
||||
unicorn
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "pefile==2021.5.24" "pefile>=2021.5.24"
|
||||
'';
|
||||
|
||||
# Tests are broken (attempt to import a file that tells you not to import it,
|
||||
# amongst other things)
|
||||
doCheck = false;
|
||||
|
@ -1,10 +1,17 @@
|
||||
{ lib, stdenv, buildPythonPackage, setuptools, unicorn-emu }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, setuptools
|
||||
, unicorn-emu
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "unicorn";
|
||||
version = lib.getVersion unicorn-emu;
|
||||
format = "setuptools";
|
||||
|
||||
src = unicorn-emu.src;
|
||||
|
||||
sourceRoot = "source/bindings/python";
|
||||
|
||||
prePatch = ''
|
||||
@ -12,12 +19,21 @@ buildPythonPackage rec {
|
||||
ln -s ${unicorn-emu}/lib/libunicorn.a prebuilt/
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [ setuptools ];
|
||||
propagatedBuildInputs = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
# No tests present
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [
|
||||
"unicorn"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python bindings for Unicorn CPU emulator engine";
|
||||
homepage = "https://www.unicorn-engine.org/";
|
||||
license = [ licenses.gpl2 ];
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ bennofs ris ];
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user