* [Buildroot] Linux build error: mixed implicit and normal rules
From: Woody Wu @ 2012-12-11 1:13 UTC (permalink / raw)
To: buildroot
In-Reply-To: <20121210092000.GC5482@sapphire.tkos.co.il>
On 2012-12-10, Baruch Siach
<baruch@tkos.co.il> wrote:
> Hi Woody,
>
> On Mon, Dec 10, 2012 at 09:14:12AM +0000, Woody Wu wrote:
>> I am trying to build an old Linux kernel 2.6.16. But got the error:
>>
>> Makefile:441: mixed implicit and normal rules. stop.
>>
>> The line 441 of Linux makefile is:
>>
>> config %config: scripts_basic outputmakefile FORCE
>> $(Q)mkdir -p include/linux
>> $(Q)$(MAKE) $(build)=scripts/kconfig $@
>> $(Q)$(MAKE) -C $(srctree) KBUILD_SRC= .kernelrelease
>>
>> How should I fix this? My buildroot version is 2012.08.
>
> Not related to Buildroot, but anyway...
>
> If you used GNU make version 3.82 you need something like (kernel) commit
> 3c955b407a084810f57260d61548cc92c14bc627 (fixes for using make 3.82).
>
Sorry, what this magic number is?
--
woody
I can't go back to yesterday - because I was a different person then.
^ permalink raw reply
* [Buildroot] [PATCH 52/52] package/qemu: add support for FDT
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 f113892..5496ee5 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
* [Buildroot] [PATCH 51/52] package/dtc: add option to install programs
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
By default, we only install the libfdt library.
As suggested by Arnout, add an option that also
installs the few dtc programs.
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
dtdiff, a diff for device trees, requires bash.
I did not add a 'depends on bash' (or a 'select' either), because
requiring bash just for that is a bit far-fetched.
Instead, at dtc install time, if bash is selected, dtdiff is installed
as usual to the target rootfs; if bash is not selected, dtdiff is
removed from the target rootfs.
---
package/dtc/Config.in | 24 ++++++++++++++++++++++--
package/dtc/dtc.mk | 29 +++++++++++++++++++++++------
2 files changed, 45 insertions(+), 8 deletions(-)
diff --git a/package/dtc/Config.in b/package/dtc/Config.in
index 96225e3..1c65a10 100644
--- a/package/dtc/Config.in
+++ b/package/dtc/Config.in
@@ -1,9 +1,29 @@
config BR2_PACKAGE_DTC
- bool "dtc"
+ bool "dtc (libfdt)"
help
The Device Tree Compiler, dtc, takes as input a device-tree in
a given format and outputs a device-tree in another format.
- Note that only the library is installed for now.
+ Note that only the library is installed.
+ If you want the programs, say 'y' here, and to "dtc programs", below.
http://git.jdl.com/gitweb/?p=dtc.git (no home page)
+
+if BR2_PACKAGE_DTC
+
+config BR2_PACKAGE_DTC_PROGRAMS
+ bool "dtc programs"
+ help
+ Say 'y' here if you also want the programs on the target:
+ - convert-dtsv0 convert from version 0 to version 1
+ - dtc the device tree compiler
+ - dtdiff compare two device trees (needs bash)
+ - fdtdump print a readable version of a flat device tree
+ - fdtget read values from device tree
+ - fdtput write a property value to a device tree
+
+ Note: dtdiff requires bash, so if bash is not selected, dtdiff will
+ be removed from the target file system. Enable bash if you
+ need dtdiff on the target.
+
+endif
diff --git a/package/dtc/dtc.mk b/package/dtc/dtc.mk
index a0e1e35..42843d5 100644
--- a/package/dtc/dtc.mk
+++ b/package/dtc/dtc.mk
@@ -8,27 +8,44 @@ DTC_VERSION = e4b497f367a3b2ae99cc52089a14a221b13a76ef
DTC_SITE = git://git.jdl.com/software/dtc.git
DTC_LICENSE = GPLv2+/BSD-2c
DTC_LICENSE_FILES = README.license GPL
-# Note: the dual-license only applies to the library.
-# The DT compiler (dtc) is GPLv2+, but we do not install it.
DTC_INSTALL_STAGING = YES
+ifeq ($(BR2_PACKAGE_DTC_PROGRAMS),y)
+DTC_LICENSE += (for the library), GPLv2+ (for the executables)
+# Use default goal to build everything
+DTC_BUILD_GOAL =
+DTC_INSTALL_GOAL = install
+DTC_CLEAN_GOAL = clean
+else # $(BR2_PACKAGE_DTC_PROGRAMS) != y
+DTC_BUILD_GOAL = libfdt
+#?libfdt_install is our own install rule added by our patch
+DTC_INSTALL_GOAL = libfdt_install
+DTC_CLEAN_GOAL = libfdt_clean
+ifeq ($(BR2_PACKAGE_BASH),)
+DTC_POST_INSTALL_TARGET_HOOKS += DTC_POST_INSTALL_TARGET_RM_DTDIFF
+endif
+endif # $(BR2_PACKAGE_DTC_PROGRAMS) != y
+
define DTC_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
- $(MAKE) -C $(@D) PREFIX=/usr libfdt
+ $(MAKE) -C $(@D) PREFIX=/usr $(DTC_BUILD_GOAL)
endef
-#?libfdt_install is our own install rule added by our patch
+# For staging, only the library is needed
define DTC_INSTALL_STAGING_CMDS
$(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr libfdt_install
endef
define DTC_INSTALL_TARGET_CMDS
- $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr libfdt_install
+ $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr $(DTC_INSTALL_GOAL)
+endef
+define DTC_POST_INSTALL_TARGET_RM_DTDIFF
+ rm -f $(TARGET_DIR)/usr/bin/dtdiff
endef
define DTC_CLEAN_CMDS
- $(MAKE) -C $(@D) libfdt_clean
+ $(MAKE) -C $(@D) $(DTC_CLEAN_GOAL)
endef
$(eval $(generic-package))
--
1.7.2.5
^ permalink raw reply related
* [Buildroot] [PATCH 50/52] package/dtc: new package
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
dtc is the Device Tree Compiler, and manipulates device trees.
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
Although Arnout suggested to move it out of the libraries sub-menu,
I kept it there, as by default, only the library is installed, like
it is done for, eg., libcurl.
---
package/Config.in | 1 +
package/dtc/Config.in | 9 +++++++
| 27 ++++++++++++++++++++++
package/dtc/dtc-separate-lib-install.patch | 28 +++++++++++++++++++++++
package/dtc/dtc.mk | 34 ++++++++++++++++++++++++++++
5 files changed, 99 insertions(+), 0 deletions(-)
create mode 100644 package/dtc/Config.in
create mode 100644 package/dtc/dtc-extra_cflags.patch
create mode 100644 package/dtc/dtc-separate-lib-install.patch
create mode 100644 package/dtc/dtc.mk
diff --git a/package/Config.in b/package/Config.in
index a93aed2..ef7f44d 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -417,6 +417,7 @@ endmenu
menu "Hardware handling"
source "package/ccid/Config.in"
+source "package/dtc/Config.in"
source "package/lcdapi/Config.in"
source "package/libaio/Config.in"
source "package/libraw1394/Config.in"
diff --git a/package/dtc/Config.in b/package/dtc/Config.in
new file mode 100644
index 0000000..96225e3
--- /dev/null
+++ b/package/dtc/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_DTC
+ bool "dtc"
+ help
+ The Device Tree Compiler, dtc, takes as input a device-tree in
+ a given format and outputs a device-tree in another format.
+
+ Note that only the library is installed for now.
+
+ http://git.jdl.com/gitweb/?p=dtc.git (no home page)
--git a/package/dtc/dtc-extra_cflags.patch b/package/dtc/dtc-extra_cflags.patch
new file mode 100644
index 0000000..9d1882b
--- /dev/null
+++ b/package/dtc/dtc-extra_cflags.patch
@@ -0,0 +1,27 @@
+Makefile: append the CFLAGS to existing ones
+
+Allow the user to pass custom CFLAGS (eg. optimisation flags).
+
+Do not use EXTRA_CFLAGS, append to existing CFLAGS with += (Arnout)
+
+Cc: Arnout Vandecappelle <arnout@mind.be>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Patch not sent upstream.
+
+Although not specific to buildroot, I am not sure this is the best
+way to handle user-supplied CFLAGS.
+
+diff -durN dtc-e4b497f367a3b2ae99cc52089a14a221b13a76ef.orig/Makefile dtc-e4b497f367a3b2ae99cc52089a14a221b13a76ef/Makefile
+--- dtc-e4b497f367a3b2ae99cc52089a14a221b13a76ef.orig/Makefile 2012-10-22 22:02:47.541240846 +0200
++++ dtc-e4b497f367a3b2ae99cc52089a14a221b13a76ef/Makefile 2012-10-22 22:03:21.151047833 +0200
+@@ -18,7 +18,7 @@
+ CPPFLAGS = -I libfdt -I .
+ WARNINGS = -Werror -Wall -Wpointer-arith -Wcast-qual -Wnested-externs \
+ -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls
+-CFLAGS = -g -Os -fPIC -Werror $(WARNINGS)
++CFLAGS += -g -Os -fPIC -Werror $(WARNINGS)
+
+ BISON = bison
+ LEX = flex
diff --git a/package/dtc/dtc-separate-lib-install.patch b/package/dtc/dtc-separate-lib-install.patch
new file mode 100644
index 0000000..c86d587
--- /dev/null
+++ b/package/dtc/dtc-separate-lib-install.patch
@@ -0,0 +1,28 @@
+Makefile: add a rule to only install libfdt
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Patch not sent upstream.
+
+It's really specific to buildroot, and is probably not
+good (aka generic) enough to be pushed upstream.
+
+diff --git a/Makefile b/Makefile
+index 1169e6c..39e7190 100644
+--- a/Makefile
++++ b/Makefile
+@@ -160,10 +160,12 @@ endif
+ # intermediate target and building them again "for real"
+ .SECONDARY: $(DTC_GEN_SRCS) $(CONVERT_GEN_SRCS)
+
+-install: all $(SCRIPTS)
++install: all $(SCRIPTS) libfdt_install
+ @$(VECHO) INSTALL
+ $(INSTALL) -d $(DESTDIR)$(BINDIR)
+ $(INSTALL) $(BIN) $(SCRIPTS) $(DESTDIR)$(BINDIR)
++
++libfdt_install: libfdt
+ $(INSTALL) -d $(DESTDIR)$(LIBDIR)
+ $(INSTALL) $(LIBFDT_lib) $(DESTDIR)$(LIBDIR)
+ ln -sf $(notdir $(LIBFDT_lib)) $(DESTDIR)$(LIBDIR)/$(LIBFDT_soname)
diff --git a/package/dtc/dtc.mk b/package/dtc/dtc.mk
new file mode 100644
index 0000000..a0e1e35
--- /dev/null
+++ b/package/dtc/dtc.mk
@@ -0,0 +1,34 @@
+#############################################################
+#
+# dtc
+#
+#############################################################
+
+DTC_VERSION = e4b497f367a3b2ae99cc52089a14a221b13a76ef
+DTC_SITE = git://git.jdl.com/software/dtc.git
+DTC_LICENSE = GPLv2+/BSD-2c
+DTC_LICENSE_FILES = README.license GPL
+# Note: the dual-license only applies to the library.
+# The DT compiler (dtc) is GPLv2+, but we do not install it.
+DTC_INSTALL_STAGING = YES
+
+define DTC_BUILD_CMDS
+ $(TARGET_CONFIGURE_OPTS) \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ $(MAKE) -C $(@D) PREFIX=/usr libfdt
+endef
+
+#?libfdt_install is our own install rule added by our patch
+define DTC_INSTALL_STAGING_CMDS
+ $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr libfdt_install
+endef
+
+define DTC_INSTALL_TARGET_CMDS
+ $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr libfdt_install
+endef
+
+define DTC_CLEAN_CMDS
+ $(MAKE) -C $(@D) libfdt_clean
+endef
+
+$(eval $(generic-package))
--
1.7.2.5
^ permalink raw reply related
* [Buildroot] [PATCH 49/52] package/qemu: enable a static build
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 1ee1afa..f113892 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
* [Buildroot] [PATCH 48/52] package/qemu: move sub-options into a sub-menu
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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
* [Buildroot] [PATCH 47/52] package/qemu: option to build the docs
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 a980c76..1ee1afa 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
* [Buildroot] [PATCH 46/52] package/qemu: add support for libseccomp
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 dfe9cbb..a980c76 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
* [Buildroot] [PATCH 45/52] package/qemu: enable sound
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 34a3a04..dfe9cbb 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
* [Buildroot] [PATCH 44/52] package/qemu: add support for Spice
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 8da3069..34a3a04 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
* [Buildroot] [PATCH 43/52] package/qemu: add support for USB redirection
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 4c67215..8da3069 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
* [Buildroot] [PATCH 42/52] package/qemu: add iSCSI support
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 eaea30c..4c67215 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
* [Buildroot] [PATCH 41/52] package/qemu: add support for VDE switches
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 941babc..eaea30c 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
* [Buildroot] [PATCH 40/52] package/qemu: add AIO support
From: Yann E. MORIN @ 2012-12-10 23:45 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 1657b8f..941babc 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
* [Buildroot] [PATCH 39/52] package/qemu: add BlueZ connectivity
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 90197f9..1657b8f 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
* [Buildroot] [PATCH 38/52] package/qemu: enable use of the curses frontend
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 e0270f0..90197f9 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
* [Buildroot] [PATCH 37/52] package/qemu: add support for cURL
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 b34ff69..e0270f0 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
* [Buildroot] [PATCH 36/52] package/qemu: add support for virtfs
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 7e4d08f..b34ff69 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
* [Buildroot] [PATCH 35/52] package/qemu: add attr/xattr option
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 a69ca9d..7e4d08f 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
* [Buildroot] [PATCH 34/52] package/qemu: add support for capabilities
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 54cbefc..a69ca9d 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
* [Buildroot] [PATCH 33/52] package/qemu: add uuid support
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 9ed6d6f..54cbefc 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
* [Buildroot] [PATCH 32/52] package/qemu: add option to remove unwanted keymaps
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 bf4aeb9..9ed6d6f 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
* [Buildroot] [PATCH 31/52] package/qemu: add option to not install blobs
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 61509ec..bf4aeb9 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
* [Buildroot] [PATCH 30/52] package/qemu: add VNC TLS-encryption
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 29e1315..61509ec 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
* [Buildroot] [PATCH 29/52] package/qemu: add VNC jpeg and png compression
From: Yann E. MORIN @ 2012-12-10 23:44 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1355183112-10735-1-git-send-email-yann.morin.1998@free.fr>
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 99f4114..29e1315 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
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox