summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/qemu/qemu/find_datadir.patch
diff options
context:
space:
mode:
authorSakib Sajal <sakib.sajal@windriver.com>2020-06-19 14:12:59 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-06-23 12:31:03 +0100
commita3102471e4e789d77040f5ed0da1b8e438328b5f (patch)
tree083c7ac42e426047f32ba8de41d0a9b24615593f /meta/recipes-devtools/qemu/qemu/find_datadir.patch
parentf5bbb3ba2d65ba7911b7ede5fb32b54b5b904a07 (diff)
downloadpoky-a3102471e4e789d77040f5ed0da1b8e438328b5f.tar.gz
qemu: uprev v4.2.0 -> v5.0.0
Major update after v4.2. Changes: - os_find_datadir() was changed after the v4.2 release causing v5.0 to not find the bios and not boot the image. Fix is sent to upstream qemu. See: qemu/find_datadir.patch - v5.0 binary had host contamination for dynamically linked libraries, "--extra-ldflags='${LDFLAGS}'" in EXTRA_OECONF resolved the issue - bluetooth code was removed: qemu.git$ git show 1d4ffe8dc7 hence removed PACKAGECONFIG[bluez] - -show-cursor qemu option is now deprecated, updated scripts/runqemu to use updated option instead - added PACKAGECONFIG definitions - added qemu-ptest to conf/distro/include/ptest-packagelists.inc - increased support for ARM architecture, cpu and board - removed patches merged upstream and refreshed existing ones Testing: Build core-image-minimal against the machines in openembedded-core/meta/conf/machine and succesfully booted with qemu v5.0 Ran qemu-ptest on x86-64 and arm64 with identical results: PASS: 1166 SKIP: 0 FAIL: 0 (From OE-Core rev: ee9ec9e344541c1ccd9b9b8e3b8c1e00d008ad85) Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com> Signed-off-by: Joe Slater <joe.slater@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/qemu/qemu/find_datadir.patch')
-rw-r--r--meta/recipes-devtools/qemu/qemu/find_datadir.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/meta/recipes-devtools/qemu/qemu/find_datadir.patch b/meta/recipes-devtools/qemu/qemu/find_datadir.patch
new file mode 100644
index 0000000000..74e9ba56ce
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu/find_datadir.patch
@@ -0,0 +1,37 @@
1qemu: search for datadir as in version 4.2
2
3os_find_datadir() was changed after the 4.2 release. We need to check for
4../share/qemu relative to the executable because that is where the runqemu
5configuration assumes it will be.
6
7Upstream-Status: Submitted [qemu-devel@nongnu.org]
8
9Signed-off-by: Joe Slater <joe.slater@windriver.com>
10
11
12--- a/os-posix.c
13+++ b/os-posix.c
14@@ -82,8 +82,9 @@ void os_setup_signal_handling(void)
15
16 /*
17 * Find a likely location for support files using the location of the binary.
18+ * Typically, this would be "$bindir/../share/qemu".
19 * When running from the build tree this will be "$bindir/../pc-bios".
20- * Otherwise, this is CONFIG_QEMU_DATADIR.
21+ * Otherwise, this is CONFIG_QEMU_DATADIR as constructed by configure.
22 */
23 char *os_find_datadir(void)
24 {
25@@ -93,6 +94,12 @@ char *os_find_datadir(void)
26 exec_dir = qemu_get_exec_dir();
27 g_return_val_if_fail(exec_dir != NULL, NULL);
28
29+ dir = g_build_filename(exec_dir, "..", "share", "qemu", NULL);
30+ if (g_file_test(dir, G_FILE_TEST_IS_DIR)) {
31+ return g_steal_pointer(&dir);
32+ }
33+ g_free(dir); /* no autofree this time */
34+
35 dir = g_build_filename(exec_dir, "..", "pc-bios", NULL);
36 if (g_file_test(dir, G_FILE_TEST_IS_DIR)) {
37 return g_steal_pointer(&dir);