Android.mk revision 18b915a1026dfe9d273ee3fd2139b7feed22008c
1LOCAL_PATH:= $(call my-dir)
2
3#
4# Build the software OpenGL ES library
5#
6
7include $(CLEAR_VARS)
8
9# Set to 1 to use gralloc and copybits
10LIBAGL_USE_GRALLOC_COPYBITS := 1
11
12LOCAL_SRC_FILES:= \
13	egl.cpp                     \
14	state.cpp		            \
15	texture.cpp		            \
16    Tokenizer.cpp               \
17    TokenManager.cpp            \
18    TextureObjectManager.cpp    \
19    BufferObjectManager.cpp     \
20	array.cpp.arm		        \
21	fp.cpp.arm		            \
22	light.cpp.arm		        \
23	matrix.cpp.arm		        \
24	mipmap.cpp.arm		        \
25	primitives.cpp.arm	        \
26	vertex.cpp.arm
27
28LOCAL_CFLAGS += -DLOG_TAG=\"libagl\"
29LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
30LOCAL_CFLAGS += -fvisibility=hidden
31
32LOCAL_SHARED_LIBRARIES := libcutils libhardware libutils libpixelflinger libETC1
33LOCAL_LDLIBS := -lpthread -ldl
34
35ifeq ($(TARGET_ARCH),arm)
36	LOCAL_SRC_FILES += fixed_asm.S iterators.S
37	LOCAL_CFLAGS += -fstrict-aliasing
38endif
39
40ifneq ($(TARGET_SIMULATOR),true)
41    # we need to access the private Bionic header <bionic_tls.h>
42    # on ARM platforms, we need to mirror the ARCH_ARM_HAVE_TLS_REGISTER
43    # behavior from the bionic Android.mk file
44    ifeq ($(TARGET_ARCH)-$(ARCH_ARM_HAVE_TLS_REGISTER),arm-true)
45        LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER
46    endif
47    LOCAL_C_INCLUDES += bionic/libc/private
48endif
49
50ifeq ($(LIBAGL_USE_GRALLOC_COPYBITS),1)
51    LOCAL_CFLAGS += -DLIBAGL_USE_GRALLOC_COPYBITS
52    LOCAL_SRC_FILES += copybit.cpp
53    LOCAL_SHARED_LIBRARIES += libui
54endif
55
56
57LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/egl
58LOCAL_MODULE:= libGLES_android
59
60include $(BUILD_SHARED_LIBRARY)
61