Commit graph

11 commits

Author SHA1 Message Date
Frederik Rietdijk e7b4608d02 buildPythonPackage: initial support for PEP 517 2019-02-23 20:05:19 +01:00
Frederik Rietdijk f665828fa3 Python: improve cross-compilation
This changeset allows for cross-compilation of Python packages. Packages
built with buildPythonPackage are not allowed to refer to the build
machine. Executables that have shebangs will refer to the host.
2019-01-04 10:45:22 +01:00
Frederik Rietdijk 74d0b82f29 buildPython*: add updateScript to passthru
All Python packages now have an updateScript. The script calls
`update-python-libraries` and passes it the position of the derivation
expression obtained using `meta.position`. This works fine in case a Nix
expression represents only a single derivation. If there are more in it,
`update-python-libraries` will fail.
2018-12-07 15:48:54 +01:00
Jan Malakhovski 912cfb8aaa buildPythonPackage: use config.doCheckByDefault 2018-04-26 20:15:52 +00:00
Tuomas Tynkkynen 68052b5619 python: Pull ensureNewerSourcesHook call to all-packages.nix
Documents the reason why it's needed and also prevents the
ensureNewerSourcesHook call being evaluated again and again for every
single Python package.
2018-02-13 16:32:16 +02:00
Frederik Rietdijk a334930490 Python: rewrite requiredPythonModules. Add requiredPythonModules attribute to derivation 2017-12-10 20:40:34 +01:00
Frederik Rietdijk 80329e7123 python.pkgs.buildPythonPackage: some comments 2017-11-23 15:11:03 +01:00
Frederik Rietdijk 40851a4d26 Python: the pythonModule attribute
Python libraries or modules now have an attribute `pythonModule = interpreter;` to indicate
they provide Python modules for the specified `interpreter`.

The package set provides the following helper functions:

- hasPythonModule: Check whether a derivation provides a Python module.
- requiredPythonModules: Recurse into a list of Python modules, returning all Python modules that are required.
- makePythonPath: Create a PYTHONPATH from a list of Python modules.

Also included in this commit is:
- disabledIf: Helper function for disabling non-buildPythonPackage functions.
2017-11-23 15:11:02 +01:00
Frederik Rietdijk 7b6b7f6b78 Python Flit: run tests by default 2017-02-01 14:54:20 +01:00
Frederik Rietdijk 42bad32e13 buildPythonPackage: refactor 2016-12-05 10:29:22 +01:00
Frederik Rietdijk 3e05cce97c Python: separate buildPythonPackage into two functions
1. mkDerivation which is used when the source is without setup.py and
not a wheel
2. buildPythonPackage which is used as before and calls mkDerivation
2016-09-01 16:16:31 +02:00
Renamed from pkgs/development/interpreters/python/buildpythonpackage.nix (Browse further)