Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-devel

Re: [Xen-devel] 3.1.x and 3.2.x releases

To: <caglar@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] 3.1.x and 3.2.x releases
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Fri, 28 Dec 2007 13:16:50 +0000
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Fri, 28 Dec 2007 05:10:27 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <200712281217.11561.caglar@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AchJU+fKJibdeLVHEdyWZAAWy6hiGQ==
Thread-topic: [Xen-devel] 3.1.x and 3.2.x releases
User-agent: Microsoft-Entourage/11.3.6.070618
Oh, it's because your stdint.h type definitions are macros rather than
typedefs. I believe the C spec requires them to be typedef names (Section
7.18 of the C99 draft spec). It looks like the problem stems from the
stdint.h supplied with gnulib, included in libvirt-0.4.0. Why does libvirt
require its own stdint.h?

I'm pretty sure you'd have the same problem building against the 3.2.0-rc
public headers.

 -- Keir

On 28/12/07 10:17, "S.Çağlar Onur" <caglar@xxxxxxxxxxxxx> wrote:

> Hi Keir;
> 
> 28 Ara 2007 Cum tarihinde, Keir Fraser şunları yazmıştı:
>> It's not obvious what the problem is. DEFINE_XEN_GUEST_HANDLE() is defined
>> at that point in xen.h because we have used it earlier. This is also true
>> for uint8_t, uint16_t, etc. You'll have to do a bit more digging (e.g., use
>> gcc -E option to get the post-processed source, and see if that shows
>> anything obviously wrong).
> 
> Seems like
> 
> [...]
> DEFINE_XEN_GUEST_HANDLE(uint8_t);
> DEFINE_XEN_GUEST_HANDLE(uint16_t);
> DEFINE_XEN_GUEST_HANDLE(uint32_t);
> DEFINE_XEN_GUEST_HANDLE(uint64_t);
> [...]
> 
> in xen.h converted
> 
> [...]
> typedef unsigned char * __guest_handle_unsigned char;
> typedef unsigned short int * __guest_handle_unsigned short int;
> typedef unsigned int * __guest_handle_unsigned int;
> typedef unsigned long long int * __guest_handle_unsigned long long int;
> [...]
> 
> and
> 
> [...]
>             XEN_GUEST_HANDLE(uint8_t) edid;
> [...]
> 
> in platform.h converted
> 
> [...]
>             __guest_handle_unsigned char edid;
> [...]
> 
> which causes the build errors.
> 
> Cheers



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel