diff options
Diffstat (limited to 'src/gallium/state_trackers/dri/dri_screen.c')
-rw-r--r-- | src/gallium/state_trackers/dri/dri_screen.c | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/src/gallium/state_trackers/dri/dri_screen.c b/src/gallium/state_trackers/dri/dri_screen.c index 697ebee..fdcedcb 100644 --- a/src/gallium/state_trackers/dri/dri_screen.c +++ b/src/gallium/state_trackers/dri/dri_screen.c @@ -80,6 +80,26 @@ const __DRIconfigOptionsExtension gallium_config_options = { #define false 0 +static void +dri_fill_st_options(struct st_config_options *options, + const struct driOptionCache * optionCache) +{ + options->disable_blend_func_extended = + driQueryOptionb(optionCache, "disable_blend_func_extended"); + options->disable_glsl_line_continuations = + driQueryOptionb(optionCache, "disable_glsl_line_continuations"); + options->disable_shader_bit_encoding = + driQueryOptionb(optionCache, "disable_shader_bit_encoding"); + options->force_glsl_extensions_warn = + driQueryOptionb(optionCache, "force_glsl_extensions_warn"); + options->force_glsl_version = + driQueryOptioni(optionCache, "force_glsl_version"); + options->force_s3tc_enable = + driQueryOptionb(optionCache, "force_s3tc_enable"); + options->allow_glsl_extension_directive_midshader = + driQueryOptionb(optionCache, "allow_glsl_extension_directive_midshader"); +} + static const __DRIconfig ** dri_fill_in_modes(struct dri_screen *screen) { @@ -439,9 +459,10 @@ dri_init_screen_helper(struct dri_screen *screen, screen->sPriv->myNum, driver_name); + dri_fill_st_options(&screen->options, &screen->optionCache); + /* Handle force_s3tc_enable. */ - if (!util_format_s3tc_enabled && - driQueryOptionb(&screen->optionCache, "force_s3tc_enable")) { + if (!util_format_s3tc_enabled && screen->options.force_s3tc_enable) { /* Ensure libtxc_dxtn has been loaded if available. * Forcing S3TC on before calling this would prevent loading * the library. @@ -456,6 +477,7 @@ dri_init_screen_helper(struct dri_screen *screen, dri_postprocessing_init(screen); screen->st_api->query_versions(screen->st_api, &screen->base, + &screen->options, &screen->sPriv->max_gl_core_version, &screen->sPriv->max_gl_compat_version, &screen->sPriv->max_gl_es1_version, |