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