On Fri, Dec 12, 2008 at 04:29:43PM +0100, Jim Meyering wrote:
Dave Allan <dallan(a)redhat.com> wrote:
Since we're using NUMA_VERSION1_COMPATIBILITY mode (anyone know why?)
#if HAVE_NUMACTL
#define NUMA_VERSION1_COMPATIBILITY 1
#include <numa.h>
#endif
In Fedora 10, they introduced libnuma 2.x, whereas all previous Fedora
had 1.x.
libnuma 2.x changed API decl for various functions. libvirt is written
against 1.x API, so we need to declare NUMA_VERSION1_COMPATIBILITY to
make sure our header import on 2.x systems, uses the 1.x APIs. The
black magic in the header, actually compiles our 1.x usage into calls
to the 2.x APIs. The 1.x ABIs still existed as versioned symbols
so if you compiled against 1.x, you can still run against 2.x. Fun
isn't it :-)
Daniel
--
|: Red Hat, Engineering, London -o-
http://people.redhat.com/berrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org -o-
http://ovirt.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|