Home | History | Annotate | Download | only in ui
      1 // Copyright (C) 2010 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: "libui",
     17     vendor_available: true,
     18     vndk: {
     19         enabled: true,
     20     },
     21 
     22     clang: true,
     23     cflags: [
     24         "-Wall",
     25         "-Werror",
     26     ],
     27     cppflags: [
     28         "-Weverything",
     29 
     30         // The static constructors and destructors in this library have not been noted to
     31         // introduce significant overheads
     32         "-Wno-exit-time-destructors",
     33         "-Wno-global-constructors",
     34 
     35         // We only care about compiling as C++14
     36         "-Wno-c++98-compat-pedantic",
     37 
     38         // We are aware of the risks inherent in comparing floats for equality
     39         "-Wno-float-equal",
     40 
     41         // We use four-character constants for the GraphicBuffer header, and don't care
     42         // that they're non-portable as long as they're consistent within one execution
     43         "-Wno-four-char-constants",
     44 
     45         // Don't warn about struct padding
     46         "-Wno-padded",
     47     ],
     48 
     49     sanitize: {
     50         integer_overflow: true,
     51     },
     52 
     53     srcs: [
     54         "ColorSpace.cpp",
     55         "DebugUtils.cpp",
     56         "Fence.cpp",
     57         "FenceTime.cpp",
     58         "FrameStats.cpp",
     59         "Gralloc2.cpp",
     60         "GraphicBuffer.cpp",
     61         "GraphicBufferAllocator.cpp",
     62         "GraphicBufferMapper.cpp",
     63         "HdrCapabilities.cpp",
     64         "PixelFormat.cpp",
     65         "Rect.cpp",
     66         "Region.cpp",
     67         "UiConfig.cpp",
     68     ],
     69 
     70     include_dirs: [
     71         "frameworks/native/include",
     72     ],
     73 
     74     shared_libs: [
     75         "android.hardware.graphics.allocator (a] 2.0",
     76         "android.hardware.graphics.common (a] 1.1",
     77         "android.hardware.graphics.mapper (a] 2.0",
     78         "android.hardware.graphics.mapper (a] 2.1",
     79         "android.hardware.configstore (a] 1.0",
     80         "android.hardware.configstore-utils",
     81         "libbase",
     82         "libcutils",
     83         "libhardware",
     84         "libhidlbase",
     85         "libhidltransport",
     86         "libhwbinder",
     87         "libsync",
     88         "libutils",
     89         "libutilscallstack",
     90         "liblog",
     91     ],
     92 
     93     export_shared_lib_headers: [
     94         "android.hardware.graphics.common (a] 1.1",
     95     ],
     96 
     97     static_libs: [
     98         "libarect",
     99         "libgrallocusage",
    100         "libmath",
    101     ],
    102 
    103     header_libs: [
    104         "libbase_headers",
    105         "libnativebase_headers",
    106         "libhardware_headers",
    107         "libui_headers",
    108         "libpdx_headers",
    109     ],
    110 
    111     export_static_lib_headers: [
    112         "libarect",
    113         "libmath",
    114     ],
    115 
    116     export_header_lib_headers: [
    117         "libbase_headers",
    118         "libnativebase_headers",
    119         "libhardware_headers",
    120         "libui_headers",
    121     ],
    122 }
    123 
    124 cc_library_headers {
    125     name: "libui_headers",
    126     export_include_dirs: ["include"],
    127     vendor_available: true,
    128     target: {
    129         vendor: {
    130             override_export_include_dirs: ["include_vndk"],
    131         },
    132     },
    133 }
    134 
    135 subdirs = [
    136     "tests",
    137     "tools",
    138 ]
    139