The shader cache is expected to be developed incrementally over a
fairly long series of commits. For that period of instability, we
require users to opt into the shader cache by setting:
MESA_GLSL_CACHE_ENABLE=1
In the future, when the shader cache is complete, we can revert this
commit so that the cache will be on by default.
The user can always disable the cache with
MESA_GLSL_CACHE_DISABLE=1. That functionality is not affected by this
commit, (nor will it be affected by the future revert).
Reviewed-by: Eric Anholt <eric@anholt.net>
#ifdef ENABLE_SHADER_CACHE
int err;
+ /* While the shader cache is still experimental, this variable must
+ * be set or the cache does nothing.
+ */
+ setenv("MESA_GLSL_CACHE_ENABLE", "1", 1);
+
test_disk_cache_create();
test_put_and_get();
if (getenv("MESA_GLSL_CACHE_DISABLE"))
goto fail;
+ /* As a temporary measure, (while the shader cache is under
+ * development, and known to not be fully functional), also require
+ * the MESA_GLSL_CACHE_ENABLE variable to be set.
+ */
+ if (!getenv("MESA_GLSL_CACHE_ENABLE"))
+ goto fail;
+
/* Determine path for cache based on the first defined name as follows:
*
* $MESA_GLSL_CACHE_DIR