Android.mk revision 651bf314a6a1a77e4cbb66ffb81221200f918290
1LOCAL_PATH := $(call my-dir)
2include $(CLEAR_VARS)
3
4LOCAL_CLANG := true
5
6LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
7LOCAL_SRC_FILES := \
8    Client.cpp \
9    DisplayDevice.cpp \
10    DispSync.cpp \
11    EventControlThread.cpp \
12    EventThread.cpp \
13    FrameTracker.cpp \
14    Layer.cpp \
15    LayerDim.cpp \
16    MessageQueue.cpp \
17    MonitoredProducer.cpp \
18    SurfaceFlinger.cpp \
19    SurfaceFlingerConsumer.cpp \
20    Transform.cpp \
21    DisplayHardware/FramebufferSurface.cpp \
22    DisplayHardware/HWC2.cpp \
23    DisplayHardware/HWC2On1Adapter.cpp \
24    DisplayHardware/HWComposer.cpp \
25    DisplayHardware/PowerHAL.cpp \
26    DisplayHardware/VirtualDisplaySurface.cpp \
27    Effects/Daltonizer.cpp \
28    EventLog/EventLogTags.logtags \
29    EventLog/EventLog.cpp \
30    RenderEngine/Description.cpp \
31    RenderEngine/Mesh.cpp \
32    RenderEngine/Program.cpp \
33    RenderEngine/ProgramCache.cpp \
34    RenderEngine/GLExtensions.cpp \
35    RenderEngine/RenderEngine.cpp \
36    RenderEngine/Texture.cpp \
37    RenderEngine/GLES10RenderEngine.cpp \
38    RenderEngine/GLES11RenderEngine.cpp \
39    RenderEngine/GLES20RenderEngine.cpp
40
41
42LOCAL_CFLAGS := -DLOG_TAG=\"SurfaceFlinger\"
43LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
44
45ifeq ($(TARGET_BOARD_PLATFORM),omap4)
46    LOCAL_CFLAGS += -DHAS_CONTEXT_PRIORITY
47endif
48ifeq ($(TARGET_BOARD_PLATFORM),s5pc110)
49    LOCAL_CFLAGS += -DHAS_CONTEXT_PRIORITY
50endif
51
52ifeq ($(TARGET_DISABLE_TRIPLE_BUFFERING),true)
53    LOCAL_CFLAGS += -DTARGET_DISABLE_TRIPLE_BUFFERING
54endif
55
56ifeq ($(TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS),true)
57    LOCAL_CFLAGS += -DFORCE_HWC_COPY_FOR_VIRTUAL_DISPLAYS
58endif
59
60ifneq ($(NUM_FRAMEBUFFER_SURFACE_BUFFERS),)
61    LOCAL_CFLAGS += -DNUM_FRAMEBUFFER_SURFACE_BUFFERS=$(NUM_FRAMEBUFFER_SURFACE_BUFFERS)
62endif
63
64ifeq ($(TARGET_RUNNING_WITHOUT_SYNC_FRAMEWORK),true)
65    LOCAL_CFLAGS += -DRUNNING_WITHOUT_SYNC_FRAMEWORK
66endif
67
68# See build/target/board/generic/BoardConfig.mk for a description of this setting.
69ifneq ($(VSYNC_EVENT_PHASE_OFFSET_NS),)
70    LOCAL_CFLAGS += -DVSYNC_EVENT_PHASE_OFFSET_NS=$(VSYNC_EVENT_PHASE_OFFSET_NS)
71else
72    LOCAL_CFLAGS += -DVSYNC_EVENT_PHASE_OFFSET_NS=0
73endif
74
75# See build/target/board/generic/BoardConfig.mk for a description of this setting.
76ifneq ($(SF_VSYNC_EVENT_PHASE_OFFSET_NS),)
77    LOCAL_CFLAGS += -DSF_VSYNC_EVENT_PHASE_OFFSET_NS=$(SF_VSYNC_EVENT_PHASE_OFFSET_NS)
78else
79    LOCAL_CFLAGS += -DSF_VSYNC_EVENT_PHASE_OFFSET_NS=0
80endif
81
82ifneq ($(PRESENT_TIME_OFFSET_FROM_VSYNC_NS),)
83    LOCAL_CFLAGS += -DPRESENT_TIME_OFFSET_FROM_VSYNC_NS=$(PRESENT_TIME_OFFSET_FROM_VSYNC_NS)
84else
85    LOCAL_CFLAGS += -DPRESENT_TIME_OFFSET_FROM_VSYNC_NS=0
86endif
87
88ifneq ($(MAX_VIRTUAL_DISPLAY_DIMENSION),)
89    LOCAL_CFLAGS += -DMAX_VIRTUAL_DISPLAY_DIMENSION=$(MAX_VIRTUAL_DISPLAY_DIMENSION)
90else
91    LOCAL_CFLAGS += -DMAX_VIRTUAL_DISPLAY_DIMENSION=0
92endif
93
94LOCAL_CFLAGS += -fvisibility=hidden -Werror=format
95LOCAL_CFLAGS += -std=c++11
96
97LOCAL_SHARED_LIBRARIES := \
98    libcutils \
99    liblog \
100    libdl \
101    libhardware \
102    libutils \
103    libEGL \
104    libGLESv1_CM \
105    libGLESv2 \
106    libbinder \
107    libui \
108    libgui \
109    libpowermanager
110
111LOCAL_MODULE := libsurfaceflinger
112
113LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code
114
115include $(BUILD_SHARED_LIBRARY)
116
117###############################################################
118# build surfaceflinger's executable
119include $(CLEAR_VARS)
120
121LOCAL_CLANG := true
122
123LOCAL_LDFLAGS := -Wl,--version-script,art/sigchainlib/version-script.txt -Wl,--export-dynamic
124LOCAL_CFLAGS := -DLOG_TAG=\"SurfaceFlinger\"
125LOCAL_CPPFLAGS := -std=c++11
126
127LOCAL_INIT_RC := surfaceflinger.rc
128
129ifneq ($(ENABLE_CPUSETS),)
130    LOCAL_CFLAGS += -DENABLE_CPUSETS
131endif
132
133LOCAL_SRC_FILES := \
134    main_surfaceflinger.cpp
135
136LOCAL_SHARED_LIBRARIES := \
137    libsurfaceflinger \
138    libcutils \
139    liblog \
140    libbinder \
141    libutils \
142    libdl
143
144LOCAL_WHOLE_STATIC_LIBRARIES := libsigchain
145
146LOCAL_MODULE := surfaceflinger
147
148ifdef TARGET_32_BIT_SURFACEFLINGER
149LOCAL_32_BIT_ONLY := true
150endif
151
152LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code
153
154include $(BUILD_EXECUTABLE)
155
156###############################################################
157# uses jni which may not be available in PDK
158ifneq ($(wildcard libnativehelper/include),)
159include $(CLEAR_VARS)
160
161LOCAL_CLANG := true
162
163LOCAL_CFLAGS := -DLOG_TAG=\"SurfaceFlinger\"
164LOCAL_CPPFLAGS := -std=c++11
165
166LOCAL_SRC_FILES := \
167    DdmConnection.cpp
168
169LOCAL_SHARED_LIBRARIES := \
170    libcutils \
171    liblog \
172    libdl
173
174LOCAL_MODULE := libsurfaceflinger_ddmconnection
175
176LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code
177
178include $(BUILD_SHARED_LIBRARY)
179endif # libnativehelper
180