X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fglx%2Fglxextensions.h;h=3a9bc8230529d7c701cb4162bc22ec1a57a2a81b;hb=8cc9a8aa2a97ca9e7a36a993954a3480d44c13d3;hp=a11fe88ffc987a32b2ebbc1ff9b6a7561965af22;hpb=443a7e4e9a360acbc3e662c098be436f180bf81d;p=mesa.git diff --git a/src/glx/glxextensions.h b/src/glx/glxextensions.h index a11fe88ffc9..3a9bc823052 100644 --- a/src/glx/glxextensions.h +++ b/src/glx/glxextensions.h @@ -33,31 +33,31 @@ enum { - ARB_get_proc_address_bit = 0, + ARB_create_context_bit = 0, + ARB_create_context_profile_bit, + ARB_create_context_robustness_bit, + ARB_fbconfig_float_bit, + ARB_get_proc_address_bit, ARB_multisample_bit, - ARB_render_texture_bit, ATI_pixel_format_float_bit, EXT_visual_info_bit, EXT_visual_rating_bit, EXT_import_context_bit, - MESA_agp_offset_bit, + EXT_framebuffer_sRGB_bit, + EXT_fbconfig_packed_float_bit, + EXT_create_context_es2_profile_bit, MESA_copy_sub_buffer_bit, MESA_depth_float_bit, - MESA_pixmap_colormap_bit, - MESA_release_buffers_bit, + MESA_multithread_makecurrent_bit, + MESA_query_renderer_bit, MESA_swap_control_bit, MESA_swap_frame_usage_bit, NV_float_buffer_bit, - NV_render_depth_texture_bit, - NV_render_texture_rectangle_bit, - NV_vertex_array_range_bit, OML_swap_method_bit, OML_sync_control_bit, SGI_make_current_read_bit, SGI_swap_control_bit, SGI_video_sync_bit, - SGIS_blended_overlay_bit, - SGIS_color_range_bit, SGIS_multisample_bit, SGIX_fbconfig_bit, SGIX_pbuffer_bit, @@ -66,8 +66,14 @@ enum SGIX_visual_select_group_bit, EXT_texture_from_pixmap_bit, INTEL_swap_event_bit, + EXT_buffer_age_bit, }; +/* From the GLX perspective, the ARB and EXT extensions are identical. Use a + * single bit for both. + */ +#define ARB_framebuffer_sRGB_bit EXT_framebuffer_sRGB_bit + enum { GL_ARB_depth_texture_bit = 0, @@ -93,6 +99,7 @@ enum GL_ARB_texture_mirrored_repeat_bit, GL_ARB_texture_non_power_of_two_bit, GL_ARB_texture_rectangle_bit, + GL_ARB_texture_rg_bit, GL_ARB_transpose_matrix_bit, GL_ARB_vertex_buffer_object_bit, GL_ARB_vertex_program_bit, @@ -116,6 +123,7 @@ enum GL_EXT_framebuffer_blit_bit, GL_EXT_framebuffer_multisample_bit, GL_EXT_framebuffer_object_bit, + GL_EXT_framebuffer_sRGB_bit, GL_EXT_multi_draw_arrays_bit, GL_EXT_packed_depth_stencil_bit, GL_EXT_packed_pixels_bit, @@ -138,6 +146,7 @@ enum GL_EXT_texture_env_combine_bit, GL_EXT_texture_env_dot3_bit, GL_EXT_texture_filter_anisotropic_bit, + GL_EXT_texture_integer_bit, GL_EXT_texture_lod_bit, GL_EXT_texture_lod_bias_bit, GL_EXT_texture_mirror_clamp_bit, @@ -272,11 +281,17 @@ typedef void (*PFNGLXDISABLEEXTENSIONPROC) (const char *name); # define GLX_ALIAS_VOID(real_func, proto_args, args, aliased_func) #else # if defined(__GNUC__) && !defined(GLX_ALIAS_UNSUPPORTED) -# define GLX_ALIAS(return_type, real_func, proto_args, args, aliased_func) \ +/* GLX_ALIAS and GLX_ALIAS_VOID both expand to the macro GLX_ALIAS2. Using the + * extra expansion means that the name mangling macros in glx_mangle.h will + * apply before stringification, so the alias attribute will have a string like + * "mglXFoo" instead of "glXFoo". */ +# define GLX_ALIAS2(return_type, real_func, proto_args, args, aliased_func) \ return_type real_func proto_args \ __attribute__ ((alias( # aliased_func ) )); +# define GLX_ALIAS(return_type, real_func, proto_args, args, aliased_func) \ + GLX_ALIAS2(return_type, real_func, proto_args, args, aliased_func) # define GLX_ALIAS_VOID(real_func, proto_args, args, aliased_func) \ - GLX_ALIAS(void, real_func, proto_args, args, aliased_func) + GLX_ALIAS2(void, real_func, proto_args, args, aliased_func) # else # define GLX_ALIAS(return_type, real_func, proto_args, args, aliased_func) \ return_type real_func proto_args \