blob: a1b4abc1dcb2864fa14491367ab81bd2705a9735 [file] [log] [blame]
Dan Willemsen3106c1c2016-10-03 23:56:51 -07001// Copyright 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
15cc_library_shared {
16 name: "libgui",
17
18 clang: true,
19 cppflags: [
20 "-Weverything",
21 "-Werror",
22
23 // The static constructors and destructors in this library have not been noted to
24 // introduce significant overheads
25 "-Wno-exit-time-destructors",
26 "-Wno-global-constructors",
27
28 // We only care about compiling as C++14
29 "-Wno-c++98-compat-pedantic",
30
31 // We don't need to enumerate every case in a switch as long as a default case
32 // is present
33 "-Wno-switch-enum",
34
35 // Allow calling variadic macros without a __VA_ARGS__ list
36 "-Wno-gnu-zero-variadic-macro-arguments",
37
38 // Don't warn about struct padding
39 "-Wno-padded",
40
Dan Stoza71bded52016-10-19 11:10:33 -070041 // We are aware of the risks inherent in comparing floats for equality
42 "-Wno-float-equal",
43
Dan Willemsen3106c1c2016-10-03 23:56:51 -070044 "-DDEBUG_ONLY_CODE=0",
45 ],
46
47 product_variables: {
48 brillo: {
49 cflags: ["-DHAVE_NO_SURFACE_FLINGER"],
50 },
51 debuggable: {
52 cppflags: [
53 "-UDEBUG_ONLY_CODE",
54 "-DDEBUG_ONLY_CODE=1",
55 ],
56 },
57 },
58
59 srcs: [
Dan Willemsen3106c1c2016-10-03 23:56:51 -070060 "BitTube.cpp",
61 "BufferItem.cpp",
62 "BufferItemConsumer.cpp",
63 "BufferQueue.cpp",
64 "BufferQueueConsumer.cpp",
65 "BufferQueueCore.cpp",
66 "BufferQueueProducer.cpp",
67 "BufferSlot.cpp",
68 "ConsumerBase.cpp",
69 "CpuConsumer.cpp",
70 "DisplayEventReceiver.cpp",
Brian Andersond6927fb2016-07-23 23:37:30 -070071 "FrameTimestamps.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070072 "GLConsumer.cpp",
Romain Guyf8b4ca52017-03-16 18:39:20 +000073 "GraphicBufferAlloc.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070074 "GuiConfig.cpp",
75 "IDisplayEventConnection.cpp",
Mathias Agopian801ea092017-03-06 15:05:04 -080076 "IConsumerListener.cpp",
Romain Guyf8b4ca52017-03-16 18:39:20 +000077 "IGraphicBufferAlloc.cpp",
Mathias Agopian801ea092017-03-06 15:05:04 -080078 "IGraphicBufferConsumer.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070079 "IGraphicBufferProducer.cpp",
80 "IProducerListener.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070081 "ISurfaceComposer.cpp",
82 "ISurfaceComposerClient.cpp",
83 "LayerState.cpp",
84 "OccupancyTracker.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070085 "StreamSplitter.cpp",
86 "Surface.cpp",
87 "SurfaceControl.cpp",
88 "SurfaceComposerClient.cpp",
89 "SyncFeatures.cpp",
Mathias Agopian05debe12017-02-08 17:04:18 -080090 "view/Surface.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070091 ],
92
93 shared_libs: [
Jesse Hall153fbc82017-01-03 16:18:15 -080094 "libsync",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070095 "libbinder",
96 "libcutils",
97 "libEGL",
98 "libGLESv2",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070099 "libui",
100 "libutils",
Mathias Agopian89ed4c82017-02-09 18:48:34 -0800101 "libnativewindow",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700102 "liblog",
103 ],
104
Michael Schwartzf0b3db92016-10-18 10:22:23 -0700105 export_shared_lib_headers: ["libbinder", "libui"],
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700106}
107
108subdirs = ["tests"]