gnu: python: Do not use patchelf.

* gnu/packages/python.scm (python-2): Add rpath for lib directory of output to
  LDFLAGS.  Remove 'patchelf' from inputs.  Remove #:modules and
  #:imported-modules from arguments.  Remove 'add-lib-to-runpath' phase.
  (python): Do not add #:modules to inherited package arguments.
This commit is contained in:
Mark H Weaver 2015-03-22 22:39:56 -04:00
parent c7d1d88f6c
commit 1f43445745

View file

@ -33,7 +33,6 @@ (define-module (gnu packages python)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
#:use-module (gnu packages elf)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gdbm)
#:use-module (gnu packages gcc)
@ -134,7 +133,8 @@ (define-public python-2
(sqlite (assoc-ref %build-inputs "sqlite"))
(openssl (assoc-ref %build-inputs "openssl"))
(readline (assoc-ref %build-inputs "readline"))
(zlib (assoc-ref %build-inputs "zlib")))
(zlib (assoc-ref %build-inputs "zlib"))
(out (assoc-ref %outputs "out")))
(list "--enable-shared" ; allow embedding
"--with-system-ffi" ; build ctypes
(string-append "CPPFLAGS="
@ -151,43 +151,27 @@ (define-public python-2
"-L" sqlite "/lib "
"-L" openssl "/lib "
"-L" readline "/lib "
"-L" zlib "/lib")))
#:modules ((guix build gnu-build-system)
(guix build utils)
(guix build rpath)
(srfi srfi-26))
#:imported-modules ((guix build gnu-build-system)
(guix build utils)
(guix build rpath))
"-L" zlib "/lib "
"-Wl,-rpath=" out "/lib")))
#:phases
(alist-cons-after
'strip 'add-lib-to-runpath
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
;; Add LIB to the RUNPATH of all the executables.
(with-directory-excursion out
(for-each (cut augment-rpath <> lib)
(find-files "bin" ".*")))))
(alist-cons-before
'configure 'patch-lib-shells
(lambda _
;; Filter for existing files, since some may not exist in all
;; versions of python that are built with this recipe.
(substitute* (filter file-exists?
'("Lib/subprocess.py"
"Lib/popen2.py"
"Lib/distutils/tests/test_spawn.py"
"Lib/test/test_subprocess.py"))
(("/bin/sh") (which "sh"))))
(alist-cons-before
'configure 'patch-lib-shells
'check 'pre-check
(lambda _
;; Filter for existing files, since some may not exist in all
;; versions of python that are built with this recipe.
(substitute* (filter file-exists?
'("Lib/subprocess.py"
"Lib/popen2.py"
"Lib/distutils/tests/test_spawn.py"
"Lib/test/test_subprocess.py"))
(("/bin/sh") (which "sh"))))
(alist-cons-before
'check 'pre-check
(lambda _
;; 'Lib/test/test_site.py' needs a valid $HOME
(setenv "HOME" (getcwd)))
%standard-phases)))))
;; 'Lib/test/test_site.py' needs a valid $HOME
(setenv "HOME" (getcwd)))
%standard-phases))))
(inputs
`(("bzip2" ,bzip2)
("gdbm" ,gdbm)
@ -195,8 +179,7 @@ (define-public python-2
("sqlite" ,sqlite) ; for sqlite extension
("openssl" ,openssl)
("readline" ,readline)
("zlib" ,zlib)
("patchelf" ,patchelf))) ; for (guix build rpath)
("zlib" ,zlib)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(native-search-paths
@ -230,14 +213,8 @@ (define-public python
(sha256
(base32
"1rdncc7g8g6f3lfdg33rli1yffbiq8z283xy4f5ksl1l8i49psdb"))))
(arguments
(let ((args `(#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26))
,@(package-arguments python-2))))
(substitute-keyword-arguments args
((#:tests? _) #t))))
(arguments (substitute-keyword-arguments (package-arguments python-2)
((#:tests? _) #t)))
(native-search-paths
(list (search-path-specification
(variable "PYTHONPATH")