this is questions raised from can struct type itself be passed to function as parameter in c?
from the previous question, I found that "wl_compositor_interface" is used as struct tag and variable both in header file "wayland-server-protocol.h".
struct wl_compositor_interface {
void (*create_surface)(struct wl_client *client,
struct wl_resource *resource,
uint32_t id);
void (*create_region)(struct wl_client *client,
struct wl_resource *resource,
uint32_t id);
};
extern const struct wl_interface wl_compositor_interface;
however, the header file just declared the variable as extern const struct wl_interface wl_compositor_interface;
I cannot find where the variable is defined. similarly, all variables with pattern "wl_***_interface are declared in the header file but have no definition.
can someone help me to find the definition?
wayland source is here wayland github
I also looked at documentation, there was no description about wl_***_interface