From 562b652dea1b96dbed191a8629313a524c715701 Mon Sep 17 00:00:00 2001 From: Cole Robinson Date: Jun 13 2013 18:57:15 +0000 Subject: Fix build with both new and old fdt --- diff --git a/0007-Remove-libfdt_env-use-system-version.patch b/0007-Remove-libfdt_env-use-system-version.patch deleted file mode 100644 index b9d078b..0000000 --- a/0007-Remove-libfdt_env-use-system-version.patch +++ /dev/null @@ -1,54 +0,0 @@ -From f93b077671cbdabd16fc05bb33d9e49110fb0e63 Mon Sep 17 00:00:00 2001 -From: Cole Robinson -Date: Wed, 12 Jun 2013 12:33:48 -0400 -Subject: [PATCH] Remove libfdt_env, use system version - -Seems to conflict with newer libfdt, see discussion here: -https://bugzilla.redhat.com/show_bug.cgi?id=969955 ---- - include/libfdt_env.h | 36 ------------------------------------ - 1 file changed, 36 deletions(-) - delete mode 100644 include/libfdt_env.h - -diff --git a/include/libfdt_env.h b/include/libfdt_env.h -deleted file mode 100644 -index 3667d4c..0000000 ---- a/include/libfdt_env.h -+++ /dev/null -@@ -1,36 +0,0 @@ --/* -- * This program is free software; you can redistribute it and/or modify -- * it under the terms of the GNU General Public License, version 2, as -- * published by the Free Software Foundation. -- * -- * This program is distributed in the hope that it will be useful, -- * but WITHOUT ANY WARRANTY; without even the implied warranty of -- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- * GNU General Public License for more details. -- * -- * You should have received a copy of the GNU General Public License -- * along with this program; if not, see . -- * -- * Copyright IBM Corp. 2008 -- * Authors: Hollis Blanchard -- * -- */ -- --#ifndef _LIBFDT_ENV_H --#define _LIBFDT_ENV_H -- --#include "qemu/bswap.h" -- --#ifdef HOST_WORDS_BIGENDIAN --#define fdt32_to_cpu(x) (x) --#define cpu_to_fdt32(x) (x) --#define fdt64_to_cpu(x) (x) --#define cpu_to_fdt64(x) (x) --#else --#define fdt32_to_cpu(x) bswap32(x) --#define cpu_to_fdt32(x) bswap32(x) --#define fdt64_to_cpu(x) bswap64(x) --#define cpu_to_fdt64(x) bswap64(x) --#endif -- --#endif /* _LIBFDT_ENV_H */ diff --git a/0007-fdt-update-embedded-header-file-from-upstream-to-fix.patch b/0007-fdt-update-embedded-header-file-from-upstream-to-fix.patch new file mode 100644 index 0000000..bf86b54 --- /dev/null +++ b/0007-fdt-update-embedded-header-file-from-upstream-to-fix.patch @@ -0,0 +1,80 @@ +From 53800f1a71cdbc9e0deadd00e77d5d60a45ab999 Mon Sep 17 00:00:00 2001 +From: Andre Przywara +Date: Tue, 7 May 2013 14:36:59 +0200 +Subject: [PATCH] fdt: update embedded header file from upstream to fix + compilation + +Upstream dtc.git introduced a change in libfdt_env.h, which breaks +compilation with QEMU's version of it: + + CC arm-softmmu/device_tree.o +In file included from /usr/include/libfdt.h:55:0, + from /src/qemu.git/device_tree.c:28: +/usr/include/fdt.h:7:2: error: unknown type name 'fdt32_t' + ... + +The culprit is: +commit feafcd972cb744750a65728440c99526e6199a6d +Author: Kim Phillips +Date: Wed Nov 28 17:33:01 2012 -0600 + + dtc/libfdt: introduce fdt types for annotation by endian checkers + ... + +Pull the new definitions into QEMU's version of the file. This change +also works with older installed versions of dtc. +The upstream version got a "GPL or BSD" dual license header meanwhile. +I retained the original GPL license header from QEMU, only added +the original copyrights. + +Signed-off-by: Andre Przywara +--- + include/libfdt_env.h | 25 ++++++++++++++++++++----- + 1 file changed, 20 insertions(+), 5 deletions(-) + +diff --git a/include/libfdt_env.h b/include/libfdt_env.h +index 3667d4c..aad54bb 100644 +--- a/include/libfdt_env.h ++++ b/include/libfdt_env.h +@@ -1,4 +1,12 @@ ++#ifndef _LIBFDT_ENV_H ++#define _LIBFDT_ENV_H + /* ++ * libfdt - Flat Device Tree manipulation ++ * Copyright (C) 2006 David Gibson, IBM Corporation. ++ * Copyright 2012 Kim Phillips, Freescale Semiconductor. ++ * Adaptation to QEMU: Copyright IBM Corp. 2008 ++ * by Hollis Blanchard ++ * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License, version 2, as + * published by the Free Software Foundation. +@@ -11,16 +19,23 @@ + * You should have received a copy of the GNU General Public License + * along with this program; if not, see . + * +- * Copyright IBM Corp. 2008 +- * Authors: Hollis Blanchard + * + */ + +-#ifndef _LIBFDT_ENV_H +-#define _LIBFDT_ENV_H +- + #include "qemu/bswap.h" + ++#ifdef __CHECKER__ ++#define __force __attribute__((force)) ++#define __bitwise __attribute__((bitwise)) ++#else ++#define __force ++#define __bitwise ++#endif ++ ++typedef uint16_t __bitwise fdt16_t; ++typedef uint32_t __bitwise fdt32_t; ++typedef uint64_t __bitwise fdt64_t; ++ + #ifdef HOST_WORDS_BIGENDIAN + #define fdt32_to_cpu(x) (x) + #define cpu_to_fdt32(x) (x) diff --git a/qemu.spec b/qemu.spec index 5941b7c..4204095 100644 --- a/qemu.spec +++ b/qemu.spec @@ -140,7 +140,7 @@ Summary: QEMU is a FAST! processor emulator Name: qemu Version: 1.5.0 -Release: 6%{?dist} +Release: 7%{?dist} Epoch: 2 License: GPLv2+ and LGPLv2+ and BSD Group: Development/Tools @@ -191,7 +191,7 @@ Patch0005: 0005-qxl-Add-rom_size-compat-property-fix-migration-from-.patch # Fix rtl8139 + windows 7 + large transfers (bz #970240) Patch0006: 0006-rtl8139-flush-queued-packets-when-RxBufPtr-is-writte.patch # Fix build with rawhide libfdt -Patch0007: 0007-Remove-libfdt_env-use-system-version.patch +Patch0007: 0007-fdt-update-embedded-header-file-from-upstream-to-fix.patch BuildRequires: SDL-devel BuildRequires: zlib-devel @@ -1372,6 +1372,9 @@ getent passwd qemu >/dev/null || \ %endif %changelog +* Thu Jun 13 2013 Cole Robinson - 2:1.5.0-7 +- Fix build with both new and old fdt + * Wed Jun 12 2013 Cole Robinson - 2:1.5.0-6 - Fix build with rawhide libfdt