Merge pull request #495 from flatcar-linux/sayam/upgrade-qemu-to-5.0.0

app-emulation/qemu: Upgrade qemu to 5.0.0
This commit is contained in:
Sayan Chowdhury 2020-09-17 12:41:21 +05:30 committed by GitHub
commit f68d280ab7

View File

@ -3,7 +3,7 @@
EAPI="7" EAPI="7"
PYTHON_COMPAT=( python{3_6,3_7} ) PYTHON_COMPAT=( python{3_6,3_7,3_8} )
PYTHON_REQ_USE="ncurses,readline" PYTHON_REQ_USE="ncurses,readline"
PLOCALES="bg de_DE fr_FR hu it tr zh_CN" PLOCALES="bg de_DE fr_FR hu it tr zh_CN"
@ -23,8 +23,7 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3 inherit git-r3
SRC_URI="" SRC_URI=""
else else
SRC_URI="https://download.qemu.org/${P}.tar.xz SRC_URI="https://download.qemu.org/${P}.tar.xz"
https://dev.gentoo.org/~tamiko/distfiles/${P}-patches-r1.tar.xz"
KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86" KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86"
fi fi
@ -35,18 +34,19 @@ LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0" SLOT="0"
IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc
+fdt glusterfs gnutls gtk infiniband iscsi jemalloc +jpeg kernel_linux +fdt glusterfs gnutls gtk infiniband iscsi io-uring
jemalloc +jpeg kernel_linux
kernel_FreeBSD lzo ncurses nfs nls numa opengl +oss +pin-upstream-blobs kernel_FreeBSD lzo ncurses nfs nls numa opengl +oss +pin-upstream-blobs
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
smartcard snappy spice ssh static static-user systemtap tci test usb smartcard snappy spice ssh static static-user systemtap tci test usb
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
xfs +xkb" xfs +xkb zstd"
COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel
mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x
sh4 sh4eb sparc sparc64 x86_64 xtensa xtensaeb" sh4 sh4eb sparc sparc64 x86_64 xtensa xtensaeb"
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS}
lm32 moxie tricore unicore32" lm32 moxie rx tricore unicore32"
IUSE_USER_TARGETS="${COMMON_TARGETS} IUSE_USER_TARGETS="${COMMON_TARGETS}
aarch64_be armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus aarch64_be armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus
tilegx" tilegx"
@ -120,6 +120,7 @@ SOFTMMU_TOOLS_DEPEND="
sys-fabric/librdmacm:=[static-libs(+)] sys-fabric/librdmacm:=[static-libs(+)]
) )
iscsi? ( net-libs/libiscsi ) iscsi? ( net-libs/libiscsi )
io-uring? ( sys-libs/liburing[static-libs(+)] )
jemalloc? ( dev-libs/jemalloc ) jemalloc? ( dev-libs/jemalloc )
jpeg? ( virtual/jpeg:0=[static-libs(+)] ) jpeg? ( virtual/jpeg:0=[static-libs(+)] )
lzo? ( dev-libs/lzo:2[static-libs(+)] ) lzo? ( dev-libs/lzo:2[static-libs(+)] )
@ -140,7 +141,7 @@ SOFTMMU_TOOLS_DEPEND="
rbd? ( sys-cluster/ceph ) rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? ( sdl? (
media-libs/libsdl2[X] media-libs/libsdl2[video]
media-libs/libsdl2[static-libs(+)] media-libs/libsdl2[static-libs(+)]
) )
sdl-image? ( media-libs/sdl2-image[static-libs(+)] ) sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
@ -158,7 +159,9 @@ SOFTMMU_TOOLS_DEPEND="
virgl? ( media-libs/virglrenderer[static-libs(+)] ) virgl? ( media-libs/virglrenderer[static-libs(+)] )
virtfs? ( sys-libs/libcap ) virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools:= ) xen? ( app-emulation/xen-tools:= )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )" xfs? ( sys-fs/xfsprogs[static-libs(+)] )
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
X86_FIRMWARE_DEPEND=" X86_FIRMWARE_DEPEND="
pin-upstream-blobs? ( pin-upstream-blobs? (
@ -215,12 +218,10 @@ RDEPEND="${CDEPEND}
selinux? ( sec-policy/selinux-qemu )" selinux? ( sec-policy/selinux-qemu )"
PATCHES=( PATCHES=(
"${FILESDIR}"/${PN}-2.5.0-cflags.patch
"${FILESDIR}"/${PN}-2.5.0-sysmacros.patch
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch "${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
"${FILESDIR}"/${PN}-4.0.0-sanitize-interp_info.patch
"${FILESDIR}"/${PN}-4.0.0-mkdir_systemtap.patch #684902 "${FILESDIR}"/${PN}-4.0.0-mkdir_systemtap.patch #684902
"${WORKDIR}"/patches "${FILESDIR}"/${PN}-4.2.0-cflags.patch
"${FILESDIR}"/${PN}-5.0.0-epoll-strace.patch
) )
QA_PREBUILT=" QA_PREBUILT="
@ -374,7 +375,7 @@ src_prepare() {
default default
# Use correct toolchain to fix cross-compiling # Use correct toolchain to fix cross-compiling
tc-export AR LD NM OBJCOPY PKG_CONFIG tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB
export WINDRES=${CHOST}-windres export WINDRES=${CHOST}-windres
# Verbose builds # Verbose builds
@ -440,7 +441,6 @@ qemu_src_configure() {
fi fi
} }
conf_opts+=( conf_opts+=(
--disable-bluez
$(conf_notuser accessibility brlapi) $(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio) $(conf_notuser aio linux-aio)
$(conf_notuser bzip2) $(conf_notuser bzip2)
@ -454,6 +454,7 @@ qemu_src_configure() {
$(conf_notuser gtk) $(conf_notuser gtk)
$(conf_notuser infiniband rdma) $(conf_notuser infiniband rdma)
$(conf_notuser iscsi libiscsi) $(conf_notuser iscsi libiscsi)
$(conf_notuser io-uring linux-io-uring)
$(conf_notuser jemalloc jemalloc) $(conf_notuser jemalloc jemalloc)
$(conf_notuser jpeg vnc-jpeg) $(conf_notuser jpeg vnc-jpeg)
$(conf_notuser kernel_linux kvm) $(conf_notuser kernel_linux kvm)
@ -485,6 +486,7 @@ qemu_src_configure() {
$(conf_notuser xen xen-pci-passthrough) $(conf_notuser xen xen-pci-passthrough)
$(conf_notuser xfs xfsctl) $(conf_notuser xfs xfsctl)
$(conf_notuser xkb xkbcommon) $(conf_notuser xkb xkbcommon)
$(conf_notuser zstd)
) )
if [[ ${buildtype} == "user" ]] ; then if [[ ${buildtype} == "user" ]] ; then
@ -496,10 +498,12 @@ qemu_src_configure() {
if [[ ! ${buildtype} == "user" ]] ; then if [[ ! ${buildtype} == "user" ]] ; then
# audio options # audio options
local audio_opts=( local audio_opts=(
# Note: backend order matters here: #716202
# We iterate from higher-level to lower level.
$(usex pulseaudio pa "")
$(usev sdl)
$(usev alsa) $(usev alsa)
$(usev oss) $(usev oss)
$(usev sdl)
$(usex pulseaudio pa "")
) )
conf_opts+=( conf_opts+=(
--audio-drv-list=$(printf "%s," "${audio_opts[@]}") --audio-drv-list=$(printf "%s," "${audio_opts[@]}")
@ -609,8 +613,7 @@ src_test() {
if [[ -n ${softmmu_targets} ]]; then if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" cd "${S}/softmmu-build"
pax-mark m */qemu-system-* #515550 pax-mark m */qemu-system-* #515550
emake -j1 check emake check
emake -j1 check-report.html
fi fi
} }