05/57: guix: python-build-system: Add helpers for getting and setting PYTHONPATH.
htgoebel pushed a commit to branch wip-python-build-system in repository guix. commit 6017e7269b4ce030541511b5b9b938ce92fa84aa Author: Hartmut Goebel 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."
05/57: guix: python-build-system: Add helpers for getting and setting PYTHONPATH.
htgoebel pushed a commit to branch wip-python-build-system in repository guix. commit 58b4921872f89b1a38f460828b23e9e4d8327298 Author: Hartmut Goebel 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."