function get_links(package) local links = { "MLIRAMX", "MLIRAMXToLLVMIRTranslation", "MLIRAMXTransforms", "MLIRAffine", "MLIRAffineAnalysis", "MLIRAffineBufferizableOpInterfaceImpl", "MLIRAffineToStandard", "MLIRAffineTransforms", "MLIRAffineTransformsTestPasses", "MLIRAffineUtils", "MLIRAnalysis", "MLIRArithmetic", "MLIRArithmeticToLLVM", "MLIRArithmeticToSPIRV", "MLIRArithmeticTransforms", "MLIRAsync", "MLIRAsyncToLLVM", "MLIRAsyncTransforms", "MLIRBufferization", "MLIRBufferizationToMemRef", "MLIRBufferizationTransforms", "MLIRCAPIAsync", "MLIRCAPIConversion", "MLIRCAPIDebug", "MLIRCAPIExecutionEngine", "MLIRCAPIGPU", "MLIRCAPIIR", "MLIRCAPIInterfaces", "MLIRCAPILLVM", "MLIRCAPILinalg", "MLIRCAPIPDL", "MLIRCAPIQuant", "MLIRCAPIRegistration", "MLIRCAPISCF", "MLIRCAPIShape", "MLIRCAPISparseTensor", "MLIRCAPIStandard", "MLIRCAPITensor", "MLIRCAPITransforms", "MLIRCallInterfaces", "MLIRCastInterfaces", "MLIRComplex", "MLIRComplexToLLVM", "MLIRComplexToStandard", "MLIRControlFlowInterfaces", "MLIRCopyOpInterface", "MLIRDLTI", "MLIRDLTITestPasses", "MLIRDataLayoutInterfaces", "MLIRDerivedAttributeOpInterface", "MLIRDialect", "MLIRDialectUtils", "MLIREmitC", "MLIRExecutionEngine", "MLIRGPUOps", "MLIRGPUTestPasses", "MLIRGPUToGPURuntimeTransforms", "MLIRGPUToNVVMTransforms", "MLIRGPUToROCDLTransforms", "MLIRGPUToSPIRV", "MLIRGPUToVulkanTransforms", "MLIRGPUTransforms", "MLIRIR", "MLIRInferTypeOpInterface", "MLIRJitRunner", "MLIRLLVMCommonConversion", "MLIRLLVMIR", "MLIRLLVMIRTransforms", "MLIRLLVMToLLVMIRTranslation", "MLIRLinalg", "MLIRLinalgAnalysis", "MLIRLinalgBufferizableOpInterfaceImpl", "MLIRLinalgTestPasses", "MLIRLinalgToLLVM", "MLIRLinalgToSPIRV", "MLIRLinalgToStandard", "MLIRLinalgTransforms", "MLIRLinalgUtils", "MLIRLoopLikeInterface", "MLIRLspServerLib", "MLIRMath", "MLIRMathTestPasses", "MLIRMathToLLVM", "MLIRMathToLibm", "MLIRMathToSPIRV", "MLIRMathTransforms", "MLIRMemRef", "MLIRMemRefTestPasses", "MLIRMemRefToLLVM", "MLIRMemRefToSPIRV", "MLIRMemRefTransforms", "MLIRMemRefUtils", "MLIRMlirOptMain", "MLIRModuleBufferization", "MLIRNVVMIR", "MLIRNVVMToLLVMIRTranslation", "MLIROpenACC", "MLIROpenACCToLLVM", "MLIROpenACCToLLVMIRTranslation", "MLIROpenACCToSCF", "MLIROpenMP", "MLIROpenMPToLLVM", "MLIROpenMPToLLVMIRTranslation", "MLIROptLib", "MLIRPDL", "MLIRPDLInterp", "MLIRPDLLAST", "MLIRPDLLParser", "MLIRPDLToPDLInterp", "MLIRParser", "MLIRPass", "MLIRPresburger", "MLIRQuant", "MLIRROCDLIR", "MLIRROCDLToLLVMIRTranslation", "MLIRReconcileUnrealizedCasts", "MLIRReduce", "MLIRReduceLib", "MLIRRewrite", "MLIRSCF", "MLIRSCFTestPasses", "MLIRSCFToGPU", "MLIRSCFToOpenMP", "MLIRSCFToSPIRV", "MLIRSCFToStandard", "MLIRSCFTransforms", "MLIRSCFUtils", "MLIRSPIRV", "MLIRSPIRVBinaryUtils", "MLIRSPIRVConversion", "MLIRSPIRVDeserialization", "MLIRSPIRVModuleCombiner", "MLIRSPIRVSerialization", "MLIRSPIRVTestPasses", "MLIRSPIRVToLLVM", "MLIRSPIRVTransforms", "MLIRSPIRVTranslateRegistration", "MLIRSPIRVUtils", "MLIRShape", "MLIRShapeOpsTransforms", "MLIRShapeTestPasses", "MLIRShapeToStandard", "MLIRSideEffectInterfaces", "MLIRSparseTensor", "MLIRSparseTensorPipelines", "MLIRSparseTensorTransforms", "MLIRSparseTensorUtils", "MLIRStandard", "MLIRStandardOpsTestPasses", "MLIRStandardOpsTransforms", "MLIRStandardToLLVM", "MLIRStandardToSPIRV", "MLIRSupport", "MLIRSupportIndentedOstream", "MLIRTableGen", "MLIRTargetCpp", "MLIRTargetLLVMIRExport", "MLIRTargetLLVMIRImport", "MLIRTensor", "MLIRTensorInferTypeOpInterfaceImpl", "MLIRTensorTilingInterfaceImpl", "MLIRTensorTransforms", "MLIRTensorUtils", "MLIRTestAnalysis", "MLIRTestDialect", "MLIRTestIR", "MLIRTestPass", "MLIRTestReducer", "MLIRTestRewrite", "MLIRTestStandardToLLVM", "MLIRTestTransforms", "MLIRTilingInterface", "MLIRToLLVMIRTranslationRegistration", "MLIRTosa", "MLIRTosaTestPasses", "MLIRTosaToLinalg", "MLIRTosaToSCF", "MLIRTosaToStandard", "MLIRTosaTransforms", "MLIRTransformUtils", "MLIRTransforms", "MLIRTranslation", "MLIRVector", "MLIRVectorInterfaces", "MLIRVectorTestPasses", "MLIRVectorToGPU", "MLIRVectorToLLVM", "MLIRVectorToROCDL", "MLIRVectorToSCF", "MLIRVectorToSPIRV", "MLIRVectorTransforms", "MLIRVectorUtils", "MLIRViewLikeInterface" } local links_arch if package:is_arch("x86_64", "i386", "x64", "x86") then links_arch = { "MLIRX86Vector", "MLIRX86VectorToLLVMIRTranslation", "MLIRX86VectorTransforms"} elseif package:is_arch("arm64", "armv7") then links_arch = { "MLIRArmNeon", "MLIRArmNeon2dToIntr", "MLIRArmNeonToLLVMIRTranslation", "MLIRArmSVE", "MLIRArmSVEToLLVMIRTranslation", "MLIRArmSVETransforms"} end if links_arch then table.join2(links, links_arch) end return links end function main(package, component) component:add("links", get_links(package)) end