xref: /aosp_15_r20/external/llvm/Android.bp (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Workerpackage {
2*9880d681SAndroid Build Coastguard Worker    default_applicable_licenses: ["external_llvm_license"],
3*9880d681SAndroid Build Coastguard Worker}
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of
6*9880d681SAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect
7*9880d681SAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct.
8*9880d681SAndroid Build Coastguard Worker//
9*9880d681SAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory.
10*9880d681SAndroid Build Coastguard Worker//
11*9880d681SAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses,
12*9880d681SAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the
13*9880d681SAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed.
14*9880d681SAndroid Build Coastguard Worker//
15*9880d681SAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private"
16*9880d681SAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be
17*9880d681SAndroid Build Coastguard Worker// used in the current project.
18*9880d681SAndroid Build Coastguard Worker//
19*9880d681SAndroid Build Coastguard Worker// large-scale-change included anything that looked like it might be a license
20*9880d681SAndroid Build Coastguard Worker// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
21*9880d681SAndroid Build Coastguard Worker//
22*9880d681SAndroid Build Coastguard Worker// Please consider removing redundant or irrelevant files from 'license_text:'.
23*9880d681SAndroid Build Coastguard Worker//
24*9880d681SAndroid Build Coastguard Worker// large-scale-change filtered out the below license kinds as false-positives:
25*9880d681SAndroid Build Coastguard Worker//   SPDX-license-identifier-GPL
26*9880d681SAndroid Build Coastguard Worker//   SPDX-license-identifier-GPL-3.0
27*9880d681SAndroid Build Coastguard Worker// See: http://go/android-license-faq
28*9880d681SAndroid Build Coastguard Workerlicense {
29*9880d681SAndroid Build Coastguard Worker    name: "external_llvm_license",
30*9880d681SAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
31*9880d681SAndroid Build Coastguard Worker    license_kinds: [
32*9880d681SAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
33*9880d681SAndroid Build Coastguard Worker        "SPDX-license-identifier-BSD",
34*9880d681SAndroid Build Coastguard Worker        "SPDX-license-identifier-MIT",
35*9880d681SAndroid Build Coastguard Worker        "SPDX-license-identifier-NCSA",
36*9880d681SAndroid Build Coastguard Worker        "legacy_permissive",
37*9880d681SAndroid Build Coastguard Worker        "legacy_unencumbered",
38*9880d681SAndroid Build Coastguard Worker    ],
39*9880d681SAndroid Build Coastguard Worker    license_text: [
40*9880d681SAndroid Build Coastguard Worker        "LICENSE.TXT",
41*9880d681SAndroid Build Coastguard Worker        "NOTICE",
42*9880d681SAndroid Build Coastguard Worker    ],
43*9880d681SAndroid Build Coastguard Worker}
44*9880d681SAndroid Build Coastguard Worker
45*9880d681SAndroid Build Coastguard Workercc_defaults {
46*9880d681SAndroid Build Coastguard Worker    name: "llvm-defaults",
47*9880d681SAndroid Build Coastguard Worker    defaults: ["llvm-defaults-no-generated-headers"],
48*9880d681SAndroid Build Coastguard Worker    header_libs: ["llvm-headers"],
49*9880d681SAndroid Build Coastguard Worker    tidy_checks: [
50*9880d681SAndroid Build Coastguard Worker        "-google-build-*",
51*9880d681SAndroid Build Coastguard Worker        "-google-global-*",
52*9880d681SAndroid Build Coastguard Worker    ],
53*9880d681SAndroid Build Coastguard Worker    sanitize: {
54*9880d681SAndroid Build Coastguard Worker        hwaddress: false, // code size b/112437884
55*9880d681SAndroid Build Coastguard Worker    },
56*9880d681SAndroid Build Coastguard Worker    arch: {
57*9880d681SAndroid Build Coastguard Worker        riscv64: {
58*9880d681SAndroid Build Coastguard Worker            enabled: false,
59*9880d681SAndroid Build Coastguard Worker        },
60*9880d681SAndroid Build Coastguard Worker    },
61*9880d681SAndroid Build Coastguard Worker}
62*9880d681SAndroid Build Coastguard Worker
63*9880d681SAndroid Build Coastguard Worker// This module defines all of the defaults used to compiled llvm, except for
64*9880d681SAndroid Build Coastguard Worker// the generated headers.  It is necessary to avoid a circular dependency
65*9880d681SAndroid Build Coastguard Worker// from the tblgen tool used to generate the headers to the generated headers.
66*9880d681SAndroid Build Coastguard Workerllvm_defaults {
67*9880d681SAndroid Build Coastguard Worker    name: "llvm-defaults-no-generated-headers",
68*9880d681SAndroid Build Coastguard Worker
69*9880d681SAndroid Build Coastguard Worker    host_supported: true,
70*9880d681SAndroid Build Coastguard Worker    // TODO(b/153609531): remove when no longer needed.
71*9880d681SAndroid Build Coastguard Worker    native_bridge_supported: true,
72*9880d681SAndroid Build Coastguard Worker
73*9880d681SAndroid Build Coastguard Worker    cpp_std: "c++11",
74*9880d681SAndroid Build Coastguard Worker
75*9880d681SAndroid Build Coastguard Worker    // Optimize for size. It is only used by Renderscript, which is deprecated and is rarely
76*9880d681SAndroid Build Coastguard Worker    // used.
77*9880d681SAndroid Build Coastguard Worker    optimize_for_size: true,
78*9880d681SAndroid Build Coastguard Worker
79*9880d681SAndroid Build Coastguard Worker    cflags: [
80*9880d681SAndroid Build Coastguard Worker        "-D_GNU_SOURCE",
81*9880d681SAndroid Build Coastguard Worker        "-D__STDC_LIMIT_MACROS",
82*9880d681SAndroid Build Coastguard Worker        "-D__STDC_CONSTANT_MACROS",
83*9880d681SAndroid Build Coastguard Worker        "-D__STDC_FORMAT_MACROS",
84*9880d681SAndroid Build Coastguard Worker        "-fomit-frame-pointer",
85*9880d681SAndroid Build Coastguard Worker        "-Wno-cast-qual",
86*9880d681SAndroid Build Coastguard Worker        "-Wno-sign-compare",
87*9880d681SAndroid Build Coastguard Worker        "-Wno-unused-parameter",
88*9880d681SAndroid Build Coastguard Worker        "-Wno-maybe-uninitialized",
89*9880d681SAndroid Build Coastguard Worker        "-Wno-missing-field-initializers",
90*9880d681SAndroid Build Coastguard Worker        "-Wno-implicit-fallthrough",
91*9880d681SAndroid Build Coastguard Worker        "-Wno-deprecated-declarations",
92*9880d681SAndroid Build Coastguard Worker        "-Wwrite-strings",
93*9880d681SAndroid Build Coastguard Worker        "-Dsprintf=sprintf",
94*9880d681SAndroid Build Coastguard Worker    ],
95*9880d681SAndroid Build Coastguard Worker
96*9880d681SAndroid Build Coastguard Worker    cppflags: [
97*9880d681SAndroid Build Coastguard Worker        "-Wno-sign-promo",
98*9880d681SAndroid Build Coastguard Worker    ],
99*9880d681SAndroid Build Coastguard Worker
100*9880d681SAndroid Build Coastguard Worker    tidy_checks: [
101*9880d681SAndroid Build Coastguard Worker        "-google-build-*",
102*9880d681SAndroid Build Coastguard Worker        "-google-global-*",
103*9880d681SAndroid Build Coastguard Worker    ],
104*9880d681SAndroid Build Coastguard Worker
105*9880d681SAndroid Build Coastguard Worker    header_libs: ["llvm-headers-no-generated-headers"],
106*9880d681SAndroid Build Coastguard Worker
107*9880d681SAndroid Build Coastguard Worker    target: {
108*9880d681SAndroid Build Coastguard Worker        android: {
109*9880d681SAndroid Build Coastguard Worker            cflags: [
110*9880d681SAndroid Build Coastguard Worker                "-finline-functions",
111*9880d681SAndroid Build Coastguard Worker            ],
112*9880d681SAndroid Build Coastguard Worker        },
113*9880d681SAndroid Build Coastguard Worker        linux: {
114*9880d681SAndroid Build Coastguard Worker            cppflags: [
115*9880d681SAndroid Build Coastguard Worker                "-Woverloaded-virtual",
116*9880d681SAndroid Build Coastguard Worker            ],
117*9880d681SAndroid Build Coastguard Worker        },
118*9880d681SAndroid Build Coastguard Worker        host: {
119*9880d681SAndroid Build Coastguard Worker            cppflags: [
120*9880d681SAndroid Build Coastguard Worker                "-fno-rtti",
121*9880d681SAndroid Build Coastguard Worker                "-fno-exceptions",
122*9880d681SAndroid Build Coastguard Worker            ],
123*9880d681SAndroid Build Coastguard Worker        },
124*9880d681SAndroid Build Coastguard Worker        windows: {
125*9880d681SAndroid Build Coastguard Worker            // Disable certain warnings for use with mingw.
126*9880d681SAndroid Build Coastguard Worker            // We also must undefine WIN32_LEAN_AND_MEAN, since it is being passed globally
127*9880d681SAndroid Build Coastguard Worker            // on the command line, and LLVM defines this internally itself.
128*9880d681SAndroid Build Coastguard Worker            cflags: [
129*9880d681SAndroid Build Coastguard Worker                "-Wno-array-bounds",
130*9880d681SAndroid Build Coastguard Worker                "-Wno-comment",
131*9880d681SAndroid Build Coastguard Worker                "-UWIN32_LEAN_AND_MEAN",
132*9880d681SAndroid Build Coastguard Worker            ],
133*9880d681SAndroid Build Coastguard Worker
134*9880d681SAndroid Build Coastguard Worker            host_ldlibs: ["-luuid"],
135*9880d681SAndroid Build Coastguard Worker        },
136*9880d681SAndroid Build Coastguard Worker        linux_glibc: {
137*9880d681SAndroid Build Coastguard Worker            host_ldlibs: [
138*9880d681SAndroid Build Coastguard Worker                "-lgcc_s",
139*9880d681SAndroid Build Coastguard Worker            ],
140*9880d681SAndroid Build Coastguard Worker        },
141*9880d681SAndroid Build Coastguard Worker        darwin: {
142*9880d681SAndroid Build Coastguard Worker            cppflags: [
143*9880d681SAndroid Build Coastguard Worker                "-Wno-deprecated-declarations",
144*9880d681SAndroid Build Coastguard Worker                "-Woverloaded-virtual",
145*9880d681SAndroid Build Coastguard Worker            ],
146*9880d681SAndroid Build Coastguard Worker        },
147*9880d681SAndroid Build Coastguard Worker    },
148*9880d681SAndroid Build Coastguard Worker}
149*9880d681SAndroid Build Coastguard Worker
150*9880d681SAndroid Build Coastguard Workercc_library_headers {
151*9880d681SAndroid Build Coastguard Worker    name: "llvm-headers-no-generated-headers",
152*9880d681SAndroid Build Coastguard Worker    vendor_available: true,
153*9880d681SAndroid Build Coastguard Worker    product_available: true,
154*9880d681SAndroid Build Coastguard Worker    host_supported: true,
155*9880d681SAndroid Build Coastguard Worker    // TODO(b/153609531): remove when no longer needed.
156*9880d681SAndroid Build Coastguard Worker    native_bridge_supported: true,
157*9880d681SAndroid Build Coastguard Worker    export_include_dirs: ["include"],
158*9880d681SAndroid Build Coastguard Worker    target: {
159*9880d681SAndroid Build Coastguard Worker        android: {
160*9880d681SAndroid Build Coastguard Worker            export_include_dirs: ["device/include"],
161*9880d681SAndroid Build Coastguard Worker        },
162*9880d681SAndroid Build Coastguard Worker        host: {
163*9880d681SAndroid Build Coastguard Worker            export_include_dirs: ["host/include"],
164*9880d681SAndroid Build Coastguard Worker        },
165*9880d681SAndroid Build Coastguard Worker        linux_bionic: {
166*9880d681SAndroid Build Coastguard Worker            enabled: true,
167*9880d681SAndroid Build Coastguard Worker        },
168*9880d681SAndroid Build Coastguard Worker        windows: {
169*9880d681SAndroid Build Coastguard Worker            enabled: true,
170*9880d681SAndroid Build Coastguard Worker        },
171*9880d681SAndroid Build Coastguard Worker    },
172*9880d681SAndroid Build Coastguard Worker}
173*9880d681SAndroid Build Coastguard Worker
174*9880d681SAndroid Build Coastguard Workercc_library_headers {
175*9880d681SAndroid Build Coastguard Worker    name: "llvm-headers",
176*9880d681SAndroid Build Coastguard Worker    vendor_available: true,
177*9880d681SAndroid Build Coastguard Worker    product_available: true,
178*9880d681SAndroid Build Coastguard Worker    host_supported: true,
179*9880d681SAndroid Build Coastguard Worker    // TODO(b/153609531): remove when no longer needed.
180*9880d681SAndroid Build Coastguard Worker    native_bridge_supported: true,
181*9880d681SAndroid Build Coastguard Worker    header_libs: ["llvm-headers-no-generated-headers"],
182*9880d681SAndroid Build Coastguard Worker    export_header_lib_headers: ["llvm-headers-no-generated-headers"],
183*9880d681SAndroid Build Coastguard Worker    generated_headers: [
184*9880d681SAndroid Build Coastguard Worker        "llvm-gen-attributes",
185*9880d681SAndroid Build Coastguard Worker        "llvm-gen-intrinsics",
186*9880d681SAndroid Build Coastguard Worker    ],
187*9880d681SAndroid Build Coastguard Worker    export_generated_headers: [
188*9880d681SAndroid Build Coastguard Worker        "llvm-gen-attributes",
189*9880d681SAndroid Build Coastguard Worker        "llvm-gen-intrinsics",
190*9880d681SAndroid Build Coastguard Worker    ],
191*9880d681SAndroid Build Coastguard Worker    target: {
192*9880d681SAndroid Build Coastguard Worker        windows: {
193*9880d681SAndroid Build Coastguard Worker            enabled: true,
194*9880d681SAndroid Build Coastguard Worker        },
195*9880d681SAndroid Build Coastguard Worker    },
196*9880d681SAndroid Build Coastguard Worker}
197*9880d681SAndroid Build Coastguard Worker
198*9880d681SAndroid Build Coastguard Workerllvm_tblgen {
199*9880d681SAndroid Build Coastguard Worker    name: "llvm-gen-attributes",
200*9880d681SAndroid Build Coastguard Worker    in: "include/llvm/IR/Attributes.td",
201*9880d681SAndroid Build Coastguard Worker    outs: ["llvm/IR/Attributes.inc"],
202*9880d681SAndroid Build Coastguard Worker}
203*9880d681SAndroid Build Coastguard Worker
204*9880d681SAndroid Build Coastguard Workerllvm_tblgen {
205*9880d681SAndroid Build Coastguard Worker    name: "llvm-gen-intrinsics",
206*9880d681SAndroid Build Coastguard Worker    in: "include/llvm/IR/Intrinsics.td",
207*9880d681SAndroid Build Coastguard Worker    outs: ["llvm/IR/Intrinsics.gen"],
208*9880d681SAndroid Build Coastguard Worker}
209*9880d681SAndroid Build Coastguard Worker
210*9880d681SAndroid Build Coastguard Workerforce_build_llvm_components_defaults {
211*9880d681SAndroid Build Coastguard Worker    name: "force_build_llvm_components",
212*9880d681SAndroid Build Coastguard Worker    // Host build disabled by soong/llvm.go unless FORCE_BUILD_LLVM_COMPONENTS
213*9880d681SAndroid Build Coastguard Worker    // environment variable is set
214*9880d681SAndroid Build Coastguard Worker}
215*9880d681SAndroid Build Coastguard Worker
216*9880d681SAndroid Build Coastguard Worker// LLVM shared library build
217*9880d681SAndroid Build Coastguard Worker
218*9880d681SAndroid Build Coastguard Workerllvm_arm_static_libraries = [
219*9880d681SAndroid Build Coastguard Worker    "libLLVMARMCodeGen",
220*9880d681SAndroid Build Coastguard Worker    "libLLVMARMAsmParser",
221*9880d681SAndroid Build Coastguard Worker    "libLLVMARMAsmPrinter",
222*9880d681SAndroid Build Coastguard Worker    "libLLVMARMInfo",
223*9880d681SAndroid Build Coastguard Worker    "libLLVMARMDesc",
224*9880d681SAndroid Build Coastguard Worker    "libLLVMARMDisassembler",
225*9880d681SAndroid Build Coastguard Worker]
226*9880d681SAndroid Build Coastguard Worker
227*9880d681SAndroid Build Coastguard Workerllvm_x86_static_libraries = [
228*9880d681SAndroid Build Coastguard Worker    "libLLVMX86CodeGen",
229*9880d681SAndroid Build Coastguard Worker    "libLLVMX86Info",
230*9880d681SAndroid Build Coastguard Worker    "libLLVMX86Desc",
231*9880d681SAndroid Build Coastguard Worker    "libLLVMX86AsmParser",
232*9880d681SAndroid Build Coastguard Worker    "libLLVMX86AsmPrinter",
233*9880d681SAndroid Build Coastguard Worker    "libLLVMX86Utils",
234*9880d681SAndroid Build Coastguard Worker    "libLLVMX86Disassembler",
235*9880d681SAndroid Build Coastguard Worker]
236*9880d681SAndroid Build Coastguard Worker
237*9880d681SAndroid Build Coastguard Workerllvm_mips_static_libraries = [
238*9880d681SAndroid Build Coastguard Worker    "libLLVMMipsCodeGen",
239*9880d681SAndroid Build Coastguard Worker    "libLLVMMipsInfo",
240*9880d681SAndroid Build Coastguard Worker    "libLLVMMipsDesc",
241*9880d681SAndroid Build Coastguard Worker    "libLLVMMipsAsmParser",
242*9880d681SAndroid Build Coastguard Worker    "libLLVMMipsAsmPrinter",
243*9880d681SAndroid Build Coastguard Worker    "libLLVMMipsDisassembler",
244*9880d681SAndroid Build Coastguard Worker]
245*9880d681SAndroid Build Coastguard Worker
246*9880d681SAndroid Build Coastguard Workerllvm_aarch64_static_libraries = [
247*9880d681SAndroid Build Coastguard Worker    "libLLVMAArch64CodeGen",
248*9880d681SAndroid Build Coastguard Worker    "libLLVMAArch64Info",
249*9880d681SAndroid Build Coastguard Worker    "libLLVMAArch64Desc",
250*9880d681SAndroid Build Coastguard Worker    "libLLVMAArch64AsmParser",
251*9880d681SAndroid Build Coastguard Worker    "libLLVMAArch64AsmPrinter",
252*9880d681SAndroid Build Coastguard Worker    "libLLVMAArch64Utils",
253*9880d681SAndroid Build Coastguard Worker    "libLLVMAArch64Disassembler",
254*9880d681SAndroid Build Coastguard Worker]
255*9880d681SAndroid Build Coastguard Worker
256*9880d681SAndroid Build Coastguard Workercc_library {
257*9880d681SAndroid Build Coastguard Worker    host_supported: true,
258*9880d681SAndroid Build Coastguard Worker    name: "libLLVM_android",
259*9880d681SAndroid Build Coastguard Worker    vendor_available: true,
260*9880d681SAndroid Build Coastguard Worker    product_available: true,
261*9880d681SAndroid Build Coastguard Worker    defaults: [
262*9880d681SAndroid Build Coastguard Worker        "llvm-defaults",
263*9880d681SAndroid Build Coastguard Worker        "force_build_llvm_components",
264*9880d681SAndroid Build Coastguard Worker    ],
265*9880d681SAndroid Build Coastguard Worker
266*9880d681SAndroid Build Coastguard Worker    whole_static_libs: [
267*9880d681SAndroid Build Coastguard Worker        // pre static libraries
268*9880d681SAndroid Build Coastguard Worker        "libLLVMLinker",
269*9880d681SAndroid Build Coastguard Worker        "libLLVMipo",
270*9880d681SAndroid Build Coastguard Worker        "libLLVMDebugInfoDWARF",
271*9880d681SAndroid Build Coastguard Worker        "libLLVMDebugInfoPDB",
272*9880d681SAndroid Build Coastguard Worker        "libLLVMSymbolize",
273*9880d681SAndroid Build Coastguard Worker        "libLLVMIRReader",
274*9880d681SAndroid Build Coastguard Worker        "libLLVMBitWriter",
275*9880d681SAndroid Build Coastguard Worker        "libLLVMBitReader",
276*9880d681SAndroid Build Coastguard Worker
277*9880d681SAndroid Build Coastguard Worker        // post static libraries
278*9880d681SAndroid Build Coastguard Worker        "libLLVMLTO",
279*9880d681SAndroid Build Coastguard Worker        "libLLVMAsmPrinter",
280*9880d681SAndroid Build Coastguard Worker        "libLLVMSelectionDAG",
281*9880d681SAndroid Build Coastguard Worker        "libLLVMCodeGen",
282*9880d681SAndroid Build Coastguard Worker        "libLLVMDebugInfoCodeView",
283*9880d681SAndroid Build Coastguard Worker        "libLLVMObject",
284*9880d681SAndroid Build Coastguard Worker        "libLLVMScalarOpts",
285*9880d681SAndroid Build Coastguard Worker        "libLLVMInstCombine",
286*9880d681SAndroid Build Coastguard Worker        "libLLVMInstrumentation",
287*9880d681SAndroid Build Coastguard Worker        "libLLVMTransformObjCARC",
288*9880d681SAndroid Build Coastguard Worker        "libLLVMTransformUtils",
289*9880d681SAndroid Build Coastguard Worker        "libLLVMAnalysis",
290*9880d681SAndroid Build Coastguard Worker        "libLLVMTarget",
291*9880d681SAndroid Build Coastguard Worker        "libLLVMGlobalISel",
292*9880d681SAndroid Build Coastguard Worker        "libLLVMMCDisassembler",
293*9880d681SAndroid Build Coastguard Worker        "libLLVMMC",
294*9880d681SAndroid Build Coastguard Worker        "libLLVMMCParser",
295*9880d681SAndroid Build Coastguard Worker        "libLLVMCore",
296*9880d681SAndroid Build Coastguard Worker        "libLLVMAsmParser",
297*9880d681SAndroid Build Coastguard Worker        "libLLVMOption",
298*9880d681SAndroid Build Coastguard Worker        "libLLVMSupport",
299*9880d681SAndroid Build Coastguard Worker        "libLLVMVectorize",
300*9880d681SAndroid Build Coastguard Worker        "libLLVMProfileData",
301*9880d681SAndroid Build Coastguard Worker        "libLLVMProfileDataCoverage",
302*9880d681SAndroid Build Coastguard Worker        "libLLVMLibDriver",
303*9880d681SAndroid Build Coastguard Worker        "libLLVMExecutionEngine",
304*9880d681SAndroid Build Coastguard Worker        "libLLVMRuntimeDyld",
305*9880d681SAndroid Build Coastguard Worker        "libLLVMMCJIT",
306*9880d681SAndroid Build Coastguard Worker        "libLLVMOrcJIT",
307*9880d681SAndroid Build Coastguard Worker    ],
308*9880d681SAndroid Build Coastguard Worker
309*9880d681SAndroid Build Coastguard Worker    export_include_dirs: ["include"],
310*9880d681SAndroid Build Coastguard Worker
311*9880d681SAndroid Build Coastguard Worker    target: {
312*9880d681SAndroid Build Coastguard Worker        host: {
313*9880d681SAndroid Build Coastguard Worker            // Host build pulls in all ARM, Mips, X86 components.
314*9880d681SAndroid Build Coastguard Worker            whole_static_libs: llvm_arm_static_libraries +
315*9880d681SAndroid Build Coastguard Worker                llvm_aarch64_static_libraries +
316*9880d681SAndroid Build Coastguard Worker                llvm_mips_static_libraries +
317*9880d681SAndroid Build Coastguard Worker                llvm_x86_static_libraries,
318*9880d681SAndroid Build Coastguard Worker            export_include_dirs: ["host/include"],
319*9880d681SAndroid Build Coastguard Worker        },
320*9880d681SAndroid Build Coastguard Worker        windows: {
321*9880d681SAndroid Build Coastguard Worker            enabled: true,
322*9880d681SAndroid Build Coastguard Worker            host_ldlibs: [
323*9880d681SAndroid Build Coastguard Worker                "-limagehlp",
324*9880d681SAndroid Build Coastguard Worker                "-lpsapi",
325*9880d681SAndroid Build Coastguard Worker                "-lole32",
326*9880d681SAndroid Build Coastguard Worker                "-lversion",
327*9880d681SAndroid Build Coastguard Worker            ],
328*9880d681SAndroid Build Coastguard Worker        },
329*9880d681SAndroid Build Coastguard Worker        android: {
330*9880d681SAndroid Build Coastguard Worker            export_include_dirs: ["device/include"],
331*9880d681SAndroid Build Coastguard Worker        },
332*9880d681SAndroid Build Coastguard Worker        android_arm: {
333*9880d681SAndroid Build Coastguard Worker            whole_static_libs: llvm_arm_static_libraries +
334*9880d681SAndroid Build Coastguard Worker                llvm_aarch64_static_libraries,
335*9880d681SAndroid Build Coastguard Worker        },
336*9880d681SAndroid Build Coastguard Worker        android_x86: {
337*9880d681SAndroid Build Coastguard Worker            whole_static_libs: llvm_x86_static_libraries +
338*9880d681SAndroid Build Coastguard Worker                llvm_arm_static_libraries +
339*9880d681SAndroid Build Coastguard Worker                llvm_aarch64_static_libraries,
340*9880d681SAndroid Build Coastguard Worker        },
341*9880d681SAndroid Build Coastguard Worker        android_x86_64: {
342*9880d681SAndroid Build Coastguard Worker            whole_static_libs: llvm_x86_static_libraries +
343*9880d681SAndroid Build Coastguard Worker                llvm_arm_static_libraries +
344*9880d681SAndroid Build Coastguard Worker                llvm_aarch64_static_libraries,
345*9880d681SAndroid Build Coastguard Worker        },
346*9880d681SAndroid Build Coastguard Worker        android_arm64: {
347*9880d681SAndroid Build Coastguard Worker            whole_static_libs: llvm_aarch64_static_libraries +
348*9880d681SAndroid Build Coastguard Worker                llvm_arm_static_libraries,
349*9880d681SAndroid Build Coastguard Worker        },
350*9880d681SAndroid Build Coastguard Worker    },
351*9880d681SAndroid Build Coastguard Worker}
352*9880d681SAndroid Build Coastguard Worker
353*9880d681SAndroid Build Coastguard Workersubdirs = [
354*9880d681SAndroid Build Coastguard Worker    "soong",
355*9880d681SAndroid Build Coastguard Worker    "lib",
356*9880d681SAndroid Build Coastguard Worker    "tools/*",
357*9880d681SAndroid Build Coastguard Worker    "utils/*",
358*9880d681SAndroid Build Coastguard Worker]
359