blob: b4756dd430a03dd484d829a68a8b8db87b96f1df [file] [log] [blame]
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -08001LOCAL_PATH:= $(call my-dir)
2
Mathias Agopianb1a39d62009-05-27 20:38:06 -07003###############################################################################
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -08004# Build META EGL library
5#
6
Ying Wangac0de622012-12-04 12:04:44 -08007egl.cfg_config_module :=
8# OpenGL drivers config file
9ifneq ($(BOARD_EGL_CFG),)
10
11include $(CLEAR_VARS)
12LOCAL_MODULE := egl.cfg
13LOCAL_MODULE_TAGS := optional
14LOCAL_MODULE_CLASS := ETC
15LOCAL_MODULE_PATH := $(TARGET_OUT)/lib/egl
16LOCAL_SRC_FILES := ../../../../$(BOARD_EGL_CFG)
17include $(BUILD_PREBUILT)
18egl.cfg_config_module := $(LOCAL_MODULE)
19endif
20
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080021include $(CLEAR_VARS)
22
Mathias Agopian24035332010-08-02 17:34:32 -070023LOCAL_SRC_FILES:= \
Mathias Agopian518ec112011-05-13 16:21:08 -070024 EGL/egl_tls.cpp \
Jamie Gennisaca51c02011-11-03 17:42:43 -070025 EGL/egl_cache.cpp \
Mathias Agopian518ec112011-05-13 16:21:08 -070026 EGL/egl_display.cpp \
27 EGL/egl_object.cpp \
Mathias Agopian24035332010-08-02 17:34:32 -070028 EGL/egl.cpp \
Mathias Agopian518ec112011-05-13 16:21:08 -070029 EGL/eglApi.cpp \
Jack Palevicha2dd6cf2010-10-26 15:21:24 -070030 EGL/trace.cpp \
Mathias Agopian24035332010-08-02 17:34:32 -070031 EGL/getProcAddress.cpp.arm \
Mathias Agopian24035332010-08-02 17:34:32 -070032 EGL/Loader.cpp \
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080033#
David Li864f8392011-03-28 10:39:28 -070034
Ying Wang8a0cb4e2013-04-09 21:55:39 -070035LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libGLES_trace
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080036LOCAL_LDLIBS := -lpthread -ldl
37LOCAL_MODULE:= libEGL
David Lib33d5cf2011-03-04 17:50:48 -080038LOCAL_LDFLAGS += -Wl,--exclude-libs=ALL
Jeff Brownbaa44b82011-07-11 22:12:16 -070039LOCAL_SHARED_LIBRARIES += libdl
Jeff Brownbaa44b82011-07-11 22:12:16 -070040# we need to access the private Bionic header <bionic_tls.h>
41LOCAL_C_INCLUDES += bionic/libc/private
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080042
Mathias Agopian076b1cc2009-04-10 14:24:30 -070043LOCAL_CFLAGS += -DLOG_TAG=\"libEGL\"
44LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
Mathias Agopian48685c42009-05-08 15:23:38 -070045LOCAL_CFLAGS += -fvisibility=hidden
Jack Palevicha2dd6cf2010-10-26 15:21:24 -070046LOCAL_CFLAGS += -DEGL_TRACE=1
Mathias Agopian076b1cc2009-04-10 14:24:30 -070047
Jesse Hall201f3b22012-05-04 14:52:40 -070048ifeq ($(BOARD_ALLOW_EGL_HIBERNATION),true)
49 LOCAL_CFLAGS += -DBOARD_ALLOW_EGL_HIBERNATION
50endif
51
Mathias Agopiana69e0ed2009-08-24 21:47:13 -070052ifeq ($(TARGET_BOARD_PLATFORM),msm7k)
Mathias Agopiand75f84d2012-06-05 21:44:43 -070053 LOCAL_CFLAGS += -DADRENO130=1
54endif
55
56ifeq ($(TARGET_BOARD_PLATFORM), s5pc110)
57 # see Loader.cpp for details
58 LOCAL_CFLAGS += -DSYSTEMUI_PBSIZE_HACK=1
Mathias Agopiana69e0ed2009-08-24 21:47:13 -070059endif
60
Jamie Gennis89c1d612011-11-19 16:25:24 -080061ifneq ($(MAX_EGL_CACHE_ENTRY_SIZE),)
62 LOCAL_CFLAGS += -DMAX_EGL_CACHE_ENTRY_SIZE=$(MAX_EGL_CACHE_ENTRY_SIZE)
63endif
64
Jamie Gennisf478e6d2012-09-12 11:55:16 -070065ifneq ($(MAX_EGL_CACHE_KEY_SIZE),)
66 LOCAL_CFLAGS += -DMAX_EGL_CACHE_KEY_SIZE=$(MAX_EGL_CACHE_KEY_SIZE)
67endif
68
Jamie Gennis89c1d612011-11-19 16:25:24 -080069ifneq ($(MAX_EGL_CACHE_SIZE),)
70 LOCAL_CFLAGS += -DMAX_EGL_CACHE_SIZE=$(MAX_EGL_CACHE_SIZE)
71endif
72
Ying Wangac0de622012-12-04 12:04:44 -080073LOCAL_REQUIRED_MODULES := $(egl.cfg_config_module)
74egl.cfg_config_module :=
75
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080076include $(BUILD_SHARED_LIBRARY)
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080077
Mathias Agopianb1a39d62009-05-27 20:38:06 -070078###############################################################################
79# Build the wrapper OpenGL ES 1.x library
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080080#
81
82include $(CLEAR_VARS)
83
Mathias Agopianb1a39d62009-05-27 20:38:06 -070084LOCAL_SRC_FILES:= \
85 GLES_CM/gl.cpp.arm \
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080086#
87
Ying Wang8a0cb4e2013-04-09 21:55:39 -070088LOCAL_SHARED_LIBRARIES += libcutils liblog libEGL
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080089LOCAL_LDLIBS := -lpthread -ldl
90LOCAL_MODULE:= libGLESv1_CM
91
Jeff Brownbaa44b82011-07-11 22:12:16 -070092LOCAL_SHARED_LIBRARIES += libdl
93# we need to access the private Bionic header <bionic_tls.h>
Jeff Brownbaa44b82011-07-11 22:12:16 -070094LOCAL_C_INCLUDES += bionic/libc/private
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -080095
Mathias Agopian076b1cc2009-04-10 14:24:30 -070096LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv1\"
97LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
Mathias Agopian48685c42009-05-08 15:23:38 -070098LOCAL_CFLAGS += -fvisibility=hidden
Mathias Agopian076b1cc2009-04-10 14:24:30 -070099
The Android Open Source Projectedbf3b62009-03-03 19:31:44 -0800100include $(BUILD_SHARED_LIBRARY)
Mathias Agopianb1a39d62009-05-27 20:38:06 -0700101
102
103###############################################################################
104# Build the wrapper OpenGL ES 2.x library
105#
106
107include $(CLEAR_VARS)
108
109LOCAL_SRC_FILES:= \
110 GLES2/gl2.cpp.arm \
111#
112
Ying Wang8a0cb4e2013-04-09 21:55:39 -0700113LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libEGL
Mathias Agopianb1a39d62009-05-27 20:38:06 -0700114LOCAL_LDLIBS := -lpthread -ldl
115LOCAL_MODULE:= libGLESv2
116
Jeff Brownbaa44b82011-07-11 22:12:16 -0700117LOCAL_SHARED_LIBRARIES += libdl
118# we need to access the private Bionic header <bionic_tls.h>
Jeff Brownbaa44b82011-07-11 22:12:16 -0700119LOCAL_C_INCLUDES += bionic/libc/private
Mathias Agopianb1a39d62009-05-27 20:38:06 -0700120
121LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv2\"
122LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
123LOCAL_CFLAGS += -fvisibility=hidden
124
125include $(BUILD_SHARED_LIBRARY)
Jack Palevich01cc5382009-12-28 19:31:43 +0800126
Jesse Hall5ea4c732013-02-08 16:13:50 -0800127# Symlink libGLESv3.so -> libGLESv2.so
128# Platform modules should link against libGLESv2.so (-lGLESv2), but NDK apps
129# will be linked against libGLESv3.so.
130LIBGLESV2 := $(LOCAL_INSTALLED_MODULE)
131LIBGLESV3 := $(subst libGLESv2,libGLESv3,$(LIBGLESV2))
132$(LIBGLESV3): $(LIBGLESV2)
133 @echo "Symlink: $@ -> $(notdir $<)"
134 @mkdir -p $(dir $@)
135 $(hide) ln -sf $(notdir $<) $@
136ALL_MODULES.$(LOCAL_MODULE).INSTALLED := \
137 $(ALL_MODULES.$(LOCAL_MODULE).INSTALLED) $(LIBGLESV3)
138LIBGLESV2 :=
139LIBGLESV3 :=
140
Jack Palevich01cc5382009-12-28 19:31:43 +0800141###############################################################################
142# Build the ETC1 host static library
143#
144
145include $(CLEAR_VARS)
146
147LOCAL_SRC_FILES:= \
148 ETC1/etc1.cpp \
149#
150
151LOCAL_LDLIBS := -lpthread -ldl
152LOCAL_MODULE:= libETC1
153
154include $(BUILD_HOST_STATIC_LIBRARY)
155
156###############################################################################
157# Build the ETC1 device library
158#
159
160include $(CLEAR_VARS)
161
162LOCAL_SRC_FILES:= \
163 ETC1/etc1.cpp \
164#
165
166LOCAL_LDLIBS := -lpthread -ldl
167LOCAL_MODULE:= libETC1
168
169include $(BUILD_SHARED_LIBRARY)
David Li2f5a6552011-03-01 16:08:10 -0800170
171include $(call all-makefiles-under,$(LOCAL_PATH))