Android.mk revision ae62e0573a6455db9d1ebcb244f052267710beca
1LOCAL_PATH:= $(call my-dir) 2 3############################################################################### 4# Build META EGL library 5# 6 7egl.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 21include $(CLEAR_VARS) 22 23LOCAL_SRC_FILES:= \ 24 EGL/egl_tls.cpp \ 25 EGL/egl_cache.cpp \ 26 EGL/egl_display.cpp \ 27 EGL/egl_object.cpp \ 28 EGL/egl.cpp \ 29 EGL/eglApi.cpp \ 30 EGL/trace.cpp \ 31 EGL/getProcAddress.cpp.arm \ 32 EGL/Loader.cpp \ 33# 34 35LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libGLES_trace 36LOCAL_MODULE:= libEGL 37LOCAL_LDFLAGS += -Wl,--exclude-libs=ALL 38LOCAL_SHARED_LIBRARIES += libdl 39# we need to access the private Bionic header <bionic_tls.h> 40LOCAL_C_INCLUDES += bionic/libc/private 41 42LOCAL_CFLAGS += -DLOG_TAG=\"libEGL\" 43LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES 44LOCAL_CFLAGS += -fvisibility=hidden 45LOCAL_CFLAGS += -DEGL_TRACE=1 46 47ifeq ($(BOARD_ALLOW_EGL_HIBERNATION),true) 48 LOCAL_CFLAGS += -DBOARD_ALLOW_EGL_HIBERNATION 49endif 50ifneq ($(MAX_EGL_CACHE_ENTRY_SIZE),) 51 LOCAL_CFLAGS += -DMAX_EGL_CACHE_ENTRY_SIZE=$(MAX_EGL_CACHE_ENTRY_SIZE) 52endif 53 54ifneq ($(MAX_EGL_CACHE_KEY_SIZE),) 55 LOCAL_CFLAGS += -DMAX_EGL_CACHE_KEY_SIZE=$(MAX_EGL_CACHE_KEY_SIZE) 56endif 57 58ifneq ($(MAX_EGL_CACHE_SIZE),) 59 LOCAL_CFLAGS += -DMAX_EGL_CACHE_SIZE=$(MAX_EGL_CACHE_SIZE) 60endif 61 62LOCAL_REQUIRED_MODULES := $(egl.cfg_config_module) 63egl.cfg_config_module := 64 65include $(BUILD_SHARED_LIBRARY) 66 67############################################################################### 68# Build the wrapper OpenGL ES 1.x library 69# 70 71include $(CLEAR_VARS) 72 73LOCAL_SRC_FILES:= \ 74 GLES_CM/gl.cpp.arm \ 75# 76 77LOCAL_CLANG := false 78LOCAL_SHARED_LIBRARIES += libcutils liblog libEGL 79LOCAL_MODULE:= libGLESv1_CM 80 81LOCAL_SHARED_LIBRARIES += libdl 82# we need to access the private Bionic header <bionic_tls.h> 83LOCAL_C_INCLUDES += bionic/libc/private 84 85LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv1\" 86LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES 87LOCAL_CFLAGS += -fvisibility=hidden 88 89# TODO: This is to work around b/20093774. Remove after root cause is fixed 90LOCAL_LDFLAGS_arm += -Wl,--hash-style,both 91 92include $(BUILD_SHARED_LIBRARY) 93 94 95############################################################################### 96# Build the wrapper OpenGL ES 2.x library 97# 98 99include $(CLEAR_VARS) 100 101LOCAL_SRC_FILES:= \ 102 GLES2/gl2.cpp.arm \ 103# 104 105LOCAL_CLANG := false 106LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libEGL 107LOCAL_MODULE:= libGLESv2 108 109LOCAL_SHARED_LIBRARIES += libdl 110# we need to access the private Bionic header <bionic_tls.h> 111LOCAL_C_INCLUDES += bionic/libc/private 112 113LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv2\" 114LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES 115LOCAL_CFLAGS += -fvisibility=hidden 116 117# TODO: This is to work around b/20093774. Remove after root cause is fixed 118LOCAL_LDFLAGS_arm += -Wl,--hash-style,both 119 120# Symlink libGLESv3.so -> libGLESv2.so 121# Platform modules should link against libGLESv2.so (-lGLESv2), but NDK apps 122# will be linked against libGLESv3.so. 123# Note we defer the evaluation of the LOCAL_POST_INSTALL_CMD, 124# so $(LOCAL_INSTALLED_MODULE) will be expanded to correct value, 125# even for both 32-bit and 64-bit installed files in multilib build. 126LOCAL_POST_INSTALL_CMD = \ 127 $(hide) ln -sf $(notdir $(LOCAL_INSTALLED_MODULE)) $(dir $(LOCAL_INSTALLED_MODULE))libGLESv3.so 128 129include $(BUILD_SHARED_LIBRARY) 130 131############################################################################### 132# Build the ETC1 host static library 133# 134 135include $(CLEAR_VARS) 136 137LOCAL_SRC_FILES:= \ 138 ETC1/etc1.cpp \ 139# 140 141LOCAL_MODULE:= libETC1 142 143include $(BUILD_HOST_STATIC_LIBRARY) 144 145############################################################################### 146# Build the ETC1 device library 147# 148 149include $(CLEAR_VARS) 150 151LOCAL_SRC_FILES:= \ 152 ETC1/etc1.cpp \ 153# 154 155LOCAL_MODULE:= libETC1 156 157include $(BUILD_SHARED_LIBRARY) 158 159include $(call all-makefiles-under,$(LOCAL_PATH)) 160