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.357.0"; source = remoteGitHub { suffix = "KhronosGroup/SPIRV-Headers"; tag = "vulkan-sdk-"+version; checksum = "KKhVra3IQ4DcciWO7J7Vphhyw-Lb9lD1ZCjcg1AIIwsY04j1DeSIrXiVfCF67juc"; }; 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 = 334920; version# = "1.4.357.0"; source = remoteGitHub { suffix = "KhronosGroup/SPIRV-Tools"; tag = "vulkan-sdk-"+version; checksum = "yCZ92UX21pRFjVoySWiKAUermsE3A69dkeqf_8OPVn_1MxbaP5EAcKnHf27W8eYG"; }; 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.4"; source = remoteGitHub { suffix = "KhronosGroup/SPIRV-LLVM-Translator"; tag = "v"+version; checksum = "xh5ReZ2_i2vX56dZBnizXdHjwsl1y4D32Ptu5IrBdqoCzBqxOlynSj83FvlkcphS"; }; // litArgs emits shell syntax early = "rm -f /system/bin/clang++.cfg\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", // error: line 66: NonSemantic.Shader.DebugInfo.200 DebugTypeFunction: expected operand Return Type is not a valid debug type "DebugInfo/NonSemantic/Shader200/DebugLineOnlyOnce.ll", // error: line 52: End of input reached while decoding OpExtInst starting at word 236: expected more operands after 8 words. "DebugInfo/NonSemantic/Shader200/DebugLinePriority.spt", // error: line 28: FPRoundingMode decoration can be applied only to a conversion instruction to or from a floating-point type. "llvm-intrinsics/constrained-arithmetic.ll", // error: line 78: OpLifetimeStart pointer operand type must be a OpTypePointer. "llvm-intrinsics/lifetime.ll", // error: line 61: FPRoundingMode decoration can be applied only to a conversion instruction to or from a floating-point type. "transcoding/OpenCL/convert_functions.ll", // error: line 56: OpConstantComposite must not have spec constant operands: '30[%30]' "transcoding/constant-vars.ll", // error: line 61: Expected input and Result Type to point to the same type: SpecConstantOp "transcoding/global_block.cl", // error: line 55: OpConstantComposite must not have spec constant operands: '16[%16]' "type-scavenger/globals.ll", ]; arm64 = [ // error: line 13: OpTypeCooperativeMatrixKHR Scope is limited to Workgroup and Subgroup "cooperative_matrix_constant_null.spvasm", // error: line 66: NonSemantic.Shader.DebugInfo.200 DebugTypeFunction: expected operand Return Type is not a valid debug type "DebugInfo/NonSemantic/Shader200/DebugLineOnlyOnce.ll", // error: line 52: End of input reached while decoding OpExtInst starting at word 236: expected more operands after 8 words. "DebugInfo/NonSemantic/Shader200/DebugLinePriority.spt", // error: line 78: OpLifetimeStart pointer operand type must be a OpTypePointer. "llvm-intrinsics/lifetime.ll", // error: line 61: FPRoundingMode decoration can be applied only to a conversion instruction to or from a floating-point type. "transcoding/OpenCL/convert_functions.ll", // error: line 56: OpConstantComposite must not have spec constant operands: '30[%30]' "transcoding/constant-vars.ll", // error: line 61: Expected input and Result Type to point to the same type: SpecConstantOp "transcoding/global_block.cl", // error: line 55: OpConstantComposite must not have spec constant operands: '16[%16]' "type-scavenger/globals.ll", // 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 ]; }