1# $NetBSD: Makefile,v 1.4 2021/05/30 01:56:58 joerg Exp $ 2 3.include <bsd.own.mk> 4 5BUILD_RADEON=0 6.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || \ 7 ${MACHINE} == "evbarm" 8BUILD_RADEON=1 9.endif 10 11SUBDIR= libLLVMAnalysis \ 12 libLLVMAsmParser \ 13 libLLVMAsmPrinter \ 14 libLLVMBinaryFormat \ 15 libLLVMBitReader \ 16 libLLVMBitWriter \ 17 libLLVMBitstreamReader \ 18 libLLVMCodeGen \ 19 libLLVMDemangle \ 20 libLLVMDebugInfoCodeView \ 21 libLLVMDebugInfoDWARF \ 22 libLLVMExecutionEngine \ 23 libLLVMExecutionEngineOrcShared \ 24 libLLVMExecutionEngineOrcTargetProcess \ 25 libLLVMFrontendOpenMP \ 26 libLLVMGlobalISel \ 27 libLLVMInstCombine \ 28 libLLVMInstrumentation \ 29 libLLVMipo \ 30 libLLVMIR \ 31 libLLVMIRReader \ 32 libLLVMLinker \ 33 libLLVMMC \ 34 libLLVMMCDisassembler \ 35 libLLVMMCJIT \ 36 libLLVMMCParser \ 37 libLLVMMIRParser \ 38 libLLVMObject \ 39 libLLVMObjCARC \ 40 libLLVMOrc \ 41 libLLVMPasses \ 42 libLLVMProfileData \ 43 libLLVMRemarks \ 44 libLLVMRuntimeDyld \ 45 libLLVMScalarOpts \ 46 libLLVMSelectionDAG \ 47 libLLVMSupport \ 48 libLLVMTarget \ 49 libLLVMTextAPI \ 50 libLLVMTransformsAggressiveInstCombine \ 51 libLLVMTransformsCFGuard \ 52 libLLVMTransformsCoroutines \ 53 libLLVMTransformsUtils \ 54 libLLVMVectorize 55 56.if ${BUILD_RADEON} == 1 57SUBDIR+= \ 58 libLLVMAMDGPUCodeGen 59.endif 60 61.if ${MACHINE_ARCH} == "aarch64" || ${MACHINE_ARCH} == "aarch64eb" 62SUBDIR+= \ 63 libLLVMAArch64CodeGen 64.endif 65.if !empty(MACHINE_ARCH:Mearm*) || !empty(MACHINE_ARCH:Marm*) 66SUBDIR+= \ 67 libLLVMARMCodeGen 68.endif 69.if !empty(MACHINE_ARCH:Mmips*) 70SUBDIR+= \ 71 libLLVMMipsCodeGen 72.endif 73.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64" 74SUBDIR+= \ 75 libLLVMPowerPCCodeGen 76.endif 77.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64" 78SUBDIR+= \ 79 libLLVMSparcCodeGen 80.endif 81 82.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" 83SUBDIR+= \ 84 libLLVMX86CodeGen 85.endif 86 87# All subdirs below here can build together, and all are optional. 88SUBDIR+= .WAIT 89 90.if ${BUILD_RADEON} == 1 91SUBDIR+= \ 92 libLLVMAMDGPUMCTargetDesc \ 93 libLLVMAMDGPUTargetInfo \ 94 libLLVMAMDGPUAsmParser \ 95 libLLVMAMDGPUUtils 96.endif 97 98.if ${MACHINE_ARCH} == "aarch64" || ${MACHINE_ARCH} == "aarch64eb" 99SUBDIR+= \ 100 libLLVMAArch64AsmParser \ 101 libLLVMAArch64Disassembler \ 102 libLLVMAArch64MCTargetDesc \ 103 libLLVMAArch64TargetInfo \ 104 libLLVMAArch64Utils 105.endif 106 107.if !empty(MACHINE_ARCH:Mearm*) || !empty(MACHINE_ARCH:Marm*) 108SUBDIR+= \ 109 libLLVMARMAsmParser \ 110 libLLVMARMDisassembler \ 111 libLLVMARMMCTargetDesc \ 112 libLLVMARMTargetInfo \ 113 libLLVMARMUtils 114.endif 115 116.if !empty(MACHINE_ARCH:Mmips*) 117SUBDIR+= \ 118 libLLVMMipsAsmParser \ 119 libLLVMMipsDisassembler \ 120 libLLVMMipsMCTargetDesc \ 121 libLLVMMipsTargetInfo 122.endif 123 124.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64" 125SUBDIR+= \ 126 libLLVMPowerPCAsmParser \ 127 libLLVMPowerPCDisassembler \ 128 libLLVMPowerPCMCTargetDesc \ 129 libLLVMPowerPCTargetInfo 130.endif 131 132.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64" 133SUBDIR+= \ 134 libLLVMSparcAsmParser \ 135 libLLVMSparcDisassembler \ 136 libLLVMSparcMCTargetDesc \ 137 libLLVMSparcTargetInfo 138.endif 139 140.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" 141SUBDIR+= \ 142 libLLVMX86AsmParser \ 143 libLLVMX86Disassembler \ 144 libLLVMX86MCTargetDesc \ 145 libLLVMX86TargetInfo 146.endif 147 148.include <bsd.subdir.mk> 149