From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 25 Feb 2022 10:43:08 +0100 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1nNX80-009m1B-7A for lore@lore.pengutronix.de; Fri, 25 Feb 2022 10:43:08 +0100 Received: from localhost ([127.0.0.1] helo=metis.ext.pengutronix.de) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1nNX7z-0000gV-7v; Fri, 25 Feb 2022 10:43:07 +0100 Received: from dude03.red.stw.pengutronix.de ([2a0a:edc0:0:1101:1d::39]) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1nNX7t-0000gN-2w for ptxdist@pengutronix.de; Fri, 25 Feb 2022 10:43:01 +0100 From: Philipp Zabel To: ptxdist@pengutronix.de Date: Fri, 25 Feb 2022 10:43:00 +0100 Message-Id: <20220225094300.2602978-1-p.zabel@pengutronix.de> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Subject: [ptxdist] [PATCH v2] spirv-tools: version bump 2021.4 -> 1.3.204.0, separate spirv-headers X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list 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 Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false Instead of bumping to v2022.1 and applying the bugfix patches locally, switch to the Vulkan SDK release version. While spirv-tools (and shaderc) use spirv-headers by integrating the sources into their build tree, vulkan-validationlayers looks for it using cmake find_package. Split spirv-headers into a proper package that can be installed into target-sysroot. Signed-off-by: Philipp Zabel --- Changes since v1: - Set SPIRV_HEADERS_LICENSE to "custom" for Khronos (modified MIT) license --- rules/spirv-headers.in | 8 ++++++++ rules/spirv-headers.make | 35 +++++++++++++++++++++++++++++++++++ rules/spirv-tools.make | 39 ++++++++++++--------------------------- 3 files changed, 55 insertions(+), 27 deletions(-) create mode 100644 rules/spirv-headers.in create mode 100644 rules/spirv-headers.make diff --git a/rules/spirv-headers.in b/rules/spirv-headers.in new file mode 100644 index 000000000000..742a7f682026 --- /dev/null +++ b/rules/spirv-headers.in @@ -0,0 +1,8 @@ +## SECTION=multimedia_libs + +menuconfig SPIRV_HEADERS + tristate + prompt "spirv-headers" + select HOST_CMAKE + help + SPIR-V Headers diff --git a/rules/spirv-headers.make b/rules/spirv-headers.make new file mode 100644 index 000000000000..6fba1b6058c1 --- /dev/null +++ b/rules/spirv-headers.make @@ -0,0 +1,35 @@ +# -*-makefile-*- +# +# Copyright (C) 2022 by Philipp Zabel +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_SPIRV_HEADERS) += spirv-headers + +# +# Paths and names +# +SPIRV_HEADERS_VERSION := 1.3.204.0 +SPIRV_HEADERS_MD5 := 09ea3d4f15f4d79bd58ff01239ab213e +SPIRV_HEADERS := spirv-headers-$(SPIRV_HEADERS_VERSION) +SPIRV_HEADERS_SUFFIX := tar.gz +SPIRV_HEADERS_URL := https://github.com/KhronosGroup/SPIRV-Headers/archive/sdk-$(SPIRV_HEADERS_VERSION).$(SPIRV_HEADERS_SUFFIX) +SPIRV_HEADERS_SOURCE := $(SRCDIR)/spirv-headers-$(SPIRV_HEADERS_VERSION).$(SPIRV_HEADERS_SUFFIX) +SPIRV_HEADERS_DIR := $(BUILDDIR)/$(SPIRV_HEADERS) +SPIRV_HEADERS_LICENSE := custom +SPIRV_HEADERS_LICENSE_FILES := file://LICENSE;md5=c938b85bceb8fb26c1a807f28a52ae2d + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +SPIRV_HEADERS_CONF_TOOL := cmake +SPIRV_HEADERS_CONF_OPT := \ + $(CROSS_CMAKE_USR) + +# vim: syntax=make diff --git a/rules/spirv-tools.make b/rules/spirv-tools.make index 341c9aecd17f..770df808107c 100644 --- a/rules/spirv-tools.make +++ b/rules/spirv-tools.make @@ -14,26 +14,25 @@ PACKAGES-$(PTXCONF_SPIRV_TOOLS) += spirv-tools # # Paths and names # -SPIRV_TOOLS_VERSION := 2021.4 -SPIRV_TOOLS_MD5 := bb36f699fcaca7362b983d75fa5a547b +SPIRV_TOOLS_VERSION := 1.3.204.0 +SPIRV_TOOLS_MD5 := 0078b5a2635e6cefe8e47eda98ec86b4 SPIRV_TOOLS := spirv-tools-$(SPIRV_TOOLS_VERSION) SPIRV_TOOLS_SUFFIX := tar.gz -SPIRV_TOOLS_URL := https://github.com/KhronosGroup/SPIRV-Tools/archive/v$(SPIRV_TOOLS_VERSION).$(SPIRV_TOOLS_SUFFIX) +SPIRV_TOOLS_URL := https://github.com/KhronosGroup/SPIRV-Tools/archive/sdk-$(SPIRV_TOOLS_VERSION).$(SPIRV_TOOLS_SUFFIX) SPIRV_TOOLS_SOURCE := $(SRCDIR)/$(SPIRV_TOOLS).$(SPIRV_TOOLS_SUFFIX) SPIRV_TOOLS_DIR := $(BUILDDIR)/$(SPIRV_TOOLS) +SPIRV_TOOLS_BUILD_DIR := $(SPIRV_TOOLS_DIR)-build SPIRV_TOOLS_LICENSE := Apache-2.0 SPIRV_TOOLS_LICENSE_FILES := file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 +SPIRV_TOOLS_SPIRV_HEADERS_MD5 = $(SPIRV_HEADERS_MD5) +SPIRV_TOOLS_SPIRV_HEADERS_URL = $(SPIRV_HEADERS_URL) +SPIRV_TOOLS_SPIRV_HEADERS_SOURCE = $(SPIRV_HEADERS_SOURCE) +SPIRV_TOOLS_SPIRV_HEADERS_DIR = $(SPIRV_TOOLS_DIR)/external/spirv-headers -SPIRV_HEADERS_VERSION := 2021-11-11-g814e728b30dd -SPIRV_HEADERS_MD5 := 42b6d6fef675c42eddbc7742f033c964 -SPIRV_HEADERS_SUFFIX := tar.gz -SPIRV_HEADERS_URL := https://github.com/KhronosGroup/SPIRV-Headers/archive/$(SPIRV_HEADERS_VERSION).$(SPIRV_HEADERS_SUFFIX) -SPIRV_HEADERS_SOURCE := $(SRCDIR)/spirv-headers-$(SPIRV_HEADERS_VERSION).$(SPIRV_HEADERS_SUFFIX) -$(SPIRV_HEADERS_SOURCE) := SPIRV_HEADERS -SPIRV_HEADERS_DIR := $(SPIRV_TOOLS_DIR)/external/spirv-headers - -SPIRV_TOOLS_SOURCES := $(SPIRV_TOOLS_SOURCE) $(SPIRV_HEADERS_SOURCE) +SPIRV_TOOLS_SOURCES := \ + $(SPIRV_TOOLS_SOURCE) \ + $(SPIRV_TOOLS_SPIRV_HEADERS_SOURCE) # ---------------------------------------------------------------------------- # Extract @@ -43,7 +42,7 @@ $(STATEDIR)/spirv-tools.extract: @$(call targetinfo) @$(call clean, $(SPIRV_TOOLS_DIR)) @$(call extract, SPIRV_TOOLS) - @$(call extract, SPIRV_HEADERS) + @$(call extract, SPIRV_TOOLS_SPIRV_HEADERS) @$(call patchin, SPIRV_TOOLS) @$(call touch) @@ -73,20 +72,6 @@ SPIRV_TOOLS_CONF_OPT := \ -DSPIRV_WARN_EVERYTHING=OFF \ -DSPIRV_WERROR=OFF -# ---------------------------------------------------------------------------- -# Install -# ---------------------------------------------------------------------------- - -$(STATEDIR)/spirv-tools.install: - @$(call targetinfo) - @install -vD -m 644 $(SPIRV_TOOLS_DIR)-build/source/libSPIRV-Tools.a $(SPIRV_TOOLS_PKGDIR)/usr/lib/libSPIRV-Tools.a - @install -vD -m 644 $(SPIRV_TOOLS_DIR)-build/source/opt/libSPIRV-Tools-opt.a $(SPIRV_TOOLS_PKGDIR)/usr/lib/libSPIRV-Tools-opt.a - @install -vD -m 644 $(SPIRV_TOOLS_DIR)-build/source/libSPIRV-Tools-shared.so $(SPIRV_TOOLS_PKGDIR)/usr/lib/libSPIRV-Tools-shared.so - @mkdir -p $(SPIRV_TOOLS_PKGDIR)/usr/include - @cp -r $(SPIRV_HEADERS_DIR)/include/spirv $(SPIRV_TOOLS_PKGDIR)/usr/include - @cp -r $(SPIRV_TOOLS_DIR)/include/spirv-tools $(SPIRV_TOOLS_PKGDIR)/usr/include - $(call touch) - # ---------------------------------------------------------------------------- # Target-Install # ---------------------------------------------------------------------------- -- 2.30.2 _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de