nixpkgs/pkgs/build-support/build-setupcfg/default.nix

24 lines
782 B
Nix

# Build a python package from info made available by setupcfg2nix.
#
# * src: The source of the package.
# * info: The package information generated by setupcfg2nix.
# * meta: Standard nixpkgs metadata.
# * application: Whether this package is a python library or an
# application which happens to be written in python.
pythonPackages: { src, info, meta ? {}, application ? false }: let
build = if application
then pythonPackages.buildPythonApplication
else pythonPackages.buildPythonPackage;
in build {
inherit (info) pname version;
inherit src meta;
nativeBuildInputs = map (p: pythonPackages.${p}) (
(info.setup_requires or []) ++
(info.tests_require or []));
propagatedBuildInputs = map (p: pythonPackages.${p})
(info.install_requires or []);
}