vulkan: factor out wsi dependencies
In commit530927d3f6
("vulkan/util: generate instance/device dispatch tables") we started generating instance dispatch tables some of them (like wayland) require external headers. This commit moves the dependencies up one level so that they apply the whole vulkan directory. We use them for both the util & overlay layer. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes:530927d3f6
("vulkan/util: generate instance/device dispatch tables") Reviewed-by: Eric Engestrom <eric@engestrom.ch>
This commit is contained in:
parent
791198a54b
commit
5abe488d18
|
@ -24,22 +24,35 @@ inc_vulkan_util = include_directories('util')
|
|||
inc_vulkan_wsi = include_directories('wsi')
|
||||
|
||||
vulkan_wsi_args = []
|
||||
vulkan_wsi_deps = []
|
||||
vulkan_wsi_list = []
|
||||
|
||||
if with_platform_x11
|
||||
vulkan_wsi_args += ['-DVK_USE_PLATFORM_XCB_KHR', '-DVK_USE_PLATFORM_XLIB_KHR']
|
||||
vulkan_wsi_deps += [
|
||||
dep_xcb,
|
||||
dep_x11_xcb,
|
||||
dep_xcb_dri2,
|
||||
dep_xcb_dri3,
|
||||
dep_xcb_present,
|
||||
dep_xcb_sync,
|
||||
dep_xshmfence,
|
||||
]
|
||||
vulkan_wsi_list += ['xcb', 'x11']
|
||||
endif
|
||||
if with_platform_wayland
|
||||
vulkan_wsi_args += ['-DVK_USE_PLATFORM_WAYLAND_KHR']
|
||||
vulkan_wsi_deps += dep_wayland_client
|
||||
vulkan_wsi_list += ['wayland']
|
||||
endif
|
||||
if with_platform_drm
|
||||
vulkan_wsi_args += '-DVK_USE_PLATFORM_DISPLAY_KHR'
|
||||
vulkan_wsi_deps += [dep_libdrm]
|
||||
vulkan_wsi_list += ['drm']
|
||||
endif
|
||||
if with_xlib_lease
|
||||
vulkan_wsi_args += '-DVK_USE_PLATFORM_XLIB_XRANDR_EXT'
|
||||
vulkan_wsi_deps += [dep_xcb_xrandr, dep_xlib_xrandr]
|
||||
vulkan_wsi_list += ['xlib_xrandr']
|
||||
endif
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ vklayer_mesa_overlay = shared_library(
|
|||
vklayer_files, overlay_spv,
|
||||
c_args : [c_vis_args, no_override_init_args, vulkan_wsi_args],
|
||||
cpp_args : [cpp_vis_args, vulkan_wsi_args],
|
||||
dependencies : [libimgui_core_dep, dep_dl],
|
||||
dependencies : [vulkan_wsi_deps, libimgui_core_dep, dep_dl],
|
||||
include_directories : [inc_common, inc_vulkan_util],
|
||||
link_args : cc.get_supported_link_arguments(['-Wl,-Bsymbolic-functions', '-Wl,-z,relro']),
|
||||
link_with : [libmesa_util, libvulkan_util],
|
||||
|
|
|
@ -36,17 +36,11 @@ vk_enum_to_str = custom_target(
|
|||
],
|
||||
)
|
||||
|
||||
vulkan_util_deps = []
|
||||
|
||||
if with_platform_wayland
|
||||
vulkan_util_deps += dep_wayland_client
|
||||
endif
|
||||
|
||||
libvulkan_util = static_library(
|
||||
'vulkan_util',
|
||||
[files_vulkan_util, vk_enum_to_str],
|
||||
include_directories : inc_common,
|
||||
dependencies : vulkan_util_deps,
|
||||
dependencies : vulkan_wsi_deps,
|
||||
c_args : [c_vis_args, vulkan_wsi_args],
|
||||
build_by_default : false,
|
||||
)
|
||||
|
|
|
@ -18,25 +18,13 @@
|
|||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
vulkan_wsi_deps = []
|
||||
|
||||
files_vulkan_wsi = files('wsi_common.c')
|
||||
|
||||
if with_platform_x11
|
||||
vulkan_wsi_deps += [
|
||||
dep_xcb,
|
||||
dep_x11_xcb,
|
||||
dep_xcb_dri2,
|
||||
dep_xcb_dri3,
|
||||
dep_xcb_present,
|
||||
dep_xcb_sync,
|
||||
dep_xshmfence,
|
||||
]
|
||||
files_vulkan_wsi += files('wsi_common_x11.c')
|
||||
endif
|
||||
|
||||
if with_platform_wayland
|
||||
vulkan_wsi_deps += dep_wayland_client
|
||||
files_vulkan_wsi += files('wsi_common_wayland.c')
|
||||
files_vulkan_wsi += [
|
||||
wayland_drm_client_protocol_h,
|
||||
|
@ -50,10 +38,6 @@ if with_platform_drm
|
|||
files_vulkan_wsi += files('wsi_common_display.c')
|
||||
endif
|
||||
|
||||
if with_xlib_lease
|
||||
vulkan_wsi_deps += [dep_xcb_xrandr, dep_xlib_xrandr]
|
||||
endif
|
||||
|
||||
libvulkan_wsi = static_library(
|
||||
'vulkan_wsi',
|
||||
files_vulkan_wsi,
|
||||
|
|
Loading…
Reference in New Issue