meson: Add and use an idep for Vulkan WSI

Acked-by: Chia-I Wu <olvaffe@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234>
This commit is contained in:
Jason Ekstrand 2021-10-06 09:32:17 -05:00 committed by Marge Bot
parent 17dcdb000a
commit 916c9335b4
11 changed files with 50 additions and 35 deletions

View File

@ -150,15 +150,16 @@ libvulkan_radeon = shared_library(
[libradv_files, radv_entrypoints, sha1_h],
vs_module_defs : vulkan_radv_def,
include_directories : [
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_amd, inc_amd_common, inc_amd_common_llvm, inc_compiler, inc_util, inc_vulkan_wsi,
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_amd, inc_amd_common, inc_amd_common_llvm, inc_compiler, inc_util,
],
link_with : [
libamd_common, libamd_common_llvm, libamdgpu_addrlib, libvulkan_wsi,
libamd_common, libamd_common_llvm, libamdgpu_addrlib,
],
dependencies : [
dep_llvm, dep_libdrm_amdgpu, dep_thread, dep_elf, dep_dl, dep_m,
dep_valgrind, radv_deps, idep_aco,
idep_mesautil, idep_nir, idep_vulkan_util, idep_amdgfxregs_h, idep_xmlconfig,
idep_mesautil, idep_nir, idep_vulkan_util, idep_vulkan_wsi,
idep_amdgfxregs_h, idep_xmlconfig,
],
c_args : [no_override_init_args, radv_flags, c_msvc_compat_args],
cpp_args : [radv_flags, cpp_msvc_compat_args],

View File

@ -85,6 +85,7 @@ v3dv_deps = [
idep_nir,
idep_nir_headers,
idep_vulkan_util,
idep_vulkan_wsi,
]
if with_platform_x11
@ -109,7 +110,7 @@ foreach ver : v3d_versions
[files_per_version, v3d_xml_pack, v3dv_entrypoints[0]],
include_directories : [
inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_broadcom,
inc_compiler, inc_util, inc_vulkan_wsi,
inc_compiler, inc_util,
],
c_args : [v3dv_flags, '-DV3D_VERSION=' + ver],
gnu_symbol_visibility : 'hidden',
@ -121,12 +122,11 @@ libvulkan_broadcom = shared_library(
'vulkan_broadcom',
[libv3dv_files, v3dv_entrypoints, sha1_h],
include_directories : [
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_broadcom, inc_compiler, inc_util, inc_vulkan_wsi,
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_broadcom, inc_compiler, inc_util,
],
link_with : [
libbroadcom_cle,
libbroadcom_v3d,
libvulkan_wsi,
per_version_libs,
],
dependencies : v3dv_deps,

View File

@ -56,7 +56,6 @@ libtu_files = files(
tu_deps = []
tu_flags = []
tu_link_with = []
tu_wsi = false
@ -79,7 +78,6 @@ endif
if tu_wsi
libtu_files += 'tu_wsi.c'
tu_link_with += libvulkan_wsi
endif
if with_platform_android
@ -129,11 +127,9 @@ libvulkan_freedreno = shared_library(
inc_gallium,
inc_gallium_aux,
inc_compiler,
inc_vulkan_wsi,
inc_freedreno,
],
link_with : [
tu_link_with,
libfreedreno_ir3,
libfreedreno_layout,
libfreedreno_perfcntrs,
@ -148,6 +144,7 @@ libvulkan_freedreno = shared_library(
idep_nir,
tu_deps,
idep_vulkan_util,
idep_vulkan_wsi,
idep_mesautil,
],
c_args : [no_override_init_args, tu_flags],

View File

@ -92,8 +92,11 @@ libzink = static_library(
'zink',
[files_libzink, zink_device_info, zink_instance, zink_nir_algebraic_c, vk_dispatch_table],
gnu_symbol_visibility : 'hidden',
include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_vulkan_wsi, inc_vulkan_util, inc_zink_vk],
dependencies: [dep_vulkan, idep_nir_headers, idep_mesautil, idep_vulkan_util_headers, dep_libdrm],
include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_vulkan_util, inc_zink_vk],
dependencies: [
dep_vulkan, idep_nir_headers, idep_mesautil, idep_vulkan_util_headers,
idep_vulkan_wsi_headers, dep_libdrm
],
c_args: zink_c_args,
)

View File

@ -58,9 +58,8 @@ endif
liblavapipe_st = static_library(
'lavapipe_st',
[liblvp_files, lvp_entrypoints, lvp_commands, sha1_h],
link_with : [ libvulkan_wsi ],
c_args : [ c_msvc_compat_args, lvp_flags ],
gnu_symbol_visibility : 'hidden',
include_directories : [ inc_include, inc_src, inc_util, inc_gallium, inc_compiler, inc_gallium_aux, inc_vulkan_wsi ],
dependencies : [ idep_nir, idep_mesautil, idep_vulkan_util, lvp_deps ]
include_directories : [ inc_include, inc_src, inc_util, inc_gallium, inc_compiler, inc_gallium_aux ],
dependencies : [ idep_nir, idep_mesautil, idep_vulkan_util, idep_vulkan_wsi, lvp_deps ]
)

View File

@ -67,7 +67,7 @@ foreach g : [['70', ['gfx7_cmd_buffer.c']], ['75', ['gfx7_cmd_buffer.c']],
'anv_per_hw_ver@0@'.format(_gfx_ver),
[anv_per_hw_ver_files, g[1], anv_entrypoints[0]],
include_directories : [
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_compiler, inc_intel, inc_vulkan_wsi,
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_compiler, inc_intel,
],
c_args : [
no_override_init_args, c_sse2_args,
@ -75,7 +75,8 @@ foreach g : [['70', ['gfx7_cmd_buffer.c']], ['75', ['gfx7_cmd_buffer.c']],
],
gnu_symbol_visibility : 'hidden',
dependencies : [
dep_libdrm, dep_valgrind, idep_nir_headers, idep_genxml, idep_vulkan_util_headers,
dep_libdrm, dep_valgrind, idep_nir_headers, idep_genxml,
idep_vulkan_util_headers, idep_vulkan_wsi_headers,
],
)
endforeach
@ -117,6 +118,7 @@ anv_deps = [
idep_genxml,
idep_nir_headers,
idep_vulkan_util_headers,
idep_vulkan_wsi_headers,
]
anv_flags = [
no_override_init_args,
@ -155,7 +157,7 @@ libanv_common = static_library(
],
include_directories : [
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel, inc_compiler,
inc_vulkan_wsi, inc_util,
inc_util,
],
c_args : anv_flags,
gnu_symbol_visibility : 'hidden',
@ -166,16 +168,16 @@ libvulkan_intel = shared_library(
'vulkan_intel',
[files('anv_gem.c'), anv_entrypoints[0]],
include_directories : [
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel, inc_compiler, inc_vulkan_wsi,
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel, inc_compiler,
],
link_whole : [libanv_common, libanv_per_hw_ver_libs],
link_with : [
libintel_compiler, libintel_dev, libisl, libblorp, libvulkan_wsi,
libintel_perf,
libintel_compiler, libintel_dev, libisl, libblorp, libintel_perf,
],
dependencies : [
dep_thread, dep_dl, dep_m, anv_deps, idep_libintel_common,
idep_nir, idep_genxml, idep_vulkan_util, idep_mesautil, idep_xmlconfig,
idep_nir, idep_genxml, idep_vulkan_util, idep_vulkan_wsi,
idep_mesautil, idep_xmlconfig,
],
c_args : anv_flags,
gnu_symbol_visibility : 'hidden',
@ -201,16 +203,16 @@ if with_tests
'vulkan_intel_test',
[files('anv_gem_stubs.c'), anv_entrypoints[0]],
include_directories : [
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel, inc_compiler, inc_vulkan_wsi,
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel, inc_compiler,
],
link_whole : libanv_common,
link_with : [
libanv_per_hw_ver_libs, libintel_compiler, libintel_common, libintel_dev,
libisl, libblorp, libvulkan_wsi, libintel_perf,
libisl, libblorp, libintel_perf,
],
dependencies : [
dep_thread, dep_dl, dep_m, anv_deps,
idep_nir, idep_vulkan_util, idep_mesautil,
idep_nir, idep_vulkan_util, idep_vulkan_wsi, idep_mesautil,
],
c_args : anv_flags,
gnu_symbol_visibility : 'hidden',
@ -226,9 +228,12 @@ if with_tests
['tests/@0@.c'.format(t), anv_entrypoints[0]],
c_args : [ c_sse2_args ],
link_with : libvulkan_intel_test,
dependencies : [dep_libdrm, dep_thread, dep_m, dep_valgrind, idep_vulkan_util, ],
dependencies : [
dep_libdrm, dep_thread, dep_m, dep_valgrind,
idep_vulkan_util, idep_vulkan_wsi_headers,
],
include_directories : [
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel, inc_compiler, inc_vulkan_wsi,
inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel, inc_compiler,
],
),
suite : ['intel'],

View File

@ -80,13 +80,13 @@ foreach arch : ['5', '6', '7']
inc_compiler,
inc_gallium, # XXX: pipe/p_format.h
inc_gallium_aux, # XXX: renderonly
inc_vulkan_wsi,
inc_panfrost,
],
dependencies : [
idep_nir_headers,
idep_pan_packers,
idep_vulkan_util_headers,
idep_vulkan_wsi_headers,
dep_libdrm,
dep_valgrind,
],
@ -113,12 +113,10 @@ libvulkan_panfrost = shared_library(
inc_compiler,
inc_gallium, # XXX: pipe/p_format.h
inc_gallium_aux, # XXX: renderonly
inc_vulkan_wsi,
inc_panfrost,
],
link_whole : [panvk_per_arch_libs],
link_with : [
libvulkan_wsi,
libpanfrost_shared,
libpanfrost_midgard,
libpanfrost_bifrost,
@ -137,6 +135,7 @@ libvulkan_panfrost = shared_library(
idep_pan_packers,
panvk_deps,
idep_vulkan_util,
idep_vulkan_wsi,
idep_mesautil,
],
c_args : [no_override_init_args, panvk_flags],

View File

@ -56,6 +56,7 @@ vn_deps = [
dep_thread,
idep_mesautil,
idep_vulkan_util,
idep_vulkan_wsi,
idep_xmlconfig,
]
@ -68,7 +69,6 @@ vn_libs = []
if with_platform_wayland or with_platform_x11
libvn_files += files('vn_wsi.c')
vn_flags += '-DVN_USE_WSI_PLATFORM'
vn_libs += libvulkan_wsi
endif
if with_platform_wayland
@ -90,7 +90,7 @@ libvulkan_virtio = shared_library(
'vulkan_virtio',
[libvn_files, vn_entrypoints, sha1_h],
include_directories : [
inc_include, inc_src, inc_vulkan_wsi, inc_virtio,
inc_include, inc_src, inc_virtio,
],
link_with : vn_libs,
dependencies : [vn_deps],

View File

@ -41,8 +41,11 @@ vklayer_mesa_device_select = shared_library(
vklayer_files,
c_args : [no_override_init_args, vklayer_flags],
gnu_symbol_visibility : 'hidden',
dependencies : [idep_vulkan_util, idep_mesautil, vklayer_deps, dep_libdrm, dep_dl],
include_directories : [inc_include, inc_util, inc_src, inc_vulkan_wsi],
dependencies : [
idep_vulkan_util, idep_vulkan_wsi_headers, idep_mesautil, vklayer_deps,
dep_libdrm, dep_dl
],
include_directories : [inc_include, inc_util, inc_src],
link_args : cc.get_supported_link_arguments(['-Wl,-Bsymbolic-functions', '-Wl,-z,relro']),
install : true
)

View File

@ -21,7 +21,6 @@
vk_api_xml = files('registry/vk.xml')
vulkan_icd_symbols = files('vulkan-icd-symbols.txt')
inc_vulkan_wsi = include_directories('wsi')
inc_vulkan_util = include_directories('util')
vulkan_wsi_args = []

View File

@ -53,3 +53,12 @@ libvulkan_wsi = static_library(
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
idep_vulkan_wsi_headers = declare_dependency(
include_directories : include_directories('.')
)
idep_vulkan_wsi = declare_dependency(
link_with : libvulkan_wsi,
dependencies : idep_vulkan_wsi_headers
)