storj-uplink: 1.119.15 -> 1.120.4 (#375732)
[NixPkgs.git] / pkgs / by-name / li / libsbml / package.nix
blob9fbb674f5d62d87221d5f6536cdcf48a5b3b7d12
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   cmake,
6   pkg-config,
7   bzip2,
8   libxml2,
9   swig,
10   python ? null,
11   withPython ? false,
13 stdenv.mkDerivation (attrs: {
14   pname = "libsbml";
15   version = "5.20.4";
17   src = fetchFromGitHub {
18     owner = "sbmlteam";
19     repo = "libsbml";
20     rev = "v${attrs.version}";
21     hash = "sha256-qWTN033YU4iWzt+mXQaP5W/6IF5nebF4PwNVkyL8wTg=";
22   };
24   nativeBuildInputs = [
25     cmake
26     pkg-config
27     swig
28   ] ++ lib.optional withPython python.pkgs.pythonImportsCheckHook;
30   buildInputs = [
31     bzip2.dev
32     libxml2
33   ] ++ lib.optional withPython python;
35   # libSBML doesn't always make use of pkg-config
36   cmakeFlags = [
37     "-DLIBXML_INCLUDE_DIR=${lib.getDev libxml2}/include/libxml2"
38     "-DLIBXML_LIBRARY=${lib.getLib libxml2}/lib/libxml2${stdenv.hostPlatform.extensions.sharedLibrary}"
39     "-DPKG_CONFIG_EXECUTABLE=${lib.getBin pkg-config}/bin/pkg-config"
40     "-DSWIG_EXECUTABLE=${lib.getBin swig}/bin/swig"
41   ] ++ lib.optional withPython "-DWITH_PYTHON=ON";
43   postInstall = lib.optional withPython ''
44     mv $out/${python.sitePackages}/libsbml/libsbml.py $out/${python.sitePackages}/libsbml/__init__.py
45   '';
47   pythonImportsCheck = [ "libsbml" ];
49   meta = with lib; {
50     description = "Library for manipulating Systems Biology Markup Language (SBML)";
51     homepage = "https://github.com/sbmlteam/libsbml";
52     license = licenses.lgpl21Only;
53     maintainers = [ maintainers.kupac ];
54     platforms = platforms.all;
55   };