summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathan Rossi <nathan@nathanrossi.com>2017-01-02 17:17:56 +1000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-03-08 11:52:57 +0000
commit27fbd839d40b6e6e1825561eac48e815f8d5643e (patch)
tree71472ceea68b3d30d89abafb0ad62aeb65829c10
parented25789bc0661a5d4ff2b6219d318d5058e6b12f (diff)
downloadpoky-27fbd839d40b6e6e1825561eac48e815f8d5643e.tar.gz
qemu: Move recipe version specific patches and features to recipe
Move all the version specific patches, overrides and configuration that are in qemu.inc to the versioned QEMU recipe. This includes moving patches that target the versioned recipe, ptest configuration (which is not available in QEMU by default) and the installing of the powerpc_rom.bin. All these patches/files are also only located in the FILESEXTRAPATHS that is valid from the recipe file and not from qemu.inc itself. The purpose of this change is to make the qemu.inc re-usable for multiple versions of QEMU as well as forks and recipes that intend to provide custom patches. (From OE-Core rev: 2431faeb88a008b501547808fb8632943b992dcb) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/qemu/qemu.inc30
-rw-r--r--meta/recipes-devtools/qemu/qemu_2.8.0.bb31
2 files changed, 31 insertions, 30 deletions
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
index 5bd41d0d90..85b344c960 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -3,29 +3,14 @@ HOMEPAGE = "http://qemu.org"
3LICENSE = "GPLv2 & LGPLv2.1" 3LICENSE = "GPLv2 & LGPLv2.1"
4DEPENDS = "glib-2.0 zlib pixman" 4DEPENDS = "glib-2.0 zlib pixman"
5RDEPENDS_${PN}_class-target += "bash" 5RDEPENDS_${PN}_class-target += "bash"
6RDEPENDS_${PN}-ptest = "bash make"
7 6
8require qemu-targets.inc 7require qemu-targets.inc
9inherit autotools pkgconfig ptest bluetooth 8inherit autotools pkgconfig bluetooth
10BBCLASSEXTEND = "native nativesdk" 9BBCLASSEXTEND = "native nativesdk"
11 10
12# QEMU_TARGETS is overridable variable 11# QEMU_TARGETS is overridable variable
13QEMU_TARGETS ?= "arm aarch64 i386 mips mipsel mips64 mips64el ppc sh4 x86_64" 12QEMU_TARGETS ?= "arm aarch64 i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
14 13
15SRC_URI = "\
16 file://powerpc_rom.bin \
17 file://disable-grabs.patch \
18 file://exclude-some-arm-EABI-obsolete-syscalls.patch \
19 file://wacom.patch \
20 file://add-ptest-in-makefile.patch \
21 file://run-ptest \
22 "
23
24SRC_URI_append_class-native = "\
25 file://fix-libcap-header-issue-on-some-distro.patch \
26 file://cpus.c-qemu_cpu_kick_thread_debugging.patch \
27 "
28
29EXTRA_OECONF = " \ 14EXTRA_OECONF = " \
30 --prefix=${prefix} \ 15 --prefix=${prefix} \
31 --bindir=${bindir} \ 16 --bindir=${bindir} \
@@ -70,22 +55,9 @@ do_configure() {
70 test ! -e ${S}/target-i386/beginend_funcs.sh || chmod a+x ${S}/target-i386/beginend_funcs.sh 55 test ! -e ${S}/target-i386/beginend_funcs.sh || chmod a+x ${S}/target-i386/beginend_funcs.sh
71} 56}
72 57
73do_compile_ptest() {
74 make buildtest-TESTS
75}
76
77do_install_ptest() {
78 cp -rL ${B}/tests ${D}${PTEST_PATH}
79 find ${D}${PTEST_PATH}/tests -type f -name "*.[Sshcod]" | xargs -i rm -rf {}
80
81 cp ${S}/tests/Makefile.include ${D}${PTEST_PATH}/tests
82}
83
84do_install () { 58do_install () {
85 export STRIP="true" 59 export STRIP="true"
86 autotools_do_install 60 autotools_do_install
87 install -d ${D}${datadir}/qemu
88 install -m 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu
89} 61}
90 62
91# The following fragment will create a wrapper for qemu-mips user emulation 63# The following fragment will create a wrapper for qemu-mips user emulation
diff --git a/meta/recipes-devtools/qemu/qemu_2.8.0.bb b/meta/recipes-devtools/qemu/qemu_2.8.0.bb
index ce475e02cb..7bb4d06fb9 100644
--- a/meta/recipes-devtools/qemu/qemu_2.8.0.bb
+++ b/meta/recipes-devtools/qemu/qemu_2.8.0.bb
@@ -1,9 +1,20 @@
1require qemu.inc 1require qemu.inc
2 2
3inherit ptest
4
5RDEPENDS_${PN}-ptest = "bash make"
6
3LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \ 7LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
4 file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913" 8 file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913"
5 9
6SRC_URI += "file://configure-fix-Darwin-target-detection.patch \ 10SRC_URI += " \
11 file://powerpc_rom.bin \
12 file://disable-grabs.patch \
13 file://exclude-some-arm-EABI-obsolete-syscalls.patch \
14 file://wacom.patch \
15 file://add-ptest-in-makefile.patch \
16 file://run-ptest \
17 file://configure-fix-Darwin-target-detection.patch \
7 file://qemu-enlarge-env-entry-size.patch \ 18 file://qemu-enlarge-env-entry-size.patch \
8 file://no-valgrind.patch \ 19 file://no-valgrind.patch \
9 file://pathlimit.patch \ 20 file://pathlimit.patch \
@@ -19,6 +30,11 @@ SRC_URI += " \
19 file://0004-Add-support-for-VM-suspend-resume-for-TPM-TIS.patch \ 30 file://0004-Add-support-for-VM-suspend-resume-for-TPM-TIS.patch \
20" 31"
21 32
33SRC_URI_append_class-native = " \
34 file://fix-libcap-header-issue-on-some-distro.patch \
35 file://cpus.c-qemu_cpu_kick_thread_debugging.patch \
36 "
37
22SRC_URI =+ "http://wiki.qemu-project.org/download/${BP}.tar.bz2" 38SRC_URI =+ "http://wiki.qemu-project.org/download/${BP}.tar.bz2"
23 39
24SRC_URI[md5sum] = "17940dce063b6ce450a12e719a6c9c43" 40SRC_URI[md5sum] = "17940dce063b6ce450a12e719a6c9c43"
@@ -30,4 +46,17 @@ COMPATIBLE_HOST_mipsarchn64 = "null"
30do_install_append() { 46do_install_append() {
31 # Prevent QA warnings about installed ${localstatedir}/run 47 # Prevent QA warnings about installed ${localstatedir}/run
32 if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi 48 if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi
49 install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu
50}
51
52do_compile_ptest() {
53 make buildtest-TESTS
33} 54}
55
56do_install_ptest() {
57 cp -rL ${B}/tests ${D}${PTEST_PATH}
58 find ${D}${PTEST_PATH}/tests -type f -name "*.[Sshcod]" | xargs -i rm -rf {}
59
60 cp ${S}/tests/Makefile.include ${D}${PTEST_PATH}/tests
61}
62