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 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.
|
||||
# See /LICENSE for more information.
|
||||
|
@ -9,15 +9,16 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=qemu
|
||||
PKG_VERSION:=2.6.2
|
||||
PKG_RELEASE:=3
|
||||
PKG_VERSION:=2.11.1
|
||||
PKG_RELEASE:=1
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_HASH:=9a7ec64f147b9e1e570c410e00ebe271869b5d4c85392ba047db7617c297faa3
|
||||
PKG_HASH:=d9df2213ceed32e91dab7bc9dd19c1af83f91ba72c7aeef7605dfaaf81732ccb
|
||||
PKG_SOURCE_URL:=http://wiki.qemu-project.org/download/
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_LICENSE_FILES:=LICENSE tcg/LICENSE
|
||||
PKG_MAINTAINER:=Yousong Zhou <yszhou4tech@gmail.com>
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_INSTALL:=1
|
||||
PKG_USE_MIPS16:=0
|
||||
|
||||
|
@ -123,7 +124,7 @@ define qemu-target
|
|||
TITLE:=QEMU target $(1)
|
||||
URL:=http://www.qemu.org
|
||||
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
|
||||
|
||||
define Package/qemu-$(1)/description
|
||||
|
@ -211,7 +212,6 @@ CONFIGURE_ARGS += \
|
|||
--disable-tools \
|
||||
--disable-seccomp \
|
||||
--disable-glusterfs \
|
||||
--disable-archipelago \
|
||||
--disable-gtk \
|
||||
--disable-gnutls \
|
||||
--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
|
||||
+++ b/disas/libvixl/vixl/utils.h 2016-11-22 22:55:44.639618185 +0800
|
||||
@@ -118,11 +118,17 @@ double double_pack(uint64_t sign, uint64
|
||||
From 83e72b93889fbcbbfff281b0dbcc58c5a7455257 Mon Sep 17 00:00:00 2001
|
||||
From: Yousong Zhou <yszhou4tech@gmail.com>
|
||||
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.
|
||||
int float16classify(float16 value);
|
||||
|
||||
|
@ -19,7 +30,7 @@
|
|||
return true;
|
||||
}
|
||||
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) {
|
||||
const uint32_t kFP32QuietNaNMask = 0x00400000;
|
||||
uint32_t raw = float_to_rawbits(num);
|
||||
|
@ -28,7 +39,7 @@
|
|||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -148,21 +154,21 @@ inline bool IsSignallingNaN(float16 num)
|
||||
@@ -148,21 +154,21 @@ inline bool IsSignallingNaN(float16 num) {
|
||||
|
||||
template <typename T>
|
||||
inline bool IsQuietNaN(T num) {
|
||||
|
@ -53,3 +64,6 @@
|
|||
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