From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 9D8E2138263 for ; Tue, 17 May 2016 04:42:04 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 98A13E0858; Tue, 17 May 2016 04:42:02 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id B0082E0856 for ; Tue, 17 May 2016 04:42:01 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 724D8340CA5 for ; Tue, 17 May 2016 04:42:00 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id A543B969 for ; Tue, 17 May 2016 04:41:56 +0000 (UTC) From: "Mike Frysinger" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Mike Frysinger" Message-ID: <1463460094.6b13602fdf3ffadf7a32cf41f29580a686bd0802.vapier@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/qemu/files/, app-emulation/qemu/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-emulation/qemu/files/qemu-2.5.1-xfs-linux-headers.patch app-emulation/qemu/qemu-2.5.1.ebuild X-VCS-Directories: app-emulation/qemu/files/ app-emulation/qemu/ X-VCS-Committer: vapier X-VCS-Committer-Name: Mike Frysinger X-VCS-Revision: 6b13602fdf3ffadf7a32cf41f29580a686bd0802 X-VCS-Branch: master Date: Tue, 17 May 2016 04:41:56 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 16226c69-3ad8-412a-94ad-94c52a58491b X-Archives-Hash: 841e0278e88faf19a54a16c87b52b37d commit: 6b13602fdf3ffadf7a32cf41f29580a686bd0802 Author: Mike Frysinger gentoo org> AuthorDate: Tue May 17 04:40:51 2016 +0000 Commit: Mike Frysinger gentoo org> CommitDate: Tue May 17 04:41:34 2016 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b13602f app-emulation/qemu: workaround breakage in xfs/linux headers #577810 Add upstream patch to workaround some combinations of xfsprogs & linux headers so we don't have to worry about stable breakage anymore. This fix is already in upstream & unstable versions. .../qemu/files/qemu-2.5.1-xfs-linux-headers.patch | 82 ++++++++++++++++++++++ app-emulation/qemu/qemu-2.5.1.ebuild | 1 + 2 files changed, 83 insertions(+) diff --git a/app-emulation/qemu/files/qemu-2.5.1-xfs-linux-headers.patch b/app-emulation/qemu/files/qemu-2.5.1-xfs-linux-headers.patch new file mode 100644 index 0000000..743171b --- /dev/null +++ b/app-emulation/qemu/files/qemu-2.5.1-xfs-linux-headers.patch @@ -0,0 +1,82 @@ +https://bugs.gentoo.org/577810 + +From 277abf15a60f7653bfb05ffb513ed74ffdaea1b7 Mon Sep 17 00:00:00 2001 +From: Jan Vesely +Date: Fri, 29 Apr 2016 13:15:23 -0400 +Subject: [PATCH] configure: Check if struct fsxattr is available from linux + header +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes build failure with --enable-xfsctl and +new linux headers (>=4.5) and older xfsprogs(<4.5): +In file included from /usr/include/xfs/xfs.h:38:0, + from /var/tmp/portage/app-emulation/qemu-2.5.0-r1/work/qemu-2.5.0/block/raw-posix.c:97: +/usr/include/xfs/xfs_fs.h:42:8: error: redefinition of ‘struct fsxattr’ + struct fsxattr { + ^ +In file included from /var/tmp/portage/app-emulation/qemu-2.5.0-r1/work/qemu-2.5.0/block/raw-posix.c:60:0: +/usr/include/linux/fs.h:155:8: note: originally defined here + struct fsxattr { + +This is really a bug in the system headers, but we can work around it +by defining HAVE_FSXATTR in the QEMU headers if linux/fs.h provides +the struct, so that xfs_fs.h doesn't try to define it as well. + +CC: qemu-trivial@nongnu.org +CC: Markus Armbruster +CC: Peter Maydell +CC: Stefan Weil +Tested-by: Stefan Weil +Signed-off-by: Jan Vesely +[PMM: adjusted commit message, comments] +Signed-off-by: Peter Maydell +--- + configure | 23 +++++++++++++++++++++++ + 1 file changed, 23 insertions(+) + +diff --git a/configure b/configure +index ab54f3c..c37fc5f 100755 +--- a/configure ++++ b/configure +@@ -4494,6 +4494,21 @@ if test "$fortify_source" != "no"; then + fi + + ########################################## ++# check if struct fsxattr is available via linux/fs.h ++ ++have_fsxattr=no ++cat > $TMPC << EOF ++#include ++struct fsxattr foo; ++int main(void) { ++ return 0; ++} ++EOF ++if compile_prog "" "" ; then ++ have_fsxattr=yes ++fi ++ ++########################################## + # End of CC checks + # After here, no more $cc or $ld runs + +@@ -5160,6 +5175,14 @@ fi + if test "$have_ifaddrs_h" = "yes" ; then + echo "HAVE_IFADDRS_H=y" >> $config_host_mak + fi ++ ++# Work around a system header bug with some kernel/XFS header ++# versions where they both try to define 'struct fsxattr': ++# xfs headers will not try to redefine structs from linux headers ++# if this macro is set. ++if test "$have_fsxattr" = "yes" ; then ++ echo "HAVE_FSXATTR=y" >> $config_host_mak ++fi + if test "$vte" = "yes" ; then + echo "CONFIG_VTE=y" >> $config_host_mak + echo "VTE_CFLAGS=$vte_cflags" >> $config_host_mak +-- +2.8.2 + diff --git a/app-emulation/qemu/qemu-2.5.1.ebuild b/app-emulation/qemu/qemu-2.5.1.ebuild index 27d1c30..ae5fa97 100644 --- a/app-emulation/qemu/qemu-2.5.1.ebuild +++ b/app-emulation/qemu/qemu-2.5.1.ebuild @@ -343,6 +343,7 @@ src_prepare() { epatch "${FILESDIR}"/${PN}-2.5.1-CVE-2016-4020.patch #580040 epatch "${FILESDIR}"/${PN}-2.5.1-CVE-2015-8558.patch #568246 #580426 epatch "${FILESDIR}"/${PN}-2.5.0-sysmacros.patch + epatch "${FILESDIR}"/${PN}-2.5.1-xfs-linux-headers.patch #577810 # Fix ld and objcopy being called directly tc-export AR LD OBJCOPY