|  | // Copyright 2010 The Android Open Source Project | 
|  | // | 
|  | // Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | // you may not use this file except in compliance with the License. | 
|  | // You may obtain a copy of the License at | 
|  | // | 
|  | //      http://www.apache.org/licenses/LICENSE-2.0 | 
|  | // | 
|  | // Unless required by applicable law or agreed to in writing, software | 
|  | // distributed under the License is distributed on an "AS IS" BASIS, | 
|  | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | // See the License for the specific language governing permissions and | 
|  | // limitations under the License. | 
|  |  | 
|  | cc_library_shared { | 
|  | name: "libgui", | 
|  |  | 
|  | clang: true, | 
|  | cppflags: [ | 
|  | "-Weverything", | 
|  | "-Werror", | 
|  |  | 
|  | // The static constructors and destructors in this library have not been noted to | 
|  | // introduce significant overheads | 
|  | "-Wno-exit-time-destructors", | 
|  | "-Wno-global-constructors", | 
|  |  | 
|  | // We only care about compiling as C++14 | 
|  | "-Wno-c++98-compat-pedantic", | 
|  |  | 
|  | // We don't need to enumerate every case in a switch as long as a default case | 
|  | // is present | 
|  | "-Wno-switch-enum", | 
|  |  | 
|  | // Allow calling variadic macros without a __VA_ARGS__ list | 
|  | "-Wno-gnu-zero-variadic-macro-arguments", | 
|  |  | 
|  | // Don't warn about struct padding | 
|  | "-Wno-padded", | 
|  |  | 
|  | // android/sensors.h uses nested anonymous unions and anonymous structs | 
|  | "-Wno-nested-anon-types", | 
|  | "-Wno-gnu-anonymous-struct", | 
|  |  | 
|  | "-DDEBUG_ONLY_CODE=0", | 
|  | ], | 
|  |  | 
|  | product_variables: { | 
|  | brillo: { | 
|  | cflags: ["-DHAVE_NO_SURFACE_FLINGER"], | 
|  | }, | 
|  | debuggable: { | 
|  | cppflags: [ | 
|  | "-UDEBUG_ONLY_CODE", | 
|  | "-DDEBUG_ONLY_CODE=1", | 
|  | ], | 
|  | }, | 
|  | }, | 
|  |  | 
|  | srcs: [ | 
|  | "IGraphicBufferConsumer.cpp", | 
|  | "IConsumerListener.cpp", | 
|  | "BitTube.cpp", | 
|  | "BufferItem.cpp", | 
|  | "BufferItemConsumer.cpp", | 
|  | "BufferQueue.cpp", | 
|  | "BufferQueueConsumer.cpp", | 
|  | "BufferQueueCore.cpp", | 
|  | "BufferQueueProducer.cpp", | 
|  | "BufferSlot.cpp", | 
|  | "ConsumerBase.cpp", | 
|  | "CpuConsumer.cpp", | 
|  | "DisplayEventReceiver.cpp", | 
|  | "GLConsumer.cpp", | 
|  | "GraphicBufferAlloc.cpp", | 
|  | "GuiConfig.cpp", | 
|  | "IDisplayEventConnection.cpp", | 
|  | "IGraphicBufferAlloc.cpp", | 
|  | "IGraphicBufferProducer.cpp", | 
|  | "IProducerListener.cpp", | 
|  | "ISensorEventConnection.cpp", | 
|  | "ISensorServer.cpp", | 
|  | "ISurfaceComposer.cpp", | 
|  | "ISurfaceComposerClient.cpp", | 
|  | "LayerState.cpp", | 
|  | "OccupancyTracker.cpp", | 
|  | "Sensor.cpp", | 
|  | "SensorEventQueue.cpp", | 
|  | "SensorManager.cpp", | 
|  | "StreamSplitter.cpp", | 
|  | "Surface.cpp", | 
|  | "SurfaceControl.cpp", | 
|  | "SurfaceComposerClient.cpp", | 
|  | "SyncFeatures.cpp", | 
|  | ], | 
|  |  | 
|  | shared_libs: [ | 
|  | "libbinder", | 
|  | "libcutils", | 
|  | "libEGL", | 
|  | "libGLESv2", | 
|  | "libsync", | 
|  | "libui", | 
|  | "libutils", | 
|  | "liblog", | 
|  | ], | 
|  |  | 
|  | export_shared_lib_headers: ["libbinder"], | 
|  | } | 
|  |  | 
|  | subdirs = ["tests"] |