Home | History | Annotate | Download | only in lib
      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 
     15 cc_library_shared {
     16     name: "libbcc",
     17     host_supported: true,
     18     defaults: ["libbcc-defaults"],
     19 
     20     srcs: [
     21         "BCCContext.cpp",
     22         "BCCContextImpl.cpp",
     23         "Compiler.cpp",
     24         "CompilerConfig.cpp",
     25         "FileBase.cpp",
     26         "Initialization.cpp",
     27         "RSAddDebugInfoPass.cpp",
     28         "RSCompilerDriver.cpp",
     29         "RSEmbedInfo.cpp",
     30         "RSGlobalInfoPass.cpp",
     31         "RSInvariant.cpp",
     32         "RSInvokeHelperPass.cpp",
     33         "RSIsThreadablePass.cpp",
     34         "RSKernelExpand.cpp",
     35         "RSScreenFunctionsPass.cpp",
     36         "RSScriptGroupFusion.cpp",
     37         "RSStubsWhiteList.cpp",
     38         "RSX86CallConvPass.cpp",
     39         "RSX86TranslateGEPPass.cpp",
     40         "Script.cpp",
     41         "Source.cpp",
     42     ],
     43 
     44     shared_libs: ["libbcinfo"],
     45 
     46     header_libs: ["slang_headers"],
     47 
     48     target: {
     49         windows: {
     50             enabled: true,
     51             shared_libs: ["libLLVM"],
     52         },
     53         darwin: {
     54             host_ldlibs: [
     55                 "-ldl",
     56                 "-lpthread",
     57             ],
     58 
     59             shared_libs: ["libLLVM"],
     60         },
     61         linux: {
     62             host_ldlibs: [
     63                 "-ldl",
     64                 "-lpthread",
     65             ],
     66             static_libs: ["libLLVMLinker"],
     67             allow_undefined_symbols: true,
     68         },
     69         host: {
     70             static_libs: [
     71                 "libutils",
     72                 "libcutils",
     73                 "liblog",
     74             ],
     75         },
     76         android: {
     77             shared_libs: [
     78                 "libLLVM",
     79                 "libdl",
     80                 "liblog",
     81             ],
     82         },
     83     },
     84 
     85     product_variables: {
     86         unbundled_build: {
     87             // Don't build in unbundled branches
     88             enabled: false,
     89         },
     90     },
     91 }
     92