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