Skip to content

utils: fix public API with consumers using _POSIX_C_SOURCE on FreeBSD

Evgeniy Khramtsov requested to merge ei/pipewire:FreeBSD into master

cb6dbd16 made public API incompatible with consumers using _POSIX_SOURCE, _POSIX_C_SOURCE or _XOPEN_SOURCE: <sys/mount.h> isn't standalone but depends on BSD-specific types in <sys/types.h> which are hidden when POSIX compliance is requested.

xdg-desktop-portal-wlr passes -D_POSIX_C_SOURCE=200809L via meson.build which works for its own code and all other dependencies.

In file included from ../src/core/main.c:7: In file included from /usr/local/include/pipewire-0.3/pipewire/pipewire.h:35: In file included from /usr/local/include/pipewire-0.3/pipewire/client.h:35: In file included from /usr/local/include/pipewire-0.3/pipewire/proxy.h:108: In file included from /usr/local/include/pipewire-0.3/pipewire/protocol.h:48: In file included from /usr/local/include/pipewire-0.3/pipewire/utils.h:34: In file included from /usr/include/sys/mount.h:38: /usr/include/sys/ucred.h:99:2: error: unknown type name 'u_int' u_int cr_version; /* structure layout version */ ^ In file included from ../src/core/main.c:7: In file included from /usr/local/include/pipewire-0.3/pipewire/pipewire.h:35: In file included from /usr/local/include/pipewire-0.3/pipewire/client.h:35: In file included from /usr/local/include/pipewire-0.3/pipewire/proxy.h:108: In file included from /usr/local/include/pipewire-0.3/pipewire/protocol.h:48: In file included from /usr/local/include/pipewire-0.3/pipewire/utils.h:34:

Reported by: Jan Beich jbeich@FreeBSD.org

Merge request reports