diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-05-27 13:26:14 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-05-27 15:45:58 +0900 |
| commit | a5d9f76f50b86c69df11e1b178fe3e079dce79b6 (patch) | |
| tree | 522b52e92cf762aeeaf694da831bd80db80ee30d /internal/rosa/package/spirv.az | |
| parent | b313dfefb0b072f54297369c033f406fa6d30684 (diff) | |
internal/rosa/cmake: use DESTDIR instead of --prefix
Turns out --prefix is deeply broken, and DESTDIR works even when using ninja.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/package/spirv.az')
| -rw-r--r-- | internal/rosa/package/spirv.az | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/internal/rosa/package/spirv.az b/internal/rosa/package/spirv.az new file mode 100644 index 00000000..f60b9239 --- /dev/null +++ b/internal/rosa/package/spirv.az @@ -0,0 +1,138 @@ +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.350.0"; + source = remoteGitHub { + suffix = "KhronosGroup/SPIRV-Headers"; + tag = "vulkan-sdk-"+version; + checksum = "wFCZquDVL4HoE-kWbS_BHHb_d71EYR2A2kVp08oDutektpnQzhDP89wo821GgcpG"; + }; + + 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"; + }; + + // 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 ]; +} |
