gnu: qemu: Build with Python 3 and SDL2 support.

* gnu/packages/bootloaders.scm (qemu-minimal-2.10): Remove variable.
* gnu/packages/virtualization.scm (qemu)[inputs]: Use sdl2 instead of sdl.
[native-inputs]: Use python-wrapper instead of python@2.
* gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove sdl2 instead of
sdl from inherited packages.
* gnu/packages/virtualization.scm (qemu-minimal-2.10): Add variable.
[native-inputs]: Remove python-wrapper from inherited packages and use python@2
instead.
* gnu/packages/debug.scm (american-fuzzy-lop): Inherit from moved hidden-package
qemu-minimal-2.10.
This commit is contained in:
Rutger Helling 2018-04-26 08:14:50 +02:00
parent 87bcd9bf65
commit 27b52c1f6a
No known key found for this signature in database
GPG key ID: F3A727DB44FCCA36
3 changed files with 27 additions and 21 deletions

View file

@ -72,22 +72,6 @@ (define unifont
(base32
"0p2vhnc18cnbmb39vq4m7hzv4mhnm2l0a2s7gx3ar277fwng3hys"))))
;; The GRUB test suite fails with later versions of Qemu, so we
;; keep it at 2.10 for now. See
;; <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
;; TODO: When grub no longer needs this version, move to gnu/packages/debug.scm.
(define qemu-minimal-2.10
(package
(inherit qemu-minimal)
(version "2.10.2")
(source (origin
(method url-fetch)
(uri (string-append "https://download.qemu.org/qemu-"
version ".tar.xz"))
(sha256
(base32
"17w21spvaxaidi2am5lpsln8yjpyp2zi3s3gc6nsxj5arlgamzgw"))))))
(define-public grub
(package
(name "grub")

View file

@ -2,6 +2,7 @@
;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -169,7 +170,7 @@ (define-public american-fuzzy-lop
(inputs
`(("custom-qemu"
;; The afl-qemu tool builds qemu 2.10.0 with a few patches applied.
,(package (inherit (@@ (gnu packages bootloaders) qemu-minimal-2.10))
,(package (inherit qemu-minimal-2.10)
(name "afl-qemu")
(inputs
`(("afl-src" ,source)

View file

@ -5,7 +5,7 @@
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017 Andy Patterson <ajpatter@uwaterloo.ca>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
@ -187,7 +187,7 @@ (define-public qemu
;; ("pciutils" ,pciutils)
("pixman" ,pixman)
("pulseaudio" ,pulseaudio)
("sdl" ,sdl)
("sdl2" ,sdl2)
("spice" ,spice)
("usbredir" ,usbredir)
("util-linux" ,util-linux)
@ -197,7 +197,7 @@ (define-public qemu
(native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
("perl" ,perl)
("pkg-config" ,pkg-config)
("python" ,python-2) ; incompatible with Python 3 according to error message
("python-wrapper" ,python-wrapper)
("texinfo" ,texinfo)))
(home-page "https://www.qemu.org")
(synopsis "Machine emulator and virtualizer")
@ -233,9 +233,30 @@ (define-public qemu-minimal
;; Remove dependencies on optional libraries, notably GUI libraries.
(inputs (fold alist-delete (package-inputs qemu)
'("libusb" "mesa" "sdl" "spice" "virglrenderer"
'("libusb" "mesa" "sdl2" "spice" "virglrenderer"
"usbredir" "libdrm" "libepoxy" "pulseaudio")))))
;; The GRUB test suite fails with later versions of Qemu, so we
;; keep it at 2.10 for now. See
;; <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
;; This package is hidden since we do not backport updates to it.
(define-public qemu-minimal-2.10
(hidden-package
(package
(inherit qemu-minimal)
(version "2.10.2")
(source (origin
(method url-fetch)
(uri (string-append "https://download.qemu.org/qemu-"
version ".tar.xz"))
(sha256
(base32
"17w21spvaxaidi2am5lpsln8yjpyp2zi3s3gc6nsxj5arlgamzgw"))))
;; qemu-minimal-2.10 needs Python 2. Remove below once no longer necessary.
(native-inputs `(("python-2" ,python-2)
,@(fold alist-delete (package-native-inputs qemu)
'("python-wrapper")))))))
(define-public libosinfo
(package
(name "libosinfo")