Earlier quoted context omitted.
Wayland isn't a code base but a protocol.
Wayland is both a code base and a protocol unless you are being unreasonably technical about terminology (distinguishing between wayland and libwayland) to the point where you are deceiving casual readers. It is for all practical intents not possible to implement a useful wayland compositor without relying on libwayland, because mesa links to libwayland and expects to be passed pointers to data structures defined in…
This was addressed by the linux-dmabuf protocol extension (which also works on *BSD, despite the name). The mesa route has been deprecated for years.