Android.mk revision a72d52bbed043b5149c98a1697bf7022e00050b3
1d195e5ab401432ddac659791640a2927fc668699Elliott HughesLOCAL_PATH:= $(call my-dir)
2d195e5ab401432ddac659791640a2927fc668699Elliott Hughesinclude $(CLEAR_VARS)
3d195e5ab401432ddac659791640a2927fc668699Elliott HughesLOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
4d195e5ab401432ddac659791640a2927fc668699Elliott Hughes
5d195e5ab401432ddac659791640a2927fc668699Elliott HughesHWUI_NEW_OPS := true
6d195e5ab401432ddac659791640a2927fc668699Elliott Hughes
7d195e5ab401432ddac659791640a2927fc668699Elliott Hughes# Enables fine-grained GLES error checking
8d195e5ab401432ddac659791640a2927fc668699Elliott Hughes# If set to true, every GLES call is wrapped & error checked
9d195e5ab401432ddac659791640a2927fc668699Elliott Hughes# Has moderate overhead
10d195e5ab401432ddac659791640a2927fc668699Elliott HughesHWUI_ENABLE_OPENGL_VALIDATION := false
11d195e5ab401432ddac659791640a2927fc668699Elliott Hughes
12d195e5ab401432ddac659791640a2927fc668699Elliott Hugheshwui_src_files := \
13d195e5ab401432ddac659791640a2927fc668699Elliott Hughes    font/CacheTexture.cpp \
14d195e5ab401432ddac659791640a2927fc668699Elliott Hughes    font/Font.cpp \
15d195e5ab401432ddac659791640a2927fc668699Elliott Hughes    renderstate/Blend.cpp \
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderstate/MeshState.cpp \
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderstate/OffscreenBufferPool.cpp \
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderstate/PixelBufferState.cpp \
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderstate/RenderState.cpp \
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderstate/Scissor.cpp \
210795272aa226f4e965968a03daddc53ce30b7cdaMathias Agopian    renderstate/Stencil.cpp \
220bd5243b751c9cad317758158f79b3347e7948afBrad Fitzpatrick    renderstate/TextureState.cpp \
230795272aa226f4e965968a03daddc53ce30b7cdaMathias Agopian    renderthread/CanvasContext.cpp \
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderthread/DrawFrameTask.cpp \
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderthread/EglManager.cpp \
260795272aa226f4e965968a03daddc53ce30b7cdaMathias Agopian    renderthread/RenderProxy.cpp \
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderthread/RenderTask.cpp \
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderthread/RenderThread.cpp \
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    renderthread/TimeLord.cpp \
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    thread/TaskManager.cpp \
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    utils/Blur.cpp \
32fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    utils/GLUtils.cpp \
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    utils/LinearAllocator.cpp \
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    utils/NinePatchImpl.cpp \
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    utils/StringUtils.cpp \
369f8203a159d46124a0907a0d9500e599533beed3Brian Carlstrom    utils/TestWindowContext.cpp \
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    utils/VectorDrawableUtils.cpp \
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    AmbientShadow.cpp \
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    AnimationContext.cpp \
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Animator.cpp \
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    AnimatorManager.cpp \
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    AssetAtlas.cpp \
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Caches.cpp \
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Canvas.cpp \
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    CanvasState.cpp \
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    ClipArea.cpp \
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    DamageAccumulator.cpp \
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    DeferredDisplayList.cpp \
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    DeferredLayerUpdater.cpp \
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    DeviceInfo.cpp \
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    DisplayList.cpp \
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    DisplayListCanvas.cpp \
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Dither.cpp \
546b849e2123be98eb2a1a25b8abf0b13a279ce952Wei-Ta Chen    Extensions.cpp \
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    FboCache.cpp \
56d0d7eaf129b48ea04c06902a11c2a4f74056d76cLeon Scroggins III    FontRenderer.cpp \
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    FrameInfo.cpp \
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    FrameInfoVisualizer.cpp \
599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    GammaFontRenderer.cpp \
609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    GlopBuilder.cpp \
619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    GpuMemoryTracker.cpp \
629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    GradientCache.cpp \
639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Image.cpp \
649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Interpolator.cpp \
659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    JankTracker.cpp \
66bca2d613e0d6d2630fedd302c0d779b7610adbcfWei-Ta Chen    Layer.cpp \
679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    LayerCache.cpp \
689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    LayerRenderer.cpp \
699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    LayerUpdateQueue.cpp \
706b1e838fc16d397359f82c3a4f5700f1ed7dd910Thomas Tafertshofer    Matrix.cpp \
71237c2b871f66e06498ad03aaa92964f4434982c5Jesse Hall    OpenGLRenderer.cpp \
721c4907ee77392afb768c2f088e0dedbe4239f6fbJack Palevich    Patch.cpp \
731c4907ee77392afb768c2f088e0dedbe4239f6fbJack Palevich    PatchCache.cpp \
741c4907ee77392afb768c2f088e0dedbe4239f6fbJack Palevich    PathCache.cpp \
751c4907ee77392afb768c2f088e0dedbe4239f6fbJack Palevich    PathTessellator.cpp \
76560814f6b11abe83ff0c4ed18cac015c276b3181Jack Palevich    PathParser.cpp \
77d877efe3b12afdd84f06c180369f9d7399858f6eJesse Hall    PixelBuffer.cpp \
789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Program.cpp \
799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    ProgramCache.cpp \
802f1a2e423e0fbb64467d6fcfa4e82c6384f31210Eino-Ville Talvala    Properties.cpp \
819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    PropertyValuesHolder.cpp \
82b01e8bf57b7492b77e3445db51471edcbadda75eMike Lockwood    PropertyValuesAnimatorSet.cpp \
83e7d511e148bc901ef41ac44d7b3593e5d803f72fMike Lockwood    RenderBufferCache.cpp \
84acc29cc91be634070c92a807df412ced97b9b375Mike Lockwood    RenderNode.cpp \
85e7d511e148bc901ef41ac44d7b3593e5d803f72fMike Lockwood    RenderProperties.cpp \
869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    ResourceCache.cpp \
879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    ShadowTessellator.cpp \
889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    SkiaCanvas.cpp \
899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    SkiaCanvasProxy.cpp \
909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    SkiaShader.cpp \
919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Snapshot.cpp \
929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    SpotShadow.cpp \
939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    TessellationCache.cpp \
949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    TextDropShadowCache.cpp \
959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Texture.cpp \
969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    TextureCache.cpp \
979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    VectorDrawable.cpp \
989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    protos/hwui.proto
999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projecthwui_test_common_src_files := \
1019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    $(call all-cpp-files-under, tests/common/scenes) \
1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/common/TestContext.cpp \
1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/common/TestScene.cpp \
1049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/common/TestUtils.cpp
1059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
106b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54The Android Open Source Projecthwui_cflags := \
1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    -DEGL_EGLEXT_PROTOTYPES -DGL_GLEXT_PROTOTYPES \
10852244fff29042926e21fa897ef5ab11148e35299John Reck    -DATRACE_TAG=ATRACE_TAG_VIEW -DLOG_TAG=\"OpenGLRenderer\" \
1099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    -Wall -Wno-unused-parameter -Wunreachable-code -Werror
1109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# GCC false-positives on this warning, and since we -Werror that's
1129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# a problem
1139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projecthwui_cflags += -Wno-free-nonheap-object
1149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectifeq (true, $(HWUI_NEW_OPS))
1169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    hwui_src_files += \
1179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        BakedOpDispatcher.cpp \
118fbf097732137a32930d151f7ba6816a5b870c32aJeff Brown        BakedOpRenderer.cpp \
119aa0ce3396c096c97e3394c53e3912cb08b66fe20Jamie Gennis        BakedOpState.cpp \
1209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        FrameBuilder.cpp \
1216811f4e92cbb64e72a0d13eb9b99b5894bd59c76Svetoslav        LayerBuilder.cpp \
1220a0a1248cfc03940174cbd9af677bafd7280a3bcJeff Brown        RecordingCanvas.cpp
123f666ad7046c0b1b255835f75aeb7d1391067df93John Reck
124e45b1fd03b524d2b57cc6c222d89076a31a08beaJohn Reck    hwui_cflags += -DHWUI_NEW_OPS
1253b748a44c6bd2ea05fe16839caf73dbe50bd7ae9Romain Guy
126e4d011201cea40d46cb2b2eef401db8fddc5c9c6Romain Guyendif
1273083579424785e55ca8f82856a6553ee983c3ffbJohn Reck
12804fc583c3dd3144bc6b718fcac4b3e1afdfdb067John Reckifndef HWUI_COMPILE_SYMBOLS
129cec24ae16e9a0a7c3075f1a8d9149bb7fb3813fcJohn Reck    hwui_cflags += -fvisibility=hidden
1309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectendif
1313866f0d581ceaa165710feeee9f37fe1b0d7067dMathias Agopian
13264a55af0ac700baecb0877235eb42caac59a3560Jeff Brownifdef HWUI_COMPILE_FOR_PERF
1338f0095cd33558e9cc8a440047908e53b68906f5fRomain Guy    # TODO: Non-arm?
134315c329544d7c593d1072b071cbb92d9afe74021John Reck    hwui_cflags += -fno-omit-frame-pointer -marm -mapcs
1359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectendif
136e5360fbf3efe85427f7e7f59afe7bbeddb4949acJeff Brown
137e5360fbf3efe85427f7e7f59afe7bbeddb4949acJeff Brown# This has to be lazy-resolved because it depends on the LOCAL_MODULE_CLASS
1389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# which varies depending on what is being built
1399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectdefine hwui_proto_include
1409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project$(call local-generated-sources-dir)/proto/$(LOCAL_PATH)
1419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectendef
142fa9e7c05c7be6891a6cf85a11dc635a6e6853078Christopher Tate
143d84e1ce0b535128f03416145554fb405f9fade3eJeff Sharkeyhwui_c_includes += \
144c07fca3831baf4d812dd724f506b4ed23dcc39e0Stephen Smalley    external/skia/include/private \
1459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    external/skia/src/core
1469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
147481c1570dc5cdf58265b53f657801709dd05d1dfJeff Brownhwui_shared_libraries := \
1489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    liblog \
1499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    libcutils \
1509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    libutils \
1519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    libEGL \
1529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    libGLESv2 \
1532b4abcd0c7c4361af8ab6d5d7b073fb75ac6d219Dan Egnor    libskia \
1549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    libui \
155dae8e94cce0881f3e10ef5e34b881f512bb52a75Doug Felt    libgui \
1569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    libprotobuf-cpp-lite \
15798a4f7e7e12effb78b3d1035e5a670ccbbf5bca1JP Abgrall
158ecaa7b41ca49154ceaa9a7504eb0a86b89a96026Christopher Tateifneq (false,$(ANDROID_ENABLE_RENDERSCRIPT))
1599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    hwui_cflags += -DANDROID_ENABLE_RENDERSCRIPT
1609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    hwui_shared_libraries += libRS libRScpp
1611cf587496fcb1d652bab9fc6792fb106b6fefaa4Joe Onorato    hwui_c_includes += \
162d2110dbce071a236b6176de344ca797b737542ebJoe Onorato        $(call intermediates-dir-for,STATIC_LIBRARIES,libRS,TARGET,) \
16306290a4bb9b280fa14a2bbeb2d3ceb09396a78c3Joe Onorato        frameworks/rs/cpp \
1644ababd922eac5931e0222862ff082dc29e012816Joe Onorato        frameworks/rs
1654a627c71ff53a4fca1f961f4b1dcc0461df18a06Christopher Tateendif
1669c1e23baf5bfbebd1aebbd6d9a18c225325567ceChet Haase
16769969e48f2bca9339662dddfacff0bbf6374ed7fDianne Hackbornifeq (true, $(HWUI_ENABLE_OPENGL_VALIDATION))
168cbad976b2a36a0895ca94510d5208a86f66cf596Jeff Brown    hwui_cflags += -include debug/wrap_gles.h
16946b9ac0ae2162309774a7478cd9d4e578747bfc2Jeff Brown    hwui_src_files += debug/wrap_gles.cpp
1709f25b7fdf216c9ef0bd2322cd223eeaf0d60f77fJeff Brown    hwui_c_includes += frameworks/native/opengl/libs/GLES2
17132cbc3855c2a971aa5a801fd339fb6a37db91a1aJeff Brown    hwui_cflags += -DDEBUG_OPENGL=3
172c28867a1d67121ce5963de135e3ae2b1dbd9a33dJeff Brownendif
173a44dd26a75e24cc021802288fb81f4761e47be6bMichael Wright
1749f25b7fdf216c9ef0bd2322cd223eeaf0d60f77fJeff Brown
17546b9ac0ae2162309774a7478cd9d4e578747bfc2Jeff Brown# ------------------------
17646b9ac0ae2162309774a7478cd9d4e578747bfc2Jeff Brown# static library
1772352b978a3c94cd88f41d0d908f961333fdac1e9Jeff Brown# ------------------------
1782ed2462aa29c564f5231f317c27b3188da875e52Jeff Brown
17902c8730c1bf19daf48bec8c6995df676a00a73b1Kenny Rootinclude $(CLEAR_VARS)
18008d5b8fad8d46ccb64db2fdcb4d66972ec87bf48Dianne Hackborn
1816e0ecb4eed5cd2e1f15766d7028467129974a12dChet HaaseLOCAL_MODULE_CLASS := STATIC_LIBRARIES
18266269ea6f68f2f25888ce1080c94ac782742fafcKenny RootLOCAL_MODULE := libhwui_static
1839a2c2a6da90abbcc9a064c20e93ed885651f4ae1Jeff SharkeyLOCAL_SHARED_LIBRARIES := $(hwui_shared_libraries)
184973b4663b0b5ee62006522bf4742af076096e548Narayan KamathLOCAL_CFLAGS := $(hwui_cflags)
1859fa4071c4768c63902c6a74a4b480b51a8b95d43John ReckLOCAL_SRC_FILES := $(hwui_src_files)
1869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_C_INCLUDES := $(hwui_c_includes) $(call hwui_proto_include)
1879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_EXPORT_C_INCLUDE_DIRS := $(hwui_c_includes) $(call hwui_proto_include)
1889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(BUILD_STATIC_LIBRARY)
1909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# ------------------------
1929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# static library null gpu
1939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# ------------------------
1949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(CLEAR_VARS)
1969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE_CLASS := STATIC_LIBRARIES
19816f5f5cc9d4c480fac3dc7f176f3f1edfbd256f4Jeff BrownLOCAL_MODULE := libhwui_static_null_gpu
1999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_SHARED_LIBRARIES := $(hwui_shared_libraries)
2009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_CFLAGS := \
2019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        $(hwui_cflags) \
2029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        -DHWUI_NULL_GPU
20316f5f5cc9d4c480fac3dc7f176f3f1edfbd256f4Jeff BrownLOCAL_SRC_FILES := \
2049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        $(hwui_src_files) \
2059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        debug/nullegl.cpp \
2069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        debug/nullgles.cpp
2079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_C_INCLUDES := $(hwui_c_includes) $(call hwui_proto_include)
2084280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff BrownLOCAL_EXPORT_C_INCLUDE_DIRS := $(hwui_c_includes) $(call hwui_proto_include)
2094280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Brown
2104280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Browninclude $(BUILD_STATIC_LIBRARY)
2114280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Brown
2124280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Brown# ------------------------
2134280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Brown# shared library
2149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# ------------------------
2159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(CLEAR_VARS)
2179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
21816f5f5cc9d4c480fac3dc7f176f3f1edfbd256f4Jeff BrownLOCAL_MODULE_CLASS := SHARED_LIBRARIES
21916f5f5cc9d4c480fac3dc7f176f3f1edfbd256f4Jeff BrownLOCAL_MODULE := libhwui
22016f5f5cc9d4c480fac3dc7f176f3f1edfbd256f4Jeff BrownLOCAL_WHOLE_STATIC_LIBRARIES := libhwui_static
22116f5f5cc9d4c480fac3dc7f176f3f1edfbd256f4Jeff BrownLOCAL_SHARED_LIBRARIES := $(hwui_shared_libraries)
2224280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Brown
2234280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Browninclude $(BUILD_SHARED_LIBRARY)
2249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# ------------------------
2269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# unit tests
2279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# ------------------------
2289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(CLEAR_VARS)
2309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE := hwui_unit_tests
2329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE_TAGS := tests
2339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_SHARED_LIBRARIES := $(hwui_shared_libraries)
2349ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas HuberLOCAL_STATIC_LIBRARIES := libhwui_static_null_gpu
2359ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas HuberLOCAL_CFLAGS := \
236a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan Kamath        $(hwui_cflags) \
237a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan Kamath        -DHWUI_NULL_GPU
238a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan Kamath
239a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan KamathLOCAL_SRC_FILES += \
2409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    $(hwui_test_common_src_files) \
241c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project    tests/unit/CanvasStateTests.cpp \
2429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/unit/ClipAreaTests.cpp \
2439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/unit/CrashHandlerInjector.cpp \
2449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/unit/DamageAccumulatorTests.cpp \
245fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    tests/unit/DeviceInfoTests.cpp \
246fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    tests/unit/FatVectorTests.cpp \
247fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    tests/unit/GpuMemoryTrackerTests.cpp \
248fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    tests/unit/LayerUpdateQueueTests.cpp \
249fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    tests/unit/LinearAllocatorTests.cpp \
250fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    tests/unit/VectorDrawableTests.cpp \
251fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed    tests/unit/OffscreenBufferPoolTests.cpp \
2529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/unit/StringUtilsTests.cpp \
2539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/unit/BufferPoolTests.cpp \
2549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/unit/TextDropShadowCacheTests.cpp
2559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectifeq (true, $(HWUI_NEW_OPS))
2579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    LOCAL_SRC_FILES += \
2589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        tests/unit/BakedOpStateTests.cpp \
2599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        tests/unit/FrameBuilderTests.cpp \
2609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        tests/unit/LeakCheckTests.cpp \
2619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        tests/unit/RecordingCanvasTests.cpp
2629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectendif
2639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(BUILD_NATIVE_TEST)
2659ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas Huber
2669ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas Huber# ------------------------
2679ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas Huber# Macro-bench app
2689ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas Huber# ------------------------
2699ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas Huber
2709ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas Huberinclude $(CLEAR_VARS)
2719ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas Huber
2729ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas HuberLOCAL_MODULE_PATH := $(TARGET_OUT_DATA)/local/tmp
2739ae000ca8c05ad6f700ad7bf119bbc92fb964b57Andreas HuberLOCAL_MODULE:= hwuitest
274a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan KamathLOCAL_MODULE_TAGS := tests
275a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan KamathLOCAL_MODULE_CLASS := EXECUTABLES
276a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan KamathLOCAL_MULTILIB := both
277a23fcd7be8e40078a913b1a99222cdd89229e67bNarayan KamathLOCAL_MODULE_STEM_32 := hwuitest
27822ec1eefa4dc8e12f7da8e8750d4770144941526Narayan KamathLOCAL_MODULE_STEM_64 := hwuitest64
27922ec1eefa4dc8e12f7da8e8750d4770144941526Narayan KamathLOCAL_SHARED_LIBRARIES := $(hwui_shared_libraries)
2809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_CFLAGS := $(hwui_cflags)
2819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# set to libhwui_static_null_gpu to skip actual GL commands
2839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_WHOLE_STATIC_LIBRARIES := libhwui_static
28422ec1eefa4dc8e12f7da8e8750d4770144941526Narayan Kamath
28508e60f2a165d23b53f41993374aa074165bb5863Dianne HackbornLOCAL_SRC_FILES += \
2869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    $(hwui_test_common_src_files) \
287d195e5ab401432ddac659791640a2927fc668699Elliott Hughes    tests/macrobench/TestSceneRunner.cpp \
2889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/macrobench/main.cpp
2899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(BUILD_EXECUTABLE)
2919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# ------------------------
29322ec1eefa4dc8e12f7da8e8750d4770144941526Narayan Kamath# Micro-bench app
2949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project# ---------------------
2959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(CLEAR_VARS)
2969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE_PATH := $(TARGET_OUT_DATA)/local/tmp
2989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE:= hwuimicro
2999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE_TAGS := tests
3009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE_CLASS := EXECUTABLES
3019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MULTILIB := both
3029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE_STEM_32 := hwuimicro
3039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_MODULE_STEM_64 := hwuimicro64
30422ec1eefa4dc8e12f7da8e8750d4770144941526Narayan KamathLOCAL_SHARED_LIBRARIES := $(hwui_shared_libraries)
3059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_CFLAGS := \
30622ec1eefa4dc8e12f7da8e8750d4770144941526Narayan Kamath        $(hwui_cflags) \
3079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        -DHWUI_NULL_GPU
30822ec1eefa4dc8e12f7da8e8750d4770144941526Narayan KamathLOCAL_C_INCLUDES += bionic/benchmarks/
30922ec1eefa4dc8e12f7da8e8750d4770144941526Narayan Kamath
3109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_WHOLE_STATIC_LIBRARIES := libhwui_static_null_gpu
3119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_STATIC_LIBRARIES := libbenchmark libbase
3129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectLOCAL_SRC_FILES += \
3149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    $(hwui_test_common_src_files) \
3159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/microbench/DisplayListCanvasBench.cpp \
3169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/microbench/LinearAllocatorBench.cpp \
3179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/microbench/PathParserBench.cpp \
3189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    tests/microbench/ShadowBench.cpp
3199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectifeq (true, $(HWUI_NEW_OPS))
3219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    LOCAL_SRC_FILES += \
3224280c4a93ea17f2e9d3f651e49d8c13dc3fb92aaJeff Brown        tests/microbench/FrameBuilderBench.cpp
3239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectendif
3249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinclude $(BUILD_EXECUTABLE)
3269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project