diff options
author | Marius Bakke <mbakke@fastmail.com> | 2020-01-16 18:00:25 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2020-01-24 20:44:34 +0100 |
commit | 403b533fde0d34bd2cb961abe1abbcb17ddf6045 (patch) | |
tree | 0b50be8da70fc92c5d639b5395c14f57d9f2bfeb | |
parent | 4255efda3df0d310e00f31666d9e5174cd6f9398 (diff) | |
download | patches-403b533fde0d34bd2cb961abe1abbcb17ddf6045.tar patches-403b533fde0d34bd2cb961abe1abbcb17ddf6045.tar.gz |
gnu: libimobiledevice: Fix build with Python 3.8.
* gnu/packages/libusb.scm (%libimobiledevice-patches): New variable.
(libimobiledevice)[source](patches): New field.
[arguments]: Remove #:configure-flags. Add #:phases.
[native-inputs]: Add AUTOCONF and AUTOMAKE.
-rw-r--r-- | gnu/packages/libusb.scm | 38 |
1 files changed, 32 insertions, 6 deletions
diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm index abf11400e3..1a677a0fb9 100644 --- a/gnu/packages/libusb.scm +++ b/gnu/packages/libusb.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2017 Jonathan Brielmaier <jonathan.brielmaier@web.de> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org> +;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -364,6 +365,25 @@ connections from and to iOS devices by connecting to a socket provided by a @code{usbmuxd} daemon.") (license license:lgpl2.1+))) +;; These patches are needed to build with Python 3.8. +(define %libimobiledevice-patches + (list (origin + (method url-fetch) + (uri (string-append "https://github.com/libimobiledevice/libimobiledevice" + "/commit/1ff3448d2e27f1bac8d2f0af8b8e952854860278.patch")) + (file-name "libimobiledevice-python-config.patch") + (sha256 + (base32 + "1mkwhp8vvhajij29jk3w4rkgcfh8d8waf908drh3076k70hb6i8y"))) + (origin + (method url-fetch) + (uri (string-append "https://github.com/libimobiledevice/libimobiledevice" + "/commit/eea4f1be9107c8ab621fd71460e47d0d38e55d71.patch")) + (file-name "libimobiledevice-python-3.8-compat.patch") + (sha256 + (base32 + "1zz8v7kgwyq5ck1qp03l29pcmljygnjwls9d6q28nv5pkwa6848w"))))) + (define-public libimobiledevice (package (name "libimobiledevice") @@ -372,17 +392,19 @@ connections from and to iOS devices by connecting to a socket provided by a (method url-fetch) (uri (string-append "https://www.libimobiledevice.org/downloads/" "libimobiledevice-" version ".tar.bz2")) + ;; Note: Remove the 'force-bootstrap' phase and the autoconf + ;; inputs below when removing these patches. + (patches %libimobiledevice-patches) (sha256 (base32 "0dqhy4qwj30mw8pwckvjmgnj1qqrh6p8c6jknmhvylshhzh0ssvq")))) (build-system gnu-build-system) (arguments - `(#:configure-flags - (list (string-append "PYTHON_LDFLAGS=-L" - (assoc-ref %build-inputs "python") - "/lib -lpython" - ,(version-major+minor (package-version python)) - "m")))) + `(#:phases (modify-phases %standard-phases + (add-before 'bootstrap 'force-bootstrap + (lambda _ + (delete-file "configure") + #t))))) (propagated-inputs `(("openssl" ,openssl-1.0) ("libplist" ,libplist) @@ -392,6 +414,10 @@ connections from and to iOS devices by connecting to a socket provided by a (native-inputs `(("pkg-config" ,pkg-config) ("python-cython" ,python-cython) + + ;; These are required because we patch and bootstrap the build system. + ("autoconf" ,autoconf) + ("automake" ,automake) ("libtool" ,libtool))) (home-page "https://www.libimobiledevice.org/") (synopsis "Protocol library and tools to communicate with Apple devices") |