refi64 / rpms / mesa

Forked from rpms/mesa 3 years ago
Clone
Blob Blame History Raw
diff -up Mesa-9.1/src/mesa/drivers/dri/intel/intel_extensions.c.jx Mesa-9.1/src/mesa/drivers/dri/intel/intel_extensions.c
--- Mesa-9.1/src/mesa/drivers/dri/intel/intel_extensions.c.jx	2013-02-22 20:45:52.000000000 -0500
+++ Mesa-9.1/src/mesa/drivers/dri/intel/intel_extensions.c	2013-03-11 17:39:07.069991819 -0400
@@ -137,9 +137,11 @@ intelInitExtensions(struct gl_context *c
       ctx->Extensions.ARB_seamless_cube_map = true;
       ctx->Extensions.ARB_shader_bit_encoding = true;
       ctx->Extensions.ARB_shader_texture_lod = true;
+#ifdef TEXTURE_FLOAT_ENABLED
       ctx->Extensions.ARB_texture_float = true;
       ctx->Extensions.EXT_texture_shared_exponent = true;
       ctx->Extensions.EXT_packed_float = true;
+#endif
       ctx->Extensions.ARB_texture_compression_rgtc = true;
       ctx->Extensions.ARB_texture_rg = true;
       ctx->Extensions.ARB_texture_rgb10_a2ui = true;
diff -up Mesa-9.1/src/mesa/drivers/dri/intel/intel_screen.c.jx Mesa-9.1/src/mesa/drivers/dri/intel/intel_screen.c
--- Mesa-9.1/src/mesa/drivers/dri/intel/intel_screen.c.jx	2013-02-22 20:46:23.000000000 -0500
+++ Mesa-9.1/src/mesa/drivers/dri/intel/intel_screen.c	2013-03-11 17:40:31.235111004 -0400
@@ -1038,9 +1038,15 @@ intel_screen_make_configs(__DRIscreen *d
 static void
 set_max_gl_versions(struct intel_screen *screen)
 {
+#ifdef TEXTURE_FLOAT_ENABLED
+   bool has_texture_float = true;
+#else
+   bool has_texture_float = false;
+#endif
+
    switch (screen->gen) {
    case 7:
-      if (screen->kernel_has_gen7_sol_reset) {
+      if (has_texture_float && screen->kernel_has_gen7_sol_reset) {
          screen->max_gl_core_version = 31;
          screen->max_gl_compat_version = 30;
          screen->max_gl_es1_version = 11;
@@ -1053,10 +1059,17 @@ set_max_gl_versions(struct intel_screen
       }
       break;
    case 6:
-      screen->max_gl_core_version = 31;
-      screen->max_gl_compat_version = 30;
-      screen->max_gl_es1_version = 11;
-      screen->max_gl_es2_version = 30;
+      if (has_texture_float) {
+         screen->max_gl_core_version = 31;
+         screen->max_gl_compat_version = 30;
+         screen->max_gl_es1_version = 11;
+         screen->max_gl_es2_version = 30;
+      } else {
+         screen->max_gl_core_version = 0;
+         screen->max_gl_compat_version = 21;
+         screen->max_gl_es1_version = 11;
+         screen->max_gl_es2_version = 20;
+      }
       break;
    case 5:
    case 4: