diff options
| -rw-r--r-- | recipes-devtools/qemu/qemu-qoriq/memfd.patch | 41 | ||||
| -rw-r--r-- | recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin | bin | 0 -> 4096 bytes | |||
| -rw-r--r-- | recipes-devtools/qemu/qemu-qoriq/run-ptest | 10 | ||||
| -rw-r--r-- | recipes-devtools/qemu/qemu-qoriq_git.bb | 72 |
4 files changed, 123 insertions, 0 deletions
diff --git a/recipes-devtools/qemu/qemu-qoriq/memfd.patch b/recipes-devtools/qemu/qemu-qoriq/memfd.patch new file mode 100644 index 000000000..d9e7a455d --- /dev/null +++ b/recipes-devtools/qemu/qemu-qoriq/memfd.patch | |||
| @@ -0,0 +1,41 @@ | |||
| 1 | From d60ecdd94f4054aa0ec615824d5efdb4cebc7db9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ting Liu <ting.liu@nxp.com> | ||
| 3 | Date: Thu, 19 Apr 2018 11:47:16 +0800 | ||
| 4 | Subject: [PATCH] memfd | ||
| 5 | |||
| 6 | --- | ||
| 7 | configure | 2 +- | ||
| 8 | util/memfd.c | 4 +--- | ||
| 9 | 2 files changed, 2 insertions(+), 4 deletions(-) | ||
| 10 | |||
| 11 | diff --git a/configure b/configure | ||
| 12 | index be4d326..cb5197c 100755 | ||
| 13 | --- a/configure | ||
| 14 | +++ b/configure | ||
| 15 | @@ -3735,7 +3735,7 @@ fi | ||
| 16 | # check if memfd is supported | ||
| 17 | memfd=no | ||
| 18 | cat > $TMPC << EOF | ||
| 19 | -#include <sys/memfd.h> | ||
| 20 | +#include <sys/mman.h> | ||
| 21 | |||
| 22 | int main(void) | ||
| 23 | { | ||
| 24 | diff --git a/util/memfd.c b/util/memfd.c | ||
| 25 | index 4571d1a..412e94a 100644 | ||
| 26 | --- a/util/memfd.c | ||
| 27 | +++ b/util/memfd.c | ||
| 28 | @@ -31,9 +31,7 @@ | ||
| 29 | |||
| 30 | #include "qemu/memfd.h" | ||
| 31 | |||
| 32 | -#ifdef CONFIG_MEMFD | ||
| 33 | -#include <sys/memfd.h> | ||
| 34 | -#elif defined CONFIG_LINUX | ||
| 35 | +#if defined CONFIG_LINUX && !defined CONFIG_MEMFD | ||
| 36 | #include <sys/syscall.h> | ||
| 37 | #include <asm/unistd.h> | ||
| 38 | |||
| 39 | -- | ||
| 40 | 2.7.4 | ||
| 41 | |||
diff --git a/recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin b/recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin new file mode 100644 index 000000000..c4044296c --- /dev/null +++ b/recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin | |||
| Binary files differ | |||
diff --git a/recipes-devtools/qemu/qemu-qoriq/run-ptest b/recipes-devtools/qemu/qemu-qoriq/run-ptest new file mode 100644 index 000000000..2206b3192 --- /dev/null +++ b/recipes-devtools/qemu/qemu-qoriq/run-ptest | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # | ||
| 3 | #This script is used to run qemu test suites | ||
| 4 | # | ||
| 5 | |||
| 6 | ptestdir=$(dirname "$(readlink -f "$0")") | ||
| 7 | export SRC_PATH=$ptestdir | ||
| 8 | |||
| 9 | cd $ptestdir/tests | ||
| 10 | make -f Makefile.include -k runtest-TESTS | sed '/: OK/ s/^/PASS: /g' | ||
diff --git a/recipes-devtools/qemu/qemu-qoriq_git.bb b/recipes-devtools/qemu/qemu-qoriq_git.bb new file mode 100644 index 000000000..7423b5426 --- /dev/null +++ b/recipes-devtools/qemu/qemu-qoriq_git.bb | |||
| @@ -0,0 +1,72 @@ | |||
| 1 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" | ||
| 2 | |||
| 3 | require recipes-devtools/qemu/qemu.inc | ||
| 4 | |||
| 5 | inherit ptest | ||
| 6 | |||
| 7 | RDEPENDS_${PN}-ptest = "bash make" | ||
| 8 | |||
| 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \ | ||
| 10 | file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913" | ||
| 11 | |||
| 12 | SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/qemu;nobranch=1 \ | ||
| 13 | file://powerpc_rom.bin \ | ||
| 14 | file://run-ptest \ | ||
| 15 | file://memfd.patch \ | ||
| 16 | " | ||
| 17 | |||
| 18 | SRCREV = "6c297a7ddd355d499ddd31353a763d57a092f851" | ||
| 19 | |||
| 20 | S = "${WORKDIR}/git" | ||
| 21 | |||
| 22 | COMPATIBLE_HOST_mipsarchn32 = "null" | ||
| 23 | COMPATIBLE_HOST_mipsarchn64 = "null" | ||
| 24 | |||
| 25 | PROVIDES = "qemu" | ||
| 26 | |||
| 27 | python() { | ||
| 28 | pkgs = d.getVar('PACKAGES', True).split() | ||
| 29 | for p in pkgs: | ||
| 30 | if 'qemu-qoriq' in p: | ||
| 31 | d.appendVar("RPROVIDES_%s" % p, p.replace('qemu-qoriq', 'qemu')) | ||
| 32 | d.appendVar("RCONFLICTS_%s" % p, p.replace('qemu-qoriq', 'qemu')) | ||
| 33 | d.appendVar("RREPLACES_%s" % p, p.replace('qemu-qoriq', 'qemu')) | ||
| 34 | } | ||
| 35 | |||
| 36 | PPC_OECONF = '--enable-fdt --enable-kvm --with-system-pixman --disable-werror' | ||
| 37 | EXTRA_OECONF_qoriq-arm64 = "--prefix=${prefix} --target-list=aarch64-softmmu --enable-fdt --enable-kvm --with-system-pixman --disable-werror" | ||
| 38 | EXTRA_OECONF_qoriq-arm = "--prefix=${prefix} --target-list=arm-softmmu --enable-fdt --enable-kvm --with-system-pixman --disable-werror" | ||
| 39 | EXTRA_OECONF_e5500-64b = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}" | ||
| 40 | EXTRA_OECONF_e6500-64b = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}" | ||
| 41 | EXTRA_OECONF_e6500 = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}" | ||
| 42 | EXTRA_OECONF_e5500 = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}" | ||
| 43 | EXTRA_OECONF_e500v2 = "--prefix=${prefix} --target-list=ppc-softmmu ${PPC_OECONF}" | ||
| 44 | EXTRA_OECONF_e500mc = "--prefix=${prefix} --target-list=ppc-softmmu ${PPC_OECONF}" | ||
| 45 | |||
| 46 | DISABLE_STATIC = "" | ||
| 47 | |||
| 48 | do_install_append() { | ||
| 49 | # Prevent QA warnings about installed ${localstatedir}/run | ||
| 50 | if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi | ||
| 51 | install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu | ||
| 52 | } | ||
| 53 | |||
| 54 | do_compile_ptest() { | ||
| 55 | make buildtest-TESTS | ||
| 56 | } | ||
| 57 | |||
| 58 | do_install_ptest() { | ||
| 59 | cp -rL ${B}/tests ${D}${PTEST_PATH} | ||
| 60 | find ${D}${PTEST_PATH}/tests -type f -name "*.[Sshcod]" | xargs -i rm -rf {} | ||
| 61 | |||
| 62 | cp ${S}/tests/Makefile.include ${D}${PTEST_PATH}/tests | ||
| 63 | # Don't check the file genreated by configure | ||
| 64 | sed -i -e '/wildcard config-host.mak/d' \ | ||
| 65 | -e '$ {/endif/d}' ${D}${PTEST_PATH}/tests/Makefile.include | ||
| 66 | } | ||
| 67 | |||
| 68 | INSANE_SKIP_${PN} += "already-stripped" | ||
| 69 | FILES_${PN} += "/usr/share/qemu/* /usr/var/*" | ||
| 70 | |||
| 71 | # FIXME: Avoid WARNING due missing patch for native/nativesdk | ||
| 72 | BBCLASSEXTEND = "" | ||
