From 4e065cdaaa25bb2ffe59c6d9566318d68e57aebf Mon Sep 17 00:00:00 2001 From: Caio Oliveira Date: Thu, 21 Sep 2023 23:58:55 -0700 Subject: [PATCH] clover: Only compile/depend libclspirv and libclnir when using SPIR-V support Reviewed-by: Karol Herbst Reviewed-by: Eric Engestrom Part-of: --- src/gallium/frontends/clover/meson.build | 44 ++++++++++++++---------- 1 file changed, 26 insertions(+), 18 deletions(-) diff --git a/src/gallium/frontends/clover/meson.build b/src/gallium/frontends/clover/meson.build index 211731de51a..0dffda0d4b4 100644 --- a/src/gallium/frontends/clover/meson.build +++ b/src/gallium/frontends/clover/meson.build @@ -75,23 +75,31 @@ libclllvm = static_library( dependencies : [dep_llvm, dep_elf, dep_llvmspirvlib, idep_mesautil], ) -libclspirv = static_library( - 'clspirv', - files('spirv/invocation.cpp', 'spirv/invocation.hpp'), - include_directories : clover_incs, - cpp_args : [clover_opencl_cpp_args, clover_spirv_cpp_args], - gnu_symbol_visibility : 'hidden', - dependencies : [dep_spirv_tools, idep_mesautil], -) +idep_opencl_spirv = null_dep +if with_opencl_spirv + libclspirv = static_library( + 'clspirv', + files('spirv/invocation.cpp', 'spirv/invocation.hpp'), + include_directories : clover_incs, + cpp_args : [clover_opencl_cpp_args, clover_spirv_cpp_args], + gnu_symbol_visibility : 'hidden', + dependencies : [dep_spirv_tools, idep_mesautil], + ) -libclnir = static_library( - 'clnir', - files('nir/invocation.cpp', 'nir/invocation.hpp'), - include_directories : [clover_incs, inc_mesa], - dependencies : [idep_nir, idep_vtn, idep_mesaclc], - cpp_args : [clover_opencl_cpp_args, clover_spirv_cpp_args], - gnu_symbol_visibility : 'hidden', -) + libclnir = static_library( + 'clnir', + files('nir/invocation.cpp', 'nir/invocation.hpp'), + include_directories : [clover_incs, inc_mesa], + dependencies : [idep_nir, idep_vtn, idep_mesaclc], + cpp_args : [clover_opencl_cpp_args, clover_spirv_cpp_args], + gnu_symbol_visibility : 'hidden', + ) + + idep_opencl_spirv = declare_dependency( + dependencies : [idep_nir], + link_with : [libclspirv, libclnir], + ) +endif clover_files = files( 'api/context.cpp', @@ -163,6 +171,6 @@ libclover = static_library( clover_cpp_args, ], gnu_symbol_visibility : 'hidden', - link_with : [libclllvm, libclspirv, libclnir], - dependencies : [idep_mesautil, idep_nir], + link_with : [libclllvm], + dependencies : [idep_mesautil, idep_nir, idep_opencl_spirv], )