[libvirt] Minor compile failure on OSX for libvirt 2.0.0

Andrea Bolognani abologna at redhat.com
Tue Jul 19 14:03:28 UTC 2016


On Sat, 2016-07-16 at 11:16 +0100, Justin Clift wrote:
> Hi all,
> 
> There's a minor compile failure on OSX with libvirt 2.0.0:
> 
>     CC       util/libvirt_util_la-virtime.lo
>     CC       util/libvirt_util_la-virtpm.lo
>   util/virsystemd.c:524:26: error: use of undeclared identifier 'MSG_NOSIGNAL'
>       if (sendmsg(fd, &mh, MSG_NOSIGNAL) < 0)
>                            ^
>   1 error generated.
>   make[3]: *** [util/libvirt_util_la-virsystemd.lo] Error 1
>   make[3]: *** Waiting for unfinished jobs....
> 
> Seems solvable by adding a stub declaration for MSG_NOSIGNAL on
> systems that don't implement it.
> 
> An initial patch with the declaration, developed by Tomasz Pajor
> (CC'd), is below:
> 
>   --- src/util/virsystemd.h.orig	2016-07-03 21:40:12.000000000 +0200
>   +++ src/util/virsystemd.h	2016-07-03 21:37:53.000000000 +0200
>   @@ -57,3 +57,7 @@
>    char *virSystemdGetMachineNameByPID(pid_t pid);
>  
>    #endif /* __VIR_SYSTEMD_H__ */
>   +
>   +#ifndef MSG_NOSIGNAL
>   +#define MSG_NOSIGNAL 0x0 //Don't request NOSIGNAL on systems where this is not implemented.
>   +#endif
> 
> It's outside the #endif for __VIR_SYSTEMD_H___ though, so I'm kind of
> thinking it would need to be move inside the guard (which also compiles
> ok), or is there a better place/file for it instead? :)

I have posted a tentative patch to fix your issue

  https://www.redhat.com/archives/libvir-list/2016-July/msg00724.html

Can you please check it out and confirm whether it works or
not? I don't have any OS X host where I can test it myself.

To be honest, I don't see why we're compiling the systemd
support code on OS X at all. But I don't have the time to
dig further right now :)

-- 
Andrea Bolognani / Red Hat / Virtualization




More information about the libvir-list mailing list