xref: /netbsd-src/external/apache2/llvm/librt/Makefile (revision fb5eed702691094bd687fbf1ded189c87457cd35)
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