summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Zabel <p.zabel@pengutronix.de>2020-08-03 09:44:53 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2020-08-03 21:57:03 +0200
commit96a881d161a51b4260ae97e1ff6ae6640db1adbd (patch)
tree72d329e7308e744f872f214a15d68ca2246608b4
parent1a31e96d64dfa16cc52d4d71f4c302dc78c605ed (diff)
downloadptxdist-96a881d161a51b4260ae97e1ff6ae6640db1adbd.tar.gz
ptxdist-96a881d161a51b4260ae97e1ff6ae6640db1adbd.tar.xz
vulkan-tools: new package
This package contains the vulkaninfo tool. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> [mol: fix PTXCONF_VULKAN_CUBE -> PTXCONF_VULKAN_TOOLS_CUBE] Message-Id: <20200803074453.3912-1-p.zabel@pengutronix.de> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--rules/vulkan-tools.in33
-rw-r--r--rules/vulkan-tools.make72
2 files changed, 105 insertions, 0 deletions
diff --git a/rules/vulkan-tools.in b/rules/vulkan-tools.in
new file mode 100644
index 000000000..cf287e8f8
--- /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 000000000..0d04775e7
--- /dev/null
+++ b/rules/vulkan-tools.make
@@ -0,0 +1,72 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2020 by Philipp Zabel <p.zabel@pengutronix.de>
+#
+# 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 <p.zabel@pengutronix.de>")
+ @$(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