aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/package/spirv/package.az
diff options
context:
space:
mode:
Diffstat (limited to 'internal/rosa/package/spirv/package.az')
-rw-r--r--internal/rosa/package/spirv/package.az139
1 files changed, 139 insertions, 0 deletions
diff --git a/internal/rosa/package/spirv/package.az b/internal/rosa/package/spirv/package.az
new file mode 100644
index 00000000..0b4789c6
--- /dev/null
+++ b/internal/rosa/package/spirv/package.az
@@ -0,0 +1,139 @@
+package spirv-headers {
+ description = "machine-readable files for the SPIR-V Registry";
+ website = "https://github.com/KhronosGroup/SPIRV-Headers";
+ anitya = 230542;
+ // upstream changed version scheme, anitya incapable of filtering them
+ latest = anityaFilterSPIRV;
+
+ version* = "1.4.341.0";
+ source = remoteGitHub {
+ suffix = "KhronosGroup/SPIRV-Headers";
+ tag = "vulkan-sdk-"+version;
+ checksum = "0PL43-19Iaw4k7_D8J8BvoJ-iLgCVSYZ2ThgDPGfAJwIJFtre7l0cnQtLjcY-JvD";
+ };
+
+ exec = cmake {
+ // upstream has no tests
+ skipTest = true;
+ };
+}
+
+package spirv-tools {
+ description = "an API and commands for processing SPIR-V modules";
+ website = "https://github.com/KhronosGroup/SPIRV-Tools";
+ anitya = 14894;
+ latest = anityaFallback;
+
+ version* = "2026.1";
+ source = remoteGitHub {
+ suffix = "KhronosGroup/SPIRV-Tools";
+ tag = "v"+version;
+ checksum = "ZSQPQx8NltCDzQLk4qlaVxyWRWeI_JtsjEpeFt3kezTanl9DTHfLixSUCezMFBjv";
+ };
+
+ exec = cmake {
+ cache = {
+ "SPIRV-Headers_SOURCE_DIR": "/system";
+ };
+ };
+
+ inputs = [
+ python,
+
+ spirv-headers,
+ ];
+
+ runtime = [ spirv-headers ];
+}
+
+package spirv-llvm-translator {
+ description = "bi-directional translation between SPIR-V and LLVM IR";
+ website = "https://github.com/KhronosGroup/SPIRV-LLVM-Translator";
+ anitya = 227273;
+
+ version* = "22.1.2";
+ source = remoteGitHub {
+ suffix = "KhronosGroup/SPIRV-LLVM-Translator";
+ tag = "v"+version;
+ checksum = "JZAaV5ewYcm-35YA_U2BM2IcsQouZtX1BLZR0zh2vSlfEXMsT5OCtY4Gh5RJkcGy";
+ };
+ patches = [ "remove-early-prefix.patch" ];
+
+ // litArgs emits shell syntax
+ early = "\nexport LIT_OPTS=" + litArgs {
+ verbose = true;
+
+ skipChecks = arch {
+ default = [
+ // error: line 13: OpTypeCooperativeMatrixKHR Scope is limited to Workgroup and Subgroup
+ "cooperative_matrix_constant_null.spvasm",
+ ];
+
+ arm64 = [
+ // error: line 13: OpTypeCooperativeMatrixKHR Scope is limited to Workgroup and Subgroup
+ "cooperative_matrix_constant_null.spvasm",
+
+ // LLVM ERROR: unsupported calling convention
+ "DebugInfo/COFF/no-cus.ll",
+ "DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll",
+ "DebugInfo/Generic/2009-11-10-CurrentFn.ll",
+ "DebugInfo/Generic/2010-01-05-DbgScope.ll",
+ "DebugInfo/Generic/2010-03-12-llc-crash.ll",
+ "DebugInfo/Generic/2010-03-24-MemberFn.ll",
+ "DebugInfo/Generic/2010-04-19-FramePtr.ll",
+ "DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll",
+ "DebugInfo/Generic/2010-10-01-crash.ll",
+ "DebugInfo/Generic/PR20038.ll",
+ "DebugInfo/Generic/constant-pointers.ll",
+ "DebugInfo/Generic/dead-argument-order.ll",
+ "DebugInfo/Generic/debug-info-eis-option.ll",
+ "DebugInfo/Generic/def-line.ll",
+ "DebugInfo/Generic/discriminator.ll",
+ "DebugInfo/Generic/dwarf-public-names.ll",
+ "DebugInfo/Generic/enum.ll",
+ "DebugInfo/Generic/func-using-decl.ll",
+ "DebugInfo/Generic/global.ll",
+ "DebugInfo/Generic/imported-name-inlined.ll",
+ "DebugInfo/Generic/incorrect-variable-debugloc1.ll",
+ "DebugInfo/Generic/inline-scopes.ll",
+ "DebugInfo/Generic/inlined-arguments.ll",
+ "DebugInfo/Generic/inlined-vars.ll",
+ "DebugInfo/Generic/linear-dbg-value.ll",
+ "DebugInfo/Generic/linkage-name-abstract.ll",
+ "DebugInfo/Generic/member-order.ll",
+ "DebugInfo/Generic/missing-abstract-variable.ll",
+ "DebugInfo/Generic/multiline.ll",
+ "DebugInfo/Generic/namespace_function_definition.ll",
+ "DebugInfo/Generic/namespace_inline_function_definition.ll",
+ "DebugInfo/Generic/noscopes.ll",
+ "DebugInfo/Generic/ptrsize.ll",
+ "DebugInfo/Generic/restrict.ll",
+ "DebugInfo/Generic/two-cus-from-same-file.ll",
+ "DebugInfo/Generic/version.ll",
+ "DebugInfo/LocalAddressSpace.ll",
+ "DebugInfo/UnknownBaseType.ll",
+ "DebugInfo/expr-opcode.ll",
+ ];
+ };
+ } + "\n";
+
+ exec = cmake {
+ cache = {
+ "CMAKE_SKIP_BUILD_RPATH": "ON";
+ "BUILD_SHARED_LIBS": "ON";
+ "LLVM_SPIRV_ENABLE_LIBSPIRV_DIS": "ON";
+ "LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR": "/system";
+ "LLVM_EXTERNAL_LIT": "/system/bin/lit";
+ "LLVM_INCLUDE_TESTS": "ON";
+ };
+ };
+
+ inputs = [
+ bash,
+ lit,
+
+ spirv-tools,
+ ];
+
+ runtime = [ spirv-tools ];
+}