bool fc_suffix;
bool compat_suffix;
} override[] = {
- { -1, false, false},
- { -1, false, false},
- { -1, false, false},
- { -1, false, false},
+ [API_OPENGL_COMPAT] = { -1, false, false},
+ [API_OPENGLES] = { -1, false, false},
+ [API_OPENGLES2] = { -1, false, false},
+ [API_OPENGL_CORE] = { -1, false, false},
};
STATIC_ASSERT(ARRAY_SIZE(override) == API_OPENGL_LAST + 1);
ctx->VersionString = malloc(max);
if (ctx->VersionString) {
_mesa_snprintf(ctx->VersionString, max,
- "%s%u.%u%s Mesa " PACKAGE_VERSION
-#ifdef MESA_GIT_SHA1
- " (" MESA_GIT_SHA1 ")"
-#endif
- ,
+ "%s%u.%u%s Mesa " PACKAGE_VERSION MESA_GIT_SHA1,
prefix,
ctx->Version / 10, ctx->Version % 10,
(ctx->API == API_OPENGL_CORE) ? " (Core Profile)" :
extensions->NV_texture_barrier);
const bool ver_4_6 = (ver_4_5 &&
consts->GLSLVersion >= 460 &&
- /* extensions->ARB_gl_spirv */ 0 &&
- /* extensions->ARB_spirv_extensions */ 0 &&
+ extensions->ARB_gl_spirv &&
+ extensions->ARB_spirv_extensions &&
extensions->ARB_indirect_parameters &&
extensions->ARB_pipeline_statistics_query &&
extensions->ARB_polygon_offset_clamp &&
extensions->ARB_internalformat_query &&
extensions->ARB_map_buffer_range &&
extensions->ARB_shader_texture_lod &&
- extensions->ARB_texture_float &&
+ extensions->OES_texture_float &&
+ extensions->OES_texture_half_float &&
+ extensions->OES_texture_half_float_linear &&
extensions->ARB_texture_rg &&
extensions->ARB_depth_buffer_float &&
- /* extensions->ARB_framebuffer_object && */
- extensions->EXT_framebuffer_sRGB &&
+ extensions->ARB_framebuffer_object &&
+ extensions->EXT_sRGB &&
extensions->EXT_packed_float &&
extensions->EXT_texture_array &&
extensions->EXT_texture_shared_exponent &&
+ extensions->EXT_texture_sRGB &&
extensions->EXT_transform_feedback &&
extensions->ARB_draw_instanced &&
extensions->ARB_uniform_buffer_object &&
extensions->EXT_texture_snorm &&
extensions->NV_primitive_restart &&
- extensions->OES_depth_texture_cube_map);
+ extensions->OES_depth_texture_cube_map &&
+ extensions->EXT_texture_type_2_10_10_10_REV);
const bool es31_compute_shader =
consts->MaxComputeWorkGroupInvocations >= 128;
const bool ver_3_1 = (ver_3_0 &&
+ consts->MaxVertexAttribStride >= 2048 &&
extensions->ARB_arrays_of_arrays &&
es31_compute_shader &&
extensions->ARB_draw_indirect &&
*/
if (_mesa_is_desktop_gl(ctx)) {
switch (ctx->Version) {
+ case 20:
+ /* fall-through, GLSL 1.20 is the minimum we support */
+ case 21:
+ ctx->Const.GLSLVersion = 120;
+ break;
case 30:
ctx->Const.GLSLVersion = 130;
break;