Android.mk revision 3b20251a355c88193c439f928a84ae69483fb488
1LOCAL_PATH:= $(call my-dir)
2include $(CLEAR_VARS)
3
4# Only build libhwui when USE_OPENGL_RENDERER is
5# defined in the current device/board configuration
6ifeq ($(USE_OPENGL_RENDERER),true)
7	LOCAL_SRC_FILES := \
8		utils/Blur.cpp \
9		utils/GLUtils.cpp \
10		utils/SortedListImpl.cpp \
11		thread/TaskManager.cpp \
12		font/CacheTexture.cpp \
13		font/Font.cpp \
14		AmbientShadow.cpp \
15		Animator.cpp \
16		AssetAtlas.cpp \
17		DamageAccumulator.cpp \
18		FontRenderer.cpp \
19		GammaFontRenderer.cpp \
20		Caches.cpp \
21		DisplayList.cpp \
22		DeferredDisplayList.cpp \
23		DeferredLayerUpdater.cpp \
24		DisplayListLogBuffer.cpp \
25		DisplayListRenderer.cpp \
26		Dither.cpp \
27		DrawProfiler.cpp \
28		Extensions.cpp \
29		FboCache.cpp \
30		GradientCache.cpp \
31		Image.cpp \
32		Interpolator.cpp \
33		Layer.cpp \
34		LayerCache.cpp \
35		LayerRenderer.cpp \
36		Matrix.cpp \
37		OpenGLRenderer.cpp \
38		Patch.cpp \
39		PatchCache.cpp \
40		PathCache.cpp \
41		PathTessellator.cpp \
42		PixelBuffer.cpp \
43		Program.cpp \
44		ProgramCache.cpp \
45		RenderBufferCache.cpp \
46		RenderNode.cpp \
47		RenderProperties.cpp \
48		RenderState.cpp \
49		ResourceCache.cpp \
50		ShadowTessellator.cpp \
51		SkiaShader.cpp \
52		Snapshot.cpp \
53		SpotShadow.cpp \
54		StatefulBaseRenderer.cpp \
55		Stencil.cpp \
56		TessellationCache.cpp \
57		Texture.cpp \
58		TextureCache.cpp \
59		TextDropShadowCache.cpp
60
61# RenderThread stuff
62	LOCAL_SRC_FILES += \
63		renderthread/CanvasContext.cpp \
64		renderthread/DrawFrameTask.cpp \
65		renderthread/EglManager.cpp \
66		renderthread/RenderProxy.cpp \
67		renderthread/RenderTask.cpp \
68		renderthread/RenderThread.cpp \
69		renderthread/TimeLord.cpp
70
71	intermediates := $(call intermediates-dir-for,STATIC_LIBRARIES,libRS,TARGET,)
72
73	LOCAL_C_INCLUDES += \
74		$(JNI_H_INCLUDE) \
75		$(LOCAL_PATH)/../../include/utils \
76		external/skia/src/core
77
78	LOCAL_CFLAGS += -DUSE_OPENGL_RENDERER -DEGL_EGLEXT_PROTOTYPES -DGL_GLEXT_PROTOTYPES
79	LOCAL_CFLAGS += -Wno-unused-parameter
80	LOCAL_MODULE_CLASS := SHARED_LIBRARIES
81	LOCAL_SHARED_LIBRARIES := liblog libcutils libutils libEGL libGLESv2 libskia libui libgui
82	LOCAL_MODULE := libhwui
83	LOCAL_MODULE_TAGS := optional
84
85	include external/stlport/libstlport.mk
86
87	ifneq (false,$(ANDROID_ENABLE_RENDERSCRIPT))
88		LOCAL_CFLAGS += -DANDROID_ENABLE_RENDERSCRIPT
89		LOCAL_SHARED_LIBRARIES += libRS libRScpp
90		LOCAL_C_INCLUDES += \
91			$(intermediates) \
92			frameworks/rs/cpp \
93			frameworks/rs
94	endif
95
96	ifndef HWUI_COMPILE_SYMBOLS
97		LOCAL_CFLAGS += -fvisibility=hidden
98	endif
99
100	ifdef HWUI_COMPILE_FOR_PERF
101		LOCAL_CFLAGS += -fno-omit-frame-pointer -marm -mapcs
102	endif
103
104	include $(BUILD_SHARED_LIBRARY)
105
106	include $(call all-makefiles-under,$(LOCAL_PATH))
107endif
108