Our header include/ui/console.h will #include <epoxy/gl.h>. Unfortunately that header isn't guaranteed to be on the include path, because configure puts the CFLAGS that ensure it is (ie the output of pkg-config --cflags epoxy) into OPENGL_CFLAGS, and we only build certain object files with it. So a file like vl.c which includes ui/console.h will fail to build if epoxy is present but not in a directory which ends up on our include path anyway.
In particular on OpenBSD the header is in /usr/include/X11R6/epoxy/gl.h and so compilation fails. We should either just make sure we use the OPENGL_CFLAGS and OPENGL_LIBS more widely, or be more careful about what console.h is doing. thanks -- PMM