All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [pull request] Pull request for branch yem-target-qemu
@ 2012-12-16 17:01 Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 01/27] package/qemu: build for the target (i386 or x86_64 only) Yann E. MORIN
                   ` (26 more replies)
  0 siblings, 27 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Hello All!

This series is the last part required to build QEMU for the target.
It depends on the previous two series:
  - git://gitorious.org/buildroot/buildroot.git yem-host-qemu-fixes
  - git://gitorious.org/buildroot/buildroot.git yem-new-packages

The following changes since commit c89762fc711fda1836af3b7895a8760ffda66aa6:

  Merge branches 'yem-new-packages' and 'yem-host-qemu-fixes' into yem-merge-for-target-qemu (2012-12-16 17:28:45 +0100)

are available in the git repository at:

  git://gitorious.org/buildroot/buildroot.git yem-target-qemu

Yann E. MORIN (27):
      package/qemu: build for the target (i386 or x86_64 only)
      package/qemu: add basic target selection
      package/qemu: add fine-grained target selection
      package/qemu: add SDL frontends
      package/qemu: add option to enable/disable the VNC frontend
      package/qemu: add VNC jpeg and png compression
      package/qemu: add VNC TLS-encryption
      package/qemu: add option to not install blobs
      package/qemu: add option to remove unwanted keymaps
      package/qemu: add uuid support
      package/qemu: add support for capabilities
      package/qemu: add attr/xattr option
      package/qemu: add support for virtfs
      package/qemu: add support for cURL
      package/qemu: enable use of the curses frontend
      package/qemu: add BlueZ connectivity
      package/qemu: add AIO support
      package/qemu: add support for VDE switches
      package/qemu: add iSCSI support
      package/qemu: add support for USB redirection
      package/qemu: add support for Spice
      package/qemu: enable sound
      package/qemu: add support for libseccomp
      package/qemu: option to build the docs
      package/qemu: move sub-options into a sub-menu
      package/qemu: enable a static build
      package/qemu: add support for FDT

 package/Config.in                   |    1 +
 package/qemu/Config.in              |  338 +++++++++++++++++++++++++++++++++++
 package/qemu/qemu-static-curl.patch |   72 ++++++++
 package/qemu/qemu-static-sdl.patch  |   54 ++++++
 package/qemu/qemu.mk                |  290 ++++++++++++++++++++++++++++++
 5 files changed, 755 insertions(+), 0 deletions(-)
 create mode 100644 package/qemu/Config.in
 create mode 100644 package/qemu/qemu-static-curl.patch
 create mode 100644 package/qemu/qemu-static-sdl.patch

Regards,
Yann E. MORIN

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 01/27] package/qemu: build for the target (i386 or x86_64 only)
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 02/27] package/qemu: add basic target selection Yann E. MORIN
                   ` (25 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Untested for other architectures, so only enabled for known-working ones.

We explicitly disable all features that depends on other packages,
for now. Such features will be added one by one in the next patches.
Features that do not rely on external packages are explicitly enabled
to catch the dependencies on toolchain features early.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/Config.in      |    1 +
 package/qemu/Config.in |   25 ++++++++++++++++
 package/qemu/qemu.mk   |   73 ++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 99 insertions(+), 0 deletions(-)
 create mode 100644 package/qemu/Config.in

diff --git a/package/Config.in b/package/Config.in
index 8612c7d..458c3c8 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -574,6 +574,7 @@ source "package/collectd/Config.in"
 source "package/empty/Config.in"
 source "package/googlefontdirectory/Config.in"
 source "package/mobile-broadband-provider-info/Config.in"
+source "package/qemu/Config.in"
 source "package/shared-mime-info/Config.in"
 source "package/snowball-init/Config.in"
 source "package/sound-theme-borealis/Config.in"
diff --git a/package/qemu/Config.in b/package/qemu/Config.in
new file mode 100644
index 0000000..4b05e3d
--- /dev/null
+++ b/package/qemu/Config.in
@@ -0,0 +1,25 @@
+comment "QEMU requires a toolchain with threads"
+	depends on !BR2_i386 && !BR2_x86_64
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
+
+config BR2_PACKAGE_QEMU
+	bool "QEMU"
+	depends on BR2_i386 || BR2_x86_64
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	select BR2_PACKAGE_LIBGLIB2
+	select BR2_PACKAGE_ZLIB
+	help
+	  QEMU is a generic and open source machine emulator and virtualizer.
+	  
+	  When used as a machine emulator, QEMU can run OSes and programs made
+	  for one machine (e.g. an ARM board) on a different machine (e.g.
+	  your own PC). By using dynamic translation, it achieves very good
+	  performance.
+	  
+	  When used as a virtualizer, QEMU achieves near native performances
+	  by executing the guest code directly on the host CPU. QEMU supports
+	  virtualization when executing under the Xen hypervisor or using the
+	  KVM kernel module in Linux. When using KVM, QEMU can virtualize x86,
+	  server and embedded PowerPC, and S390 guests.
+	  
+	  http://qemu.org/
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index bd42481..ddab4d0 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -81,3 +81,76 @@ $(eval $(host-autotools-package))
 
 # variable used by other packages
 QEMU_USER = $(HOST_DIR)/usr/bin/qemu-$(HOST_QEMU_ARCH)
+
+#-------------------------------------------------------------
+# Target-qemu
+
+QEMU_DEPENDENCIES = host-pkgconf host-python libglib2 zlib
+
+# Need the LIBS variable because librt and libm are
+# not automatically pulled. :-(
+QEMU_LIBS = -lrt -lm
+
+QEMU_OPTS =
+
+QEMU_VARS =                                                                         \
+    PYTHON=$(HOST_DIR)/usr/bin/python                                               \
+    PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages    \
+
+# Note: although QEMU uses a ./configure script, it is not compatible with
+#       the traditional autotools options (eg. --target et al.), so we have
+#       to override the default provided by the autotools-package infra, and
+#       provide our own. Sigh... :-/
+
+define QEMU_CONFIGURE_CMDS
+	( cd $(@D);                                 \
+	    LIBS='$(QEMU_LIBS)'                     \
+	    $(TARGET_CONFIGURE_OPTS)                \
+	    $(TARGET_CONFIGURE_ARGS)                \
+	    $(QEMU_VARS)                            \
+	    ./configure                             \
+	        --prefix=/usr                       \
+	        --cross-prefix=$(TARGET_CROSS)      \
+	        --audio-drv-list=                   \
+	        --audio-card-list=                  \
+	        --enable-kvm                        \
+	        --enable-nptl                       \
+	        --enable-attr                       \
+	        --enable-vhost-net                  \
+	        --enable-system                     \
+	        --enable-linux-user                 \
+	        --disable-bsd-user                  \
+	        --disable-xen                       \
+	        --disable-slirp                     \
+	        --disable-sdl                       \
+	        --disable-vnc                       \
+	        --disable-virtfs                    \
+	        --disable-brlapi                    \
+	        --disable-curses                    \
+	        --disable-curl                      \
+	        --disable-fdt                       \
+	        --disable-bluez                     \
+	        --disable-guest-base                \
+	        --disable-uuid                      \
+	        --disable-vde                       \
+	        --disable-linux-aio                 \
+	        --disable-cap-ng                    \
+	        --disable-docs                      \
+	        --disable-spice                     \
+	        --disable-rbd                       \
+	        --disable-libiscsi                  \
+	        --disable-usb-redir                 \
+	        --disable-smartcard                 \
+	        --disable-strip                     \
+	        --disable-seccomp                   \
+	        --disable-sparse                    \
+	        $(QEMU_OPTS)                        \
+	)
+endef
+
+# Need the LIBS_QGA because it does not 'inherit' the LIBS_TOOLS
+# we set at configure time, and there is no conrresponding LIBS_QGA
+# at configure time
+QEMU_MAKE_ENV += LIBS_TOOLS="$(QEMU_LIBS)" LIBS_QGA="$(QEMU_LIBS)" LIBS="$(QEMU_LIBS)"
+
+$(eval $(autotools-package))
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 02/27] package/qemu: add basic target selection
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 01/27] package/qemu: build for the target (i386 or x86_64 only) Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 03/27] package/qemu: add fine-grained " Yann E. MORIN
                   ` (24 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

qemu-1.2.1 requires that at least one target emulation be enabled, so
we use some kconfig-tricks to force at least the systems emulations to
be enabled if user emulation is not selected.

This limitation will be lifted in the upcoming qemu-1.3.x

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   32 ++++++++++++++++++++++++++++++++
 package/qemu/qemu.mk   |   14 ++++++++++++--
 2 files changed, 44 insertions(+), 2 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 4b05e3d..ddf3665 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -23,3 +23,35 @@ config BR2_PACKAGE_QEMU
 	  server and embedded PowerPC, and S390 guests.
 	  
 	  http://qemu.org/
+
+if BR2_PACKAGE_QEMU
+
+comment "Emulators selection"
+
+# QEMU 1.2.x requires that at least one target emulation be selected, so
+# we use the following two symbols to force systems emulation if user
+# emulation is not selected. This limitation will be lifted when qemu-1.3.0
+# is out.
+config BR2_PACKAGE_QEMU_EMUL_SET
+	bool
+
+config BR2_PACKAGE_QEMU_FORCE_SYSTEM
+	bool
+	default n if BR2_PACKAGE_QEMU_EMUL_SET
+	default y if ! BR2_PACKAGE_QEMU_EMUL_SET
+	select BR2_PACKAGE_QEMU_SYSTEM
+
+config BR2_PACKAGE_QEMU_SYSTEM
+	bool "Enable all systems emulation"
+	help
+	  Say 'y' to build all system emulators/virtualisers that QEMU supports.
+
+config BR2_PACKAGE_QEMU_LINUX_USER
+	bool "Enable all Linux user-land emulation"
+	select BR2_PACKAGE_QEMU_EMUL_SET
+	help
+	  Say 'y' to build all Linux user-land emulators that QEMU supports.
+
+# Note: bsd-user can not be build on Linux
+
+endif # BR2_PACKAGE_QEMU
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index ddab4d0..6fd389b 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -97,6 +97,18 @@ QEMU_VARS =
     PYTHON=$(HOST_DIR)/usr/bin/python                                               \
     PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages    \
 
+ifeq ($(BR2_PACKAGE_QEMU_SYSTEM),y)
+QEMU_OPTS += --enable-system
+else
+QEMU_OPTS += --disable-system
+endif
+
+ifeq ($(BR2_PACKAGE_QEMU_LINUX_USER),y)
+QEMU_OPTS += --enable-linux-user
+else
+QEMU_OPTS += --disable-linux-user
+endif
+
 # Note: although QEMU uses a ./configure script, it is not compatible with
 #       the traditional autotools options (eg. --target et al.), so we have
 #       to override the default provided by the autotools-package infra, and
@@ -117,8 +129,6 @@ define QEMU_CONFIGURE_CMDS
 	        --enable-nptl                       \
 	        --enable-attr                       \
 	        --enable-vhost-net                  \
-	        --enable-system                     \
-	        --enable-linux-user                 \
 	        --disable-bsd-user                  \
 	        --disable-xen                       \
 	        --disable-slirp                     \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 03/27] package/qemu: add fine-grained target selection
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 01/27] package/qemu: build for the target (i386 or x86_64 only) Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 02/27] package/qemu: add basic target selection Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 04/27] package/qemu: add SDL frontends Yann E. MORIN
                   ` (23 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   21 +++++++++++++++++++++
 package/qemu/qemu.mk   |    4 ++++
 2 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index ddf3665..f76b443 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -28,6 +28,25 @@ if BR2_PACKAGE_QEMU
 
 comment "Emulators selection"
 
+config BR2_PACKAGE_QEMU_CUSTOM_TARGETS
+	string "Enable specific targets"
+	help
+	  Enter here the list of QEMU targets you want to build. For example:
+
+	    System emulation      | User-land emulation
+	    ----------------------+-----------------------
+	    i386-softmmu          | i386-linux-user
+	    arm-softmmu           | ppc-linux-user
+	    x86_64-softmmu        | sparc-bsd-user
+	    ...                   | ...
+
+config QEMU_FOO
+	bool # To break the indentation
+
+if BR2_PACKAGE_QEMU_CUSTOM_TARGETS = ""
+
+comment "... or you can select emulator families to enable, below:"
+
 # QEMU 1.2.x requires that at least one target emulation be selected, so
 # we use the following two symbols to force systems emulation if user
 # emulation is not selected. This limitation will be lifted when qemu-1.3.0
@@ -54,4 +73,6 @@ config BR2_PACKAGE_QEMU_LINUX_USER
 
 # Note: bsd-user can not be build on Linux
 
+endif # BR2_PACKAGE_QEMU_CUSTOM_TARGETS == ""
+
 endif # BR2_PACKAGE_QEMU
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 6fd389b..caf3426 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -109,6 +109,10 @@ else
 QEMU_OPTS += --disable-linux-user
 endif
 
+ifneq ($(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS)),)
+QEMU_OPTS += --target-list="$(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS))"
+endif
+
 # Note: although QEMU uses a ./configure script, it is not compatible with
 #       the traditional autotools options (eg. --target et al.), so we have
 #       to override the default provided by the autotools-package infra, and
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 04/27] package/qemu: add SDL frontends
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (2 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 03/27] package/qemu: add fine-grained " Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 05/27] package/qemu: add option to enable/disable the VNC frontend Yann E. MORIN
                   ` (22 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    9 +++++++++
 package/qemu/qemu.mk   |   10 +++++++++-
 2 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index f76b443..a92ca00 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -75,4 +75,13 @@ config BR2_PACKAGE_QEMU_LINUX_USER
 
 endif # BR2_PACKAGE_QEMU_CUSTOM_TARGETS == ""
 
+comment "Frontends"
+
+config BR2_PACKAGE_QEMU_SDL
+	bool "Enable SDL frontend"
+	select BR2_PACKAGE_SDL
+	help
+	  Say 'y' to enable the SDL frontend, that is, a graphical window
+	  presenting the VM's display.
+
 endif # BR2_PACKAGE_QEMU
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index caf3426..f102637 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -96,6 +96,7 @@ QEMU_OPTS =
 QEMU_VARS =                                                                         \
     PYTHON=$(HOST_DIR)/usr/bin/python                                               \
     PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages    \
+    SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config                                    \
 
 ifeq ($(BR2_PACKAGE_QEMU_SYSTEM),y)
 QEMU_OPTS += --enable-system
@@ -113,6 +114,14 @@ ifneq ($(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS)),)
 QEMU_OPTS += --target-list="$(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS))"
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_SDL),y)
+QEMU_OPTS += --enable-sdl
+QEMU_DEPENDENCIES += sdl
+QEMU_VARS += SDL_CONFIG=$(BR2_STAGING_DIR)/usr/bin/sdl-config
+else
+QEMU_OPTS += --disable-sdl
+endif
+
 # Note: although QEMU uses a ./configure script, it is not compatible with
 #       the traditional autotools options (eg. --target et al.), so we have
 #       to override the default provided by the autotools-package infra, and
@@ -136,7 +145,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-bsd-user                  \
 	        --disable-xen                       \
 	        --disable-slirp                     \
-	        --disable-sdl                       \
 	        --disable-vnc                       \
 	        --disable-virtfs                    \
 	        --disable-brlapi                    \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 05/27] package/qemu: add option to enable/disable the VNC frontend
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (3 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 04/27] package/qemu: add SDL frontends Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 06/27] package/qemu: add VNC jpeg and png compression Yann E. MORIN
                   ` (21 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    7 +++++++
 package/qemu/qemu.mk   |   11 ++++++++++-
 2 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index a92ca00..057c1d6 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -77,6 +77,13 @@ endif # BR2_PACKAGE_QEMU_CUSTOM_TARGETS == ""
 
 comment "Frontends"
 
+config BR2_PACKAGE_QEMU_VNC
+	bool "Enable VNC frontend"
+	select BR2_PACKAGE_VNC
+	help
+	  Say 'y' to enable the VNC frontend, that is, QEMU will act as a
+	  VNC server presenting the VM's display.
+
 config BR2_PACKAGE_QEMU_SDL
 	bool "Enable SDL frontend"
 	select BR2_PACKAGE_SDL
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index f102637..011f176 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -114,6 +114,12 @@ ifneq ($(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS)),)
 QEMU_OPTS += --target-list="$(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS))"
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_VNC),y)
+QEMU_OPTS += --enable-vnc
+else
+QEMU_OPTS += --disable-vnc
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_SDL),y)
 QEMU_OPTS += --enable-sdl
 QEMU_DEPENDENCIES += sdl
@@ -145,7 +151,10 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-bsd-user                  \
 	        --disable-xen                       \
 	        --disable-slirp                     \
-	        --disable-vnc                       \
+	        --disable-vnc-jpeg                  \
+	        --disable-vnc-png                   \
+	        --disable-vnc-tls                   \
+	        --disable-vnc-sasl                  \
 	        --disable-virtfs                    \
 	        --disable-brlapi                    \
 	        --disable-curses                    \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 06/27] package/qemu: add VNC jpeg and png compression
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (4 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 05/27] package/qemu: add option to enable/disable the VNC frontend Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 07/27] package/qemu: add VNC TLS-encryption Yann E. MORIN
                   ` (20 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   10 ++++++++++
 package/qemu/qemu.mk   |   16 ++++++++++++++--
 2 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 057c1d6..74d207c 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -84,6 +84,16 @@ config BR2_PACKAGE_QEMU_VNC
 	  Say 'y' to enable the VNC frontend, that is, QEMU will act as a
 	  VNC server presenting the VM's display.
 
+config BR2_PACKAGE_QEMU_VNC_PNG
+	bool "PNG compression"
+	depends on BR2_PACKAGE_QEMU_VNC
+	select BR2_PACKAGE_LIBPNG
+
+config BR2_PACKAGE_QEMU_VNC_JPEG
+	bool "JPEG compression"
+	depends on BR2_PACKAGE_QEMU_VNC
+	select BR2_PACKAGE_JPEG
+
 config BR2_PACKAGE_QEMU_SDL
 	bool "Enable SDL frontend"
 	select BR2_PACKAGE_SDL
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 011f176..ca03069 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -120,6 +120,20 @@ else
 QEMU_OPTS += --disable-vnc
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_VNC_PNG),y)
+QEMU_OPTS += --enable-vnc-png
+QEMU_DEPENDENCIES += libpng
+else
+QEMU_OPTS += --disable-vnc-png
+endif
+
+ifeq ($(BR2_PACKAGE_QEMU_VNC_JPEG),y)
+QEMU_OPTS += --enable-vnc-jpeg
+QEMU_DEPENDENCIES += jpeg
+else
+QEMU_OPTS += --disable-vnc-jpeg
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_SDL),y)
 QEMU_OPTS += --enable-sdl
 QEMU_DEPENDENCIES += sdl
@@ -151,8 +165,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-bsd-user                  \
 	        --disable-xen                       \
 	        --disable-slirp                     \
-	        --disable-vnc-jpeg                  \
-	        --disable-vnc-png                   \
 	        --disable-vnc-tls                   \
 	        --disable-vnc-sasl                  \
 	        --disable-virtfs                    \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 07/27] package/qemu: add VNC TLS-encryption
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (5 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 06/27] package/qemu: add VNC jpeg and png compression Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 08/27] package/qemu: add option to not install blobs Yann E. MORIN
                   ` (19 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Only TLS is supported, as buildroot has no package for the SASL library.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   11 +++++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 74d207c..14c3704 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -94,6 +94,17 @@ config BR2_PACKAGE_QEMU_VNC_JPEG
 	depends on BR2_PACKAGE_QEMU_VNC
 	select BR2_PACKAGE_JPEG
 
+# TLS does not work with static link, because the gnutls .pc is missing a
+# dependency on libintl... :-(
+config BR2_PACKAGE_QEMU_VNC_TLS
+	bool "TLS encryption"
+	depends on BR2_PACKAGE_QEMU_VNC
+	depends on !BR2_PREFER_STATIC_LIB
+	select BR2_PACKAGE_GNUTLS
+
+comment "VNC TLS encryption does not work for static link"
+    depends on BR2_PACKAGE_QEMU_VNC && BR2_PREFER_STATIC_LIB
+
 config BR2_PACKAGE_QEMU_SDL
 	bool "Enable SDL frontend"
 	select BR2_PACKAGE_SDL
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index ca03069..8f3c0e9 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -134,6 +134,13 @@ else
 QEMU_OPTS += --disable-vnc-jpeg
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_VNC_TLS),y)
+QEMU_OPTS += --enable-vnc-tls
+QEMU_DEPENDENCIES += gnutls
+else
+QEMU_OPTS += --disable-vnc-tls
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_SDL),y)
 QEMU_OPTS += --enable-sdl
 QEMU_DEPENDENCIES += sdl
@@ -165,7 +172,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-bsd-user                  \
 	        --disable-xen                       \
 	        --disable-slirp                     \
-	        --disable-vnc-tls                   \
 	        --disable-vnc-sasl                  \
 	        --disable-virtfs                    \
 	        --disable-brlapi                    \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 08/27] package/qemu: add option to not install blobs
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (6 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 07/27] package/qemu: add VNC TLS-encryption Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 09/27] package/qemu: add option to remove unwanted keymaps Yann E. MORIN
                   ` (18 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   16 ++++++++++++++++
 package/qemu/qemu.mk   |    4 ++++
 2 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 14c3704..e530303 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -112,4 +112,20 @@ config BR2_PACKAGE_QEMU_SDL
 	  Say 'y' to enable the SDL frontend, that is, a graphical window
 	  presenting the VM's display.
 
+comment "Misc. features"
+
+config BR2_PACKAGE_QEMU_BLOBS
+	bool "Install binary blobs"
+	default y
+	help
+	  Say 'y' here (the default) to install binary blobs (such as BIOS
+	  or firmwares for the different machines simulated by QEMU).
+	  Say 'n' to not install those blobs.
+	  
+	  Note: Some machines may be unbootable without those blobs.
+	        If unsure, say 'y'.
+	  
+	  Note2: This has nothing to do with the licensing of the blobs;
+	         some (most?) even have a free and/or open source license.
+
 endif # BR2_PACKAGE_QEMU
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 8f3c0e9..f2cde9d 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -149,6 +149,10 @@ else
 QEMU_OPTS += --disable-sdl
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_BLOBS),)
+QEMU_OPTS += --disable-blobs
+endif
+
 # Note: although QEMU uses a ./configure script, it is not compatible with
 #       the traditional autotools options (eg. --target et al.), so we have
 #       to override the default provided by the autotools-package infra, and
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 09/27] package/qemu: add option to remove unwanted keymaps
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (7 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 08/27] package/qemu: add option to not install blobs Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 10/27] package/qemu: add uuid support Yann E. MORIN
                   ` (17 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   12 ++++++++++
 package/qemu/qemu.mk   |   55 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+), 0 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index e530303..5181fdc 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -128,4 +128,16 @@ config BR2_PACKAGE_QEMU_BLOBS
 	  Note2: This has nothing to do with the licensing of the blobs;
 	         some (most?) even have a free and/or open source license.
 
+config BR2_PACKAGE_QEMU_KEYMAPS
+	string "Keymaps to keep"
+	default "all"
+	help
+	  Enter the list of keymap(s) to keep. To keep many keymaps, you can
+	  use shell globs, or you can enter a space-separated list of keymaps:
+	    - empty to remove all keymaps
+	    - 'all' to keep all keymaps
+	    - 'fr*' to keep all french keymaps
+	    - 'de fr* en-*' for german, french and english keymaps
+	    - and so on (see the QEMU source for all supported keymaps)
+
 endif # BR2_PACKAGE_QEMU
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index f2cde9d..8a92b67 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -153,6 +153,61 @@ ifeq ($(BR2_PACKAGE_QEMU_BLOBS),)
 QEMU_OPTS += --disable-blobs
 endif
 
+# Post-install removal of unwanted keymaps:
+# - if we want 'all', we do nothing;
+# - if we want none, we completely remove the keymap dir
+# - otherwise:
+#   - we completely remove the keymap dir; and recreate it empty
+#   - we recursively copy only those keymaps we want (as keymaps may include
+#     some common files)
+#
+# NOTE-1: we need the un-quoted list of keymaps, so it is interpreted as a glob
+#         by the shell.
+# NOTE-2: yes, all (current!) keymaps do include the 'common' keymap, which in
+#         turn includes the 'modifiers' keymap, so we could unconditionally
+#         copy those two, for a much simpler code. Doing it the way it's done
+#         is more generic, and will adapt to any future keymaps which has
+#         multiple includes, or none.
+# NOTE-3: we can't use $(SED), because it expands to include the '-i' option,
+#         which we do *not* want here, because we are not munging a file, but
+#         using sed as a enhanced grep.
+#
+QEMU_KEYMAPS = $(call qstrip,$(BR2_PACKAGE_QEMU_KEYMAPS))
+
+ifeq ($(QEMU_KEYMAPS),all)      #--- Keep all keymaps ---#
+define QEMU_POST_INSTALL_KEYMAPS
+	@: Nothing
+endef
+
+else ifeq ($(QEMU_KEYMAPS),)    #--- Remove all keymaps ---#
+define QEMU_POST_INSTALL_KEYMAPS
+	rm -rf "$(TARGET_DIR)/usr/share/qemu/keymaps"
+endef
+
+else                            #--- Keep selected keymaps ---#
+define QEMU_POST_INSTALL_KEYMAPS
+	rm -rf "$(TARGET_DIR)/usr/share/qemu/keymaps"
+	mkdir -p "$(TARGET_DIR)/usr/share/qemu/keymaps"
+	add_keymap() {                                                  \
+	    local k="$${1}"; local dest="$${2}";                        \
+	    if [ -n "$${k}" -a ! -f "$${dest}/$${k}" ]; then            \
+	        cp -v "$${k}" "$${dest}";                               \
+	        for k in $$(sed -r -e '/^include[[:space:]]+(.*)$$/!d;' \
+	                           -e 's//\1/;' "$${k}" ); do           \
+	            add_keymap "$${k}" "$${dest}";                      \
+	        done;                                                   \
+	    fi;                                                         \
+	};                                                              \
+	cd $(@D)/pc-bios/keymaps;                                       \
+	for k in $(QEMU_KEYMAPS); do                                    \
+	    add_keymap "$${k}" "$(TARGET_DIR)/usr/share/qemu/keymaps";  \
+	done
+endef
+
+endif # Keymaps to keep
+
+QEMU_POST_INSTALL_TARGET_HOOKS += QEMU_POST_INSTALL_KEYMAPS
+
 # Note: although QEMU uses a ./configure script, it is not compatible with
 #       the traditional autotools options (eg. --target et al.), so we have
 #       to override the default provided by the autotools-package infra, and
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 10/27] package/qemu: add uuid support
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (8 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 09/27] package/qemu: add option to remove unwanted keymaps Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 11/27] package/qemu: add support for capabilities Yann E. MORIN
                   ` (16 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   10 ++++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 5181fdc..0c4aa0a 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -114,6 +114,16 @@ config BR2_PACKAGE_QEMU_SDL
 
 comment "Misc. features"
 
+config BR2_PACKAGE_QEMU_UUID
+	bool "Enable VMs UUID"
+	depends on BR2_PACKAGE_UTIL_LINUX
+	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
+	help
+	  Say 'y' here to have QEMU support UUIDs for VMs.
+
+comment "UUID support requires util-linux (for libuuid)"
+	depends on !BR2_PACKAGE_UTIL_LINUX
+
 config BR2_PACKAGE_QEMU_BLOBS
 	bool "Install binary blobs"
 	default y
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 8a92b67..41e71da 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -149,6 +149,13 @@ else
 QEMU_OPTS += --disable-sdl
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_UUID),y)
+QEMU_OPTS += --enable-uuid
+QEMU_DEPENDENCIES += util-linux
+else
+QEMU_OPTS += --disable-uuid
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_BLOBS),)
 QEMU_OPTS += --disable-blobs
 endif
@@ -239,7 +246,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-fdt                       \
 	        --disable-bluez                     \
 	        --disable-guest-base                \
-	        --disable-uuid                      \
 	        --disable-vde                       \
 	        --disable-linux-aio                 \
 	        --disable-cap-ng                    \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 11/27] package/qemu: add support for capabilities
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (9 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 10/27] package/qemu: add uuid support Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 12/27] package/qemu: add attr/xattr option Yann E. MORIN
                   ` (15 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    7 +++++++
 package/qemu/qemu.mk   |   11 ++++++++++-
 2 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 0c4aa0a..1ef6c25 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -124,6 +124,13 @@ config BR2_PACKAGE_QEMU_UUID
 comment "UUID support requires util-linux (for libuuid)"
 	depends on !BR2_PACKAGE_UTIL_LINUX
 
+config BR2_PACKAGE_QEMU_CAP
+	bool "Enable capabilities"
+	select BR2_PACKAGE_LIBCAP
+	select BR2_PACKAGE_LIBCAP_NG
+	help
+	  Say 'y' here if you want QEMU to support capabilities.
+
 config BR2_PACKAGE_QEMU_BLOBS
 	bool "Install binary blobs"
 	default y
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 41e71da..d64d476 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -156,6 +156,16 @@ else
 QEMU_OPTS += --disable-uuid
 endif
 
+# There's no configure flag to disable use of libcap
+# so we must use an environment variable
+ifeq ($(BR2_PACKAGE_QEMU_CAP),y)
+QEMU_OPTS += --enable-cap-ng
+QEMU_DEPENDENCIES += libcap libcap-ng
+else
+QEMU_OPTS += --disable-cap-ng
+QEMU_VARS += cap=no
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_BLOBS),)
 QEMU_OPTS += --disable-blobs
 endif
@@ -248,7 +258,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-guest-base                \
 	        --disable-vde                       \
 	        --disable-linux-aio                 \
-	        --disable-cap-ng                    \
 	        --disable-docs                      \
 	        --disable-spice                     \
 	        --disable-rbd                       \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 12/27] package/qemu: add attr/xattr option
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (10 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 11/27] package/qemu: add support for capabilities Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 13/27] package/qemu: add support for virtfs Yann E. MORIN
                   ` (14 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    6 ++++++
 package/qemu/qemu.mk   |    7 ++++++-
 2 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 1ef6c25..138949c 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -131,6 +131,12 @@ config BR2_PACKAGE_QEMU_CAP
 	help
 	  Say 'y' here if you want QEMU to support capabilities.
 
+config BR2_PACKAGE_QEMU_ATTR
+	bool "Enable attr and xattr"
+	help
+	  Say 'y' here to have QEMU support attributes (attr) and eXtended
+	  attibutes (xattr).
+
 config BR2_PACKAGE_QEMU_BLOBS
 	bool "Install binary blobs"
 	default y
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index d64d476..00f90b7 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -166,6 +166,12 @@ QEMU_OPTS += --disable-cap-ng
 QEMU_VARS += cap=no
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_ATTR),y)
+QEMU_OPTS += --enable-attr
+else
+QEMU_OPTS += --disable-attr
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_BLOBS),)
 QEMU_OPTS += --disable-blobs
 endif
@@ -243,7 +249,6 @@ define QEMU_CONFIGURE_CMDS
 	        --audio-card-list=                  \
 	        --enable-kvm                        \
 	        --enable-nptl                       \
-	        --enable-attr                       \
 	        --enable-vhost-net                  \
 	        --disable-bsd-user                  \
 	        --disable-xen                       \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 13/27] package/qemu: add support for virtfs
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (11 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 12/27] package/qemu: add attr/xattr option Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 14/27] package/qemu: add support for cURL Yann E. MORIN
                   ` (13 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   16 ++++++++++++++++
 package/qemu/qemu.mk   |    7 ++++++-
 2 files changed, 22 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 138949c..237fb7b 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -112,6 +112,22 @@ config BR2_PACKAGE_QEMU_SDL
 	  Say 'y' to enable the SDL frontend, that is, a graphical window
 	  presenting the VM's display.
 
+comment "Block backends"
+
+config BR2_PACKAGE_QEMU_VIRTFS
+	bool "Enable plan9 ressources using VirtFS"
+	select BR2_PACKAGE_QEMU_CAP
+	select BR2_PACKAGE_QEMU_ATTR
+	help
+	  Say 'y' here if you want QEMU to provide a plan9 virtual "share"
+	  accessible from the guest OS for relatively fast access to host
+	  files.
+	  
+	  This requires that the guest OS is capable of accessing plan9
+	  ressources (typically, in Linux, this is done by a network
+	  file-system called 9p, and can be accelerated by using the 9p
+	  virtio).
+
 comment "Misc. features"
 
 config BR2_PACKAGE_QEMU_UUID
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 00f90b7..0eda434 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -149,6 +149,12 @@ else
 QEMU_OPTS += --disable-sdl
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_VIRTFS),y)
+QEMU_OPTS += --enable-virtfs
+else
+QEMU_OPTS += --disable-virtfs
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_UUID),y)
 QEMU_OPTS += --enable-uuid
 QEMU_DEPENDENCIES += util-linux
@@ -254,7 +260,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-xen                       \
 	        --disable-slirp                     \
 	        --disable-vnc-sasl                  \
-	        --disable-virtfs                    \
 	        --disable-brlapi                    \
 	        --disable-curses                    \
 	        --disable-curl                      \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 14/27] package/qemu: add support for cURL
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (12 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 13/27] package/qemu: add support for virtfs Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 15/27] package/qemu: enable use of the curses frontend Yann E. MORIN
                   ` (12 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

QEMU can use libcurl as a block backend, to access remote block devices.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   10 ++++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 237fb7b..47857ec 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -128,6 +128,16 @@ config BR2_PACKAGE_QEMU_VIRTFS
 	  file-system called 9p, and can be accelerated by using the 9p
 	  virtio).
 
+config BR2_PACKAGE_QEMU_CURL
+	bool "Enable remote block-devices using cURL"
+	depends on !BR2_PREFER_STATIC_LIB
+	select BR2_PACKAGE_LIBCURL
+	help
+	  Say 'y' to access remote block-devices using libcurl.
+
+comment "cURL support is not possible with static linking"
+    depends on BR2_PREFER_STATIC_LIB
+
 comment "Misc. features"
 
 config BR2_PACKAGE_QEMU_UUID
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 0eda434..5064ab8 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -155,6 +155,13 @@ else
 QEMU_OPTS += --disable-virtfs
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_CURL),y)
+QEMU_OPTS += --enable-curl
+QEMU_DEPENDENCIES += libcurl
+else
+QEMU_OPTS += --disable-curl
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_UUID),y)
 QEMU_OPTS += --enable-uuid
 QEMU_DEPENDENCIES += util-linux
@@ -262,7 +269,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-vnc-sasl                  \
 	        --disable-brlapi                    \
 	        --disable-curses                    \
-	        --disable-curl                      \
 	        --disable-fdt                       \
 	        --disable-bluez                     \
 	        --disable-guest-base                \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 15/27] package/qemu: enable use of the curses frontend
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (13 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 14/27] package/qemu: add support for cURL Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 16/27] package/qemu: add BlueZ connectivity Yann E. MORIN
                   ` (11 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   11 +++++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 47857ec..15239a7 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -112,6 +112,17 @@ config BR2_PACKAGE_QEMU_SDL
 	  Say 'y' to enable the SDL frontend, that is, a graphical window
 	  presenting the VM's display.
 
+config BR2_PACKAGE_QEMU_CURSES
+	bool "Enable the curses frontend"
+	select BR2_PACKAGE_NCURSES
+	help
+	  Say 'y' to use curses to display the text-mode of VGA outpout.
+	  
+	  If the VM's graphic adapter does not support VGA text-mode, or it
+	  is in graphical mode, then nothing will be displayed with this
+	  frontend (although you can still use the SDL or VNC frontends to
+	  display the graphical output).
+
 comment "Block backends"
 
 config BR2_PACKAGE_QEMU_VIRTFS
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 5064ab8..0db3b70 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -149,6 +149,13 @@ else
 QEMU_OPTS += --disable-sdl
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_CURSES),y)
+QEMU_OPTS += --enable-curses
+QEMU_DEPENDENCIES += ncurses
+else
+QEMU_OPTS += --disable-curses
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_VIRTFS),y)
 QEMU_OPTS += --enable-virtfs
 else
@@ -268,7 +275,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-slirp                     \
 	        --disable-vnc-sasl                  \
 	        --disable-brlapi                    \
-	        --disable-curses                    \
 	        --disable-fdt                       \
 	        --disable-bluez                     \
 	        --disable-guest-base                \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 16/27] package/qemu: add BlueZ connectivity
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (14 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 15/27] package/qemu: enable use of the curses frontend Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 17/27] package/qemu: add AIO support Yann E. MORIN
                   ` (10 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   11 +++++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 15239a7..d912036 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -149,6 +149,17 @@ config BR2_PACKAGE_QEMU_CURL
 comment "cURL support is not possible with static linking"
     depends on BR2_PREFER_STATIC_LIB
 
+comment "Networking"
+
+config BR2_PACKAGE_QEMU_BLUEZ
+	bool "Enable BlueZ connectivity"
+	depends on BR2_PACKAGE_BLUEZ_UTILS
+	help
+	  Say 'y' here to enable BlueZ (bluetooth) connectivity in QEMU.
+
+comment "BlueZ connectivity depends on bluez-utils"
+	depends on !BR2_PACKAGE_BLUEZ_UTILS
+
 comment "Misc. features"
 
 config BR2_PACKAGE_QEMU_UUID
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 0db3b70..7603158 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -169,6 +169,13 @@ else
 QEMU_OPTS += --disable-curl
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_BLUEZ),y)
+QEMU_OPTS += --enable-bluez
+QEMU_DEPENDENCIES += bluez_utils
+else
+QEMU_OPTS += --disable-bluez
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_UUID),y)
 QEMU_OPTS += --enable-uuid
 QEMU_DEPENDENCIES += util-linux
@@ -276,7 +283,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-vnc-sasl                  \
 	        --disable-brlapi                    \
 	        --disable-fdt                       \
-	        --disable-bluez                     \
 	        --disable-guest-base                \
 	        --disable-vde                       \
 	        --disable-linux-aio                 \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 17/27] package/qemu: add AIO support
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (15 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 16/27] package/qemu: add BlueZ connectivity Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 18/27] package/qemu: add support for VDE switches Yann E. MORIN
                   ` (9 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Add support for Asynchronous Input/Ouput (AIO).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    9 +++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index d912036..c91ce33 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -149,6 +149,15 @@ config BR2_PACKAGE_QEMU_CURL
 comment "cURL support is not possible with static linking"
     depends on BR2_PREFER_STATIC_LIB
 
+config BR2_PACKAGE_QEMU_AIO
+	bool "Enable AIO"
+	depends on BR2_PACKAGE_LIBAIO
+	help
+	  Say 'y' here to enable Asynchronous Input/Output (AIO).
+
+comment "AIO support depends on libaio"
+	depends on !BR2_PACKAGE_LIBAIO
+
 comment "Networking"
 
 config BR2_PACKAGE_QEMU_BLUEZ
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 7603158..2a39ae0 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -169,6 +169,13 @@ else
 QEMU_OPTS += --disable-curl
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_AIO),y)
+QEMU_OPTS += --enable-linux-aio
+QEMU_DEPENDENCIES += libaio
+else
+QEMU_OPTS += --disable-linux-aio
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_BLUEZ),y)
 QEMU_OPTS += --enable-bluez
 QEMU_DEPENDENCIES += bluez_utils
@@ -285,7 +292,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-fdt                       \
 	        --disable-guest-base                \
 	        --disable-vde                       \
-	        --disable-linux-aio                 \
 	        --disable-docs                      \
 	        --disable-spice                     \
 	        --disable-rbd                       \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 18/27] package/qemu: add support for VDE switches
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (16 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 17/27] package/qemu: add AIO support Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 19/27] package/qemu: add iSCSI support Yann E. MORIN
                   ` (8 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    7 +++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index c91ce33..38bb290 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -169,6 +169,13 @@ config BR2_PACKAGE_QEMU_BLUEZ
 comment "BlueZ connectivity depends on bluez-utils"
 	depends on !BR2_PACKAGE_BLUEZ_UTILS
 
+config BR2_PACKAGE_QEMU_VDE
+	bool "Enable VDE"
+	select BR2_PACKAGE_VDE2
+	help
+	  Say 'y' here to have QEMU connect to VDE (Virtual Distributed
+	  Ethernet) switches.
+
 comment "Misc. features"
 
 config BR2_PACKAGE_QEMU_UUID
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 2a39ae0..b84473b 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -183,6 +183,13 @@ else
 QEMU_OPTS += --disable-bluez
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_VDE),y)
+QEMU_OPTS += --enable-vde
+QEMU_DEPENDENCIES += vde2
+else
+QEMU_OPTS += --disable-vde
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_UUID),y)
 QEMU_OPTS += --enable-uuid
 QEMU_DEPENDENCIES += util-linux
@@ -291,7 +298,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-brlapi                    \
 	        --disable-fdt                       \
 	        --disable-guest-base                \
-	        --disable-vde                       \
 	        --disable-docs                      \
 	        --disable-spice                     \
 	        --disable-rbd                       \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 19/27] package/qemu: add iSCSI support
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (17 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 18/27] package/qemu: add support for VDE switches Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 20/27] package/qemu: add support for USB redirection Yann E. MORIN
                   ` (7 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    6 ++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 38bb290..a10abb1 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -149,6 +149,12 @@ config BR2_PACKAGE_QEMU_CURL
 comment "cURL support is not possible with static linking"
     depends on BR2_PREFER_STATIC_LIB
 
+config BR2_PACKAGE_QEMU_ISCSI
+	bool "Enable remote block-devices using iSCSI"
+	select BR2_PACKAGE_LIBISCSI
+	help
+	  Say 'y' here to have QEMU use iSCSI targets as block-devices.
+
 config BR2_PACKAGE_QEMU_AIO
 	bool "Enable AIO"
 	depends on BR2_PACKAGE_LIBAIO
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index b84473b..4920e12 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -169,6 +169,13 @@ else
 QEMU_OPTS += --disable-curl
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_ISCSI),y)
+QEMU_OPTS += --enable-libiscsi
+QEMU_DEPENDENCIES += libiscsi
+else
+QEMU_OPTS += --disable-libiscsi
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_AIO),y)
 QEMU_OPTS += --enable-linux-aio
 QEMU_DEPENDENCIES += libaio
@@ -301,7 +308,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-docs                      \
 	        --disable-spice                     \
 	        --disable-rbd                       \
-	        --disable-libiscsi                  \
 	        --disable-usb-redir                 \
 	        --disable-smartcard                 \
 	        --disable-strip                     \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 20/27] package/qemu: add support for USB redirection
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (18 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 19/27] package/qemu: add iSCSI support Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 21/27] package/qemu: add support for Spice Yann E. MORIN
                   ` (6 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    9 +++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index a10abb1..322066b 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -155,6 +155,15 @@ config BR2_PACKAGE_QEMU_ISCSI
 	help
 	  Say 'y' here to have QEMU use iSCSI targets as block-devices.
 
+config BR2_PACKAGE_QEMU_USBREDIR
+	bool "Enable USB redirection"
+	depends on BR2_PACKAGE_USBREDIR
+	help
+	  Say 'y' here to have QEMU support USB redirection over the network.
+
+comment "USB redirection requires usbredir"
+	depends on !BR2_PACKAGE_USBREDIR
+
 config BR2_PACKAGE_QEMU_AIO
 	bool "Enable AIO"
 	depends on BR2_PACKAGE_LIBAIO
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 4920e12..3186624 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -176,6 +176,13 @@ else
 QEMU_OPTS += --disable-libiscsi
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_USBREDIR),y)
+QEMU_OPTS += --enable-usb-redir
+QEMU_DEPENDENCIES += usbredir
+else
+QEMU_OPTS += --disable-usb-redir
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_AIO),y)
 QEMU_OPTS += --enable-linux-aio
 QEMU_DEPENDENCIES += libaio
@@ -308,7 +315,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-docs                      \
 	        --disable-spice                     \
 	        --disable-rbd                       \
-	        --disable-usb-redir                 \
 	        --disable-smartcard                 \
 	        --disable-strip                     \
 	        --disable-seccomp                   \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 21/27] package/qemu: add support for Spice
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (19 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 20/27] package/qemu: add support for USB redirection Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 22/27] package/qemu: enable sound Yann E. MORIN
                   ` (5 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    9 +++++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 322066b..deabb6f 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -123,6 +123,15 @@ config BR2_PACKAGE_QEMU_CURSES
 	  frontend (although you can still use the SDL or VNC frontends to
 	  display the graphical output).
 
+config BR2_PACKAGE_QEMU_SPICE
+	bool "Enable Spice frontend"
+	depends on BR2_PACKAGE_SPICE
+	help
+	  Say 'y' here to have QEMU support Spice as a (VNC-like) frontend.
+
+comment "Spice support requires spice-server"
+	depends on !BR2_PACKAGE_SPICE
+
 comment "Block backends"
 
 config BR2_PACKAGE_QEMU_VIRTFS
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 3186624..f16a03b 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -156,6 +156,13 @@ else
 QEMU_OPTS += --disable-curses
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_SPICE),y)
+QEMU_OPTS += --enable-spice
+QEMU_DEPENDENCIES += spice
+else
+QEMU_OPTS += --disable-spice
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_VIRTFS),y)
 QEMU_OPTS += --enable-virtfs
 else
@@ -313,7 +320,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-fdt                       \
 	        --disable-guest-base                \
 	        --disable-docs                      \
-	        --disable-spice                     \
 	        --disable-rbd                       \
 	        --disable-smartcard                 \
 	        --disable-strip                     \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 22/27] package/qemu: enable sound
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (20 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 21/27] package/qemu: add support for Spice Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 23/27] package/qemu: add support for libseccomp Yann E. MORIN
                   ` (4 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |   38 ++++++++++++++++++++++++++++++++++++++
 package/qemu/qemu.mk   |   19 +++++++++++++++++--
 2 files changed, 55 insertions(+), 2 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index deabb6f..dad72a8 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -200,6 +200,44 @@ config BR2_PACKAGE_QEMU_VDE
 	  Say 'y' here to have QEMU connect to VDE (Virtual Distributed
 	  Ethernet) switches.
 
+comment "Sound"
+
+config BR2_PACKAGE_QEMU_SOUND_CARDS
+	string "Enable sound cards"
+	default "ac97 es1370 hda"
+	help
+	  Enter here the list of sound cards you want QEMU to emulate.
+	  The available sound cards are:
+	    ac97 es1370 sb16 cs4231a adlib gus hda
+	  
+	  The default is: ac97 es1370 hda
+	  
+	  Note: even if you say 'n' to both alsa and SDL drivers, below, QEMU
+	  always include the 'wav' driver, which stores the generated sound
+	  into a file, and the 'none' driver, which discards generated sound.
+
+config BR2_PACKAGE_QEMU_MIXEMU
+	bool "Enable mixer emulation"
+	help
+	  Say 'y' here to have QEMU emulate a mixer device.
+
+config BR2_PACKAGE_QEMU_SOUND_ALSA
+	bool "Enable sound via alsa"
+	select BR2_PACKAGE_ALSA_LIB
+	help
+	  Say 'y' here to have QEMU play sound from the VMs via alsa.
+	  
+	  Note: this is only for system emulation, not user emulation.
+
+config BR2_PACKAGE_QEMU_SOUND_SDL
+	bool "Enable sound via SDL"
+	select BR2_PACKAGE_QEMU_SDL # Requires that SDL frontend be selected
+	select BR2_PACKAGE_SDL
+	help
+	  Say 'y' here to have QEMU play sound from the VMs via SDL.
+	  
+	  Note: this is only for system emulation, not user emulation.
+
 comment "Misc. features"
 
 config BR2_PACKAGE_QEMU_UUID
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index f16a03b..7144377 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -211,6 +211,23 @@ else
 QEMU_OPTS += --disable-vde
 endif
 
+QEMU_SND_DRV =
+ifeq ($(BR2_PACKAGE_QEMU_SOUND_ALSA),y)
+QEMU_SND_DRV += alsa
+QEMU_DEPENDENCIES += alsa-lib
+endif
+ifeq ($(BR2_PACKAGE_QEMU_SOUND_SDL),y)
+QEMU_SND_DRV += sdl
+QEMU_DEPENDENCIES += sdl
+endif
+ifneq ($(QEMU_SND_DRV),)
+QEMU_OPTS += --audio-drv-list="$(QEMU_SND_DRV)"
+endif
+QEMU_OPTS += --audio-card-list=$(BR2_PACKAGE_QEMU_SOUND_CARDS)
+ifeq ($(BR2_PACKAGE_QEMU_MIXEMU),y)
+QEMU_OPTS += --enable-mixemu
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_UUID),y)
 QEMU_OPTS += --enable-uuid
 QEMU_DEPENDENCIES += util-linux
@@ -307,8 +324,6 @@ define QEMU_CONFIGURE_CMDS
 	    ./configure                             \
 	        --prefix=/usr                       \
 	        --cross-prefix=$(TARGET_CROSS)      \
-	        --audio-drv-list=                   \
-	        --audio-card-list=                  \
 	        --enable-kvm                        \
 	        --enable-nptl                       \
 	        --enable-vhost-net                  \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 23/27] package/qemu: add support for libseccomp
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (21 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 22/27] package/qemu: enable sound Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 24/27] package/qemu: option to build the docs Yann E. MORIN
                   ` (3 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    7 +++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index dad72a8..4aa8647 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -263,6 +263,13 @@ config BR2_PACKAGE_QEMU_ATTR
 	  Say 'y' here to have QEMU support attributes (attr) and eXtended
 	  attibutes (xattr).
 
+config BR2_PACKAGE_QEMU_SECCOMP
+	bool "Enable seccomp filter"
+	select BR2_PACKAGE_LIBSECCOMP
+	help
+	  Say 'y' here to have QEMU to use the Linux kernel's seccomp filter,
+	  to more tightly confine the VMs.
+
 config BR2_PACKAGE_QEMU_BLOBS
 	bool "Install binary blobs"
 	default y
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 7144377..6fad33c 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -251,6 +251,13 @@ else
 QEMU_OPTS += --disable-attr
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_SECCOMP),y)
+QEMU_OPTS += --enable-seccomp
+QEMU_DEPENDENCIES += libseccomp
+else
+QEMU_OPTS += --disable-seccomp
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_BLOBS),)
 QEMU_OPTS += --disable-blobs
 endif
@@ -338,7 +345,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-rbd                       \
 	        --disable-smartcard                 \
 	        --disable-strip                     \
-	        --disable-seccomp                   \
 	        --disable-sparse                    \
 	        $(QEMU_OPTS)                        \
 	)
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 24/27] package/qemu: option to build the docs
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (22 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 23/27] package/qemu: add support for libseccomp Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 25/27] package/qemu: move sub-options into a sub-menu Yann E. MORIN
                   ` (2 subsequent siblings)
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/qemu.mk |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 6fad33c..1913c19 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -262,6 +262,12 @@ ifeq ($(BR2_PACKAGE_QEMU_BLOBS),)
 QEMU_OPTS += --disable-blobs
 endif
 
+ifeq ($(BR2_HAVE_DOCUMENTATION),y)
+QEMU_OPTS += --enable-docs
+else
+QEMU_OPTS += --disable-docs
+endif
+
 # Post-install removal of unwanted keymaps:
 # - if we want 'all', we do nothing;
 # - if we want none, we completely remove the keymap dir
@@ -341,7 +347,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-brlapi                    \
 	        --disable-fdt                       \
 	        --disable-guest-base                \
-	        --disable-docs                      \
 	        --disable-rbd                       \
 	        --disable-smartcard                 \
 	        --disable-strip                     \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 25/27] package/qemu: move sub-options into a sub-menu
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (23 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 24/27] package/qemu: option to build the docs Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 26/27] package/qemu: enable a static build Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 27/27] package/qemu: add support for FDT Yann E. MORIN
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

As there are now quite a few options to QEMU, move them into their own
sub-menu, so it looks a bit less crowded in the 'misc' menu.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 4aa8647..435775a 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -2,7 +2,7 @@ comment "QEMU requires a toolchain with threads"
 	depends on !BR2_i386 && !BR2_x86_64
 	depends on !BR2_TOOLCHAIN_HAS_THREADS
 
-config BR2_PACKAGE_QEMU
+menuconfig BR2_PACKAGE_QEMU
 	bool "QEMU"
 	depends on BR2_i386 || BR2_x86_64
 	depends on BR2_TOOLCHAIN_HAS_THREADS
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 26/27] package/qemu: enable a static build
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (24 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 25/27] package/qemu: move sub-options into a sub-menu Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  2012-12-16 23:22   ` Yann E. MORIN
  2012-12-16 17:01 ` [Buildroot] [PATCH 27/27] package/qemu: add support for FDT Yann E. MORIN
  26 siblings, 1 reply; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

---
It can be useful to have a statically-linked QEMU (especially the
linux-user and bsd-user emulators) to avoid run-time issues with
dynamically-loaded libraries.

There is an issue where QEMU could not be able to properly (re)map
libraries in memory due to some overlap between its own memory
mappings and the mappings of the user application being translated
(it's a complex issue, so don't count on me to properly explain it,
I did not understood it completely either... :-/ ).
---
 package/qemu/Config.in              |   48 +++++++++++++++++++----
 package/qemu/qemu-static-curl.patch |   72 +++++++++++++++++++++++++++++++++++
 package/qemu/qemu-static-sdl.patch  |   54 ++++++++++++++++++++++++++
 package/qemu/qemu.mk                |    4 ++
 4 files changed, 170 insertions(+), 8 deletions(-)
 create mode 100644 package/qemu/qemu-static-curl.patch
 create mode 100644 package/qemu/qemu-static-sdl.patch

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index 435775a..f88a1f4 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -99,11 +99,11 @@ config BR2_PACKAGE_QEMU_VNC_JPEG
 config BR2_PACKAGE_QEMU_VNC_TLS
 	bool "TLS encryption"
 	depends on BR2_PACKAGE_QEMU_VNC
-	depends on !BR2_PREFER_STATIC_LIB
+	depends on !BR2_PACKAGE_QEMU_STATIC
 	select BR2_PACKAGE_GNUTLS
 
 comment "VNC TLS encryption does not work for static link"
-    depends on BR2_PACKAGE_QEMU_VNC && BR2_PREFER_STATIC_LIB
+    depends on BR2_PACKAGE_QEMU_VNC && BR2_PACKAGE_QEMU_STATIC
 
 config BR2_PACKAGE_QEMU_SDL
 	bool "Enable SDL frontend"
@@ -126,11 +126,21 @@ config BR2_PACKAGE_QEMU_CURSES
 config BR2_PACKAGE_QEMU_SPICE
 	bool "Enable Spice frontend"
 	depends on BR2_PACKAGE_SPICE
+	depends on !BR2_PACKAGE_QEMU_STATIC || BR2_PREFER_STATIC_LIB
 	help
 	  Say 'y' here to have QEMU support Spice as a (VNC-like) frontend.
 
-comment "Spice support requires spice-server"
-	depends on !BR2_PACKAGE_SPICE
+	  Note:
+	    Spice links against alsa-libs, but alsa-libs can't be built both
+	    shared and static at the same time, so we can not link with a
+	    static spice to get a static QEMU (BR2_PACKAGE_QEMU_STATIC) if
+	    buildroot as a whole does not also build only static libraries
+	    (BR2_PREFER_STATIC_LIB).
+
+if !BR2_PACKAGE_SPICE || ( BR2_PACKAGE_QEMU_STATIC && !BR2_PREFER_STATIC_LIB )
+comment "Spice support requires spice-server, and does not work for a static"
+comment "build of QEMU unless BR2_PREFER_STATIC_LIB is set, too"
+endif
 
 comment "Block backends"
 
@@ -150,14 +160,10 @@ config BR2_PACKAGE_QEMU_VIRTFS
 
 config BR2_PACKAGE_QEMU_CURL
 	bool "Enable remote block-devices using cURL"
-	depends on !BR2_PREFER_STATIC_LIB
 	select BR2_PACKAGE_LIBCURL
 	help
 	  Say 'y' to access remote block-devices using libcurl.
 
-comment "cURL support is not possible with static linking"
-    depends on BR2_PREFER_STATIC_LIB
-
 config BR2_PACKAGE_QEMU_ISCSI
 	bool "Enable remote block-devices using iSCSI"
 	select BR2_PACKAGE_LIBISCSI
@@ -238,6 +244,24 @@ config BR2_PACKAGE_QEMU_SOUND_SDL
 	  
 	  Note: this is only for system emulation, not user emulation.
 
+<<<<<<< HEAD
+=======
+# Alsa can not build both shared and static libs@the same time.
+# But we may want to build QEMU staticaly, even though the global
+# BR2_PREFER_STATIC_LIB is not set. Disable that case.
+config BR2_PACKAGE_QEMU_SOUND_ALSA
+	bool "Enable sound via alsa"
+	depends on !BR2_PACKAGE_QEMU_STATIC || BR2_PREFER_STATIC_LIB
+	select BR2_PACKAGE_ALSA_LIB
+	help
+	  Say 'y' here to have QEMU play sound from the VMs via alsa.
+	  
+	  Note: this is only for system emulation, not user emulation.
+
+comment "Alsa sound static link works only if BR2_PREFER_STATIC is set"
+	depends on BR2_PACKAGE_QEMU_STATIC && !BR2_PREFER_STATIC_LIB
+
+>>>>>>> dd73234... package/qemu: enable a static build
 comment "Misc. features"
 
 config BR2_PACKAGE_QEMU_UUID
@@ -296,4 +320,12 @@ config BR2_PACKAGE_QEMU_KEYMAPS
 	    - 'de fr* en-*' for german, french and english keymaps
 	    - and so on (see the QEMU source for all supported keymaps)
 
+config BR2_PREFER_STATIC_LIB
+    select BR2_PACKAGE_QEMU_STATIC
+
+config BR2_PACKAGE_QEMU_STATIC
+	bool "Build statically"
+	help
+	  Build static qemu executable(s).
+
 endif # BR2_PACKAGE_QEMU
diff --git a/package/qemu/qemu-static-curl.patch b/package/qemu/qemu-static-curl.patch
new file mode 100644
index 0000000..0029d7d
--- /dev/null
+++ b/package/qemu/qemu-static-curl.patch
@@ -0,0 +1,72 @@
+configure: fix detection for cURL libs when static linking
+
+Currently, to check for cURL, configure uses either pkg-config (the default),
+or curl-config (as a fallback).
+
+But curl-config and pkg-config do not have the same set of options:
+  - to check for shared libs, both use the option: --libs
+  - to check for static libs:
+    - pkg-config uses: --static --libs
+    - curl-config uses: --static-libs
+
+To add to the complexity, pkg-config is called through the querry_pkg_config
+wrapper, that already passes --static when static linking is required, but
+there is no such wrapper for curl-config, so we miss the occasion to pass
+--static-libs
+
+To fix this:
+  - introduce a new variable QEMU_XXX_CONFIG_LIBS_FLAGS that mirrors the
+    behavior of QEMU_PKG_CONFIG_FLAGS; this variable can be used by all
+    xxx-config scripts (eg. curl-config, but later sdl-config too).
+    Default it to '--libs', which is for shared linking;
+  - properly use either --libs for pkg-config (--static is already takend
+    care of in the wrapper), or $QEMU_XXX_CONFIG_LIBS_FLAGS for
+    curl-config.
+    
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Patch sent upstream:
+    http://lists.nongnu.org/archive/html/qemu-trivial/2012-08/msg00165.html
+
+diff --git a/configure b/configure
+index d97fd81..e6a7c14 100755
+--- a/configure
++++ b/configure
+@@ -101,7 +101,7 @@ audio_win_int=""
+ cc_i386=i386-pc-linux-gnu-gcc
+ libs_qga=""
+ debug_info="yes"
+-
++QEMU_XXX_CONFIG_LIBS_FLAGS="--libs"
+ target_list=""
+ 
+ # Default value for a variable defining feature "foo".
+@@ -580,6 +580,7 @@ for opt do
+     static="yes"
+     LDFLAGS="-static $LDFLAGS"
+     QEMU_PKG_CONFIG_FLAGS="--static $QEMU_PKG_CONFIG_FLAGS"
++    QEMU_XXX_CONFIG_LIBS_FLAGS="--static-libs"
+   ;;
+   --mandir=*) mandir="$optarg"
+   ;;
+@@ -1977,8 +1978,10 @@ fi
+ 
+ if $pkg_config libcurl --modversion >/dev/null 2>&1; then
+   curlconfig="$pkg_config libcurl"
++  curlconfiglibs="--libs"
+ else
+   curlconfig=curl-config
++  curlconfiglibs="$QEMU_XXX_CONFIG_LIBS_FLAGS"
+ fi
+ 
+ if test "$curl" != "no" ; then
+@@ -1987,7 +1990,7 @@ if test "$curl" != "no" ; then
+ int main(void) { curl_easy_init(); curl_multi_setopt(0, 0, 0); return 0; }
+ EOF
+   curl_cflags=`$curlconfig --cflags 2>/dev/null`
+-  curl_libs=`$curlconfig --libs 2>/dev/null`
++  curl_libs=`$curlconfig $curlconfiglibs 2>/dev/null`
+   if compile_prog "$curl_cflags" "$curl_libs" ; then
+     curl=yes
+     libs_tools="$curl_libs $libs_tools"
diff --git a/package/qemu/qemu-static-sdl.patch b/package/qemu/qemu-static-sdl.patch
new file mode 100644
index 0000000..59e4a60
--- /dev/null
+++ b/package/qemu/qemu-static-sdl.patch
@@ -0,0 +1,54 @@
+configure: fix detection for SDL libs when static linking
+
+Currently, configure checks for SDL libs with either pkg-config (the
+default), or with sdl-config (as a fallback).
+
+As for cURL (previous patch), sdl-config does not have the same set of
+options as pkg-config:
+  - to check for shared libs, both use the option: --libs
+  - to check for static libs:
+    - pkg-config uses: --static --libs
+    - curl-config uses: --static-libs
+
+Fix that by using the previously introduced $QEMU_XXX_CONFIG_LIBS_FLAGS
+variable, the way ot was done previously for cURL.
+
+Also, simplify the code-path for checking for SDL libs with a single,
+non-conditional call to $sdlconfig, which is either pkg-config or
+sdl-config, as checked just above.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Patch sent upstream:
+    http://lists.nongnu.org/archive/html/qemu-trivial/2012-08/msg00166.html
+
+diff --git a/configure b/configure
+index e6a7c14..6bfedc7 100755
+--- a/configure
++++ b/configure
+@@ -1547,9 +1547,11 @@ fi
+ 
+ if $pkg_config sdl --modversion >/dev/null 2>&1; then
+   sdlconfig="$pkg_config sdl"
++  sdlconfiglibs="--libs"
+   _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
+ elif has ${sdl_config}; then
+   sdlconfig="$sdl_config"
++  sdlconfiglibs="$QEMU_XXX_CONFIG_LIBS_FLAGS"
+   _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
+ else
+   if test "$sdl" = "yes" ; then
+@@ -1569,11 +1571,7 @@ if test "$sdl" != "no" ; then
+ int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
+ EOF
+   sdl_cflags=`$sdlconfig --cflags 2> /dev/null`
+-  if test "$static" = "yes" ; then
+-    sdl_libs=`$sdlconfig --static-libs 2>/dev/null`
+-  else
+-    sdl_libs=`$sdlconfig --libs 2> /dev/null`
+-  fi
++  sdl_libs=`$sdlconfig $sdlconfiglibs 2> /dev/null`
+   if compile_prog "$sdl_cflags" "$sdl_libs" ; then
+     if test "$_sdlversion" -lt 121 ; then
+       sdl_too_old=yes
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 1913c19..267d7b9 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -268,6 +268,10 @@ else
 QEMU_OPTS += --disable-docs
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_STATIC),y)
+QEMU_OPTS += --static
+endif
+
 # Post-install removal of unwanted keymaps:
 # - if we want 'all', we do nothing;
 # - if we want none, we completely remove the keymap dir
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 27/27] package/qemu: add support for FDT
  2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
                   ` (25 preceding siblings ...)
  2012-12-16 17:01 ` [Buildroot] [PATCH 26/27] package/qemu: enable a static build Yann E. MORIN
@ 2012-12-16 17:01 ` Yann E. MORIN
  26 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 17:01 UTC (permalink / raw)
  To: buildroot

FDT is the Flat Device Tree, and allows QEMU to pass DTs to the VMs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/qemu/Config.in |    7 +++++++
 package/qemu/qemu.mk   |    8 +++++++-
 2 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/package/qemu/Config.in b/package/qemu/Config.in
index f88a1f4..b258df6 100644
--- a/package/qemu/Config.in
+++ b/package/qemu/Config.in
@@ -264,6 +264,13 @@ comment "Alsa sound static link works only if BR2_PREFER_STATIC is set"
 >>>>>>> dd73234... package/qemu: enable a static build
 comment "Misc. features"
 
+config BR2_PACKAGE_QEMU_FDT
+        bool "Enable FDT"
+        select BR2_PACKAGE_DTC
+        help
+          Say 'y' here to have QEMU capable of constructing Device Trees,
+          and passing them to the VMs.
+
 config BR2_PACKAGE_QEMU_UUID
 	bool "Enable VMs UUID"
 	depends on BR2_PACKAGE_UTIL_LINUX
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 267d7b9..507a001 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -228,6 +228,13 @@ ifeq ($(BR2_PACKAGE_QEMU_MIXEMU),y)
 QEMU_OPTS += --enable-mixemu
 endif
 
+ifeq ($(BR2_PACKAGE_QEMU_FDT),y)
+QEMU_OPTS += --enable-fdt
+QEMU_DEPENDENCIES += dtc
+else
+QEMU_OPTS += --disable-fdt
+endif
+
 ifeq ($(BR2_PACKAGE_QEMU_UUID),y)
 QEMU_OPTS += --enable-uuid
 QEMU_DEPENDENCIES += util-linux
@@ -349,7 +356,6 @@ define QEMU_CONFIGURE_CMDS
 	        --disable-slirp                     \
 	        --disable-vnc-sasl                  \
 	        --disable-brlapi                    \
-	        --disable-fdt                       \
 	        --disable-guest-base                \
 	        --disable-rbd                       \
 	        --disable-smartcard                 \
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH 26/27] package/qemu: enable a static build
  2012-12-16 17:01 ` [Buildroot] [PATCH 26/27] package/qemu: enable a static build Yann E. MORIN
@ 2012-12-16 23:22   ` Yann E. MORIN
  0 siblings, 0 replies; 29+ messages in thread
From: Yann E. MORIN @ 2012-12-16 23:22 UTC (permalink / raw)
  To: buildroot

All,

On Sunday 16 December 2012 Yann E. MORIN wrote:
[--SNIP--]
> diff --git a/package/qemu/Config.in b/package/qemu/Config.in
> index 435775a..f88a1f4 100644
> --- a/package/qemu/Config.in
> +++ b/package/qemu/Config.in
[--SNIP--]
> @@ -238,6 +244,24 @@ config BR2_PACKAGE_QEMU_SOUND_SDL
>  	  
>  	  Note: this is only for system emulation, not user emulation.
>  
> +<<<<<<< HEAD
> +=======

Bummer. Fixed.

> +# Alsa can not build both shared and static libs at the same time.
> +# But we may want to build QEMU staticaly, even though the global
> +# BR2_PREFER_STATIC_LIB is not set. Disable that case.
> +config BR2_PACKAGE_QEMU_SOUND_ALSA
> +	bool "Enable sound via alsa"
> +	depends on !BR2_PACKAGE_QEMU_STATIC || BR2_PREFER_STATIC_LIB
> +	select BR2_PACKAGE_ALSA_LIB
> +	help
> +	  Say 'y' here to have QEMU play sound from the VMs via alsa.
> +	  
> +	  Note: this is only for system emulation, not user emulation.
> +
> +comment "Alsa sound static link works only if BR2_PREFER_STATIC is set"
> +	depends on BR2_PACKAGE_QEMU_STATIC && !BR2_PREFER_STATIC_LIB
> +
> +>>>>>>> dd73234... package/qemu: enable a static build

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2012-12-16 23:22 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-12-16 17:01 [Buildroot] [pull request] Pull request for branch yem-target-qemu Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 01/27] package/qemu: build for the target (i386 or x86_64 only) Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 02/27] package/qemu: add basic target selection Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 03/27] package/qemu: add fine-grained " Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 04/27] package/qemu: add SDL frontends Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 05/27] package/qemu: add option to enable/disable the VNC frontend Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 06/27] package/qemu: add VNC jpeg and png compression Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 07/27] package/qemu: add VNC TLS-encryption Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 08/27] package/qemu: add option to not install blobs Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 09/27] package/qemu: add option to remove unwanted keymaps Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 10/27] package/qemu: add uuid support Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 11/27] package/qemu: add support for capabilities Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 12/27] package/qemu: add attr/xattr option Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 13/27] package/qemu: add support for virtfs Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 14/27] package/qemu: add support for cURL Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 15/27] package/qemu: enable use of the curses frontend Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 16/27] package/qemu: add BlueZ connectivity Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 17/27] package/qemu: add AIO support Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 18/27] package/qemu: add support for VDE switches Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 19/27] package/qemu: add iSCSI support Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 20/27] package/qemu: add support for USB redirection Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 21/27] package/qemu: add support for Spice Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 22/27] package/qemu: enable sound Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 23/27] package/qemu: add support for libseccomp Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 24/27] package/qemu: option to build the docs Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 25/27] package/qemu: move sub-options into a sub-menu Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 26/27] package/qemu: enable a static build Yann E. MORIN
2012-12-16 23:22   ` Yann E. MORIN
2012-12-16 17:01 ` [Buildroot] [PATCH 27/27] package/qemu: add support for FDT Yann E. MORIN

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.