blob: fde0e4760d61987d14b8f5822018979e6439d627 [file] [log] [blame]
Romain Guye4d01122010-06-16 18:44:05 -07001LOCAL_PATH:= $(call my-dir)
2include $(CLEAR_VARS)
Dan Albert88ba3392014-09-11 16:20:16 -07003LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
Romain Guye4d01122010-06-16 18:44:05 -07004
sergeyv5bb56262016-10-10 12:25:06 -07005BUGREPORT_FONT_CACHE_USAGE := false
Chris Craikb565df12015-10-05 13:00:52 -07006
John Reck975591a2016-01-22 16:28:07 -08007# Enables fine-grained GLES error checking
8# If set to true, every GLES call is wrapped & error checked
9# Has moderate overhead
John Reckb5544d02017-01-25 15:09:37 -080010HWUI_ENABLE_OPENGL_VALIDATION := true
John Reck975591a2016-01-22 16:28:07 -080011
John Reckd2e72142015-08-17 13:11:43 -070012hwui_src_files := \
sergeyvc1c54062016-10-19 18:47:26 -070013 hwui/Bitmap.cpp \
John Reckd2e72142015-08-17 13:11:43 -070014 font/CacheTexture.cpp \
15 font/Font.cpp \
sergeyvdccca442016-03-21 15:38:21 -070016 hwui/Canvas.cpp \
17 hwui/MinikinSkia.cpp \
18 hwui/MinikinUtils.cpp \
19 hwui/PaintImpl.cpp \
sergeyvbad99182016-03-17 11:24:22 -070020 hwui/Typeface.cpp \
Stan Iliev021693b2016-10-17 16:26:15 -040021 pipeline/skia/GLFunctorDrawable.cpp \
22 pipeline/skia/LayerDrawable.cpp \
23 pipeline/skia/RenderNodeDrawable.cpp \
24 pipeline/skia/ReorderBarrierDrawables.cpp \
25 pipeline/skia/SkiaDisplayList.cpp \
Stan Iliev500a0c32016-10-26 10:30:09 -040026 pipeline/skia/SkiaOpenGLPipeline.cpp \
Derek Sollenbergerc4fbada2016-11-07 16:05:41 -050027 pipeline/skia/SkiaOpenGLReadback.cpp \
Stan Iliev500a0c32016-10-26 10:30:09 -040028 pipeline/skia/SkiaPipeline.cpp \
Matt Sarettcf2c05c2016-10-26 11:03:23 -040029 pipeline/skia/SkiaProfileRenderer.cpp \
Stan Iliev021693b2016-10-17 16:26:15 -040030 pipeline/skia/SkiaRecordingCanvas.cpp \
Stan Iliev500a0c32016-10-26 10:30:09 -040031 pipeline/skia/SkiaVulkanPipeline.cpp \
John Reckd2e72142015-08-17 13:11:43 -070032 renderstate/Blend.cpp \
33 renderstate/MeshState.cpp \
Chris Craik9fded232015-11-11 16:42:34 -080034 renderstate/OffscreenBufferPool.cpp \
John Reckd2e72142015-08-17 13:11:43 -070035 renderstate/PixelBufferState.cpp \
36 renderstate/RenderState.cpp \
37 renderstate/Scissor.cpp \
38 renderstate/Stencil.cpp \
39 renderstate/TextureState.cpp \
40 renderthread/CanvasContext.cpp \
Stan Iliev768e3932016-07-08 21:34:52 -040041 renderthread/OpenGLPipeline.cpp \
John Reckd2e72142015-08-17 13:11:43 -070042 renderthread/DrawFrameTask.cpp \
43 renderthread/EglManager.cpp \
Derek Sollenberger0e3cba32016-11-09 11:58:36 -050044 renderthread/VulkanManager.cpp \
John Reckd2e72142015-08-17 13:11:43 -070045 renderthread/RenderProxy.cpp \
46 renderthread/RenderTask.cpp \
47 renderthread/RenderThread.cpp \
48 renderthread/TimeLord.cpp \
Greg Danielcd558522016-11-17 13:31:40 -050049 renderthread/Frame.cpp \
John Reckdf1742e2017-01-19 15:56:21 -080050 service/GraphicsStatsService.cpp \
John Reckd2e72142015-08-17 13:11:43 -070051 thread/TaskManager.cpp \
52 utils/Blur.cpp \
Romain Guycaaaa662017-03-27 00:40:21 -070053 utils/Color.cpp \
John Reckd2e72142015-08-17 13:11:43 -070054 utils/GLUtils.cpp \
55 utils/LinearAllocator.cpp \
Chris Craik6e6646c2015-09-14 15:54:12 -070056 utils/StringUtils.cpp \
Tom Hudsonb2f5bd22015-10-15 16:41:55 -040057 utils/TestWindowContext.cpp \
Doris Liu804618d2015-11-16 22:48:34 -080058 utils/VectorDrawableUtils.cpp \
John Reckd2e72142015-08-17 13:11:43 -070059 AmbientShadow.cpp \
60 AnimationContext.cpp \
61 Animator.cpp \
62 AnimatorManager.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -070063 BakedOpDispatcher.cpp \
64 BakedOpRenderer.cpp \
65 BakedOpState.cpp \
John Reckd2e72142015-08-17 13:11:43 -070066 Caches.cpp \
67 CanvasState.cpp \
68 ClipArea.cpp \
69 DamageAccumulator.cpp \
John Reckd2e72142015-08-17 13:11:43 -070070 DeferredLayerUpdater.cpp \
John Reck704bed02015-11-05 09:22:17 -080071 DeviceInfo.cpp \
John Reckd2e72142015-08-17 13:11:43 -070072 DisplayList.cpp \
John Reckd2e72142015-08-17 13:11:43 -070073 Extensions.cpp \
74 FboCache.cpp \
75 FontRenderer.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -070076 FrameBuilder.cpp \
John Reckd2e72142015-08-17 13:11:43 -070077 FrameInfo.cpp \
78 FrameInfoVisualizer.cpp \
79 GammaFontRenderer.cpp \
Greg Daniel8cd3edf2017-01-09 14:15:41 -050080 GlLayer.cpp \
John Reckd2e72142015-08-17 13:11:43 -070081 GlopBuilder.cpp \
John Reck38e0c322015-11-10 12:19:17 -080082 GpuMemoryTracker.cpp \
John Reckd2e72142015-08-17 13:11:43 -070083 GradientCache.cpp \
84 Image.cpp \
85 Interpolator.cpp \
86 JankTracker.cpp \
87 Layer.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -070088 LayerBuilder.cpp \
Chris Craik0b7e8242015-10-28 16:50:44 -070089 LayerUpdateQueue.cpp \
John Reckd2e72142015-08-17 13:11:43 -070090 Matrix.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -070091 OpDumper.cpp \
Derek Sollenbergerc4fbada2016-11-07 16:05:41 -050092 OpenGLReadback.cpp \
John Reckd2e72142015-08-17 13:11:43 -070093 Patch.cpp \
94 PatchCache.cpp \
95 PathCache.cpp \
Doris Liu30bcf692015-11-04 14:56:24 -080096 PathParser.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -070097 PathTessellator.cpp \
John Reckd2e72142015-08-17 13:11:43 -070098 PixelBuffer.cpp \
Matt Sarettde973072016-10-25 11:07:40 -040099 ProfileRenderer.cpp \
John Reckd2e72142015-08-17 13:11:43 -0700100 Program.cpp \
101 ProgramCache.cpp \
102 Properties.cpp \
Doris Liu766431a2016-02-04 22:17:11 +0000103 PropertyValuesAnimatorSet.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700104 PropertyValuesHolder.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700105 RecordingCanvas.cpp \
John Reckd2e72142015-08-17 13:11:43 -0700106 RenderBufferCache.cpp \
107 RenderNode.cpp \
108 RenderProperties.cpp \
109 ResourceCache.cpp \
110 ShadowTessellator.cpp \
111 SkiaCanvas.cpp \
112 SkiaCanvasProxy.cpp \
113 SkiaShader.cpp \
114 Snapshot.cpp \
115 SpotShadow.cpp \
116 TessellationCache.cpp \
117 TextDropShadowCache.cpp \
118 Texture.cpp \
John Recke248bd12015-08-05 13:53:53 -0700119 TextureCache.cpp \
Doris Liu4bbc2932015-12-01 17:59:40 -0800120 VectorDrawable.cpp \
Greg Daniel45ec62b2017-01-04 14:27:00 -0500121 VkLayer.cpp \
John Recke248bd12015-08-05 13:53:53 -0700122 protos/hwui.proto
John Reckd2e72142015-08-17 13:11:43 -0700123
Chris Craik8160f202015-12-02 14:50:25 -0800124hwui_test_common_src_files := \
Chris Craik27e58b42015-12-07 10:01:38 -0800125 $(call all-cpp-files-under, tests/common/scenes) \
sergeyv7dc370b2016-06-17 11:21:11 -0700126 tests/common/LeakChecker.cpp \
sergeyv06a62f62016-06-16 14:52:20 -0700127 tests/common/TestListViewSceneBase.cpp \
Chris Craik27e58b42015-12-07 10:01:38 -0800128 tests/common/TestContext.cpp \
129 tests/common/TestScene.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800130 tests/common/TestUtils.cpp
131
sergeyv8bd5edf2016-05-13 15:03:35 -0700132hwui_debug_common_src_files := \
133 debug/wrap_gles.cpp \
134 debug/DefaultGlesDriver.cpp \
135 debug/GlesErrorCheckWrapper.cpp \
136 debug/GlesDriver.cpp \
137 debug/FatalBaseDriver.cpp \
138 debug/NullGlesDriver.cpp
139
John Reckd2e72142015-08-17 13:11:43 -0700140hwui_cflags := \
141 -DEGL_EGLEXT_PROTOTYPES -DGL_GLEXT_PROTOTYPES \
142 -DATRACE_TAG=ATRACE_TAG_VIEW -DLOG_TAG=\"OpenGLRenderer\" \
John Reck82f5e0c2015-10-22 17:07:45 -0700143 -Wall -Wno-unused-parameter -Wunreachable-code -Werror
John Reckd2e72142015-08-17 13:11:43 -0700144
John Reck2d5b8d72016-07-28 15:36:11 -0700145ifeq ($(TARGET_USES_HWC2),true)
146 hwui_cflags += -DUSE_HWC2
147endif
148
Romain Guy253f2c22016-09-28 17:34:42 -0700149# TODO: Linear blending should be enabled by default, but we are
150# TODO: making it an opt-in while it's a work in progress
151# TODO: The final test should be:
152# TODO: ifneq ($(TARGET_ENABLE_LINEAR_BLENDING),false)
153ifeq ($(TARGET_ENABLE_LINEAR_BLENDING),true)
154 hwui_cflags += -DANDROID_ENABLE_LINEAR_BLENDING
155endif
156
John Reckc90ed752015-11-04 07:39:44 -0800157# GCC false-positives on this warning, and since we -Werror that's
158# a problem
159hwui_cflags += -Wno-free-nonheap-object
160
John Reckf1480762016-07-03 18:28:25 -0700161# clang's warning is broken, see: https://llvm.org/bugs/show_bug.cgi?id=21629
162hwui_cflags += -Wno-missing-braces
163
sergeyvaf102be2016-09-09 18:02:07 -0700164ifeq (true, $(BUGREPORT_FONT_CACHE_USAGE))
165 hwui_src_files += \
166 font/FontCacheHistoryTracker.cpp
167 hwui_cflags += -DBUGREPORT_FONT_CACHE_USAGE
168endif
169
John Reckd2e72142015-08-17 13:11:43 -0700170ifndef HWUI_COMPILE_SYMBOLS
171 hwui_cflags += -fvisibility=hidden
172endif
173
174ifdef HWUI_COMPILE_FOR_PERF
175 # TODO: Non-arm?
176 hwui_cflags += -fno-omit-frame-pointer -marm -mapcs
177endif
178
John Recke248bd12015-08-05 13:53:53 -0700179# This has to be lazy-resolved because it depends on the LOCAL_MODULE_CLASS
180# which varies depending on what is being built
181define hwui_proto_include
182$(call local-generated-sources-dir)/proto/$(LOCAL_PATH)
183endef
184
John Reckd2e72142015-08-17 13:11:43 -0700185hwui_c_includes += \
Leon Scroggins III55078072015-07-31 10:38:40 -0400186 external/skia/include/private \
sergeyvdccca442016-03-21 15:38:21 -0700187 external/skia/src/core \
Stan Iliev021693b2016-10-17 16:26:15 -0400188 external/skia/src/effects \
Stan Ilievdb45a4b2016-11-08 14:18:31 -0500189 external/skia/src/image \
Leon Scroggins III82c581d2016-12-12 11:00:52 -0500190 external/skia/src/utils \
Roozbeh Pournader46c6f4c2017-02-21 12:18:31 -0800191 external/icu/icu4c/source/common \
sergeyvdccca442016-03-21 15:38:21 -0700192 external/harfbuzz_ng/src \
193 external/freetype/include
John Reckd2e72142015-08-17 13:11:43 -0700194
Po-Chien Hsuehc5ae5952017-02-09 10:38:34 +0800195# enable RENDERSCRIPT
196hwui_c_includes += \
197 $(call intermediates-dir-for,STATIC_LIBRARIES,TARGET,) \
198 frameworks/rs/cpp \
199 frameworks/rs
John Reckd2e72142015-08-17 13:11:43 -0700200
John Reckd2e72142015-08-17 13:11:43 -0700201# ------------------------
202# static library
203# ------------------------
204
205include $(CLEAR_VARS)
206
207LOCAL_MODULE_CLASS := STATIC_LIBRARIES
208LOCAL_MODULE := libhwui_static
John Reckd2e72142015-08-17 13:11:43 -0700209LOCAL_CFLAGS := $(hwui_cflags)
210LOCAL_SRC_FILES := $(hwui_src_files)
sergeyv8bd5edf2016-05-13 15:03:35 -0700211
212ifeq (true, $(HWUI_ENABLE_OPENGL_VALIDATION))
213 LOCAL_CFLAGS += -include debug/wrap_gles.h
214 LOCAL_CFLAGS += -DDEBUG_OPENGL=3
215 LOCAL_SRC_FILES += $(hwui_debug_common_src_files)
216endif
217
John Recke248bd12015-08-05 13:53:53 -0700218LOCAL_C_INCLUDES := $(hwui_c_includes) $(call hwui_proto_include)
Derek Sollenberger991da312016-02-11 12:13:07 -0500219LOCAL_EXPORT_C_INCLUDE_DIRS := \
220 $(LOCAL_PATH) \
Derek Sollenberger991da312016-02-11 12:13:07 -0500221 $(call hwui_proto_include)
John Reckd2e72142015-08-17 13:11:43 -0700222
Derek Sollenberger991da312016-02-11 12:13:07 -0500223include $(LOCAL_PATH)/hwui_static_deps.mk
John Reckd2e72142015-08-17 13:11:43 -0700224include $(BUILD_STATIC_LIBRARY)
225
226# ------------------------
Chris Craik5fbd9db2015-10-19 11:22:11 -0700227# static library null gpu
228# ------------------------
229
230include $(CLEAR_VARS)
231
232LOCAL_MODULE_CLASS := STATIC_LIBRARIES
sergeyv8bd5edf2016-05-13 15:03:35 -0700233LOCAL_MODULE := libhwui_static_debug
Chris Craik5fbd9db2015-10-19 11:22:11 -0700234LOCAL_CFLAGS := \
235 $(hwui_cflags) \
sergeyv8bd5edf2016-05-13 15:03:35 -0700236 -include debug/wrap_gles.h \
Chris Craik5fbd9db2015-10-19 11:22:11 -0700237 -DHWUI_NULL_GPU
238LOCAL_SRC_FILES := \
239 $(hwui_src_files) \
sergeyv8bd5edf2016-05-13 15:03:35 -0700240 $(hwui_debug_common_src_files) \
241 debug/nullegl.cpp
Chris Craik5fbd9db2015-10-19 11:22:11 -0700242LOCAL_C_INCLUDES := $(hwui_c_includes) $(call hwui_proto_include)
Derek Sollenberger991da312016-02-11 12:13:07 -0500243LOCAL_EXPORT_C_INCLUDE_DIRS := \
244 $(LOCAL_PATH) \
Derek Sollenberger991da312016-02-11 12:13:07 -0500245 $(call hwui_proto_include)
Chris Craik5fbd9db2015-10-19 11:22:11 -0700246
Derek Sollenberger991da312016-02-11 12:13:07 -0500247include $(LOCAL_PATH)/hwui_static_deps.mk
Chris Craik5fbd9db2015-10-19 11:22:11 -0700248include $(BUILD_STATIC_LIBRARY)
249
250# ------------------------
John Reckd2e72142015-08-17 13:11:43 -0700251# shared library
252# ------------------------
253
254include $(CLEAR_VARS)
255
John Recka2732a22014-12-18 13:52:33 -0800256LOCAL_MODULE_CLASS := SHARED_LIBRARIES
257LOCAL_MODULE := libhwui
John Reckd2e72142015-08-17 13:11:43 -0700258LOCAL_WHOLE_STATIC_LIBRARIES := libhwui_static
Derek Sollenberger991da312016-02-11 12:13:07 -0500259LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
Romain Guye4d01122010-06-16 18:44:05 -0700260
Derek Sollenberger991da312016-02-11 12:13:07 -0500261include $(LOCAL_PATH)/hwui_static_deps.mk
John Recka2732a22014-12-18 13:52:33 -0800262include $(BUILD_SHARED_LIBRARY)
Andreas Gampeedaecc12014-11-10 20:54:07 -0800263
John Reckd2e72142015-08-17 13:11:43 -0700264# ------------------------
265# unit tests
266# ------------------------
267
268include $(CLEAR_VARS)
269
270LOCAL_MODULE := hwui_unit_tests
271LOCAL_MODULE_TAGS := tests
sergeyv8bd5edf2016-05-13 15:03:35 -0700272LOCAL_STATIC_LIBRARIES := libgmock libhwui_static_debug
John Reckdc87c522016-02-29 13:31:18 -0800273LOCAL_SHARED_LIBRARIES := libmemunreachable
Chris Craik98787e62015-11-13 10:55:30 -0800274LOCAL_CFLAGS := \
275 $(hwui_cflags) \
sergeyv8bd5edf2016-05-13 15:03:35 -0700276 -include debug/wrap_gles.h \
Chris Craik98787e62015-11-13 10:55:30 -0800277 -DHWUI_NULL_GPU
Dan Willemsene9c205b2016-03-07 12:58:33 -0800278LOCAL_C_INCLUDES := $(hwui_c_includes)
John Reckd2e72142015-08-17 13:11:43 -0700279
280LOCAL_SRC_FILES += \
Chris Craik8160f202015-12-02 14:50:25 -0800281 $(hwui_test_common_src_files) \
John Reckdc87c522016-02-29 13:31:18 -0800282 tests/unit/main.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700283 tests/unit/BakedOpDispatcherTests.cpp \
284 tests/unit/BakedOpRendererTests.cpp \
285 tests/unit/BakedOpStateTests.cpp \
sergeyv71c44772016-11-29 20:27:25 -0800286 tests/unit/BitmapTests.cpp \
Derek Sollenbergerdaf72292016-10-25 12:09:18 -0400287 tests/unit/CanvasContextTests.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800288 tests/unit/CanvasStateTests.cpp \
289 tests/unit/ClipAreaTests.cpp \
290 tests/unit/DamageAccumulatorTests.cpp \
Derek Sollenberger56ad6ec2016-07-22 12:13:32 -0400291 tests/unit/DeferredLayerUpdaterTests.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800292 tests/unit/DeviceInfoTests.cpp \
293 tests/unit/FatVectorTests.cpp \
Chris Craikf3754a82016-04-19 18:13:21 -0700294 tests/unit/FontRendererTests.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700295 tests/unit/FrameBuilderTests.cpp \
sergeyvf42bf3e2016-03-11 13:45:15 -0800296 tests/unit/GlopBuilderTests.cpp \
John Reck38e0c322015-11-10 12:19:17 -0800297 tests/unit/GpuMemoryTrackerTests.cpp \
Chris Craik04d46eb2016-04-07 13:51:07 -0700298 tests/unit/GradientCacheTests.cpp \
John Reckdf1742e2017-01-19 15:56:21 -0800299 tests/unit/GraphicsStatsServiceTests.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800300 tests/unit/LayerUpdateQueueTests.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700301 tests/unit/LeakCheckTests.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800302 tests/unit/LinearAllocatorTests.cpp \
Chris Craik261725f2016-02-29 12:52:33 -0800303 tests/unit/MatrixTests.cpp \
sergeyv8bd5edf2016-05-13 15:03:35 -0700304 tests/unit/MeshStateTests.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800305 tests/unit/OffscreenBufferPoolTests.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700306 tests/unit/OpDumperTests.cpp \
Doris Liu9e9eeee2016-11-29 14:48:25 -0800307 tests/unit/PathInterpolatorTests.cpp \
Stan Iliev021693b2016-10-17 16:26:15 -0400308 tests/unit/RenderNodeDrawableTests.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700309 tests/unit/RecordingCanvasTests.cpp \
John Reck44b49f02016-03-25 14:29:48 -0700310 tests/unit/RenderNodeTests.cpp \
Chris Craikd4fe4d32016-06-09 16:57:11 -0700311 tests/unit/RenderPropertiesTests.cpp \
Chris Craik07d8d592016-02-03 18:43:04 -0800312 tests/unit/SkiaBehaviorTests.cpp \
Derek Sollenberger0df62092016-09-27 16:04:42 -0400313 tests/unit/SkiaDisplayListTests.cpp \
Stan Iliev500a0c32016-10-26 10:30:09 -0400314 tests/unit/SkiaPipelineTests.cpp \
Stan Iliev52771272016-11-17 09:54:38 -0500315 tests/unit/SkiaRenderPropertiesTests.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700316 tests/unit/SkiaCanvasTests.cpp \
Chris Craik04d46eb2016-04-07 13:51:07 -0700317 tests/unit/SnapshotTests.cpp \
Andres Morales06f5bc72015-12-15 15:21:31 -0800318 tests/unit/StringUtilsTests.cpp \
Chris Craik37413282016-05-12 17:48:51 -0700319 tests/unit/TestUtilsTests.cpp \
Chris Craik07d8d592016-02-03 18:43:04 -0800320 tests/unit/TextDropShadowCacheTests.cpp \
sergeyv83809fe2017-02-01 10:27:33 -0800321 tests/unit/TextureCacheTests.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700322 tests/unit/VectorDrawableTests.cpp \
Chris Craikb565df12015-10-05 13:00:52 -0700323
Derek Sollenberger991da312016-02-11 12:13:07 -0500324include $(LOCAL_PATH)/hwui_static_deps.mk
John Reckd2e72142015-08-17 13:11:43 -0700325include $(BUILD_NATIVE_TEST)
326
327# ------------------------
Chris Craik8160f202015-12-02 14:50:25 -0800328# Macro-bench app
John Reckd2e72142015-08-17 13:11:43 -0700329# ------------------------
330
331include $(CLEAR_VARS)
332
333LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)/local/tmp
sergeyv202c10b2016-07-11 17:53:45 -0700334LOCAL_MODULE:= hwuimacro
John Reckd2e72142015-08-17 13:11:43 -0700335LOCAL_MODULE_TAGS := tests
336LOCAL_MULTILIB := both
John Reckd2e72142015-08-17 13:11:43 -0700337LOCAL_CFLAGS := $(hwui_cflags)
Dan Willemsene9c205b2016-03-07 12:58:33 -0800338LOCAL_C_INCLUDES := $(hwui_c_includes)
John Reckd2e72142015-08-17 13:11:43 -0700339
sergeyv8bd5edf2016-05-13 15:03:35 -0700340# set to libhwui_static_debug to skip actual GL commands
Chris Craik5fbd9db2015-10-19 11:22:11 -0700341LOCAL_WHOLE_STATIC_LIBRARIES := libhwui_static
sergeyv7dc370b2016-06-17 11:21:11 -0700342LOCAL_SHARED_LIBRARIES := libmemunreachable
John Reckd2e72142015-08-17 13:11:43 -0700343
344LOCAL_SRC_FILES += \
Chris Craik8160f202015-12-02 14:50:25 -0800345 $(hwui_test_common_src_files) \
Chris Craik8160f202015-12-02 14:50:25 -0800346 tests/macrobench/TestSceneRunner.cpp \
347 tests/macrobench/main.cpp
John Reckd2e72142015-08-17 13:11:43 -0700348
Derek Sollenberger991da312016-02-11 12:13:07 -0500349include $(LOCAL_PATH)/hwui_static_deps.mk
sergeyv202c10b2016-07-11 17:53:45 -0700350include $(BUILD_NATIVE_BENCHMARK)
John Reck4a4bc892015-10-12 07:38:22 -0700351
352# ------------------------
353# Micro-bench app
354# ---------------------
355include $(CLEAR_VARS)
356
John Reck4a4bc892015-10-12 07:38:22 -0700357LOCAL_MODULE:= hwuimicro
358LOCAL_MODULE_TAGS := tests
Chris Craik8d1f2122015-11-24 16:40:09 -0800359LOCAL_CFLAGS := \
360 $(hwui_cflags) \
sergeyv8bd5edf2016-05-13 15:03:35 -0700361 -include debug/wrap_gles.h \
Chris Craik8d1f2122015-11-24 16:40:09 -0800362 -DHWUI_NULL_GPU
John Reck4a4bc892015-10-12 07:38:22 -0700363
John Reck2bee0dd2016-03-09 08:01:37 -0800364LOCAL_C_INCLUDES := $(hwui_c_includes)
John Reck4a4bc892015-10-12 07:38:22 -0700365
sergeyv8bd5edf2016-05-13 15:03:35 -0700366LOCAL_WHOLE_STATIC_LIBRARIES := libhwui_static_debug
sergeyv7dc370b2016-06-17 11:21:11 -0700367LOCAL_SHARED_LIBRARIES := libmemunreachable
John Reck4a4bc892015-10-12 07:38:22 -0700368
369LOCAL_SRC_FILES += \
Chris Craik8160f202015-12-02 14:50:25 -0800370 $(hwui_test_common_src_files) \
John Reck0418afa32016-03-07 13:24:25 -0800371 tests/microbench/main.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800372 tests/microbench/DisplayListCanvasBench.cpp \
John Reck2c0f9372016-03-28 09:34:35 -0700373 tests/microbench/FontBench.cpp \
Chris Craik5e00c7c2016-07-06 16:10:09 -0700374 tests/microbench/FrameBuilderBench.cpp \
Chris Craik8160f202015-12-02 14:50:25 -0800375 tests/microbench/LinearAllocatorBench.cpp \
376 tests/microbench/PathParserBench.cpp \
John Reck3acf03822016-11-02 11:14:47 -0700377 tests/microbench/RenderNodeBench.cpp \
Chris Craikb251a2f2016-02-08 19:36:46 +0000378 tests/microbench/ShadowBench.cpp \
379 tests/microbench/TaskManagerBench.cpp
John Reck4a4bc892015-10-12 07:38:22 -0700380
Chris Craik0a24b142015-10-19 17:10:19 -0700381
Derek Sollenberger991da312016-02-11 12:13:07 -0500382include $(LOCAL_PATH)/hwui_static_deps.mk
sergeyv422e2b42016-06-20 15:27:39 -0700383include $(BUILD_NATIVE_BENCHMARK)