Build fails with glibc 2.30 on x86_64: error: conflicting types for gint64/guint64
Build fails against recently released glibc 2.30 on x86_64 arch:
FAILED: sys/v4l2/ee6e745@@gstvideo4linux2@sha/gstv4l2allocator.c.o
cc -Isys/v4l2/ee6e745@@gstvideo4linux2@sha -Isys/v4l2 -I../sys/v4l2 -I. -I../ -I../gst-libs -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/lib/x86_64-linux-gnu/libffi-3.2.1/include -I/usr/include/orc-0.4 -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -fvisibility=hidden -fno-strict-aliasing -DG_DISABLE_CAST_CHECKS -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Winit-self -Wmissing-include-dirs -Wno-multichar -Wvla -Wpointer-arith -Wmissing-prototypes -Wdeclaration-after-statement -Wold-style-definition -Waggregate-return -O2 -g -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -pthread -DHAVE_CONFIG_H -MD -MQ 'sys/v4l2/ee6e745@@gstvideo4linux2@sha/gstv4l2allocator.c.o' -MF 'sys/v4l2/ee6e745@@gstvideo4linux2@sha/gstv4l2allocator.c.o.d' -o 'sys/v4l2/ee6e745@@gstvideo4linux2@sha/gstv4l2allocator.c.o' -c ../sys/v4l2/gstv4l2allocator.c
In file included from ../sys/v4l2/ext/videodev2.h:63,
from ../sys/v4l2/gstv4l2allocator.c:28:
../sys/v4l2/ext/types-compat.h:48:15: error: conflicting types for ‘gint64’
48 | #define __s64 gint64
| ^~~~~~
In file included from /usr/include/glib-2.0/glib/gtypes.h:32,
from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from ../sys/v4l2/ext/types-compat.h:22,
from ../sys/v4l2/ext/videodev2.h:63,
from ../sys/v4l2/gstv4l2allocator.c:28:
/usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:61:21: note: previous declaration of ‘gint64’ was here
61 | typedef signed long gint64;
| ^~~~~~
In file included from ../sys/v4l2/ext/videodev2.h:63,
from ../sys/v4l2/gstv4l2allocator.c:28:
../sys/v4l2/ext/types-compat.h:44:15: error: conflicting types for ‘guint64’
44 | #define __u64 guint64
| ^~~~~~~
In file included from /usr/include/glib-2.0/glib/gtypes.h:32,
from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from ../sys/v4l2/ext/types-compat.h:22,
from ../sys/v4l2/ext/videodev2.h:63,
from ../sys/v4l2/gstv4l2allocator.c:28:
/usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:62:23: note: previous declaration of ‘guint64’ was here
62 | typedef unsigned long guint64;
| ^~~~~~~
Tested against https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/tags/1.16.0