Browse Source

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>
lilik-openwrt-22.03
Yousong Zhou 7 years ago
parent
commit
8bd3bd86ad
9 changed files with 87 additions and 74 deletions
  1. +6
    -6
      utils/qemu/Makefile
  2. +0
    -11
      utils/qemu/patches/0001-allow-disable-fortify-source.patch
  3. +27
    -0
      utils/qemu/patches/0001-configure-allow-disable-fortify_source.patch
  4. +19
    -5
      utils/qemu/patches/0002-disas-fix-compilation-failure-when-isnan-is-a-macro.patch
  5. +0
    -11
      utils/qemu/patches/0002-setting-language-type-for-_asm-files.patch
  6. +0
    -14
      utils/qemu/patches/0003-disable-avx2_opt-with-musl.patch
  7. +35
    -0
      utils/qemu/patches/0003-pc-bios-fix-compilation-when-AS-is-actually-gcc-driv.patch
  8. +0
    -10
      utils/qemu/patches/0004-pixman-fix-detection-of-mips-dspr2.patch
  9. +0
    -17
      utils/qemu/patches/0005-pixman-arm-neon-assembler-fix.patch

+ 6
- 6
utils/qemu/Makefile View File

@ -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_RELEASE:=3
PKG_VERSION:=2.11.1
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 \


+ 0
- 11
utils/qemu/patches/0001-allow-disable-fortify-source.patch View File

@ -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"

+ 27
- 0
utils/qemu/patches/0001-configure-allow-disable-fortify_source.patch View File

@ -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

utils/qemu/patches/0006-libvixl-cxx-macro-isnan.patch → utils/qemu/patches/0002-disas-fix-compilation-failure-when-isnan-is-a-macro.patch View File


+ 0
- 11
utils/qemu/patches/0002-setting-language-type-for-_asm-files.patch View File

@ -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)$@")

+ 0
- 14
utils/qemu/patches/0003-disable-avx2_opt-with-musl.patch View File

@ -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

+ 35
- 0
utils/qemu/patches/0003-pc-bios-fix-compilation-when-AS-is-actually-gcc-driv.patch View File

@ -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

+ 0
- 10
utils/qemu/patches/0004-pixman-fix-detection-of-mips-dspr2.patch View File

@ -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)

+ 0
- 17
utils/qemu/patches/0005-pixman-arm-neon-assembler-fix.patch View File

@ -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…
Cancel
Save