Merge pull request #155525 from fabaff/bump-angr

python3Packages.angr: 9.1.10913 -> 9.1.11508
This commit is contained in:
Fabian Affolter 2022-01-19 20:05:09 +01:00 committed by GitHub
commit eabc5878e3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 95 additions and 49 deletions

View file

@ -7,20 +7,25 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "ailment"; pname = "ailment";
version = "9.1.10913"; version = "9.1.11508";
format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-S+ntSC9KySj2njkxEkr7p2TDsBqY0Gf+zzwomnGwSEk="; hash = "sha256-ZT3rMzWwMG1tpPcpOqGvlFt0nuiPD0d3nECVDC7XDv8=";
}; };
propagatedBuildInputs = [ pyvex ]; propagatedBuildInputs = [
pyvex
];
# Tests depend on angr (possibly a circular dependency) # Tests depend on angr (possibly a circular dependency)
doCheck = false; doCheck = false;
#pythonImportsCheck = [ "ailment" ]; #pythonImportsCheck = [ "ailment" ];
meta = with lib; { meta = with lib; {

View file

@ -22,6 +22,7 @@
, pycparser , pycparser
, pythonOlder , pythonOlder
, pyvex , pyvex
, sympy
, sqlalchemy , sqlalchemy
, rpyc , rpyc
, sortedcontainers , sortedcontainers
@ -45,18 +46,18 @@ in
buildPythonPackage rec { buildPythonPackage rec {
pname = "angr"; pname = "angr";
version = "9.1.10913"; version = "9.1.11508";
format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-AZlqSalTOQh3QR959ZuanFuTZVKi9valKJ3snsquC/A="; hash = "sha256-8Cuh+QxKU3wYRRDYrMXPrzp4yg1pyH4QbJeEsTHDZqA=";
}; };
setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ];
propagatedBuildInputs = [ propagatedBuildInputs = [
ailment ailment
archinfo archinfo
@ -75,20 +76,24 @@ buildPythonPackage rec {
progressbar2 progressbar2
protobuf protobuf
psutil psutil
sqlalchemy
pycparser pycparser
pyvex pyvex
sqlalchemy
rpyc rpyc
sortedcontainers sortedcontainers
sqlalchemy
sympy
unicorn' unicorn'
]; ];
setupPyBuildFlags = lib.optionals stdenv.isLinux [
"--plat-name"
"linux"
];
# Tests have additional requirements, e.g., pypcode and angr binaries # Tests have additional requirements, e.g., pypcode and angr binaries
# cle is executing the tests with the angr binaries # cle is executing the tests with the angr binaries
doCheck = false; doCheck = false;
# See http://angr.io/api-doc/
pythonImportsCheck = [ pythonImportsCheck = [
"angr" "angr"
"claripy" "claripy"

View file

@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "fmagin"; owner = "fmagin";
repo = "angr-cli"; repo = "angr-cli";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-a5ajUBQwt3xUNkeSOeGOAFf47wd4UVk+LcuAHGqbq4s="; hash = "sha256-a5ajUBQwt3xUNkeSOeGOAFf47wd4UVk+LcuAHGqbq4s=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -9,14 +9,16 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "angrop"; pname = "angrop";
version = "9.1.10913"; version = "9.1.11508";
format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-8M3d8lG7jDNgICjzjFRi9Wl2I7aYI5b5IvjEhixsk9k="; hash = "sha256-lAPruvMLCQD1TwQBlKZnLrCEkrKf676dK++e7fBmPQA=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -28,7 +30,10 @@ buildPythonPackage rec {
# Tests have additional requirements, e.g., angr binaries # Tests have additional requirements, e.g., angr binaries
# cle is executing the tests with the angr binaries already and is a requirement of angr # cle is executing the tests with the angr binaries already and is a requirement of angr
doCheck = false; doCheck = false;
pythonImportsCheck = [ "angrop" ];
pythonImportsCheck = [
"angrop"
];
meta = with lib; { meta = with lib; {
description = "ROP gadget finder and chain builder"; description = "ROP gadget finder and chain builder";

View file

@ -3,17 +3,21 @@
, fetchFromGitHub , fetchFromGitHub
, pytestCheckHook , pytestCheckHook
, nose , nose
, pythonOlder
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "archinfo"; pname = "archinfo";
version = "9.1.10913"; version = "9.1.11508";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-VLFbjKX7WXWoJCS9hYwtEikGC48gRg7E24D9Un+/gdc="; hash = "sha256-r21n0rbHxb/e34PGpbA5KpnILFtmkXThBWbASChvVs0=";
}; };
checkInputs = [ checkInputs = [
@ -21,7 +25,9 @@ buildPythonPackage rec {
pytestCheckHook pytestCheckHook
]; ];
pythonImportsCheck = [ "archinfo" ]; pythonImportsCheck = [
"archinfo"
];
meta = with lib; { meta = with lib; {
description = "Classes with architecture-specific information"; description = "Classes with architecture-specific information";

View file

@ -13,21 +13,18 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "claripy"; pname = "claripy";
version = "9.1.10913"; version = "9.1.11508";
format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-66dc0y4mu5S5PtTx2fRkBdpNlH53ZpTiKyM3s0OUamw="; sha256 = "sha256-xCtITYRiIBtJQ8FIr0NJC30YWoU8iZ4gMGv2blnFNIk=";
}; };
# Use upstream z3 implementation
postPatch = ''
substituteInPlace setup.py --replace "z3-solver>=4.8.5.0" ""
'';
propagatedBuildInputs = [ propagatedBuildInputs = [
cachetools cachetools
decorator decorator
@ -41,7 +38,15 @@ buildPythonPackage rec {
pytestCheckHook pytestCheckHook
]; ];
pythonImportsCheck = [ "claripy" ]; postPatch = ''
# Use upstream z3 implementation
substituteInPlace setup.py \
--replace "z3-solver>=4.8.5.0" ""
'';
pythonImportsCheck = [
"claripy"
];
meta = with lib; { meta = with lib; {
description = "Python abstraction layer for constraint solvers"; description = "Python abstraction layer for constraint solvers";

View file

@ -15,7 +15,7 @@
let let
# The binaries are following the argr projects release cycle # The binaries are following the argr projects release cycle
version = "9.1.10913"; version = "9.1.11508";
# Binary files from https://github.com/angr/binaries (only used for testing and only here) # Binary files from https://github.com/angr/binaries (only used for testing and only here)
binaries = fetchFromGitHub { binaries = fetchFromGitHub {
@ -29,13 +29,15 @@ in
buildPythonPackage rec { buildPythonPackage rec {
pname = "cle"; pname = "cle";
inherit version; inherit version;
format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-z8hBOqeI7T6Rov00OySDBdzUQ6jeBRseE7sz8VfIJmk="; hash = "sha256-/5GKuf+nmt1/M6yAhZy9+itMnIVUGHP7BqEIxjNjep8=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -1,30 +1,36 @@
{ buildPythonPackage { lib
, buildPythonPackage
, fetchFromGitHub , fetchFromGitHub
, lib , pytestCheckHook
, pytest
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "itanium_demangler"; pname = "itanium-demangler";
version = "1.0"; # pulled from pypi version version = "1.0"; # pulled from pypi version
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "whitequark"; owner = "whitequark";
repo = "python-${pname}"; repo = "python-itanium_demangler";
rev = "29c77860be48e6dafe3496e4d9d0963ce414e366"; rev = "29c77860be48e6dafe3496e4d9d0963ce414e366";
sha256 = "0qm95l6542nk63986w9lgzkxg824l31714i584s02rh9xwfg1xfx"; hash = "sha256-3fXwHO8JZgE0QSWScMKgRKDX5380cYPSMNMKUgwtqWI=";
}; };
checkInputs = [ pytest ]; checkInputs = [
pytestCheckHook
];
checkPhase = '' pytestFlagsArray = [
pytest tests/test.py "tests/test.py"
''; ];
pythonImportsCheck = [
" itanium_demangler "
];
meta = with lib; { meta = with lib; {
description = "A pure Python parser for the Itanium C++ ABI symbol mangling language"; description = "Python parser for the Itanium C++ ABI symbol mangling language";
homepage = "https://github.com/whitequark/python-itanium_demangler"; homepage = "https://github.com/whitequark/python-itanium_demangler";
license = licenses.bsd0; license = licenses.bsd0;
maintainers = [ maintainers.pamplemousse ]; maintainers = with maintainers; [ pamplemousse ];
}; };
} }

View file

@ -7,23 +7,21 @@
, fetchPypi , fetchPypi
, future , future
, pycparser , pycparser
, pythonOlder
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "pyvex"; pname = "pyvex";
version = "9.1.10913"; version = "9.1.11508";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-EUgCyjD5ia5KQMvZWVAsXeKRjmSVE7tRRYH5u/Ozug0="; hash = "sha256-FNCAvag0ErVjzgXqiwDnX80WnjUdnWHtcLYuanlj0ME=";
}; };
postPatch = lib.optionalString stdenv.isDarwin ''
substituteInPlace vex/Makefile-gcc --replace '/usr/bin/ar' 'ar'
'';
setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ];
propagatedBuildInputs = [ propagatedBuildInputs = [
archinfo archinfo
bitstring bitstring
@ -32,15 +30,29 @@ buildPythonPackage rec {
pycparser pycparser
]; ];
postPatch = lib.optionalString stdenv.isDarwin ''
substituteInPlace vex/Makefile-gcc \
--replace '/usr/bin/ar' 'ar'
'';
setupPyBuildFlags = lib.optionals stdenv.isLinux [
"--plat-name"
"linux"
];
preBuild = '' preBuild = ''
export CC=${stdenv.cc.targetPrefix}cc export CC=${stdenv.cc.targetPrefix}cc
substituteInPlace pyvex_c/Makefile --replace 'AR=ar' 'AR=${stdenv.cc.targetPrefix}ar' substituteInPlace pyvex_c/Makefile \
--replace 'AR=ar' 'AR=${stdenv.cc.targetPrefix}ar'
''; '';
# No tests are available on PyPI, GitHub release has tests # No tests are available on PyPI, GitHub release has tests
# Switch to GitHub release after all angr parts are present # Switch to GitHub release after all angr parts are present
doCheck = false; doCheck = false;
pythonImportsCheck = [ "pyvex" ];
pythonImportsCheck = [
"pyvex"
];
meta = with lib; { meta = with lib; {
description = "Python interface to libVEX and VEX IR"; description = "Python interface to libVEX and VEX IR";