1d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# Copyright 2010 The Android Open Source Project 2d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# 3d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# Licensed under the Apache License, Version 2.0 (the "License"); 4d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# you may not use this file except in compliance with the License. 5d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# You may obtain a copy of the License at 6d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# 7d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# http://www.apache.org/licenses/LICENSE-2.0 8d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# 9d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# Unless required by applicable law or agreed to in writing, software 10d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# distributed under the License is distributed on an "AS IS" BASIS, 11d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# See the License for the specific language governing permissions and 13d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# limitations under the License. 14d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza 15f10c46ef855b6410b20ebd8b1351d4d78d8eca8eDan StozaLOCAL_PATH := $(call my-dir) 16589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopianinclude $(CLEAR_VARS) 17589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian 18f10c46ef855b6410b20ebd8b1351d4d78d8eca8eDan StozaLOCAL_CLANG := true 19d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan StozaLOCAL_CPPFLAGS := -std=c++1y -Weverything -Werror 20d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza 21d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# The static constructors and destructors in this library have not been noted to 22d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# introduce significant overheads 23d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan StozaLOCAL_CPPFLAGS += -Wno-exit-time-destructors 24d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan StozaLOCAL_CPPFLAGS += -Wno-global-constructors 25d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza 26d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# We only care about compiling as C++14 27d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan StozaLOCAL_CPPFLAGS += -Wno-c++98-compat-pedantic 28d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza 29d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# We don't need to enumerate every case in a switch as long as a default case 30d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# is present 31d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan StozaLOCAL_CPPFLAGS += -Wno-switch-enum 32d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza 33d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# Allow calling variadic macros without a __VA_ARGS__ list 34d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan StozaLOCAL_CPPFLAGS += -Wno-gnu-zero-variadic-macro-arguments 35d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza 36d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan Stoza# Don't warn about struct padding 37d723bd7669b4fc88dc282d8bf8ba5ecb2849d22fDan StozaLOCAL_CPPFLAGS += -Wno-padded 38f10c46ef855b6410b20ebd8b1351d4d78d8eca8eDan Stoza 39f10c46ef855b6410b20ebd8b1351d4d78d8eca8eDan StozaLOCAL_SRC_FILES := \ 40a4e19521ac4563f2ff6517bcfd63d9b8d33a6d0bMathias Agopian IGraphicBufferConsumer.cpp \ 41a4e19521ac4563f2ff6517bcfd63d9b8d33a6d0bMathias Agopian IConsumerListener.cpp \ 425cae0d0699a169e468fff3e21165f35db12f2cdeMathias Agopian BitTube.cpp \ 43289ade165e60b5f71734d30e535f16eb1f4313adDan Stoza BufferItem.cpp \ 44392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis BufferItemConsumer.cpp \ 456b091c53000c843211c218ce40287a7edca9bc63Daniel Lam BufferQueue.cpp \ 46289ade165e60b5f71734d30e535f16eb1f4313adDan Stoza BufferQueueConsumer.cpp \ 47289ade165e60b5f71734d30e535f16eb1f4313adDan Stoza BufferQueueCore.cpp \ 48289ade165e60b5f71734d30e535f16eb1f4313adDan Stoza BufferQueueProducer.cpp \ 49289ade165e60b5f71734d30e535f16eb1f4313adDan Stoza BufferSlot.cpp \ 501a4d883dcc1725892bfb5c28dec255a233186524Jamie Gennis ConsumerBase.cpp \ 51392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis CpuConsumer.cpp \ 52d0566bc26fcf6ca396118701fa11900b627f2c09Mathias Agopian DisplayEventReceiver.cpp \ 532adaf04fab35cf47c824d74d901b54094e01ccd3Andy McFadden GLConsumer.cpp \ 54392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis GraphicBufferAlloc.cpp \ 55392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis GuiConfig.cpp \ 56d0566bc26fcf6ca396118701fa11900b627f2c09Mathias Agopian IDisplayEventConnection.cpp \ 57392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis IGraphicBufferAlloc.cpp \ 582adaf04fab35cf47c824d74d901b54094e01ccd3Andy McFadden IGraphicBufferProducer.cpp \ 59f0eaf25e9247edf4d124bedaeb863f7abdf35a3eDan Stoza IProducerListener.cpp \ 60589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian ISensorEventConnection.cpp \ 61589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian ISensorServer.cpp \ 62392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis ISurfaceComposer.cpp \ 63392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis ISurfaceComposerClient.cpp \ 64392edd88cb63d71a21a86a02cf9c56ac97637128Jamie Gennis LayerState.cpp \ 65589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian Sensor.cpp \ 66589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian SensorEventQueue.cpp \ 678ba32fade11abb73f3fd47ea0953c9528eb5b91fJamie Gennis SensorManager.cpp \ 6899b18b447dec188bcec37b415603b9dd400fc7e1Dan Stoza StreamSplitter.cpp \ 69d87f162026454f5a3e6437ed0c9ef51651a6b939Mathias Agopian Surface.cpp \ 70e3c697fb929c856b59fa56a8e05a2a7eba187c3dMathias Agopian SurfaceControl.cpp \ 71d87f162026454f5a3e6437ed0c9ef51651a6b939Mathias Agopian SurfaceComposerClient.cpp \ 72ca08833d5ea99130797e10ad68a651b50e99da74Mathias Agopian SyncFeatures.cpp \ 73589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian 74589ce85ee4174829cfedce91b6b2509d2a4002ebMathias AgopianLOCAL_SHARED_LIBRARIES := \ 75589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian libbinder \ 76ef19414bd8b77a26f5751f3845be79025a8263feJesse Hall libcutils \ 77ef19414bd8b77a26f5751f3845be79025a8263feJesse Hall libEGL \ 78ef19414bd8b77a26f5751f3845be79025a8263feJesse Hall libGLESv2 \ 79ef19414bd8b77a26f5751f3845be79025a8263feJesse Hall libsync \ 808ba32fade11abb73f3fd47ea0953c9528eb5b91fJamie Gennis libui \ 81ef19414bd8b77a26f5751f3845be79025a8263feJesse Hall libutils \ 828a0cb4ee0b6c351de82987efb472fa38dfaf608aYing Wang liblog 838ba32fade11abb73f3fd47ea0953c9528eb5b91fJamie Gennis 84589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian 85f10c46ef855b6410b20ebd8b1351d4d78d8eca8eDan StozaLOCAL_MODULE := libgui 86589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopian 87ca08833d5ea99130797e10ad68a651b50e99da74Mathias Agopianifeq ($(TARGET_BOARD_PLATFORM), tegra) 88ca08833d5ea99130797e10ad68a651b50e99da74Mathias Agopian LOCAL_CFLAGS += -DDONT_USE_FENCE_SYNC 89bff957f0bd0b7d4085dabaefb0852d428a807134Daniel Lamendif 90ca08833d5ea99130797e10ad68a651b50e99da74Mathias Agopianifeq ($(TARGET_BOARD_PLATFORM), tegra3) 91ca08833d5ea99130797e10ad68a651b50e99da74Mathias Agopian LOCAL_CFLAGS += -DDONT_USE_FENCE_SYNC 9242223f6fdd582dc4e87ad94c212adaed3341f154Jeff Boodyendif 9342223f6fdd582dc4e87ad94c212adaed3341f154Jeff Boody 94589ce85ee4174829cfedce91b6b2509d2a4002ebMathias Agopianinclude $(BUILD_SHARED_LIBRARY) 957fcb077c5522c56e266947e073c8750019e5a98aJamie Gennis 967fcb077c5522c56e266947e073c8750019e5a98aJamie Gennisifeq (,$(ONE_SHOT_MAKEFILE)) 977fcb077c5522c56e266947e073c8750019e5a98aJamie Gennisinclude $(call first-makefiles-under,$(LOCAL_PATH)) 987fcb077c5522c56e266947e073c8750019e5a98aJamie Gennisendif 99