From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from dude02.hi.pengutronix.de ([2001:67c:670:100:1d::28] helo=dude02.pengutronix.de.) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1k2V9S-0007Mh-UM for ptxdist@pengutronix.de; Mon, 03 Aug 2020 09:44:54 +0200 From: Philipp Zabel Date: Mon, 3 Aug 2020 09:44:53 +0200 Message-Id: <20200803074453.3912-1-p.zabel@pengutronix.de> MIME-Version: 1.0 Subject: [ptxdist] [PATCH v5] vulkan-tools: new package List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de This package contains the vulkaninfo tool. Signed-off-by: Philipp Zabel [mol: fix PTXCONF_VULKAN_CUBE -> PTXCONF_VULKAN_TOOLS_CUBE] Signed-off-by: Michael Olbrich --- Changes since v4: - mark cube examples as BROKEN, the build system does not allow them to be cross-compiled. --- rules/vulkan-tools.in | 33 +++++++++++++++++++ rules/vulkan-tools.make | 72 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 rules/vulkan-tools.in create mode 100644 rules/vulkan-tools.make diff --git a/rules/vulkan-tools.in b/rules/vulkan-tools.in new file mode 100644 index 000000000000..cf287e8f8c09 --- /dev/null +++ b/rules/vulkan-tools.in @@ -0,0 +1,33 @@ +## SECTION=multimedia_libs + +config VULKAN_TOOLS + tristate + prompt "vulkan-tools" + select HOST_CMAKE + select HOST_GLSLANG + select VULKAN_LOADER + select LIBXCB if VULKAN_TOOLS_XCB + select XORG_LIB_X11 if VULKAN_TOOLS_XCB + select WAYLAND if VULKAN_TOOLS_WAYLAND + help + Vulkan Utilities and Tools + +if VULKAN_TOOLS + +config VULKAN_TOOLS_CUBE + bool + # build system does not allow cross-compilation of the cube examples + depends on BROKEN + prompt "install vkcube" + help + Install vkcube and vkcubepp examples. + +config VULKAN_TOOLS_XCB + bool + default y if VULKAN_LOADER_XCB + +config VULKAN_TOOLS_WAYLAND + bool + default y if VULKAN_LOADER_WAYLAND + +endif diff --git a/rules/vulkan-tools.make b/rules/vulkan-tools.make new file mode 100644 index 000000000000..0d04775e7aa4 --- /dev/null +++ b/rules/vulkan-tools.make @@ -0,0 +1,72 @@ +# -*-makefile-*- +# +# Copyright (C) 2020 by Philipp Zabel +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_VULKAN_TOOLS) += vulkan-tools + +# +# Paths and names +# +VULKAN_TOOLS_VERSION := 1.2.141.0 +VULKAN_TOOLS_MD5 := d74d6536dfa19a972149a5e41830249c +VULKAN_TOOLS := vulkan-tools-$(VULKAN_TOOLS_VERSION) +VULKAN_TOOLS_SUFFIX := tar.gz +VULKAN_TOOLS_URL := https://github.com/KhronosGroup/Vulkan-Tools/archive/sdk-$(VULKAN_TOOLS_VERSION).$(VULKAN_TOOLS_SUFFIX) +VULKAN_TOOLS_SOURCE := $(SRCDIR)/$(VULKAN_TOOLS).$(VULKAN_TOOLS_SUFFIX) +VULKAN_TOOLS_DIR := $(BUILDDIR)/$(VULKAN_TOOLS) +VULKAN_TOOLS_LICENSE := Apache-2.0 +VULKAN_TOOLS_LICENSE_FILES := file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +VULKAN_TOOLS_CONF_TOOL := cmake +VULKAN_TOOLS_CONF_OPT := \ + $(CROSS_CMAKE_USR) \ + -DCMAKE_INSTALL_LIBDIR=/usr/lib \ + -DBUILD_CUBE=$(call ptx/onoff, PTXCONF_VULKAN_TOOLS_CUBE) \ + -DCUBE_WSI_SELECTION=$(call ptx/ifdef, PTXCONF_VULKAN_TOOLS_WAYLAND, WAYLAND, \ + $(call ptx/ifdef, PTXCONF_VULKAN_TOOLS_XCB, XCB, DISPLAY)) \ + -DBUILD_VULKANINFO=ON \ + -DBUILD_ICD=OFF \ + -DINSTALL_ICD=OFF \ + -DUSE_CCACHE=OFF \ + -DBUILD_WSI_XCB_SUPPORT=$(call ptx/onoff, PTXCONF_VULKAN_TOOLS_XCB) \ + -DBUILD_WSI_XLIB_SUPPORT=OFF \ + -DBUILD_WSI_WAYLAND_SUPPORT=$(call ptx/onoff, PTXCONF_VULKAN_TOOLS_WAYLAND) \ + -DVulkanRegistry_DIR=$(SYSROOT)/usr/share/vulkan \ + -DGLSLANG_INSTALL_DIR=$(PTXDIST_SYSROOT_HOST)/bin + +# ---------------------------------------------------------------------------- +# Target-Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/vulkan-tools.targetinstall: + @$(call targetinfo) + + @$(call install_init, vulkan-tools) + @$(call install_fixup, vulkan-tools, PRIORITY, optional) + @$(call install_fixup, vulkan-tools, SECTION, base) + @$(call install_fixup, vulkan-tools, AUTHOR, "Philipp Zabel ") + @$(call install_fixup, vulkan-tools, DESCRIPTION, Vulkan Utilities and Tools) + +ifdef VULKAN_TOOLS_CUBE + @$(call install_copy, vulkan-tools, 0, 0, 0755, -, /usr/bin/vkcube) + @$(call install_copy, vulkan-tools, 0, 0, 0755, -, /usr/bin/vkcubepp) +endif + + @$(call install_copy, vulkan-tools, 0, 0, 0755, -, /usr/bin/vulkaninfo) + + @$(call install_finish, vulkan-tools) + + @$(call touch) + +# vim: syntax=make -- 2.20.1 _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de