pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Import parallel/spirv-tools
Module Name: pkgsrc-wip
Committed By: kikadf <kikadf.01%gmail.com@localhost>
Pushed By: kikadf
Date: Sat Apr 11 14:53:49 2026 +0200
Changeset: e692f89c49c42677ee39d0f9ebc31d03ba07d819
Modified Files:
Makefile
Added Files:
spirv-tools/DESCR
spirv-tools/Makefile
spirv-tools/PLIST
spirv-tools/buildlink3.mk
spirv-tools/distinfo
spirv-tools/patches/patch-source_opt_decoration__manager.cpp
Log Message:
Import parallel/spirv-tools
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=e692f89c49c42677ee39d0f9ebc31d03ba07d819
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
spirv-tools/DESCR | 9 +++++
spirv-tools/Makefile | 33 ++++++++++++++++
spirv-tools/PLIST | 46 ++++++++++++++++++++++
spirv-tools/buildlink3.mk | 24 +++++++++++
spirv-tools/distinfo | 6 +++
.../patch-source_opt_decoration__manager.cpp | 17 ++++++++
7 files changed, 136 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 36afb0d803..6da77b0118 100644
--- a/Makefile
+++ b/Makefile
@@ -5522,6 +5522,7 @@ SUBDIR+= spidermonkey31
SUBDIR+= spiralloops
SUBDIR+= spiralsynth
SUBDIR+= spirv-headers
+SUBDIR+= spirv-tools
SUBDIR+= splix
SUBDIR+= spot
SUBDIR+= spread4
diff --git a/spirv-tools/DESCR b/spirv-tools/DESCR
new file mode 100644
index 0000000000..2f4d81d723
--- /dev/null
+++ b/spirv-tools/DESCR
@@ -0,0 +1,9 @@
+The SPIR-V Tools project provides an API and commands for processing SPIR-V
+modules.
+
+The project includes an assembler, binary module parser, disassembler,
+validator, and optimizer for SPIR-V. Except for the optimizer, all are based
+on a common static library. The library contains all of the implementation
+details, and is used in the standalone tools whilst also enabling integration
+into other code bases directly. The optimizer implementation resides in its
+own library, which depends on the core library.
diff --git a/spirv-tools/Makefile b/spirv-tools/Makefile
new file mode 100644
index 0000000000..bac690d838
--- /dev/null
+++ b/spirv-tools/Makefile
@@ -0,0 +1,33 @@
+# $NetBSD: Makefile,v 1.5 2026/03/25 23:01:21 wiz Exp $
+
+DISTNAME= SPIRV-Tools-2025.5
+PKGNAME= ${DISTNAME:tl}
+CATEGORIES= parallel
+MASTER_SITES= ${MASTER_SITE_GITHUB:=KhronosGroup/}
+GITHUB_TAG= v${PKGVERSION_NOREV}
+
+MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= https://github.com/KhronosGroup/SPIRV-Tools/
+COMMENT= API and commands for processing SPIR-V modules
+LICENSE= apache-2.0
+
+USE_TOOLS+= pkg-config
+USE_LANGUAGES= c c++
+
+PKGCONFIG_OVERRIDE+= cmake/SPIRV-Tools-shared.pc.in
+PKGCONFIG_OVERRIDE+= cmake/SPIRV-Tools.pc.in
+
+WRKSRC= ${WRKDIR}/${DISTNAME}
+
+REPLACE_SH+= tools/lesspipe/spirv-lesspipe.sh
+
+CFLAGS+= -Wno-error=array-bounds
+
+CMAKE_CONFIGURE_ARGS+= -DCMAKE_BUILD_TYPE=Release
+CMAKE_CONFIGURE_ARGS+= -DSPIRV-Headers_SOURCE_DIR=${BUILDLINK_PREFIX.spirv-headers}
+
+.include "../../devel/cmake/build.mk"
+
+.include "../../lang/python/tool.mk"
+.include "../../parallel/spirv-headers/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/spirv-tools/PLIST b/spirv-tools/PLIST
new file mode 100644
index 0000000000..27b5c62342
--- /dev/null
+++ b/spirv-tools/PLIST
@@ -0,0 +1,46 @@
+@comment $NetBSD: PLIST,v 1.2 2025/10/04 12:14:22 tnn Exp $
+bin/spirv-as
+bin/spirv-cfg
+bin/spirv-diff
+bin/spirv-dis
+bin/spirv-lesspipe.sh
+bin/spirv-link
+bin/spirv-lint
+bin/spirv-objdump
+bin/spirv-opt
+bin/spirv-reduce
+bin/spirv-val
+include/spirv-tools/libspirv.h
+include/spirv-tools/libspirv.hpp
+include/spirv-tools/linker.hpp
+include/spirv-tools/optimizer.hpp
+lib/cmake/SPIRV-Tools-diff/SPIRV-Tools-diffConfig.cmake
+lib/cmake/SPIRV-Tools-diff/SPIRV-Tools-diffTargets-release.cmake
+lib/cmake/SPIRV-Tools-diff/SPIRV-Tools-diffTargets.cmake
+lib/cmake/SPIRV-Tools-link/SPIRV-Tools-linkConfig.cmake
+lib/cmake/SPIRV-Tools-link/SPIRV-Tools-linkTargets-release.cmake
+lib/cmake/SPIRV-Tools-link/SPIRV-Tools-linkTargets.cmake
+lib/cmake/SPIRV-Tools-lint/SPIRV-Tools-lintConfig.cmake
+lib/cmake/SPIRV-Tools-lint/SPIRV-Tools-lintTargets-release.cmake
+lib/cmake/SPIRV-Tools-lint/SPIRV-Tools-lintTargets.cmake
+lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optConfig.cmake
+lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optTargets-release.cmake
+lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optTargets.cmake
+lib/cmake/SPIRV-Tools-reduce/SPIRV-Tools-reduceConfig.cmake
+lib/cmake/SPIRV-Tools-reduce/SPIRV-Tools-reduceTarget-release.cmake
+lib/cmake/SPIRV-Tools-reduce/SPIRV-Tools-reduceTarget.cmake
+lib/cmake/SPIRV-Tools-tools/SPIRV-Tools-toolsConfig.cmake
+lib/cmake/SPIRV-Tools-tools/SPIRV-Tools-toolsTargets-release.cmake
+lib/cmake/SPIRV-Tools-tools/SPIRV-Tools-toolsTargets.cmake
+lib/cmake/SPIRV-Tools/SPIRV-ToolsConfig.cmake
+lib/cmake/SPIRV-Tools/SPIRV-ToolsTarget-release.cmake
+lib/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake
+lib/libSPIRV-Tools-diff.a
+lib/libSPIRV-Tools-link.a
+lib/libSPIRV-Tools-lint.a
+lib/libSPIRV-Tools-opt.a
+lib/libSPIRV-Tools-reduce.a
+lib/libSPIRV-Tools-shared.so
+lib/libSPIRV-Tools.a
+lib/pkgconfig/SPIRV-Tools-shared.pc
+lib/pkgconfig/SPIRV-Tools.pc
diff --git a/spirv-tools/buildlink3.mk b/spirv-tools/buildlink3.mk
new file mode 100644
index 0000000000..011af16679
--- /dev/null
+++ b/spirv-tools/buildlink3.mk
@@ -0,0 +1,24 @@
+# $NetBSD: buildlink3.mk,v 1.3 2025/10/04 12:14:22 tnn Exp $
+
+BUILDLINK_TREE+= spirv-tools
+
+.if !defined(SPIRV_TOOLS_BUILDLINK3_MK)
+SPIRV_TOOLS_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.spirv-tools+= spirv-tools>=2025.4
+BUILDLINK_PKGSRCDIR.spirv-tools?= ../../parallel/spirv-tools
+BUILDLINK_FILES.spirv-tools?= \
+ bin/spirv-as \
+ bin/spirv-cfg \
+ bin/spirv-diff \
+ bin/spirv-dis \
+ bin/spirv-link \
+ bin/spirv-lint \
+ bin/spirv-objdump \
+ bin/spirv-opt \
+ bin/spirv-reduce \
+ bin/spirv-val
+
+.endif # SPIRV_TOOLS_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -spirv-tools
diff --git a/spirv-tools/distinfo b/spirv-tools/distinfo
new file mode 100644
index 0000000000..c0e8d3a93a
--- /dev/null
+++ b/spirv-tools/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.4 2026/04/08 11:33:52 tnn Exp $
+
+BLAKE2s (SPIRV-Tools-2025.5.tar.gz) = 0ab1eb5e4e6f3ae9888c159c4e45557b956be3777af56b5c6d33f8fbcb552956
+SHA512 (SPIRV-Tools-2025.5.tar.gz) = cd702b4ab121d06d775f636bb4e4b745bb0d361b112f14fc719c8417723bcd947bdc67f28f7472432696a4f2462a7197a761885d51e6c66a65d48bf3e9983abe
+Size (SPIRV-Tools-2025.5.tar.gz) = 3422476 bytes
+SHA1 (patch-source_opt_decoration__manager.cpp) = 5be7a27f891d421f92ab77ccfac69585f04c49f4
diff --git a/spirv-tools/patches/patch-source_opt_decoration__manager.cpp b/spirv-tools/patches/patch-source_opt_decoration__manager.cpp
new file mode 100644
index 0000000000..faaec5607e
--- /dev/null
+++ b/spirv-tools/patches/patch-source_opt_decoration__manager.cpp
@@ -0,0 +1,17 @@
+$NetBSD: patch-source_opt_decoration__manager.cpp,v 1.1 2026/04/08 11:33:52 tnn Exp $
+
+GCC 16 issue
+https://github.com/KhronosGroup/SPIRV-Tools/commit/c28f5937bce369dde1d645299a8c9873da43dc72.patch
+
+--- source/opt/decoration_manager.cpp.orig 2025-11-19 18:50:43.000000000 +0000
++++ source/opt/decoration_manager.cpp
+@@ -543,7 +543,8 @@ void DecorationManager::CloneDecorations
+ const uint32_t num_operands = inst->NumOperands();
+ for (uint32_t i = 1; i < num_operands; i += 2) {
+ Operand op = inst->GetOperand(i);
+- if (op.words[0] == from) { // add new pair of operands: (to, literal)
++ if (!op.words.empty() &&
++ op.words[0] == from) { // add new pair of operands: (to, literal)
+ inst->AddOperand(
+ Operand(spv_operand_type_t::SPV_OPERAND_TYPE_ID, {to}));
+ op = inst->GetOperand(i + 1);
Home |
Main Index |
Thread Index |
Old Index