So that it can be implicitly disabled on windows, where it doesn't compile.
v2: - Use an auto-option rather than automagic. - fix shader_cache check (== -> !=) v4: - Use new with_shader_cache instead of get_option('shader-cache') elsewhere in the meson build --- meson.build | 18 ++++++++++++++---- meson_options.txt | 5 +++-- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/meson.build b/meson.build index 6cdb6888d1e..0f37117e3fc 100644 --- a/meson.build +++ b/meson.build @@ -728,9 +728,19 @@ if get_option('buildtype') == 'debug' pre_args += '-DDEBUG' endif -if get_option('shader-cache') - pre_args += '-DENABLE_SHADER_CACHE' -elif with_amd_vk +with_shader_cache = false +_shader_cache = get_option('shader-cache') +if _shader_cache != 'false' + if host_machine.system() == 'windows' + if _shader_cache == 'true' + error('Shader Cache does not currently work on Windows') + endif + else + pre_args += '-DENABLE_SHADER_CACHE' + with_shader_cache = true + endif +endif +if with_amd_vk and not with_shader_cache error('Radv requires shader cache support') endif @@ -1112,7 +1122,7 @@ if cc.has_function('dl_iterate_phdr') pre_args += '-DHAVE_DL_ITERATE_PHDR' elif with_intel_vk error('Intel "Anvil" Vulkan driver requires the dl_iterate_phdr function') -elif with_dri_i965 and get_option('shader-cache') +elif with_dri_i965 and with_shader_cache error('Intel i965 GL driver requires dl_iterate_phdr when built with shader caching.') endif diff --git a/meson_options.txt b/meson_options.txt index b8df253b323..cb21a68f131 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -158,8 +158,9 @@ option( ) option( 'shader-cache', - type : 'boolean', - value : true, + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false'], description : 'Build with on-disk shader cache support' ) option( -- 2.18.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev