[Buildroot] [PATCH 1/1] package/vulkan-loader: fix x11 handling

Thomas Petazzoni thomas.petazzoni at bootlin.com
Wed Sep 20 21:50:01 UTC 2023


On Tue, 19 Sep 2023 21:37:54 +0200
Fabrice Fontaine <fontaine.fabrice at gmail.com> wrote:

> diff --git a/package/vulkan-loader/Config.in b/package/vulkan-loader/Config.in
> index 9c215dc9ce..1ea6c94505 100644
> --- a/package/vulkan-loader/Config.in
> +++ b/package/vulkan-loader/Config.in
> @@ -4,6 +4,7 @@ config BR2_PACKAGE_VULKAN_LOADER
>  	depends on !BR2_STATIC_LIBS # dlfcn.h
>  	depends on BR2_TOOLCHAIN_HAS_THREADS
>  	select BR2_PACKAGE_VULKAN_HEADERS
> +	select BR2_PACKAGE_XLIB_LIBXRANDR if BR2_PACKAGE_XORG7

This will imply that when XORG7 is enabled, all of libX11, libxcb and
libXrandr are automatically enabled (because xrandr -> libx11 ->
libxcb).

>  	help
>  	  The Khronos official Vulkan ICD desktop loader.
>  
> diff --git a/package/vulkan-loader/vulkan-loader.mk b/package/vulkan-loader/vulkan-loader.mk
> index f6dd9d0ac3..b1545a4972 100644
> --- a/package/vulkan-loader/vulkan-loader.mk
> +++ b/package/vulkan-loader/vulkan-loader.mk
> @@ -26,13 +26,16 @@ endif
>  
>  ifeq ($(BR2_PACKAGE_LIBXCB),y)
>  VULKAN_LOADER_DEPENDENCIES += libxcb
> -VULKAN_LOADER_CONF_OPTS += \
> -	-DBUILD_WSI_XCB_SUPPORT=ON \
> -	-DBUILD_WSI_XLIB_SUPPORT=ON
> +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_XCB_SUPPORT=ON
>  else
> -VULKAN_LOADER_CONF_OPTS += \
> -	-DBUILD_WSI_XCB_SUPPORT=OFF \
> -	-DBUILD_WSI_XLIB_SUPPORT=OFF
> +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_XCB_SUPPORT=OFF
> +endif
> +
> +ifeq ($(BR2_PACKAGE_XLIB_LIBX11)$(BR2_PACKAGE_XLIB_LIBXRANDR),yy)
> +VULKAN_LOADER_DEPENDENCIES += xlib_libX11 xlib_libXrandr
> +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_XLIB_SUPPORT=ON
> +else
> +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_XLIB_SUPPORT=OFF
>  endif

So here it wouldn't make sense to separate Xlib case from the Xcb case,
because both of them would always be enabled due to your select. In
addition, you're already testing in the condition here that
BR2_PACKAGE_XLIB_LIBXRANDR=y making the select somewhat useless.

Could you have a closer look into this?

Thanks!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com



More information about the buildroot mailing list