1// Copyright (C) 2017 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15cc_library { 16 name: "libbcc", 17 vendor_available: true, 18 host_supported: true, 19 defaults: ["libbcc-defaults"], 20 21 srcs: [ 22 "BCCContext.cpp", 23 "BCCContextImpl.cpp", 24 "Compiler.cpp", 25 "CompilerConfig.cpp", 26 "FileBase.cpp", 27 "Initialization.cpp", 28 "RSAddDebugInfoPass.cpp", 29 "RSCompilerDriver.cpp", 30 "RSEmbedInfo.cpp", 31 "RSGlobalInfoPass.cpp", 32 "RSInvariant.cpp", 33 "RSInvokeHelperPass.cpp", 34 "RSIsThreadablePass.cpp", 35 "RSKernelExpand.cpp", 36 "RSScreenFunctionsPass.cpp", 37 "RSScriptGroupFusion.cpp", 38 "RSFunctionsList.cpp", 39 "RSX86CallConvPass.cpp", 40 "RSX86TranslateGEPPass.cpp", 41 "Script.cpp", 42 "Source.cpp", 43 ], 44 45 shared_libs: ["libbcinfo"], 46 47 header_libs: ["slang_headers"], 48 49 target: { 50 windows: { 51 enabled: true, 52 shared_libs: ["libLLVM_android"], 53 }, 54 darwin: { 55 shared_libs: ["libLLVM_android"], 56 }, 57 linux_glibc: { 58 static_libs: ["libLLVMLinker"], 59 allow_undefined_symbols: true, 60 }, 61 host: { 62 static_libs: [ 63 "libutils", 64 "libcutils", 65 "liblog", 66 ], 67 }, 68 android: { 69 shared_libs: [ 70 "libLLVM_android", 71 "libdl", 72 "liblog", 73 ], 74 }, 75 }, 76 77 product_variables: { 78 unbundled_build: { 79 // Don't build in unbundled branches 80 enabled: false, 81 }, 82 }, 83} 84