emulators/qemu: Update version 2.12.1=>3.0.1
- Remove GNS3 OPTION - Update GTK2 OPTION to GTK3 to use updated requirements of gtk30 and sdl20
This commit is contained in:
parent
6faf908c6e
commit
756beae7cf
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=499318
14 changed files with 244 additions and 233 deletions
12
UPDATING
12
UPDATING
|
@ -5,6 +5,18 @@ they are unavoidable.
|
|||
You should get into the habit of checking this file for changes each time
|
||||
you update your ports collection, before attempting any port upgrades.
|
||||
|
||||
20190419
|
||||
AFFECTS: users of emulators/qemu
|
||||
AUTHOR: bofh@FreeBSD.org
|
||||
|
||||
qemu 2.X version has been moved to qemu2. If you would like to use
|
||||
2.X you should use qeemu2. Otherwise you can use the new stable
|
||||
upstream branch of 3.0.X.
|
||||
|
||||
Portmaster users will need to run this command:
|
||||
|
||||
portmaster -o emulators/qemu2 emulators/qemu
|
||||
|
||||
20190410:
|
||||
AFFECTS: users of python
|
||||
AUTHOR: antoine@FreeBSD.org
|
||||
|
|
|
@ -2,8 +2,7 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= qemu
|
||||
PORTVERSION= 2.12.1
|
||||
PORTREVISION= 2
|
||||
PORTVERSION= 3.0.1
|
||||
CATEGORIES= emulators
|
||||
MASTER_SITES= https://download.qemu.org/
|
||||
DIST_SUBDIR= qemu/${PORTVERSION}
|
||||
|
@ -25,63 +24,69 @@ USE_XORG= pixman
|
|||
USE_GNOME+= cairo glib20 libxml2
|
||||
.endif
|
||||
|
||||
USES?= cpe gl gmake gnome pkgconfig bison perl5 python:2.7,build tar:xz
|
||||
USES?= cpe gl gmake gnome pkgconfig bison perl5 python:build tar:xz
|
||||
USE_PERL5= build
|
||||
|
||||
PORTSCOUT= limit:^3\.0\.
|
||||
|
||||
HAS_CONFIGURE= yes
|
||||
MAKE_ENV+= BSD_MAKE="${MAKE}" V=1
|
||||
|
||||
OPTIONS_DEFINE= SAMBA X11 GTK2 OPENGL GNUTLS SASL JPEG PNG CURL \
|
||||
VDE CDROM_DMA PCAP USBREDIR GNS3 X86_TARGETS \
|
||||
OPTIONS_DEFINE= SAMBA X11 GTK3 OPENGL GNUTLS SASL JPEG PNG CURL \
|
||||
VDE CDROM_DMA PCAP USBREDIR X86_TARGETS \
|
||||
STATIC_LINK DOCS NCURSES
|
||||
SAMBA_DESC= samba dependency (for -smb)
|
||||
GNUTLS_DESC= gnutls dependency (vnc encryption)
|
||||
SASL_DESC= cyrus-sasl dependency (vnc encryption)
|
||||
JPEG_DESC= jpeg dependency (vnc lossy compression)
|
||||
PNG_DESC= png dependency (vnc compression)
|
||||
CDROM_DMA_DESC= IDE CDROM DMA
|
||||
GNUTLS_DESC= gnutls dependency (vnc encryption)
|
||||
JPEG_DESC= jpeg dependency (vnc lossy compression)
|
||||
PCAP_DESC= pcap dependency (networking with bpf)
|
||||
USBREDIR_DESC= usb device network redirection (experimental!)
|
||||
GNS3_DESC= gns3 patches (promiscuous multicast)
|
||||
X86_TARGETS_DESC= Build only x86 system targets
|
||||
PNG_DESC= png dependency (vnc compression)
|
||||
SAMBA_DESC= samba dependency (for -smb)
|
||||
SASL_DESC= cyrus-sasl dependency (vnc encryption)
|
||||
STATIC_LINK_DESC= Statically link the executables
|
||||
USBREDIR_DESC= usb device network redirection (experimental!)
|
||||
VDE_DESC= vde dependency (for vde networking)
|
||||
OPTIONS_DEFAULT=X11 GTK2 OPENGL GNUTLS SASL JPEG PNG CDROM_DMA CURL PCAP GNS3 NCURSES VDE
|
||||
X86_TARGETS_DESC= Build only x86 system targets
|
||||
OPTIONS_DEFAULT=X11 GTK3 OPENGL GNUTLS SASL JPEG PNG CDROM_DMA CURL PCAP NCURSES VDE
|
||||
OPTIONS_SUB= yes
|
||||
X11_USE= SDL=sdl XORG=x11,xext GNOME=gdkpixbuf2
|
||||
X11_CONFIGURE_ENABLE= sdl
|
||||
GTK2_USE= GNOME=gtk20,vte,gdkpixbuf2 XORG=x11,xext
|
||||
GTK2_USES= gettext
|
||||
GTK2_CONFIGURE_OFF= --disable-gtk --disable-vte
|
||||
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
|
||||
GNUTLS_CONFIGURE_OFF= --disable-gnutls
|
||||
SASL_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2
|
||||
SASL_CONFIGURE_OFF= --disable-vnc-sasl
|
||||
JPEG_USES= jpeg
|
||||
JPEG_CONFIGURE_OFF= --disable-vnc-jpeg
|
||||
PNG_LIB_DEPENDS= libpng.so:graphics/png
|
||||
PNG_CONFIGURE_OFF= --disable-vnc-png
|
||||
CURL_LIB_DEPENDS= libcurl.so:ftp/curl
|
||||
CURL_CONFIGURE_OFF= --disable-curl
|
||||
OPENGL_USE= GL=glu
|
||||
CURL_LIB_DEPENDS= libcurl.so:ftp/curl
|
||||
DOCS_BUILD_DEPENDS= texi2html:textproc/texi2html
|
||||
DOCS_MAKE_ARGS_OFF= NOPORTDOCS=1
|
||||
DOCS_USES= makeinfo
|
||||
GNUTLS_CONFIGURE_OFF= --disable-gnutls
|
||||
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
|
||||
GTK3_CONFIGURE_OFF= --disable-gtk --disable-vte
|
||||
GTK3_LIB_DEPENDS= libxkbcommon.so:x11/libxkbcommon \
|
||||
libepoxy.so:graphics/libepoxy \
|
||||
libpcre2-8.so:devel/pcre2
|
||||
GTK3_USE= GNOME=gtk30,vte3,gdkpixbuf2 XORG=x11,xext GL=gbm
|
||||
GTK3_USES= gettext
|
||||
JPEG_CONFIGURE_OFF= --disable-vnc-jpeg
|
||||
JPEG_USES= jpeg
|
||||
NCURSES_USES= ncurses:base
|
||||
OPENGL_CONFIGURE_OFF= --disable-opengl
|
||||
USBREDIR_BUILD_DEPENDS= usbredir>=0.6:net/usbredir
|
||||
USBREDIR_RUN_DEPENDS= usbredir>=0.6:net/usbredir
|
||||
USBREDIR_CONFIGURE_OFF= --disable-usb-redir
|
||||
OPENGL_USE= GL=glu
|
||||
PCAP_CONFIGURE_ON= --enable-pcap
|
||||
PCAP_EXTRA_PATCHES= ${FILESDIR}/pcap-patch ${FILESDIR}/pcap-patch-net_net.c \
|
||||
${FILESDIR}/pcap-patch-net_clients.h
|
||||
VDE_LIB_DEPENDS= libvdeplug.so:net/vde2
|
||||
VDE_CONFIGURE_OFF= --disable-vde
|
||||
PNG_CONFIGURE_OFF= --disable-vnc-png
|
||||
PNG_LIB_DEPENDS= libpng.so:graphics/png
|
||||
SAMBA_CONFIGURE_ON= --smbd=${LOCALBASE}/sbin/smbd
|
||||
SAMBA_USES= samba:run # smbd
|
||||
SASL_CONFIGURE_OFF= --disable-vnc-sasl
|
||||
SASL_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2
|
||||
STATIC_LINK_CONFIGURE_ON= --static
|
||||
STATIC_LINK_PREVENTS= GTK2 X11
|
||||
STATIC_LINK_PREVENTS_MSG= X11 ui cannot be built static
|
||||
NCURSES_USES= ncurses:base
|
||||
SAMBA_USES= samba:run # smbd
|
||||
SAMBA_CONFIGURE_ON= --smbd=${LOCALBASE}/sbin/smbd
|
||||
DOCS_BUILD_DEPENDS= texi2html:textproc/texi2html
|
||||
DOCS_USES= makeinfo
|
||||
DOCS_MAKE_ARGS_OFF= NOPORTDOCS=1
|
||||
USBREDIR_BUILD_DEPENDS= usbredir>=0.6:net/usbredir
|
||||
USBREDIR_CONFIGURE_OFF= --disable-usb-redir
|
||||
USBREDIR_RUN_DEPENDS= usbredir>=0.6:net/usbredir
|
||||
VDE_CONFIGURE_OFF= --disable-vde
|
||||
VDE_LIB_DEPENDS= libvdeplug.so:net/vde2
|
||||
X11_CONFIGURE_ENABLE= sdl
|
||||
X11_USE= SDL=sdl2 XORG=x11,xext
|
||||
X11_USES= sdl
|
||||
X86_TARGETS_USE_OFF= GNOME=cairo,gdkpixbuf2
|
||||
|
||||
PORTDOCS?= docs qemu-doc.html qemu-doc.txt qemu-ga-ref.html qemu-ga-ref.txt \
|
||||
qemu-qmp-ref.html qemu-qmp-ref.txt
|
||||
|
@ -119,35 +124,9 @@ CONFIGURE_ARGS+= --sparc_cpu=v9
|
|||
|
||||
PLIST_SUB+= LINUXBOOT_DMA=""
|
||||
|
||||
# -lprocstat actually only _needs_ -lelf after r249666 or r250870 (MFC)
|
||||
# but it shouldn't matter much
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e '/LIBS/s|-lprocstat|-lprocstat -lelf|' \
|
||||
-e '/libusb/s/ --atleast-version=1\.0\.[0-9]*//' \
|
||||
${WRKSRC}/configure
|
||||
@${REINPLACE_CMD} -e '/libs_qga=/s|glib_libs|glib_libs -lintl|' ${WRKSRC}/configure
|
||||
@${REINPLACE_CMD} -E \
|
||||
-e "/^by Tibor .TS. S/s|Sch.*z.$$|Schuetz.|" \
|
||||
${WRKSRC}/qemu-doc.texi
|
||||
@${REINPLACE_CMD} -E \
|
||||
-e "s|^(CFLAGS=).*|\1${CFLAGS} -fno-strict-aliasing|" \
|
||||
-e "s|^(LDFLAGS=).*|\1${LDFLAGS}|" \
|
||||
${WRKSRC}/Makefile.target
|
||||
@${REINPLACE_CMD} -E \
|
||||
-e "s|^(CFLAGS=).*|\1${CFLAGS} -fno-strict-aliasing -I.|" \
|
||||
-e "s|^(LDFLAGS=).*|\1${LDFLAGS}|" \
|
||||
${WRKSRC}/Makefile
|
||||
@${REINPLACE_CMD} -E \
|
||||
-e "1s|^(#! )/usr/bin/perl|\1${PERL}|" \
|
||||
${WRKSRC}/scripts/texi2pod.pl
|
||||
|
||||
post-patch-CDROM_DMA-off:
|
||||
@${REINPLACE_CMD} -e '/USE_DMA_CDROM/d' ${WRKSRC}/include/hw/ide/internal.h
|
||||
|
||||
post-patch-GNS3-on:
|
||||
@${REINPLACE_CMD} -e 's|(buf\[0\] & 1) && (rctl & E1000_RCTL_MPE)|buf[0] \& 1|' \
|
||||
${WRKSRC}/hw/net/e1000.c
|
||||
|
||||
# XXX need to disable usb host code on head while it's not ported to the
|
||||
# new usb stack yet
|
||||
post-configure:
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
TIMESTAMP = 1535379498
|
||||
SHA256 (qemu/2.12.1/qemu-2.12.1.tar.xz) = 33583800e0006cd00b78226b85be5a27c8e3b156bed2e60e83ecbeb7b9b8364f
|
||||
SIZE (qemu/2.12.1/qemu-2.12.1.tar.xz) = 35416404
|
||||
TIMESTAMP = 1555276984
|
||||
SHA256 (qemu/3.0.1/qemu-3.0.1.tar.xz) = cf5747aa3bf0e7ec6cb166f48be4680097c333ce320e8e58140980b0d99512f3
|
||||
SIZE (qemu/3.0.1/qemu-3.0.1.tar.xz) = 35626524
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
--- Makefile.orig 2018-04-24 16:30:46 UTC
|
||||
--- Makefile.orig 2019-04-12 03:28:28 UTC
|
||||
+++ Makefile
|
||||
@@ -350,10 +350,15 @@ LIBS+=-lz $(LIBS_TOOLS)
|
||||
HELPERS-$(CONFIG_LINUX) = qemu-bridge-helper$(EXESUF)
|
||||
@@ -353,9 +353,14 @@ LIBS+=-lz $(LIBS_TOOLS)
|
||||
HELPERS-$(call land,$(CONFIG_SOFTMMU),$(CONFIG_LINUX)) = qemu-bridge-helper$(EXESUF)
|
||||
|
||||
ifdef BUILD_DOCS
|
||||
+ifdef NOPORTDOCS
|
||||
|
@ -15,8 +15,7 @@
|
|||
DOCS+=docs/qemu-block-drivers.7
|
||||
ifdef CONFIG_VIRTFS
|
||||
DOCS+=fsdev/virtfs-proxy-helper.1
|
||||
endif
|
||||
@@ -797,11 +802,13 @@ BLOBS=
|
||||
@@ -812,11 +817,13 @@ BLOBS=
|
||||
endif
|
||||
|
||||
install-doc: $(DOCS)
|
||||
|
@ -30,7 +29,7 @@
|
|||
ifdef CONFIG_POSIX
|
||||
$(INSTALL_DIR) "$(DESTDIR)$(mandir)/man1"
|
||||
$(INSTALL_DATA) qemu.1 "$(DESTDIR)$(mandir)/man1"
|
||||
@@ -815,8 +822,10 @@ ifneq ($(TOOLS),)
|
||||
@@ -830,8 +837,10 @@ ifneq ($(TOOLS),)
|
||||
endif
|
||||
ifneq (,$(findstring qemu-ga,$(TOOLS)))
|
||||
$(INSTALL_DATA) qemu-ga.8 "$(DESTDIR)$(mandir)/man8"
|
||||
|
|
|
@ -1,6 +1,14 @@
|
|||
--- configure.orig 2018-04-24 16:30:46 UTC
|
||||
--- configure.orig 2019-04-14 21:25:18 UTC
|
||||
+++ configure
|
||||
@@ -369,7 +369,7 @@ DSOSUF=".so"
|
||||
@@ -375,6 +375,7 @@ hax="no"
|
||||
hvf="no"
|
||||
whpx="no"
|
||||
rdma=""
|
||||
+pvrdma=""
|
||||
gprof="no"
|
||||
debug_tcg="no"
|
||||
debug="no"
|
||||
@@ -391,7 +392,7 @@ DSOSUF=".so"
|
||||
LDFLAGS_SHARED="-shared"
|
||||
modules="no"
|
||||
prefix="/usr/local"
|
||||
|
@ -9,7 +17,7 @@
|
|||
datadir="\${prefix}/share"
|
||||
firmwarepath="\${prefix}/share/qemu-firmware"
|
||||
qemu_docdir="\${prefix}/share/doc/qemu"
|
||||
@@ -449,6 +449,9 @@ numa=""
|
||||
@@ -471,6 +472,9 @@ numa=""
|
||||
tcmalloc="no"
|
||||
jemalloc="no"
|
||||
replication="yes"
|
||||
|
@ -18,8 +26,8 @@
|
|||
+bpf="no"
|
||||
vxhs=""
|
||||
libxml2=""
|
||||
|
||||
@@ -1030,6 +1033,10 @@ for opt do
|
||||
docker="no"
|
||||
@@ -1087,6 +1091,10 @@ for opt do
|
||||
;;
|
||||
--enable-vnc-png) vnc_png="yes"
|
||||
;;
|
||||
|
@ -30,7 +38,78 @@
|
|||
--disable-slirp) slirp="no"
|
||||
;;
|
||||
--disable-vde) vde="no"
|
||||
@@ -2799,6 +2806,14 @@ if ! check_include "ifaddrs.h" ; then
|
||||
@@ -1363,6 +1371,10 @@ for opt do
|
||||
;;
|
||||
--disable-rdma) rdma="no"
|
||||
;;
|
||||
+ --enable-pvrdma) pvrdma="yes"
|
||||
+ ;;
|
||||
+ --disable-pvrdma) pvrdma="no"
|
||||
+ ;;
|
||||
--with-gtkabi=*) gtkabi="$optarg"
|
||||
;;
|
||||
--disable-vte) vte="no"
|
||||
@@ -1669,7 +1681,8 @@ disabled with --disable-FEATURE, default is enabled if
|
||||
hax HAX acceleration support
|
||||
hvf Hypervisor.framework acceleration support
|
||||
whpx Windows Hypervisor Platform acceleration support
|
||||
- rdma Enable RDMA-based migration and PVRDMA support
|
||||
+ rdma Enable RDMA-based migration
|
||||
+ pvrdma Enable PVRDMA support
|
||||
vde support for vde network
|
||||
netmap support for netmap network
|
||||
linux-aio Linux AIO support
|
||||
@@ -2881,7 +2894,49 @@ else
|
||||
tasn1=no
|
||||
fi
|
||||
|
||||
+##########################################
|
||||
+# PVRDMA detection
|
||||
|
||||
+cat > $TMPC <<EOF &&
|
||||
+#include <sys/mman.h>
|
||||
+
|
||||
+int
|
||||
+main(void)
|
||||
+{
|
||||
+ char buf = 0;
|
||||
+ void *addr = &buf;
|
||||
+ addr = mremap(addr, 0, 1, MREMAP_MAYMOVE | MREMAP_FIXED);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+EOF
|
||||
+
|
||||
+if test "$rdma" = "yes" ; then
|
||||
+ case "$pvrdma" in
|
||||
+ "")
|
||||
+ if compile_prog "" ""; then
|
||||
+ pvrdma="yes"
|
||||
+ else
|
||||
+ pvrdma="no"
|
||||
+ fi
|
||||
+ ;;
|
||||
+ "yes")
|
||||
+ if ! compile_prog "" ""; then
|
||||
+ error_exit "PVRDMA is not supported since mremap is not implemented"
|
||||
+ fi
|
||||
+ pvrdma="yes"
|
||||
+ ;;
|
||||
+ "no")
|
||||
+ pvrdma="no"
|
||||
+ ;;
|
||||
+ esac
|
||||
+else
|
||||
+ if test "$pvrdma" = "yes" ; then
|
||||
+ error_exit "PVRDMA requires rdma suppport"
|
||||
+ fi
|
||||
+ pvrdma="no"
|
||||
+fi
|
||||
+
|
||||
##########################################
|
||||
# getifaddrs (for tests/test-io-channel-socket )
|
||||
|
||||
@@ -2891,6 +2946,14 @@ if ! check_include "ifaddrs.h" ; then
|
||||
fi
|
||||
|
||||
##########################################
|
||||
|
@ -45,7 +124,7 @@
|
|||
# VTE probe
|
||||
|
||||
if test "$vte" != "no"; then
|
||||
@@ -2969,7 +2984,51 @@ EOF
|
||||
@@ -3061,7 +3124,51 @@ EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -97,7 +176,16 @@
|
|||
##########################################
|
||||
# VNC SASL detection
|
||||
if test "$vnc" = "yes" -a "$vnc_sasl" != "no" ; then
|
||||
@@ -4331,14 +4390,7 @@ fi
|
||||
@@ -3474,7 +3581,7 @@ for i in $glib_modules; do
|
||||
glib_libs=$($pkg_config --libs $i)
|
||||
QEMU_CFLAGS="$glib_cflags $QEMU_CFLAGS"
|
||||
LIBS="$glib_libs $LIBS"
|
||||
- libs_qga="$glib_libs $libs_qga"
|
||||
+ libs_qga="$glib_libs -lintl $libs_qga"
|
||||
else
|
||||
error_exit "glib-$glib_req_ver $i is required to compile QEMU"
|
||||
fi
|
||||
@@ -4419,14 +4526,7 @@ fi
|
||||
|
||||
# Check if tools are available to build documentation.
|
||||
if test "$docs" != "no" ; then
|
||||
|
@ -112,7 +200,16 @@
|
|||
fi
|
||||
|
||||
# Search for bswap_32 function
|
||||
@@ -5783,6 +5835,7 @@ echo "Audio drivers $audio_drv_list"
|
||||
@@ -4551,7 +4651,7 @@ fi
|
||||
|
||||
# check for libusb
|
||||
if test "$libusb" != "no" ; then
|
||||
- if $pkg_config --atleast-version=1.0.13 libusb-1.0; then
|
||||
+ if $pkg_config libusb-1.0; then
|
||||
libusb="yes"
|
||||
libusb_cflags=$($pkg_config --cflags libusb-1.0)
|
||||
libusb_libs=$($pkg_config --libs libusb-1.0)
|
||||
@@ -5914,6 +6014,7 @@ echo "Audio drivers $audio_drv_list"
|
||||
echo "Block whitelist (rw) $block_drv_rw_whitelist"
|
||||
echo "Block whitelist (ro) $block_drv_ro_whitelist"
|
||||
echo "VirtFS support $virtfs"
|
||||
|
@ -120,7 +217,15 @@
|
|||
echo "Multipath support $mpath"
|
||||
echo "VNC support $vnc"
|
||||
if test "$vnc" = "yes" ; then
|
||||
@@ -6010,6 +6063,15 @@ fi
|
||||
@@ -5949,6 +6050,7 @@ if test "$tcg" = "yes" ; then
|
||||
fi
|
||||
echo "malloc trim support $malloc_trim"
|
||||
echo "RDMA support $rdma"
|
||||
+echo "PVRDMA support $pvrdma"
|
||||
echo "fdt support $fdt"
|
||||
echo "membarrier $membarrier"
|
||||
echo "preadv support $preadv"
|
||||
@@ -6143,6 +6245,15 @@ fi
|
||||
if test "$profiler" = "yes" ; then
|
||||
echo "CONFIG_PROFILER=y" >> $config_host_mak
|
||||
fi
|
||||
|
@ -136,13 +241,24 @@
|
|||
if test "$slirp" = "yes" ; then
|
||||
echo "CONFIG_SLIRP=y" >> $config_host_mak
|
||||
echo "CONFIG_SMBD_COMMAND=\"$smbd\"" >> $config_host_mak
|
||||
@@ -6247,6 +6309,9 @@ fi
|
||||
# if this macro is set.
|
||||
@@ -6384,6 +6495,9 @@ fi
|
||||
if test "$have_fsxattr" = "yes" ; then
|
||||
echo "HAVE_FSXATTR=y" >> $config_host_mak
|
||||
+fi
|
||||
fi
|
||||
+if test "$have_ifaddrs_h" = "yes" ; then
|
||||
+ echo "HAVE_IFADDRS_H=y" >> $config_host_mak
|
||||
+fi
|
||||
if test "$have_copy_file_range" = "yes" ; then
|
||||
echo "HAVE_COPY_FILE_RANGE=y" >> $config_host_mak
|
||||
fi
|
||||
if test "$vte" = "yes" ; then
|
||||
echo "CONFIG_VTE=y" >> $config_host_mak
|
||||
@@ -6703,6 +6817,10 @@ echo "CONFIG_TRACE_FILE=$trace_file" >> $config_host_m
|
||||
if test "$rdma" = "yes" ; then
|
||||
echo "CONFIG_RDMA=y" >> $config_host_mak
|
||||
echo "RDMA_LIBS=$rdma_libs" >> $config_host_mak
|
||||
+fi
|
||||
+
|
||||
+if test "$pvrdma" = "yes" ; then
|
||||
+ echo "CONFIG_PVRDMA=y" >> $config_host_mak
|
||||
fi
|
||||
|
||||
if test "$have_rtnetlink" = "yes" ; then
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- disas/libvixl/vixl/a64/disasm-a64.cc.orig 2016-04-14 20:19:53 UTC
|
||||
--- disas/libvixl/vixl/a64/disasm-a64.cc.orig 2019-04-12 03:28:28 UTC
|
||||
+++ disas/libvixl/vixl/a64/disasm-a64.cc
|
||||
@@ -2693,7 +2693,7 @@ void Disassembler::AppendPCRelativeOffse
|
||||
@@ -2693,7 +2693,7 @@ void Disassembler::AppendPCRelativeOffsetToOutput(cons
|
||||
if (offset < 0) {
|
||||
abs_offset = -abs_offset;
|
||||
}
|
||||
|
|
8
emulators/qemu/files/patch-hw_rdma_Makefile.objs
Normal file
8
emulators/qemu/files/patch-hw_rdma_Makefile.objs
Normal file
|
@ -0,0 +1,8 @@
|
|||
--- hw/rdma/Makefile.objs.orig 2019-04-12 03:28:28 UTC
|
||||
+++ hw/rdma/Makefile.objs
|
||||
@@ -1,4 +1,4 @@
|
||||
-ifeq ($(CONFIG_RDMA),y)
|
||||
+ifeq ($(CONFIG_PVRDMA),y)
|
||||
obj-$(CONFIG_PCI) += rdma_utils.o rdma_backend.o rdma_rm.o
|
||||
obj-$(CONFIG_PCI) += vmw/pvrdma_dev_ring.o vmw/pvrdma_cmd.o \
|
||||
vmw/pvrdma_qp_ops.o vmw/pvrdma_main.o
|
10
emulators/qemu/files/patch-hw_rdma_vmw_pvrdma__cmd.c
Normal file
10
emulators/qemu/files/patch-hw_rdma_vmw_pvrdma__cmd.c
Normal file
|
@ -0,0 +1,10 @@
|
|||
--- hw/rdma/vmw/pvrdma_cmd.c.orig 2019-04-12 03:28:28 UTC
|
||||
+++ hw/rdma/vmw/pvrdma_cmd.c
|
||||
@@ -16,7 +16,6 @@
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "cpu.h"
|
||||
-#include <linux/types.h>
|
||||
#include "hw/hw.h"
|
||||
#include "hw/pci/pci.h"
|
||||
#include "hw/pci/pci_ids.h"
|
|
@ -1,6 +1,6 @@
|
|||
--- include/net/net.h.orig 2015-11-03 20:01:34 UTC
|
||||
--- include/net/net.h.orig 2019-04-12 03:28:28 UTC
|
||||
+++ include/net/net.h
|
||||
@@ -202,8 +202,8 @@ void qmp_netdev_add(QDict *qdict, QObjec
|
||||
@@ -210,8 +210,8 @@ void qmp_netdev_add(QDict *qdict, QObject **ret, Error
|
||||
int net_hub_id_for_client(NetClientState *nc, int *id);
|
||||
NetClientState *net_hub_port_find(int hub_id);
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- include/qemu/atomic.h.orig 2017-04-20 14:57:00 UTC
|
||||
--- include/qemu/atomic.h.orig 2019-04-12 03:28:28 UTC
|
||||
+++ include/qemu/atomic.h
|
||||
@@ -182,10 +182,12 @@
|
||||
@@ -200,10 +200,12 @@
|
||||
/* Provide shorter names for GCC atomic builtins, return old value */
|
||||
#define atomic_fetch_inc(ptr) __atomic_fetch_add(ptr, 1, __ATOMIC_SEQ_CST)
|
||||
#define atomic_fetch_dec(ptr) __atomic_fetch_sub(ptr, 1, __ATOMIC_SEQ_CST)
|
||||
|
@ -13,7 +13,7 @@
|
|||
#define atomic_fetch_xor(ptr, n) __atomic_fetch_xor(ptr, n, __ATOMIC_SEQ_CST)
|
||||
|
||||
#define atomic_inc_fetch(ptr) __atomic_add_fetch(ptr, 1, __ATOMIC_SEQ_CST)
|
||||
@@ -199,10 +201,12 @@
|
||||
@@ -217,10 +219,12 @@
|
||||
/* And even shorter names that return void. */
|
||||
#define atomic_inc(ptr) ((void) __atomic_fetch_add(ptr, 1, __ATOMIC_SEQ_CST))
|
||||
#define atomic_dec(ptr) ((void) __atomic_fetch_sub(ptr, 1, __ATOMIC_SEQ_CST))
|
||||
|
@ -26,7 +26,7 @@
|
|||
#define atomic_xor(ptr, n) ((void) __atomic_fetch_xor(ptr, n, __ATOMIC_SEQ_CST))
|
||||
|
||||
#else /* __ATOMIC_RELAXED */
|
||||
@@ -370,10 +374,12 @@
|
||||
@@ -388,10 +392,12 @@
|
||||
|
||||
#define atomic_inc_fetch(ptr) __sync_add_and_fetch(ptr, 1)
|
||||
#define atomic_dec_fetch(ptr) __sync_add_and_fetch(ptr, -1)
|
||||
|
@ -39,7 +39,7 @@
|
|||
#define atomic_xor_fetch(ptr, n) __sync_xor_and_fetch(ptr, n)
|
||||
|
||||
#define atomic_cmpxchg(ptr, old, new) __sync_val_compare_and_swap(ptr, old, new)
|
||||
@@ -382,10 +388,12 @@
|
||||
@@ -400,10 +406,12 @@
|
||||
/* And even shorter names that return void. */
|
||||
#define atomic_inc(ptr) ((void) __sync_fetch_and_add(ptr, 1))
|
||||
#define atomic_dec(ptr) ((void) __sync_fetch_and_add(ptr, -1))
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- net/tap-bsd.c.orig 2015-11-03 20:01:34 UTC
|
||||
--- net/tap-bsd.c.orig 2019-04-12 03:28:28 UTC
|
||||
+++ net/tap-bsd.c
|
||||
@@ -29,6 +29,7 @@
|
||||
@@ -31,6 +31,7 @@
|
||||
|
||||
#if defined(__NetBSD__) || defined(__FreeBSD__)
|
||||
#include <sys/ioctl.h>
|
||||
|
|
|
@ -1,6 +1,15 @@
|
|||
--- qemu-doc.texi.orig 2015-11-03 20:01:35 UTC
|
||||
--- qemu-doc.texi.orig 2019-04-12 03:28:29 UTC
|
||||
+++ qemu-doc.texi
|
||||
@@ -355,7 +355,8 @@ Send Ctrl-a
|
||||
@@ -198,7 +198,7 @@ VGA BIOS.
|
||||
QEMU uses YM3812 emulation by Tatsuyuki Satoh.
|
||||
|
||||
QEMU uses GUS emulation (GUSEMU32 @url{http://www.deinmeister.de/gusemu/})
|
||||
-by Tibor "TS" Schütz.
|
||||
+by Tibor "TS" Schuetz.
|
||||
|
||||
Note that, by default, GUS shares IRQ(7) with parallel ports and so
|
||||
QEMU must be told to not have parallel ports to have working GUS.
|
||||
@@ -558,7 +558,8 @@ Send the escape character to the frontend
|
||||
|
||||
@c man begin SEEALSO
|
||||
The HTML documentation of QEMU for more precise information and Linux
|
||||
|
|
|
@ -1,123 +0,0 @@
|
|||
diff --git configure configure
|
||||
index 457684a7e6..3da60d8436 100755
|
||||
--- configure
|
||||
+++ configure
|
||||
@@ -353,6 +353,7 @@ hax="no"
|
||||
hvf="no"
|
||||
whpx="no"
|
||||
rdma=""
|
||||
+pvrdma=""
|
||||
gprof="no"
|
||||
debug_tcg="no"
|
||||
debug="no"
|
||||
@@ -1308,6 +1309,10 @@ for opt do
|
||||
;;
|
||||
--disable-rdma) rdma="no"
|
||||
;;
|
||||
+ --enable-pvrdma) pvrdma="yes"
|
||||
+ ;;
|
||||
+ --disable-pvrdma) pvrdma="no"
|
||||
+ ;;
|
||||
--with-gtkabi=*) gtkabi="$optarg"
|
||||
;;
|
||||
--disable-vte) vte="no"
|
||||
@@ -1593,7 +1598,8 @@ disabled with --disable-FEATURE, default is enabled if available:
|
||||
hax HAX acceleration support
|
||||
hvf Hypervisor.framework acceleration support
|
||||
whpx Windows Hypervisor Platform acceleration support
|
||||
- rdma Enable RDMA-based migration and PVRDMA support
|
||||
+ rdma Enable RDMA-based migration
|
||||
+ pvrdma Enable PVRDMA support
|
||||
vde support for vde network
|
||||
netmap support for netmap network
|
||||
linux-aio Linux AIO support
|
||||
@@ -2971,6 +2977,48 @@ EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
+##########################################
|
||||
+# PVRDMA detection
|
||||
+
|
||||
+cat > $TMPC <<EOF &&
|
||||
+#include <sys/mman.h>
|
||||
+
|
||||
+int
|
||||
+main(void)
|
||||
+{
|
||||
+ char buf = 0;
|
||||
+ void *addr = &buf;
|
||||
+ addr = mremap(addr, 0, 1, MREMAP_MAYMOVE | MREMAP_FIXED);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+EOF
|
||||
+
|
||||
+if test "$rdma" = "yes" ; then
|
||||
+ case "$pvrdma" in
|
||||
+ "")
|
||||
+ if compile_prog "" ""; then
|
||||
+ pvrdma="yes"
|
||||
+ else
|
||||
+ pvrdma="no"
|
||||
+ fi
|
||||
+ ;;
|
||||
+ "yes")
|
||||
+ if ! compile_prog "" ""; then
|
||||
+ error_exit "PVRDMA is not supported since mremap is not implemented"
|
||||
+ fi
|
||||
+ pvrdma="yes"
|
||||
+ ;;
|
||||
+ "no")
|
||||
+ pvrdma="no"
|
||||
+ ;;
|
||||
+ esac
|
||||
+else
|
||||
+ if test "$pvrdma" = "yes" ; then
|
||||
+ error_exit "PVRDMA requires rdma suppport"
|
||||
+ fi
|
||||
+ pvrdma="no"
|
||||
+fi
|
||||
|
||||
##########################################
|
||||
# VNC SASL detection
|
||||
@@ -5820,6 +5868,7 @@ if test "$tcg" = "yes" ; then
|
||||
fi
|
||||
echo "malloc trim support $malloc_trim"
|
||||
echo "RDMA support $rdma"
|
||||
+echo "PVRDMA support $pvrdma"
|
||||
echo "fdt support $fdt"
|
||||
echo "membarrier $membarrier"
|
||||
echo "preadv support $preadv"
|
||||
@@ -6568,6 +6617,10 @@ if test "$rdma" = "yes" ; then
|
||||
echo "RDMA_LIBS=$rdma_libs" >> $config_host_mak
|
||||
fi
|
||||
|
||||
+if test "$pvrdma" = "yes" ; then
|
||||
+ echo "CONFIG_PVRDMA=y" >> $config_host_mak
|
||||
+fi
|
||||
+
|
||||
if test "$have_rtnetlink" = "yes" ; then
|
||||
echo "CONFIG_RTNETLINK=y" >> $config_host_mak
|
||||
fi
|
||||
diff --git hw/rdma/Makefile.objs hw/rdma/Makefile.objs
|
||||
index 3504c39d21..bd36cbf51c 100644
|
||||
--- hw/rdma/Makefile.objs
|
||||
+++ hw/rdma/Makefile.objs
|
||||
@@ -1,4 +1,4 @@
|
||||
-ifeq ($(CONFIG_RDMA),y)
|
||||
+ifeq ($(CONFIG_PVRDMA),y)
|
||||
obj-$(CONFIG_PCI) += rdma_utils.o rdma_backend.o rdma_rm.o
|
||||
obj-$(CONFIG_PCI) += vmw/pvrdma_dev_ring.o vmw/pvrdma_cmd.o \
|
||||
vmw/pvrdma_qp_ops.o vmw/pvrdma_main.o
|
||||
diff --git hw/rdma/vmw/pvrdma_cmd.c hw/rdma/vmw/pvrdma_cmd.c
|
||||
index 99019d8741..bd14b4bc47 100644
|
||||
--- hw/rdma/vmw/pvrdma_cmd.c
|
||||
+++ hw/rdma/vmw/pvrdma_cmd.c
|
||||
@@ -16,7 +16,6 @@
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "cpu.h"
|
||||
-#include <linux/types.h>
|
||||
#include "hw/hw.h"
|
||||
#include "hw/pci/pci.h"
|
||||
#include "hw/pci/pci_ids.h"
|
|
@ -2,6 +2,7 @@ bin/qemu-ga
|
|||
bin/qemu-i386
|
||||
bin/qemu-img
|
||||
bin/qemu-io
|
||||
%%GTK3%%bin/qemu-keymap
|
||||
bin/qemu-nbd
|
||||
%%NO_X86_TARGETS%%bin/qemu-sparc
|
||||
%%NO_X86_TARGETS%%bin/qemu-sparc64
|
||||
|
@ -134,10 +135,10 @@ man/man8/qemu-nbd.8.gz
|
|||
%%DATADIR%%/keymaps/sv
|
||||
%%DATADIR%%/keymaps/th
|
||||
%%DATADIR%%/keymaps/tr
|
||||
%%GTK2%%share/locale/bg/LC_MESSAGES/qemu.mo
|
||||
%%GTK2%%share/locale/de_DE/LC_MESSAGES/qemu.mo
|
||||
%%GTK2%%share/locale/fr_FR/LC_MESSAGES/qemu.mo
|
||||
%%GTK2%%share/locale/it/LC_MESSAGES/qemu.mo
|
||||
%%GTK2%%share/locale/hu/LC_MESSAGES/qemu.mo
|
||||
%%GTK2%%share/locale/tr/LC_MESSAGES/qemu.mo
|
||||
%%GTK2%%share/locale/zh_CN/LC_MESSAGES/qemu.mo
|
||||
%%GTK3%%share/locale/bg/LC_MESSAGES/qemu.mo
|
||||
%%GTK3%%share/locale/de_DE/LC_MESSAGES/qemu.mo
|
||||
%%GTK3%%share/locale/fr_FR/LC_MESSAGES/qemu.mo
|
||||
%%GTK3%%share/locale/it/LC_MESSAGES/qemu.mo
|
||||
%%GTK3%%share/locale/hu/LC_MESSAGES/qemu.mo
|
||||
%%GTK3%%share/locale/tr/LC_MESSAGES/qemu.mo
|
||||
%%GTK3%%share/locale/zh_CN/LC_MESSAGES/qemu.mo
|
||||
|
|
Loading…
Reference in a new issue