<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Aug 15, 2016 at 4:05 AM, Emil Velikov <span dir="ltr"><<a href="mailto:emil.l.velikov@gmail.com" target="_blank">emil.l.velikov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 11 August 2016 at 23:26, Kevin Strasser <<a href="mailto:kevin.strasser@intel.com">kevin.strasser@intel.com</a>> wrote:<br>
> Some applications continue to use the Xlib client library and expect that<br>
> VK_KHR_xlib_surface will be available in the driver. Service these<br>
> applications by converting the Display pointer to xcb_connection_t and use<br>
> the existing xcb code in the driver.<br>
><br>
> Signed-off-by: Kevin Strasser <<a href="mailto:kevin.strasser@intel.com">kevin.strasser@intel.com</a>><br>
> Cc: Jason Ekstrand <<a href="mailto:jason.ekstrand@intel.com">jason.ekstrand@intel.com</a>><br>
> ---<br>
>  src/intel/vulkan/Makefile.am   |  7 ++--<br>
>  src/intel/vulkan/anv_device.c  |  6 +++<br>
>  src/intel/vulkan/anv_wsi_x11.c | 87 ++++++++++++++++++++++++++++++<wbr>++++++------<br>
>  3 files changed, 86 insertions(+), 14 deletions(-)<br>
><br>
> diff --git a/src/intel/vulkan/Makefile.am b/src/intel/vulkan/Makefile.am<br>
> index fe7371e..73db8f5 100644<br>
> --- a/src/intel/vulkan/Makefile.am<br>
> +++ b/src/intel/vulkan/Makefile.am<br>
> @@ -85,7 +85,8 @@ VULKAN_LIB_DEPS =<br>
>  if HAVE_PLATFORM_X11<br>
>  AM_CPPFLAGS += \<br>
>         $(XCB_DRI3_CFLAGS) \<br>
> -       -DVK_USE_PLATFORM_XCB_KHR<br>
> +       -DVK_USE_PLATFORM_XCB_KHR \<br>
> +       -DVK_USE_PLATFORM_XLIB_KHR<br>
><br>
>  VULKAN_SOURCES += $(VULKAN_WSI_X11_FILES)<br>
>  VULKAN_LIB_DEPS += $(XCB_DRI3_LIBS)<br>
> @@ -145,7 +146,7 @@ EXTRA_DIST = \<br>
>         <a href="http://dev_icd.json.in" rel="noreferrer" target="_blank">dev_icd.json.in</a> \<br>
>         intel_icd.json<br>
><br>
> -libvulkan_intel_la_LIBADD = $(VULKAN_LIB_DEPS)<br>
> +libvulkan_intel_la_LIBADD = $(VULKAN_LIB_DEPS) -lX11-xcb<br>
><br>
>  libvulkan_intel_la_LDFLAGS = \<br>
>         -shared \<br>
> @@ -168,7 +169,7 @@ dev_icd.json : <a href="http://dev_icd.json.in" rel="noreferrer" target="_blank">dev_icd.json.in</a><br>
><br>
>  # Libvulkan with dummy gem. Used for unit tests.<br>
>  libvulkan_test_la_SOURCES = $(VULKAN_GEM_STUB_FILES)<br>
> -libvulkan_test_la_LIBADD = $(VULKAN_LIB_DEPS)<br>
> +libvulkan_test_la_LIBADD = $(VULKAN_LIB_DEPS) -lX11-xcb<br>
><br>
</div></div>For both libraries we should really be using the respective<br>
FOO_CFLAGS/LIBS variables similar to the XCB_DRI3 ones, over the<br>
hardcoded -lX11-xcb. Then again our <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> is a bit messy on the<br>
Xlib/xcb topic, so if you feel overwhelmed just keep it as is - I'll<br>
sort it out at a later stage. In either case - please fold the -l flag<br>
into the VULKAN_LIB_DEPS variable.<br>
<br>
Regardless of the CFLAGS/LIBS suggestion, but with the VULKAN_LIB_DEPS one<br>
Reviewed-by: Emil Velikov <<a href="mailto:emil.velikov@collabora.com">emil.velikov@collabora.com</a>><span class=""><br></span></blockquote><div><br></div><div>I went ahead and pushed it with no modifications and both of our R-Bs.  Feel free to send a fixup and thanks in advance!<br><br></div><div>--Jason<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
>  include $(top_srcdir)/<a href="http://install-lib-links.mk" rel="noreferrer" target="_blank">install-lib-<wbr>links.mk</a><br>
><br>
> diff --git a/src/intel/vulkan/anv_device.<wbr>c b/src/intel/vulkan/anv_device.<wbr>c<br>
> index aae925d..3546682 100644<br>
> --- a/src/intel/vulkan/anv_device.<wbr>c<br>
> +++ b/src/intel/vulkan/anv_device.<wbr>c<br>
> @@ -182,6 +182,12 @@ static const VkExtensionProperties global_extensions[] = {<br>
>        .specVersion = 5,<br>
>     },<br>
>  #endif<br>
> +#ifdef VK_USE_PLATFORM_XLIB_KHR<br>
> +   {<br>
> +      .extensionName = VK_KHR_XLIB_SURFACE_EXTENSION_<wbr>NAME,<br>
> +      .specVersion = 5,<br>
</span>Thanks for _not_ using the VK_KHR_XLIB_SURFACE_SPEC_<wbr>VERSION macro. The<br>
header defines version 6 for both Xlib and XCB yet we implement v5.<br>
<br>
Regards,<br>
Emil<br>
<div class="HOEnZb"><div class="h5">______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</div></div></blockquote></div><br></div></div>