summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/qemu
AgeCommit message (Collapse)Author
2019-09-15qemu: Security Advisory - qemu - CVE-2019-15890Li Zhou
Backporting patch from https://gitlab.freedesktop.org/slirp/libslirp/commit/c5927943 to solve CVE-2019-15890. Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2019-09-06qemu: Fix dependency of PACKAGECONFIG libcurlHe Zhe
When PACKAGECONFIG libcurl is enabled, we would get the following build failure. ERROR: Nothing PROVIDES 'libcurl' (but perf.bb DEPENDS on or otherwise requires it). Close matches: The dependency should be curl. Signed-off-by: He Zhe <zhe.he@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2019-09-06qemu: Add pkg-config handling for libgcryptHe Zhe
When PACKAGECONFIG libgcrypt is enabled, we would get the following error. ERROR: /usr/bin/libgcrypt-config should not be used, use an alternative such as pkg-config In oe-core, libgcrypt has been turned to be configured with pkg-config instead of libgcrypt-config, but qemu configure script does not contain pkg-config related part for libgcrypt to handle it. Signed-off-by: He Zhe <zhe.he@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2019-08-27world-broken.inc: RemoveAdrian Bunk
Move still required entries as COMPATIBLE_HOST_libc-musl = 'null' to individual recipes. This also gives users a proper error message when trying to build a known non-building package. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21nativesdk-qemu: support aarch64_be.Lei Maohui
Otherwise, there will be "no aarch64_be-softmmu" error. Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2019-08-21qemu: Upgrade to version 4.1Alistair Francis
Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06qemu: fix patch Upstream-StatusRoss Burton
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31qemu: add a patch fixing the native build on newer kernelsBartosz Golaszewski
The build fails on qemu-native if we're using kernels after commit 0768e17073dc527ccd18ed5f96ce85f9985e9115. This adds an upstream patch that fixes the issue. Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-18qemu: fix CVE-2019-12155Anuj Mittal
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-15qemu: use Python 3 to buildRoss Burton
As part of the mission to remove the use of Python 2, explicitly use Python 3 when building qemu. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-15meta: Remove remnants of bluez4 supportAdrian Bunk
bluez4 was removed from meta-oe 2 years ago. Simplfy the setup of the two level bluetooth and bluez4/bluez5 distro features by removing the bluez4/bluez5 distro features. This also removes the no longer required bluetooth class. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-21qemu: disable capstone for 32-bit mips with multilibKai Kang
When build lib32-qemu for qemumips with multilib: require conf/multilib.conf MACHINE = "qemumips64" MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "mips" it fails to compile capstone: | CC arch/AArch64/AArch64InstPrinter.o | {standard input}: Assembler messages: | {standard input}:36033: Error: branch out of range | {standard input}:36257: Error: branch out of range Disable capstone for mips o32 in this situation as a workround. Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-14qemu/qemu-system-native: depend bison-nativeKai Kang
Add bison-native to DEPENDS of qemu and qemu-system-native to fix compile warning: | BISON dtc-parser.tab.c | make[1]: bison: Command not found Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-12qemu: fix qemu ptest cannot workChangqing Li
do_install_ptest in recipe is covered by default function in ptest.bbclass since inherit ptest write in wrong place, fix it by move it to top. Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-27qemu: Backport the arm segfault fixAlistair Francis
When we updated to QEMU 4.0 we saw a segfault when running tests on the qemuarm machine. At the time we just reverted the offending patch from QEMU. Now that the fix has been merged into upstream let's remove that revert patch and replace it with the correct backport. Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-09meta/lib+scripts: Convert to SPDX license headersRichard Purdie
This adds SPDX license headers in place of the wide assortment of things currently in our script headers. We default to GPL-2.0-only except for the oeqa code where it was clearly submitted and marked as MIT on the most part or some scripts which had the "or later" GPL versioning. The patch also drops other obsolete bits of file headers where they were encoountered such as editor modelines, obsolete maintainer information or the phrase "All rights reserved" which is now obsolete and not required in copyright headers (in this case its actually confusing for licensing as all rights were not reserved). More work is needed for OE-Core but this takes care of the bulk of the scripts and meta/lib directories. The top level LICENSE files are tweaked to match the new structure and the SPDX naming. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-08openssh/systemd/python/qemu: Fix patch Upstream-StatusRichard Purdie
Fix some missing or corrupted patch Upstream-Status values. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-02qemu: Upgrade from 3.1.0 to 4.0.0Alistair Francis
This commit upgrade QEMU to the latest 4.0.0 release. - The COPYING.LIB file has changed SHA to: "Synchronize the LGPL 2.1 with the version from gnu.org" - SDL 1.2 has been removed, along with the --with-sdlabi command line arg - The backported patches have been removed - Al the other patches have been refreshed and the numbering has been updated Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-30qemu: split out vte into seperate PACKAGECONFIGAndreas Müller
* vte-native requires host compiler supporting c++17. Some distros we support ship comilers not supporting c++17 currently. * oe-self-test 'test_testimage_virgl_gtk' sets PACKAGECONFIG_append_pn-qemu-system-native = " gtk+". With vte enabled by 'gtk+'-config, build fails on hosts with ancient compilers [1]. * Alexander Kanavin did some tests: Without vte in PACKAGECONFIG there is still a working terminal available with reduced functionality [2]. * Users wanting 'full' terminal in system-qemu back should add PACKAGECONFIG_append_pn-qemu-system-native = " vte" in their local.conf. The idea of this patch was coming from Ross Burton - thanks! [1] http://lists.openembedded.org/pipermail/openembedded-core/2019-April/281637.html [2] http://lists.openembedded.org/pipermail/openembedded-core/2019-April/281727.html Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-23qemu: Add PACKAGECONFIG for snappyRobert Joslyn
In addition to toggling libsnappy support, this allows a qemu-native build to explicitly disable snappy support. When building qemu-native, the configure script will detect libsnappy on the build machine and improperly enable snappy support. This can corrupt the sstate cache if the cache is populated with a qemu-native build with snappy improperly enabled, and the cached qemu-native gets used on another build machine that does not have libsnappy. Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-24qemu: fix CVE-2019-3812Ross Burton
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-20qemu: Fix "backport patches to fix cves" patch issueKai Kang
This change fixes a build problem introduced in the recent CVE patches. Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-19qemu: backport patches to fix cvesKai Kang
CVE: CVE-2018-16872 CVE: CVE-2018-20124 CVE: CVE-2018-20125 CVE: CVE-2018-20126 CVE: CVE-2018-20191 CVE: CVE-2018-20216 Patches 0015-fix-CVE-2018-20124.patch and 0017-fix-CVE-2018-20126.patch are rebased on current source code. Others are not modified. Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-28qemu: remove glx/virgl/gtk options from darwin/mingw targetsAlexander Kanavin
As they are not supported, and would lead to build failures. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-28qemu: split the native version into usermode and system partsAlexander Kanavin
The rationale is to streamline the overall build. The system parts are only needed to run target images, and so can be built towards the end of the build process. At the same time, the system parts may need gtk+-native and mesa-native which add significantly to the build time. On the other hand, the usermode parts have almost no dependencies and can be built quickly. They are needed at recipes build time to run target binaries, and so are required quite early in the typical build process. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25qemu: add a backported patch to fix egl-headless supportAlexander Kanavin
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25qemu: add environment variable wrappers to make qemu look good with gtk frontendAlexander Kanavin
GTK_THEME instructs gtk to use its built-in theme. Otherwise gtk attempts to use the theme from the host, which may be from a totally mismatching gtk version. On the other hand FONTCONFIG_PATH tells it to use the host fonts, as providing fonts in the native sysroot and instructing the components to use them is a lot more tricky. GDK_PIXBUF_MODULE_FILE is set, because otherwise qemu works but fills stdout with error messages, which eventually fill the pipe they go into. That pipe is read from only when qemu exits (to collect any error messages) by runqemu script. The pipe fill-up causes the qemu process to lock up. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25qemu: add a patch to avoid a missing definition errorAlexander Kanavin
| In file included from /home/alexander/development/poky/build-virgl-gtk-64/tmp/work/x86_64-nativesdk-pokysdk-linux/nativesdk-qemu/3.1.0-r0/qemu-3.1.0/include/ui/egl-context.h:5, | from /home/alexander/development/poky/build-virgl-gtk-64/tmp/work/x86_64-nativesdk-pokysdk-linux/nativesdk-qemu/3.1.0-r0/qemu-3.1.0/ui/egl-context.c:3: | /home/alexander/development/poky/build-virgl-gtk-64/tmp/work/x86_64-nativesdk-pokysdk-linux/nativesdk-qemu/3.1.0-r0/qemu-3.1.0/include/ui/egl-helpers.h:46:55: error: unknown type name 'Window'; did you mean 'minor'? | EGLSurface qemu_egl_init_surface_x11(EGLContext ectx, Window win); | ^~~~~~ | minor Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25qemu: add a gettext-native dependency to gtk optionAlexander Kanavin
xgettext/msgmerge is used during do_install() when gtk is enabled: https://github.com/qemu/qemu/blob/master/Makefile#L743 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-06qemu: remove --with-gtkabi=3.0 configure flagChris Patterson
Upstream dropped support for GTK2 (in v3.1.0) and this flag was dropped. Relevant upstream commit ID: 89d85cde75143325205e332dd97bf1bb8402d7c1 Signed-off-by: Chris Patterson <pattersonc@ainfosec.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-24qemuwrapper-cross: check qemu usermode only when building a target packageAlexander Kanavin
When building nativesdk- package, MACHINE_FEATURES do not apply as they are specified only for target machines, not ones hosting the sdk. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-15qemuwrapper: Explicitly exit in case of no qemu supported for targetSerhey Popovych
Running qemu for userspace code on unsupported target binaries might be bad idea because qemu could say running in endless loop instead of crashing due to illegal instruction or unsupported binary format. While this is qemu bug we should avoid hitting it by explicitly exiting from the wrapper when qemu backfill considered for machine. Behaviour was observed in do_rootfs stage when building on IBM Power 8 host for PowerPC e7400 target. Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-15qemu: Bump to version 3.1Alistair Francis
Bump QEMU to the latest 3.1 and update the patches. Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-15qemu-targets: Fix the list of QEMU targetsAlistair Francis
Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-06qemu: fix for CVE-2018-10839Changqing Li
Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-16qemu: fix CVE-2018-17958/17962/17963Changqing Li
Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21qemu-targets.inc: Mark 'lm32' as softmmu only architectureNathan Rossi
The lm32 architecture does not support linux-user within QEMU as it is not a Linux supported target. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-09-11qemu: patch for CVE-2018-15746Changqing Li
Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-09-06qemu: fix upstream version checkAlexander Kanavin
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16qemu: Upgrade QEMU 2.12 -> 3.0Alistair Francis
Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02qemu: Add RISC-V supportAlistair Francis
Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-06-27qemu: CVE-2018-11806 slirp heap buffer overflowJeremy Puhlman
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-06-18package_manager.py: rework postinst_intercept failuresAlexander Kanavin
Previously a warning was printed regardless of context and nature of the failure, and because it was only a warning, it was mostly ignored. Now, the following is considered when a failure happens: 1) whether we are installing packages into a target image, or populating a SDK with host or target packages. 2) whether the failure was due to qemu not supporting the target machine. Accordingly, warnings, notes, and failures are printed, and postponing to first boot happens if possible. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18qemuwrapper-cross: enable multilib and nativesdk variants of the scriptAlexander Kanavin
Previously only one global variant of the script was created, which caused numerous issues: 1) multilib was not properly supported due to multilib variants each needing their own version of the qemu binary and library paths to be set 2) nativesdk was not properly supported for the same reason This patch also moves setting LD_LIBRARY_PATH directly into the recipe, as passing it down from other recipes did not work when said recipes were allarch, and adjusts calls to qemuwrapper from postinst-intercepts, so that its correct variant is selected. Also, the various qemu fallbacks in qemuwrapper script are all removed, as they are no longer necessary. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15qemu: don't inherit autotoolsRoss Burton
qemu doesn't use autotools, so don't inherit it and just call 'make install' directly. No need to alter makefiles anymore, as they appear to respect CFLAGS now. Remove a chmod of beginend_funcs.sh (a file we patched in, and removed, many years ago). Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-06-04qemu: use sdl2 instead of sdl1Martin Jansa
* sdl1 since qemu-2.12.0 depends on x11 in DISTRO_FEATURES, switch to sdl2 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-04qemu: add PACKAGECONFIG for virglrenderer, usb-redir and spiceMartin Jansa
* drop "fdt sdl" listed twice in PACKAGECONFIG * keep all 3 disabled by default * spice, usbredir recipes will eventually be in meta-networking layer (you can use jansa/spice branch from meta-openembedded-contrib repository) * virglrenderer recipe will eventually be in oe-core layer (you can use jansa/qemu branch from openembedded-core-contrib repository) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-04qemu: upgrade to 2.12.0Martin Jansa
* drop patches which are now included upstream * revert "linux-user: fix mmap/munmap/mprotect/mremap/shma" which is causing 0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch to stop working and qemu-i386 hanging during gobject-introspection in webkitgtk when building for qemux86 with musl Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-03qemu: refresh patches with devtool and make them applicable with gitMartin Jansa
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-04qemu: fix CVE-2017-16845Hongxu Jia
During Qemu guest migration, a destination process invokes ps2 post_load function. In that, if 'rptr' and 'count' values were invalid, it could lead to OOB access or infinite loop issue. Add check to avoid it. Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>