[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
05/57: guix: python-build-system: Add helpers for getting and setting PY
From: |
Hartmut Goebel |
Subject: |
05/57: guix: python-build-system: Add helpers for getting and setting PYTHONPATH. |
Date: |
Thu, 13 Oct 2016 15:20:31 +0000 (UTC) |
htgoebel pushed a commit to branch wip-python-build-system
in repository guix.
commit 58b4921872f89b1a38f460828b23e9e4d8327298
Author: Hartmut Goebel <address@hidden>
Date: Sat Oct 8 12:04:20 2016 +0200
guix: python-build-system: Add helpers for getting and setting PYTHONPATH.
* guix/build/python-build-system.scm (add-installed-pythonpath,
site-packages): New exported procedures.
---
guix/build/python-build-system.scm | 22 +++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)
diff --git a/guix/build/python-build-system.scm
b/guix/build/python-build-system.scm
index cded89f..c4e5a75 100644
--- a/guix/build/python-build-system.scm
+++ b/guix/build/python-build-system.scm
@@ -28,7 +28,9 @@
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:export (%standard-phases
- python-build))
+ python-build
+ add-installed-pythonpath
+ site-packages))
;; Commentary:
;;
@@ -74,6 +76,24 @@
(major+minor (take components 2)))
(string-join major+minor ".")))
+(define (site-packages outputs inputs)
+ "Return the path of the current output's Python site-package."
+ (let* ((out (assoc-ref outputs "out"))
+ (python (assoc-ref inputs "python")))
+ (string-append out "/lib/python"
+ (get-python-version python)
+ "/site-packages/")))
+
+(define (add-installed-pythonpath outputs inputs)
+ "Prepend the Python site-package of OUTPUT to PYTHONPATH. This is useful
+when running checks after installing the package."
+ (let ((old-path (getenv "PYTHONPATH"))
+ (add-path (site-packages outputs inputs)))
+ (setenv "PYTHONPATH"
+ (string-append add-path
+ (if old-path (string-append ":" old-path) "")))
+ #t))
+
(define* (install #:key outputs inputs (configure-flags '()) use-setuptools?
#:allow-other-keys)
"Install a given Python package."
- branch wip-python-build-system created (now ec6bb65), Hartmut Goebel, 2016/10/13
- 18/57: gnu: python-pytest: Propagate input "python-py"., Hartmut Goebel, 2016/10/13
- 22/57: gnu: Fix inputs in python.scm, part 2: native-inputs -> propagated-inputs., Hartmut Goebel, 2016/10/13
- 46/57: gnu: python-ipython: Fix build, Hartmut Goebel, 2016/10/13
- 06/57: guix: python-build-system: Delete .egg-info file created in phase check., Hartmut Goebel, 2016/10/13
- 05/57: guix: python-build-system: Add helpers for getting and setting PYTHONPATH.,
Hartmut Goebel <=
- 04/57: guix: python-build-system: Add option "#:use-setuptools?" (default true)., Hartmut Goebel, 2016/10/13
- 08/57: lint: more packages to probably be a native input., Hartmut Goebel, 2016/10/13
- 19/57: gnu: python-pytest-cov: Use upstream options for testing., Hartmut Goebel, 2016/10/13
- 17/57: gnu: scons: Do not use setuptools for building., Hartmut Goebel, 2016/10/13
- 31/57: gnu: python-hdf5: Correct inputs., Hartmut Goebel, 2016/10/13
- 13/57: gnu: Remove python-setuptools and python2-setuptools from inputs (part 4a), Hartmut Goebel, 2016/10/13
- 45/57: gnu: python-scipy: Fix build., Hartmut Goebel, 2016/10/13
- 27/57: gnu: Ensure python-cython is a native-input., Hartmut Goebel, 2016/10/13
- 20/57: gnu: Fix inputs in python.scm, part 1: inputs -> propagated-inputs., Hartmut Goebel, 2016/10/13
- 53/57: gnu: python-pytest-xdist: Remove needless input python-apipkg., Hartmut Goebel, 2016/10/13