[Mesa-dev] [PATCH 6/6] Add a configure enable switch for float textures

Marek Olšák maraeo at gmail.com
Fri Apr 1 06:57:04 PDT 2011


So --enable-texture-float it is.

Hardware drivers (including the Gallium ones) should
use #ifdef TEXTURE_FLOAT_ENABLED to hide any code that may
expose floating-point renderbuffers via any interface,
public or private.
---
 configure.ac                           |   13 +++++++++++++
 src/mesa/state_tracker/st_extensions.c |    2 ++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/configure.ac b/configure.ac
index b510151..10e6b85 100644
--- a/configure.ac
+++ b/configure.ac
@@ -319,6 +319,19 @@ else
     esac
 fi
 
+dnl
+dnl potentially-infringing-but-nobody-knows-for-sure stuff
+dnl
+AC_ARG_ENABLE([texture-float],
+    [AS_HELP_STRING([--enable-texture-float],
+        [enable floating-point textures and renderbuffers @<:@default=disabled@:>@])],
+    [enable_texture_float="$enableval"],
+    [enable_texture_float=no]
+)
+if test "x$enable_texture_float" = xyes; then
+    DEFINES="$DEFINES -DTEXTURE_FLOAT_ENABLED"
+fi
+
 GL_LIB_NAME='lib$(GL_LIB).'${LIB_EXTENSION}
 GLU_LIB_NAME='lib$(GLU_LIB).'${LIB_EXTENSION}
 GLUT_LIB_NAME='lib$(GLUT_LIB).'${LIB_EXTENSION}
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 15d304d..67e1057 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -390,7 +390,9 @@ void st_init_extensions(struct st_context *st)
                                    PIPE_TEXTURE_2D, 0,
                                    PIPE_BIND_SAMPLER_VIEW |
                                    PIPE_BIND_RENDER_TARGET)) {
+#ifdef TEXTURE_FLOAT_ENABLED
       ctx->Extensions.ARB_texture_float = GL_TRUE;
+#endif
    }
 
    /* sRGB support */
-- 
1.7.1



More information about the mesa-dev mailing list