On Wed, Mar 09, 2011 at 02:01:06PM +0100, Matthias Bolte wrote: > 2011/3/9 Daniel Veillard <veillard@xxxxxxxxxx>: > > On Wed, Mar 09, 2011 at 12:18:44PM +0000, Daniel P. Berrange wrote: > >> On Wed, Mar 09, 2011 at 10:49:34AM +0100, Matthias Bolte wrote: > >> > I found this one while trying to compile ruby-libvirt. > >> > > >> > Matthias > >> > >> > From 6858713a7ea7fad961acbc4d4f3c0c53ede2302d Mon Sep 17 00:00:00 2001 > >> > From: Matthias Bolte <matthias.bolte@xxxxxxxxxxxxxx> > >> > Date: Wed, 9 Mar 2011 10:42:49 +0100 > >> > Subject: [PATCH] Include stdint.h in libvirt.h for INT64_MAX > >> > > >> > VIR_DOMAIN_MEMORY_PARAM_UNLIMITED uses INT64_MAX but stdint.h > >> > was not included. Therefore, libvirt.h was not selfcontained. > >> > >> I'm a little wary of doing this, because stdint.h isn't neccessary > >> the most portable header file & while libvirt internally can rely > >> on gnulib to fix problems, apps building against libvirt don't > >> have that. > >> > >> I think it could be better to just define VIR_DOMAIN_MEMORY_PARAM_UNLIMITED > >> directly to the right value, rather than in terms of INT64_MAX > > > > Agreed we should try to limit the dependancies from public headers > > to the minimum, in that case I'm fine hardcoding the value. > > > > Daniel > > > > Okay, so here's v2. > > Matthias > From f85a17d3493fc3c2c29da6460060338b4bbd73da Mon Sep 17 00:00:00 2001 > From: Matthias Bolte <matthias.bolte@xxxxxxxxxxxxxx> > Date: Wed, 9 Mar 2011 10:42:49 +0100 > Subject: [PATCH] Don't use INT64_MAX in libvirt.h because it requires stdint.h > > VIR_DOMAIN_MEMORY_PARAM_UNLIMITED uses INT64_MAX but stdint.h > was not and should not be included. Therefore, libvirt.h was > not self-contained. > > Instead of including stdint.h specify the value directly. > --- > include/libvirt/libvirt.h.in | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in > index 618b350..82e45d7 100644 > --- a/include/libvirt/libvirt.h.in > +++ b/include/libvirt/libvirt.h.in > @@ -705,7 +705,7 @@ typedef enum { > * Macro providing the virMemoryParameter value that indicates "unlimited" > */ > > -#define VIR_DOMAIN_MEMORY_PARAM_UNLIMITED (INT64_MAX >> 10) > +#define VIR_DOMAIN_MEMORY_PARAM_UNLIMITED 9007199254740991 /* = INT64_MAX >> 10 */ Hum shouldn't that be 9007199254740991UL to provide type information ? Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list