From 06da1a6b4fa919a64020ebf1a001b7e66134bd97 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 21 Nov 2015 00:34:32 +0100 Subject: gnu: Add qemu-minimal. * gnu/packages/qemu.scm (qemu): Exchange with former QEMU-HEADLESS. (qemu-headless): Rename to... (qemu-minimal): ... this. New variable. Pass --target-list. * gnu/packages/debug.scm (qemu-2.3.0): Inherit from QEMU-MINIMAL. * gnu/packages/grub.scm (qemu-for-tests): Likewise. * gnu/system/vm.scm (expression->derivation-in-linux-vm, qemu-image): Update to name change. --- gnu/packages/qemu.scm | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) (limited to 'gnu/packages/qemu.scm') diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm index 71600b2347..a6abb48913 100644 --- a/gnu/packages/qemu.scm +++ b/gnu/packages/qemu.scm @@ -38,7 +38,8 @@ #:use-module (gnu packages xdisorg) #:use-module (gnu packages gl) #:use-module (gnu packages sdl) - #:use-module (gnu packages perl)) + #:use-module (gnu packages perl) + #:use-module (srfi srfi-1)) (define (qemu-patch commit file-name sha256) "Return an origin for COMMIT." @@ -62,10 +63,9 @@ (base32 "1aicbplzdj5s5y13jmqyvfajay05x9dnkzd197waz8v6kha7d9d5"))) -(define-public qemu-headless - ;; This is QEMU without GUI support. +(define-public qemu (package - (name "qemu-headless") + (name "qemu") (version "2.4.0.1") (source (origin (method url-fetch) @@ -123,7 +123,11 @@ %standard-phases)))) (inputs ; TODO: Add optional inputs. - `(;; ("libaio" ,libaio) + `(("sdl" ,sdl) + ("mesa" ,mesa) + ("libusb" ,libusb) ;USB pass-through support + + ;; ("libaio" ,libaio) ("glib" ,glib) ("ncurses" ,ncurses) ("libpng" ,libpng) @@ -143,7 +147,7 @@ ("texinfo" ,texinfo) ("perl" ,perl))) (home-page "http://www.qemu-project.org") - (synopsis "Machine emulator and virtualizer (without GUI)") + (synopsis "Machine emulator and virtualizer") (description "QEMU is a generic machine emulator and virtualizer. @@ -163,12 +167,17 @@ server and embedded PowerPC, and S390 guests.") ;; Several tests fail on MIPS; see . (supported-systems (delete "mips64el-linux" %supported-systems)))) -(define-public qemu - ;; QEMU with GUI support. - (package (inherit qemu-headless) - (name "qemu") - (synopsis "Machine emulator and virtualizer") - (inputs `(("sdl" ,sdl) - ("mesa" ,mesa) - ("libusb" ,libusb) ;USB pass-through support - ,@(package-inputs qemu-headless))))) +(define-public qemu-minimal + ;; QEMU without GUI support. + (package (inherit qemu) + (name "qemu-minimal") + (synopsis "Machine emulator and virtualizer (without GUI)") + (arguments + `(#:configure-flags + ;; Restrict to the targets supported by Guix. + '("--target-list=i386-softmmu,x86_64-softmmu,mips64el-softmmu,arm-softmmu") + ,@(package-arguments qemu))) + + ;; Remove dependencies on optional libraries, notably GUI libraries. + (inputs (fold alist-delete (package-inputs qemu) + '("sdl" "mesa" "libusb"))))) -- cgit v1.2.3