1{ stdenv
2, lib
3, buildPythonPackage
4, fetchPypi
5, colorama
6, libunwind
7, pytz
8, requests
9, six
10}:
11
12buildPythonPackage rec {
13 version = "0.4.15";
14 pname = "vmprof";
15
16 src = fetchPypi {
17 inherit pname version;
18 sha256 = "a2d872a40196404386d1e0d960e97b37c86c3f72a4f9d5a2b5f9ca1adaff5b62";
19 };
20
21 buildInputs = [ libunwind ];
22 propagatedBuildInputs = [ colorama requests six pytz ];
23
24 # No tests included
25 doCheck = false;
26 pythonImportsCheck = [ "vmprof" ];
27
28 # Workaround build failure on -fno-common toolchains:
29 # ld: src/vmprof_unix.o:src/vmprof_common.h:92: multiple definition of
30 # `_PyThreadState_Current'; src/_vmprof.o:src/vmprof_common.h:92: first defined here
31 # TODO: can be removed once next release contains:
32 # https://github.com/vmprof/vmprof-python/pull/203
33 NIX_CFLAGS_COMPILE = "-fcommon";
34
35 meta = with lib; {
36 broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;
37 description = "A vmprof client";
38 license = licenses.mit;
39 homepage = "https://vmprof.readthedocs.org/";
40 };
41}