summaryrefslogtreecommitdiff
path: root/gnu/packages/python.scm
diff options
context:
space:
mode:
author宋文武 <iyzsong@gmail.com>2016-10-16 10:44:29 +0800
committer宋文武 <iyzsong@gmail.com>2016-10-17 18:53:50 +0800
commit3969ca548c3230815242e95d07eee05d45b2947d (patch)
tree7ba2bd437ea0110cc71665d24e4f056906efc2e4 /gnu/packages/python.scm
parent964fc66936894471498b36356631231c706c81e2 (diff)
gnu: wrap-python3: Use a bash wrapper for 'python3-config'.
See <http://lists.gnu.org/archive/html/guix-devel/2016-07/msg00008.html> for details. * gnu/packages/python.scm (wrap-python3)[arguments]: Use a bash wrapper instead of a symlink for python3-config.
Diffstat (limited to 'gnu/packages/python.scm')
-rw-r--r--gnu/packages/python.scm18
1 files changed, 16 insertions, 2 deletions
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 032530c69d..e49d33635a 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -52,6 +52,7 @@
#:use-module (gnu packages adns)
#:use-module (gnu packages attr)
#:use-module (gnu packages backup)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
#:use-module (gnu packages django)
@@ -379,6 +380,7 @@ data types.")
(source #f)
(build-system trivial-build-system)
(outputs '("out"))
+ (inputs `(("bash" ,bash)))
(propagated-inputs `(("python" ,python)))
(arguments
`(#:modules ((guix build utils))
@@ -392,8 +394,20 @@ data types.")
(lambda (old new)
(symlink (string-append python old)
(string-append bin "/" new)))
- `("python3" ,"pydoc3" ,"idle3" ,"pip3" ,"python3-config")
- `("python" ,"pydoc" ,"idle" ,"pip" ,"python-config"))))))
+ `("python3" ,"pydoc3" ,"idle3" ,"pip3")
+ `("python" ,"pydoc" ,"idle" ,"pip"))
+ ;; python-config outputs search paths based upon its location,
+ ;; use a bash wrapper to avoid changing its outputs.
+ (let ((bash (string-append (assoc-ref %build-inputs "bash")
+ "/bin/bash"))
+ (old (string-append python "python3-config"))
+ (new (string-append bin "/python-config")))
+ (with-output-to-file new
+ (lambda ()
+ (format #t "#!~a~%" bash)
+ (format #t "exec \"~a\" \"$@\"~%" old)
+ (chmod new #o755)
+ #t)))))))
(synopsis "Wrapper for the Python 3 commands")
(description
"This package provides wrappers for the commands of Python@tie{}3.x such