Windows (MSYS2 MinGW) build is broken.
Starting with commit 62ea3815, Windows (MSYS2 MinGW) build doesn't work anymore due to the need of POXIS functions. Build is now only possible with POXIS emulation libs such as cygwin.
Build command (bash):
meson setup build
cd build
ninja install
Log:
[20/48] Compiling C object src/libvirgl.a.p/virgl_context.c.obj
FAILED: src/libvirgl.a.p/virgl_context.c.obj
"cc" "-Isrc/libvirgl.a.p" "-Isrc" "-I../src" "-I../src/gallium/include" "-I../src/gallium/auxiliary" "-I../src/gallium/auxiliary/util" "-I." "-I.." "-I../src/venus" "-I../src/drm" "-I../src/drm/drm-uapi" "-Isrc/mesa" "-I../src/mesa" "-I../src/mesa/compat" "-I../src/mesa/pipe" "-I../src/mesa/util" "-fdiagnostics-color=always" "-DNDEBUG" "-D_FILE_OFFSET_BITS=64" "-Wall" "-Winvalid-pch" "-Wextra" "-Wpedantic" "-std=gnu11" "-O3" "-Werror=enum-int-mismatch" "-Werror=implicit-function-declaration" "-Werror=missing-prototypes" "-Werror=pedantic" "-Wmissing-prototypes" "-Werror=incompatible-pointer-types" "-Werror=int-to-pointer-cast" "-Werror=switch" "-Wno-overlength-strings" "-Wno-missing-field-initializers" "-fvisibility=hidden" "-imacros" "C:/MSYS2/home/RedGreenBlue123/virglrenderer/build/config.h" "-DHAVE_CONFIG_H=1" "-pthread" -MD -MQ src/libvirgl.a.p/virgl_context.c.obj -MF "src/libvirgl.a.p/virgl_context.c.obj.d" -o src/libvirgl.a.p/virgl_context.c.obj "-c" ../src/virgl_context.c
In file included from ../src/virgl_context.c:29:
../src/mesa/util/libsync.h:36:10: fatal error: sys/ioctl.h: No such file or directory
36 | #include <sys/ioctl.h>
| ^~~~~~~~~~~~~
compilation terminated.
[29/48] Compiling C object src/libvirgl.a.p/virgl_fence.c.obj
FAILED: src/libvirgl.a.p/virgl_fence.c.obj
"cc" "-Isrc/libvirgl.a.p" "-Isrc" "-I../src" "-I../src/gallium/include" "-I../src/gallium/auxiliary" "-I../src/gallium/auxiliary/util" "-I." "-I.." "-I../src/venus" "-I../src/drm" "-I../src/drm/drm-uapi" "-Isrc/mesa" "-I../src/mesa" "-I../src/mesa/compat" "-I../src/mesa/pipe" "-I../src/mesa/util" "-fdiagnostics-color=always" "-DNDEBUG" "-D_FILE_OFFSET_BITS=64" "-Wall" "-Winvalid-pch" "-Wextra" "-Wpedantic" "-std=gnu11" "-O3" "-Werror=enum-int-mismatch" "-Werror=implicit-function-declaration" "-Werror=missing-prototypes" "-Werror=pedantic" "-Wmissing-prototypes" "-Werror=incompatible-pointer-types" "-Werror=int-to-pointer-cast" "-Werror=switch" "-Wno-overlength-strings" "-Wno-missing-field-initializers" "-fvisibility=hidden" "-imacros" "C:/MSYS2/home/RedGreenBlue123/virglrenderer/build/config.h" "-DHAVE_CONFIG_H=1" "-pthread" -MD -MQ src/libvirgl.a.p/virgl_fence.c.obj -MF "src/libvirgl.a.p/virgl_fence.c.obj.d" -o src/libvirgl.a.p/virgl_fence.c.obj "-c" ../src/virgl_fence.c
../src/virgl_fence.c: In function 'virgl_fence_table_cleanup_cb':
../src/virgl_fence.c:36:7: error: implicit declaration of function 'close'; did you mean 'fclose'?
-Werror=implicit-function-declaration]
36 | close(fence->fd);
| ^~~~~
| fclose
cc1.exe: some warnings being treated as errors
ninja: build stopped: subcommand failed.