On 03/08/2014 09:57 AM, Roman Bogorodskiy wrote:
Eric Blake wrote:
>>>>>> POSIX requires that <stdlib.h> expose
WIFEXITED and friends,
>>>>>> but FreeBSD and others fail to comply. We can work around it
>>>>>> manually by including <sys/wait.h>, or we can work around
it
>>>>>> automatically by using gnulib's system-posix module.
Except system-posix is currently LGPLv3+, which makes it incompatible
with libvirt unless gnulib relaxes it.
>>> So, should I just ditch this patch?
>>
>> I don't feel strongly either way. ACK if you thing it is worth doing
>> anyway.
>
> Roman, any thoughts, since you are the person most likely impacted by
> this? If we do the gnulib change, then future patches that assume POSIX
> semantics, and pass testing when written by developers against glibc,
> won't break the build on BSD; on the other hand, we've made virprocess.h
> useful enough that most future patches shouldn't be using WIFEXITED
> directly and therefore shouldn't trip up BSD compilation in the first
> place. Meanwhile, do you want to file a bug report to the BSD folks to
> fix their <stdio.h>?
I think it's worth to include that patch because it costs nothing and
helps not to occasionally spot this problem again in future.
I've dropped the patch for now (gnulib would have to relax the license
before I could use it, and that may take a while).
I'll make a bug report.
Thanks. Looks like it spurred Garrett into investigating it further, as
he asked the POSIX folks more about the situation:
http://thread.gmane.org/gmane.comp.standards.posix.austin.general/9179
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org