qemu: bump to version 2.11.1
Here are the notable changes - pixman is now not part of the release tarball and is required as an external dependency - archipelago is removed by upstream - patches are regenerated with git-format-patch - ifunc requirement is now removed Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
This commit is contained in:
parent
e35e2bf91b
commit
8bd3bd86ad
9 changed files with 87 additions and 74 deletions
|
@ -1,6 +1,6 @@
|
||||||
#
|
#
|
||||||
# Copyright (C) 2016 OpenWrt.org
|
# Copyright (C) 2016 OpenWrt.org
|
||||||
# Copyright (C) 2016 Yousong Zhou <yszhou4tech@gmail.com>
|
# Copyright (C) 2016-2018 Yousong Zhou <yszhou4tech@gmail.com>
|
||||||
#
|
#
|
||||||
# This is free software, licensed under the GNU General Public License v2.
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
# See /LICENSE for more information.
|
# See /LICENSE for more information.
|
||||||
|
@ -9,15 +9,16 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=qemu
|
PKG_NAME:=qemu
|
||||||
PKG_VERSION:=2.6.2
|
PKG_VERSION:=2.11.1
|
||||||
PKG_RELEASE:=3
|
PKG_RELEASE:=1
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||||
PKG_HASH:=9a7ec64f147b9e1e570c410e00ebe271869b5d4c85392ba047db7617c297faa3
|
PKG_HASH:=d9df2213ceed32e91dab7bc9dd19c1af83f91ba72c7aeef7605dfaaf81732ccb
|
||||||
PKG_SOURCE_URL:=http://wiki.qemu-project.org/download/
|
PKG_SOURCE_URL:=http://wiki.qemu-project.org/download/
|
||||||
PKG_LICENSE:=GPL-2.0
|
PKG_LICENSE:=GPL-2.0
|
||||||
PKG_LICENSE_FILES:=LICENSE tcg/LICENSE
|
PKG_LICENSE_FILES:=LICENSE tcg/LICENSE
|
||||||
PKG_MAINTAINER:=Yousong Zhou <yszhou4tech@gmail.com>
|
PKG_MAINTAINER:=Yousong Zhou <yszhou4tech@gmail.com>
|
||||||
|
|
||||||
|
PKG_BUILD_PARALLEL:=1
|
||||||
PKG_INSTALL:=1
|
PKG_INSTALL:=1
|
||||||
PKG_USE_MIPS16:=0
|
PKG_USE_MIPS16:=0
|
||||||
|
|
||||||
|
@ -123,7 +124,7 @@ define qemu-target
|
||||||
TITLE:=QEMU target $(1)
|
TITLE:=QEMU target $(1)
|
||||||
URL:=http://www.qemu.org
|
URL:=http://www.qemu.org
|
||||||
DEPENDS:= +glib2 +libpthread +zlib $(CXX_DEPENDS) $(QEMU_DEPS_IN_HOST) \
|
DEPENDS:= +glib2 +libpthread +zlib $(CXX_DEPENDS) $(QEMU_DEPS_IN_HOST) \
|
||||||
$(if $(filter %-softmmu,$(1)),+libncurses +libfdt +qemu-blobs)
|
$(if $(filter %-softmmu,$(1)),+libncurses +libfdt +pixman +qemu-blobs)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/qemu-$(1)/description
|
define Package/qemu-$(1)/description
|
||||||
|
@ -211,7 +212,6 @@ CONFIGURE_ARGS += \
|
||||||
--disable-tools \
|
--disable-tools \
|
||||||
--disable-seccomp \
|
--disable-seccomp \
|
||||||
--disable-glusterfs \
|
--disable-glusterfs \
|
||||||
--disable-archipelago \
|
|
||||||
--disable-gtk \
|
--disable-gtk \
|
||||||
--disable-gnutls \
|
--disable-gnutls \
|
||||||
--disable-nettle \
|
--disable-nettle \
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
--- a/configure.orig 2016-11-22 11:53:25.739180380 +0800
|
|
||||||
+++ b/configure 2016-11-22 11:53:55.183189596 +0800
|
|
||||||
@@ -1147,6 +1147,8 @@ for opt do
|
|
||||||
;;
|
|
||||||
--enable-jemalloc) jemalloc="yes"
|
|
||||||
;;
|
|
||||||
+ --disable-fortify-source) fortify_source="no"
|
|
||||||
+ ;;
|
|
||||||
*)
|
|
||||||
echo "ERROR: unknown option $opt"
|
|
||||||
echo "Try '$0 --help' for more information"
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
From 0b4011cd0983ced6e065f397049f967656494793 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Yousong Zhou <yszhou4tech@gmail.com>
|
||||||
|
Date: Sat, 24 Feb 2018 13:43:19 +0800
|
||||||
|
Subject: [PATCH 1/3] configure: allow disable fortify_source
|
||||||
|
|
||||||
|
Tell build system of qemu to not add _FORTIFY_SOURCE options and let the
|
||||||
|
OpenWrt base build system decide flavor of fortify_source to use
|
||||||
|
---
|
||||||
|
configure | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure b/configure
|
||||||
|
index 0c6e757..8ea3fdd 100755
|
||||||
|
--- a/configure
|
||||||
|
+++ b/configure
|
||||||
|
@@ -1313,6 +1313,8 @@ for opt do
|
||||||
|
;;
|
||||||
|
--disable-git-update) git_update=no
|
||||||
|
;;
|
||||||
|
+ --disable-fortify-source) fortify_source="no"
|
||||||
|
+ ;;
|
||||||
|
*)
|
||||||
|
echo "ERROR: unknown option $opt"
|
||||||
|
echo "Try '$0 --help' for more information"
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
|
@ -1,6 +1,17 @@
|
||||||
--- a/disas/libvixl/vixl/utils.h.orig 2016-11-22 22:36:20.691253883 +0800
|
From 83e72b93889fbcbbfff281b0dbcc58c5a7455257 Mon Sep 17 00:00:00 2001
|
||||||
+++ b/disas/libvixl/vixl/utils.h 2016-11-22 22:55:44.639618185 +0800
|
From: Yousong Zhou <yszhou4tech@gmail.com>
|
||||||
@@ -118,11 +118,17 @@ double double_pack(uint64_t sign, uint64
|
Date: Sat, 24 Feb 2018 13:45:25 +0800
|
||||||
|
Subject: [PATCH 2/3] disas: fix compilation failure when isnan is a macro
|
||||||
|
|
||||||
|
---
|
||||||
|
disas/libvixl/vixl/utils.h | 16 +++++++++++-----
|
||||||
|
1 file changed, 11 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/disas/libvixl/vixl/utils.h b/disas/libvixl/vixl/utils.h
|
||||||
|
index 5ab134e..df30663 100644
|
||||||
|
--- a/disas/libvixl/vixl/utils.h
|
||||||
|
+++ b/disas/libvixl/vixl/utils.h
|
||||||
|
@@ -118,11 +118,17 @@ double double_pack(uint64_t sign, uint64_t exp, uint64_t mantissa);
|
||||||
// An fpclassify() function for 16-bit half-precision floats.
|
// An fpclassify() function for 16-bit half-precision floats.
|
||||||
int float16classify(float16 value);
|
int float16classify(float16 value);
|
||||||
|
|
||||||
|
@ -19,7 +30,7 @@
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@@ -132,7 +138,7 @@ inline bool IsSignallingNaN(double num)
|
@@ -132,7 +138,7 @@ inline bool IsSignallingNaN(double num) {
|
||||||
inline bool IsSignallingNaN(float num) {
|
inline bool IsSignallingNaN(float num) {
|
||||||
const uint32_t kFP32QuietNaNMask = 0x00400000;
|
const uint32_t kFP32QuietNaNMask = 0x00400000;
|
||||||
uint32_t raw = float_to_rawbits(num);
|
uint32_t raw = float_to_rawbits(num);
|
||||||
|
@ -28,7 +39,7 @@
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@@ -148,21 +154,21 @@ inline bool IsSignallingNaN(float16 num)
|
@@ -148,21 +154,21 @@ inline bool IsSignallingNaN(float16 num) {
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
inline bool IsQuietNaN(T num) {
|
inline bool IsQuietNaN(T num) {
|
||||||
|
@ -53,3 +64,6 @@
|
||||||
return rawbits_to_float(float_to_rawbits(num) | kFP32QuietNaNMask);
|
return rawbits_to_float(float_to_rawbits(num) | kFP32QuietNaNMask);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
--- a/rules.mak.orig 2016-11-22 13:30:40.933006727 +0800
|
|
||||||
+++ b/rules.mak 2016-11-22 13:30:47.229008698 +0800
|
|
||||||
@@ -70,7 +70,7 @@ LINK = $(call quiet-command, $(LINKPROG)
|
|
||||||
$(call quiet-command,$(CPP) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -o $@ $<," CPP $(TARGET_DIR)$@")
|
|
||||||
|
|
||||||
%.o: %.asm
|
|
||||||
- $(call quiet-command,$(AS) $(ASFLAGS) -o $@ $<," AS $(TARGET_DIR)$@")
|
|
||||||
+ $(call quiet-command,$(AS) $(ASFLAGS) -o $@ -x assembler $<," AS $(TARGET_DIR)$@")
|
|
||||||
|
|
||||||
%.o: %.cc
|
|
||||||
$(call quiet-command,$(CXX) $(QEMU_INCLUDES) $(QEMU_CXXFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) $($@-cflags) -c -o $@ $<," CXX $(TARGET_DIR)$@")
|
|
|
@ -1,14 +0,0 @@
|
||||||
--- a/configure.orig 2016-11-22 17:35:12.069598617 +0800
|
|
||||||
+++ b/configure 2016-11-22 18:24:01.042515353 +0800
|
|
||||||
@@ -1789,7 +1789,10 @@ static void foo(void) __attribute__((ifu
|
|
||||||
int main(void) { foo(); return 0; }
|
|
||||||
EOF
|
|
||||||
if compile_prog "-mavx2" "" ; then
|
|
||||||
- if readelf --syms $TMPE |grep "IFUNC.*foo" >/dev/null 2>&1; then
|
|
||||||
+ if readelf --program-headers $TMPE | grep -iq 'Requesting program interpreter: .*ld-musl'; then
|
|
||||||
+ # ifunc support is not available with dynamic linker of musl
|
|
||||||
+ avx2_opt="no"
|
|
||||||
+ elif readelf --syms $TMPE |grep "IFUNC.*foo" >/dev/null 2>&1; then
|
|
||||||
avx2_opt="yes"
|
|
||||||
fi
|
|
||||||
fi
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
From b6d4bff30f2bdc3a6f26c9f6c7f32e352270d119 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Yousong Zhou <yszhou4tech@gmail.com>
|
||||||
|
Date: Sat, 24 Feb 2018 13:46:31 +0800
|
||||||
|
Subject: [PATCH 3/3] pc-bios: fix compilation when $(AS) is actually gcc
|
||||||
|
driver
|
||||||
|
|
||||||
|
---
|
||||||
|
pc-bios/optionrom/Makefile | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
|
||||||
|
index a9a9e5e..f88b3ee 100644
|
||||||
|
--- a/pc-bios/optionrom/Makefile
|
||||||
|
+++ b/pc-bios/optionrom/Makefile
|
||||||
|
@@ -34,7 +34,7 @@ endif
|
||||||
|
QEMU_INCLUDES += -I$(SRC_PATH)
|
||||||
|
|
||||||
|
Wa = -Wa,
|
||||||
|
-ASFLAGS += -32
|
||||||
|
+ASFLAGS += $(Wa)-32
|
||||||
|
QEMU_CFLAGS += $(call cc-c-option, $(QEMU_CFLAGS), $(Wa)-32)
|
||||||
|
|
||||||
|
build-all: multiboot.bin linuxboot.bin linuxboot_dma.bin kvmvapic.bin
|
||||||
|
@@ -44,7 +44,7 @@ build-all: multiboot.bin linuxboot.bin linuxboot_dma.bin kvmvapic.bin
|
||||||
|
|
||||||
|
|
||||||
|
%.o: %.S
|
||||||
|
- $(call quiet-command,$(CPP) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) -c -o - $< | $(AS) $(ASFLAGS) -o $@,"AS","$(TARGET_DIR)$@")
|
||||||
|
+ $(call quiet-command,$(CPP) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) -c -o - $< | $(AS) $(ASFLAGS) -o $@ -x assembler -,"AS","$(TARGET_DIR)$@")
|
||||||
|
|
||||||
|
%.img: %.o
|
||||||
|
$(call quiet-command,$(LD) $(LDFLAGS_NOPIE) -m $(LD_I386_EMULATION) -T $(SRC_PATH)/pc-bios/optionrom/flat.lds -s -o $@ $<,"BUILD","$(TARGET_DIR)$@")
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
--- a/pixman/configure.ac.orig 2016-11-22 20:44:21.205150763 +0800
|
|
||||||
+++ b/pixman/configure.ac 2016-11-22 20:44:55.505161500 +0800
|
|
||||||
@@ -720,7 +720,6 @@ dnl Check if assembler is gas compatible
|
|
||||||
have_mips_dspr2=no
|
|
||||||
AC_MSG_CHECKING(whether to use MIPS DSPr2 assembler)
|
|
||||||
xserver_save_CFLAGS=$CFLAGS
|
|
||||||
-CFLAGS="-mdspr2 $CFLAGS"
|
|
||||||
|
|
||||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
|
||||||
#if !(defined(__mips__) && __mips_isa_rev >= 2)
|
|
|
@ -1,17 +0,0 @@
|
||||||
--- a/pixman/pixman/pixman-private.h.orig 2016-11-22 22:10:33.574769654 +0800
|
|
||||||
+++ b/pixman/pixman/pixman-private.h 2016-11-22 22:10:47.638774056 +0800
|
|
||||||
@@ -1,5 +1,3 @@
|
|
||||||
-#include <float.h>
|
|
||||||
-
|
|
||||||
#ifndef PIXMAN_PRIVATE_H
|
|
||||||
#define PIXMAN_PRIVATE_H
|
|
||||||
|
|
||||||
@@ -17,6 +15,8 @@
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
|
||||||
|
|
||||||
+#include <float.h>
|
|
||||||
+
|
|
||||||
#ifndef PACKAGE
|
|
||||||
# error config.h must be included before pixman-private.h
|
|
||||||
#endif
|
|
Loading…
Reference in a new issue