-/**
- * This is the main entrypoint into the driver, called by libEGL.
- * Gets an _EGLDriver object and init its dispatch table.
- */
-void
-_eglInitDriver(_EGLDriver *dri2_drv)
-{
- dri2_drv->API.Initialize = dri2_initialize;
- dri2_drv->API.Terminate = dri2_terminate;
- dri2_drv->API.CreateContext = dri2_create_context;
- dri2_drv->API.DestroyContext = dri2_destroy_context;
- dri2_drv->API.MakeCurrent = dri2_make_current;
- dri2_drv->API.CreateWindowSurface = dri2_create_window_surface;
- dri2_drv->API.CreatePixmapSurface = dri2_create_pixmap_surface;
- dri2_drv->API.CreatePbufferSurface = dri2_create_pbuffer_surface;
- dri2_drv->API.DestroySurface = dri2_destroy_surface;
- dri2_drv->API.GetProcAddress = dri2_get_proc_address;
- dri2_drv->API.WaitClient = dri2_wait_client;
- dri2_drv->API.WaitNative = dri2_wait_native;
- dri2_drv->API.BindTexImage = dri2_bind_tex_image;
- dri2_drv->API.ReleaseTexImage = dri2_release_tex_image;
- dri2_drv->API.SwapInterval = dri2_swap_interval;
- dri2_drv->API.SwapBuffers = dri2_swap_buffers;
- dri2_drv->API.SwapBuffersWithDamageEXT = dri2_swap_buffers_with_damage;
- dri2_drv->API.SwapBuffersRegionNOK = dri2_swap_buffers_region;
- dri2_drv->API.SetDamageRegion = dri2_set_damage_region;
- dri2_drv->API.PostSubBufferNV = dri2_post_sub_buffer;
- dri2_drv->API.CopyBuffers = dri2_copy_buffers,
- dri2_drv->API.QueryBufferAge = dri2_query_buffer_age;
- dri2_drv->API.CreateImageKHR = dri2_create_image;
- dri2_drv->API.DestroyImageKHR = dri2_destroy_image_khr;
- dri2_drv->API.CreateWaylandBufferFromImageWL = dri2_create_wayland_buffer_from_image;
- dri2_drv->API.QuerySurface = dri2_query_surface;
- dri2_drv->API.QueryDriverName = dri2_query_driver_name;
- dri2_drv->API.QueryDriverConfig = dri2_query_driver_config;
+const _EGLDriver _eglDriver = {
+ .Initialize = dri2_initialize,
+ .Terminate = dri2_terminate,
+ .CreateContext = dri2_create_context,
+ .DestroyContext = dri2_destroy_context,
+ .MakeCurrent = dri2_make_current,
+ .CreateWindowSurface = dri2_create_window_surface,
+ .CreatePixmapSurface = dri2_create_pixmap_surface,
+ .CreatePbufferSurface = dri2_create_pbuffer_surface,
+ .DestroySurface = dri2_destroy_surface,
+ .GetProcAddress = dri2_get_proc_address,
+ .WaitClient = dri2_wait_client,
+ .WaitNative = dri2_wait_native,
+ .BindTexImage = dri2_bind_tex_image,
+ .ReleaseTexImage = dri2_release_tex_image,
+ .SwapInterval = dri2_swap_interval,
+ .SwapBuffers = dri2_swap_buffers,
+ .SwapBuffersWithDamageEXT = dri2_swap_buffers_with_damage,
+ .SwapBuffersRegionNOK = dri2_swap_buffers_region,
+ .SetDamageRegion = dri2_set_damage_region,
+ .PostSubBufferNV = dri2_post_sub_buffer,
+ .CopyBuffers = dri2_copy_buffers,
+ .QueryBufferAge = dri2_query_buffer_age,
+ .CreateImageKHR = dri2_create_image,
+ .DestroyImageKHR = dri2_destroy_image_khr,
+ .CreateWaylandBufferFromImageWL = dri2_create_wayland_buffer_from_image,
+ .QuerySurface = dri2_query_surface,
+ .QueryDriverName = dri2_query_driver_name,
+ .QueryDriverConfig = dri2_query_driver_config,