forked from rosa/hakurei
internal/rosa/package: migrate spirv-llvm-translator
Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
139
internal/rosa/package/spirv/package.az
Normal file
139
internal/rosa/package/spirv/package.az
Normal file
@@ -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 ];
|
||||
}
|
||||
Reference in New Issue
Block a user