[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] mac os x: don't compile failing example program on 32 bit mac os x

[replies can omit bug-gnulib]

On 09/28/2010 08:29 AM, Eric Blake wrote:
[adding bug-gnulib]

which in turn mentions:

gcc -Wall -Wformat -Wmissing-prototypes -Wnested-externs -Wpointer-
arith -Wextra -Wshadow -Wcast-align -Wwrite-strings
-Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls
-Wno-sign-compare -Wp,- D_FORTIFY_SOURCE=2 -fexceptions
-fasynchronous-unwind-tables -g -O2 - o .libs/event-test
event_test-event-test.o -L/opt/local/lib ../../../
src/.libs/libvirt.dylib -L/usr/lib /usr/lib/libxml2.dylib -licucore -
lm /opt/local/lib/libgnutls.dylib /opt/local/lib/libtasn1.dylib -lz /
opt/local/lib/libgcrypt.dylib /opt/local/lib/libgpg-error.dylib -
lpthread /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib -lc

Aha - I just realized the problem. The Makefile.am fails to link against the gnulib library that provides rpl_poll, even though the headers are pulling in the replacement definition.

But the failed link mentions rpl_poll, not poll, which means this is
most likely a gnulib bug in the poll module. Rather than skipping this
test on just 32-bit MacOS in libvirt, I think the better thing to do is
address why gnulib is triggering a link failure in the first place.

In testing here, the compilation only fails on 32 bit OS X, but works
on 64 bit, even when using exact same compile and linking flags.

That's because poll doesn't need gnulib replacement on the 64-bit OS X, just the 32-bit version.

The real fix should be in examples/domain-events/events-c/Makefile.am to fix LDADD to mention libgnu.la.

Eric Blake   eblake redhat com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]