fastports

spirv-tools 2026.1

graphics/spirv-tools

Tools for processing SPIR-V intermediate shader language modules

Category
graphics
Maintainer
tagattie@FreeBSD.org
WWW
https://github.com/KhronosGroup/SPIRV-Tools
License
APACHE20
USES
cmake:testing compiler:c++11-lib python:build shebangfix

Description

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.

Dependencies

Commit History

may be incomplete — full history at freebsd-ports on GitHub

Commit Credits Log message
2026.1
691d023921 files touched
Hiroki Tagato (tagattie)
graphics/spirv-tools: Update to 2026.1
Changelog: https://github.com/KhronosGroup/SPIRV-Tools/blob/v2026.1/CHANGES

Reported by:	GitHub (watch releases)
2025.5
ec3b7d6b91 files touched
Hiroki Tagato (tagattie)
graphics/spirv-tools: Update to 2025.5
Changelog: https://github.com/KhronosGroup/SPIRV-Tools/blob/v2025.5/CHANGES

Reported by:	GitHub (watch releases)
2025.4
1fcdc76337 files touched
Hiroki Tagato (tagattie)
graphics/spirv-tools: update to 2025.4 and take maintainership
While here:
- add LICENSE_FILE
- add DOCS option
- sort variable order to make portclippy happy

Changelog: https://github.com/KhronosGroup/SPIRV-Tools/blob/v2025.4/CHANGES
2025.3.rc1
775fe3b6cd files touched
Jan Beich (jbeich)
graphics/spirv-tools: drop maintainership
2025.3.rc1
17c48bcecb files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2025.3.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2025.2.rc1...v2025.3.rc1
Reported by:	Repology
2025.2.rc1
00045e68e1 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2025.2.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2025.1...v2025.2.rc1
Reported by:	Repology
2025.1
c2f30c4991 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2025.1 (nop)
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2025.1.rc1...v2025.1
Reported by:	GitHub (watch releases)
2025.1.rc1
b5f7bdce03 files touched
Yuri Victorovich (yuri)
graphics/spirv-tools: Add comment
2025.1.rc1
7cc1ea312f files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2025.1.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2024.4.rc2...v2025.1.rc1
Reported by:	Repology
2024.4.rc2
6b13788707 files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: update to 1.4.306
Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/v1.3.305...v1.4.306
Reported by:	Repology, portscout
2024.4.rc2
08e6d6041c files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2024.4.r2
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/releases/v2024.4.rc2
Reported by:	GitHub (watch releases)
2024.4.rc1
61fa447dee files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2024.4.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/releases/v2024.4.rc1
Reported by:	GitHub (watch releases)
2024.3
ab5970fc55 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2024.3
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/releases/v2024.2
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/releases/v2024.3
Reported by:	GitHub (watch releases)
2024.2.rc1
2d7b6f4fab files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2024.2.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2024.1.rc1...v2024.2.rc1
2024.1
43bd761d2d files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2024.1 (nop)
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2024.1.rc1...v2024.1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/releases/tag/v2024.1
Reported by	GitHub (watch releases)
2024.1.rc1
6d15fb5e59 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2024.1.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2023.6.rc1...v2024.1.rc1
2023.6.rc1
8a84dab72e files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2023.6.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2023.5.rc1...v2023.6.rc1
2023.5.rc1
ed7a37f595 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2023.5.r1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2023.4.rc2...v2023.5.rc1
2023.4.rc2
63485266d7 files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: update to 1.3.265
Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/v1.3.264...v1.3.265
Reported by:	Repology, portscout
2023.4.rc2
8467f3513e files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2023.4.r2
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2023.4.rc1...v2023.4.rc2
2023.4.rc1
9dd7c1267a files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2023.4
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2023.2...v2023.4.rc1
2023.2
0d87112995 files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: update to 1.3.256
Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/v1.3.255...v1.3.256
Reported by:	Repology, portscout
2023.2
3d9a815d9c files touched
Rene Ladan (rene)
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.

Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.

finance/quickfix: mark BROKEN with PYTHON

libtool: compile:  c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++ -DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable -Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi -Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings -Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x -MT _quickfix_la-QuickfixPython.lo -MD -MP -MF .deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp  -fPIC -DPIC -o .libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
          ^~~~~~~~~~
1 warning and 1 error generated.

Reviewed by:	portmgr, vishwin, yuri
Differential Revision:	<https://reviews.freebsd.org/D40568>
2023.2
f47ab3c753 files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: unbreak build after 25856cf8cf38
layers/gpu_validation/gpu_validation.cpp:1014:48: error: use of undeclared identifier 'kInstBindlessBoundsOutDescSet'; did you mean 'kInstBindlessBoundsOutDescIndex'?
            strm << "(set = " <<  debug_record[kInstBindlessBoundsOutDescSet] << ", binding = " << debug_record[kInstBindlessBoundsOutDescBinding] << ") Index of "
                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                               kInstBindlessBoundsOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:149:18: note: 'kInstBindlessBoundsOutDescIndex' declared here
static const int kInstBindlessBoundsOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1014:113: error: use of undeclared identifier 'kInstBindlessBoundsOutDescBinding'
            strm << "(set = " <<  debug_record[kInstBindlessBoundsOutDescSet] << ", binding = " << debug_record[kInstBindlessBoundsOutDescBinding] << ") Index of "
                                                                                                                ^
layers/gpu_validation/gpu_validation.cpp:1019:47: error: use of undeclared identifier 'kInstBindlessUninitOutDescSet'; did you mean 'kInstBindlessUninitOutDescIndex'?
            strm << "(set = " << debug_record[kInstBindlessUninitOutDescSet] << ", binding = " << debug_record[kInstBindlessUninitOutBinding] << ") Descriptor index "
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                              kInstBindlessUninitOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:155:18: note: 'kInstBindlessUninitOutDescIndex' declared here
static const int kInstBindlessUninitOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1019:112: error: use of undeclared identifier 'kInstBindlessUninitOutBinding'
            strm << "(set = " << debug_record[kInstBindlessUninitOutDescSet] << ", binding = " << debug_record[kInstBindlessUninitOutBinding] << ") Descriptor index "
                                                                                                               ^
layers/gpu_validation/gpu_validation.cpp:1033:51: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescSet'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                  kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1033:117: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescBinding'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                                                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                                                                                    kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1038:51: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescSet'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                  kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1038:117: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescBinding'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                                                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                                                                                    kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1052:51: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescSet'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                  kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1052:117: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescBinding'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                                                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                                                                                    kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1057:51: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescSet'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                  kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^
layers/gpu_validation/gpu_validation.cpp:1057:117: error: use of undeclared identifier 'kInstBindlessBuffOOBOutDescBinding'; did you mean 'kInstBindlessBuffOOBOutDescIndex'?
                strm << "(set = " << debug_record[kInstBindlessBuffOOBOutDescSet] << ", binding = " << debug_record[kInstBindlessBuffOOBOutDescBinding]
                                                                                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                                                                                    kInstBindlessBuffOOBOutDescIndex
/usr/local/include/spirv-tools/instrument.hpp:162:18: note: 'kInstBindlessBuffOOBOutDescIndex' declared here
static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 1;
                 ^

Regressed by:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/commit/da7711a4f0ab
2023.2
9cc6a8c5ea files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: update to 1.3.250
Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/v1.3.249...v1.3.250
Reported by:	Repology, portscout
2023.2
7a8caf4936 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2023.2
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/releases/tag/v2023.2
Reported by:	GitHub (watch releases)
2023.1
89b93db9ef files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2023.1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/releases/tag/v2023.1
Reported by:	GitHub (watch releases)
2022.4
861f946b33 files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: update to 1.3.236
Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/v1.3.235...v1.3.236
Reported by:	Repology, portscout
2022.4
4feb7b808c files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2022.4
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2022.3...v2022.4
Reported by:	Repology
2022.3
affb803a94 files touched
Jan Beich (jbeich)
graphics/spirv-tools: don't disable -Werror
FreeBSD is supported upstream, and upstream regularly tests with Clang.
I'd like to be notified of new warnings. Let's see how long it lasts.

Tested by:	Clang 11/13/14/15, GCC 11, -DNDEBUG
2022.3
fb16dfecae files touched
Stefan Eßer (se)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.

This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.

Approved by:		portmgr (tcberner)
2022.3
b7f05445c0 files touched
Stefan Eßer (se)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.

Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.

There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.

This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.

There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.

The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.

Approved by:		portmgr (tcberner)
2022.3
5bf53354ff files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2022.3
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2022.2...v2022.3
Reported by:	Repology
2022.2
de27a015a3 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2022.2
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2022.1...v2022.2
Reported by:	GitHub (watch releases)
2022.1
571f5a7ff6 files touched
Jan Beich (jbeich)
graphics/shaderc: update to 2022.1
Changes:	https://github.com/google/shaderc/compare/v2022.0...v2022.1
Reported by:	Repology
2022.1
7ebcd08ad9 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2022.1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2021.4...v2022.1
Reported by:	GitHub (watch releases)
2021.4
8fb12ab375 files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2021.4
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2021.3...v2021.4
Reported by:	GitHub (watch releases)
2021.3
d468ffc18d files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: update to 1.2.197
Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/v1.2.196...v1.2.197
Reported by:	portscout
2021.3
d61dc5035d files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2021.3
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2021.2...v2021.3
Reported by:	Repology
2021.2
4171d1166b files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2021.2
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2021.1...v2021.2
Reported by:	Repology
2021.1
e9ae03ca8f files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2021.1
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2020.7...v2021.1
Reported by:	portscout
2020.7
cf118ccf87 files touched
Mathieu Arnold (mat)
One more small cleanup, forgotten yesterday. Reported by: lwhsu
2020.7
305f148f48 files touched
Mathieu Arnold (mat)
Remove # $FreeBSD$ from Makefiles.
2020.7
8e32f9826b files touched
Jan Beich (jbeich)
graphics/spirv-tools: update to 2020.7
Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2020.6...v2020.7
Reported by:	Repology
2020.6
e86c0b0b5f files touched
Jan Beich (jbeich)
graphics/vulkan-validation-layers: update to 1.2.170
Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/v1.2.169...v1.2.170
Reported by:	portscout
2020.6
2ed21bec6c files touched
Jan Beich (jbeich)
devel/spirv-tools: move to graphics/ where glslang is