radv: Allow building when LLVM isn’t enabled
Now that ACO is considered feature-complete, it can be nice to avoid the huge LLVM dependency when one only wants a Vulkan driver. This patch allows radv to be built without LLVM. The two features which get disabled are RADV_DEBUG=llvm and shader disassembly. The latter is an issue for debugging, so I added a warning that this configuration is unsupported. Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11319>
This commit is contained in:
parent
b70e551a51
commit
c238faf746
|
@ -1711,8 +1711,10 @@ if with_llvm
|
||||||
language : ['c', 'cpp'],
|
language : ['c', 'cpp'],
|
||||||
)
|
)
|
||||||
endif
|
endif
|
||||||
elif with_amd_vk or with_gallium_radeonsi or with_gallium_swr or with_swrast_vk
|
elif with_amd_vk and with_aco_tests
|
||||||
error('The following drivers require LLVM: Radv, RadeonSI, SWR, Lavapipe. One of these is enabled, but LLVM is disabled.')
|
error('ACO tests require LLVM, but LLVM is disabled.')
|
||||||
|
elif with_gallium_radeonsi or with_gallium_swr or with_swrast_vk
|
||||||
|
error('The following drivers require LLVM: RadeonSI, SWR, Lavapipe. One of these is enabled, but LLVM is disabled.')
|
||||||
elif with_gallium_opencl
|
elif with_gallium_opencl
|
||||||
error('The OpenCL "Clover" state tracker requires LLVM, but LLVM is disabled.')
|
error('The OpenCL "Clover" state tracker requires LLVM, but LLVM is disabled.')
|
||||||
elif with_clc
|
elif with_clc
|
||||||
|
|
|
@ -22,7 +22,11 @@ inc_amd = include_directories('.')
|
||||||
|
|
||||||
subdir('addrlib')
|
subdir('addrlib')
|
||||||
subdir('common')
|
subdir('common')
|
||||||
subdir('llvm')
|
if with_llvm
|
||||||
|
subdir('llvm')
|
||||||
|
else
|
||||||
|
libamd_common_llvm = []
|
||||||
|
endif
|
||||||
if with_amd_vk
|
if with_amd_vk
|
||||||
subdir('compiler')
|
subdir('compiler')
|
||||||
subdir('vulkan')
|
subdir('vulkan')
|
||||||
|
|
|
@ -24,11 +24,16 @@ inc_src = include_directories('.')
|
||||||
inc_gallium = include_directories('gallium/include')
|
inc_gallium = include_directories('gallium/include')
|
||||||
inc_gallium_aux = include_directories('gallium/auxiliary')
|
inc_gallium_aux = include_directories('gallium/auxiliary')
|
||||||
inc_amd_common = include_directories('amd/common')
|
inc_amd_common = include_directories('amd/common')
|
||||||
inc_amd_common_llvm = include_directories('amd/llvm')
|
|
||||||
inc_tool = include_directories('tool')
|
inc_tool = include_directories('tool')
|
||||||
pps_datasources = []
|
pps_datasources = []
|
||||||
pps_includes = []
|
pps_includes = []
|
||||||
|
|
||||||
|
if with_llvm
|
||||||
|
inc_amd_common_llvm = include_directories('amd/llvm')
|
||||||
|
else
|
||||||
|
inc_amd_common_llvm = []
|
||||||
|
endif
|
||||||
|
|
||||||
libglsl_util = static_library(
|
libglsl_util = static_library(
|
||||||
'glsl_util',
|
'glsl_util',
|
||||||
files(
|
files(
|
||||||
|
|
Loading…
Reference in New Issue