sysutils/policykit with kqueue inotify conflict

Yesterday I do pkg_delete -a and now generally rebuilding the whole /usr/local system. Installation of portmaster and bash gone well, but when trying to install xorg-server the policykit port fails to build. At the end I ended to manually edit the config.h file and disable inotify. Naturally I suspect on some update that will be overwritten.

Does somebody have an idea what causes this problem and how to avoid it? The port does not offer me the usual config menu for ports requiring user configuration.
 
The error was in polkit-context.c
Code:
polkit-context.c: In function 'polkit_context_init':
polkit-context.c:167: error: storage size of 'ev' isn't known
polkit-context.c:232: error: 'PolKitContext' has no member named 'kqueue_fd'
And some more of that kind.

The problem is that this file has
Code:
#ifdef HAVE_INOTIFY
#include <some_inotify_header>
#elif HAVE_KQUEUE
#include <sys/event.h>
#include <sys/time.h>
#endif
and later on (still in polkit-context.c)
Code:
#ifdef HAVE_KQUEUE
struct kevent ev;
#endif
It's pretty much configure error.
From config.h
Code:
/* Enable Linux inotify() usage */
#define HAVE_INOTIFY 1
/* Enable BSD kqueue() usage */
#define HAVE_KQUEUE 1
 
The policykit port itself does not have options, and does not complain at all until the compiler error occur. Not 100% sure, think that bash has inotify option, but that will mean just having inotify headers/libs is incompatible with minimal X installation.
 
Options for devel/gamin are unmodified. But I reinstalled it at some point. I just tried
[CMD=""]cd /usr/local/include/sys && mv inotify.h inotify.h.back[/CMD]
and sysutils/policykit builds just fine. Will try to get rid of libinotify at some point.
 
Back
Top