Android.mk revision c2466e6f005e9cbeea7764e9d8864fa6bca17633
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 62ifeq (address, $(strip $(SANITIZE_TARGET))) 63 LOCAL_CFLAGS_32 += -DEGL_WRAPPER_DIR=\"/$(TARGET_COPY_OUT_DATA)/lib\" 64 LOCAL_CFLAGS_64 += -DEGL_WRAPPER_DIR=\"/$(TARGET_COPY_OUT_DATA)/lib64\" 65endif 66 67LOCAL_REQUIRED_MODULES := $(egl.cfg_config_module) 68egl.cfg_config_module := 69 70include $(BUILD_SHARED_LIBRARY) 71 72############################################################################### 73# Build the wrapper OpenGL ES 1.x library 74# 75 76include $(CLEAR_VARS) 77 78LOCAL_SRC_FILES:= \ 79 GLES_CM/gl.cpp.arm \ 80# 81 82LOCAL_CLANG := false 83LOCAL_SHARED_LIBRARIES += libcutils liblog libEGL 84LOCAL_MODULE:= libGLESv1_CM 85 86LOCAL_SHARED_LIBRARIES += libdl 87# we need to access the private Bionic header <bionic_tls.h> 88LOCAL_C_INCLUDES += bionic/libc/private 89 90LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv1\" 91LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES 92LOCAL_CFLAGS += -fvisibility=hidden 93 94include $(BUILD_SHARED_LIBRARY) 95 96 97############################################################################### 98# Build the wrapper OpenGL ES 2.x library 99# 100 101include $(CLEAR_VARS) 102 103LOCAL_SRC_FILES:= \ 104 GLES2/gl2.cpp.arm \ 105# 106 107LOCAL_CLANG := false 108LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libEGL 109LOCAL_MODULE:= libGLESv2 110 111LOCAL_SHARED_LIBRARIES += libdl 112# we need to access the private Bionic header <bionic_tls.h> 113LOCAL_C_INCLUDES += bionic/libc/private 114 115LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv2\" 116LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES 117LOCAL_CFLAGS += -fvisibility=hidden 118 119# Symlink libGLESv3.so -> libGLESv2.so 120# Platform modules should link against libGLESv2.so (-lGLESv2), but NDK apps 121# will be linked against libGLESv3.so. 122# Note we defer the evaluation of the LOCAL_POST_INSTALL_CMD, 123# so $(LOCAL_INSTALLED_MODULE) will be expanded to correct value, 124# even for both 32-bit and 64-bit installed files in multilib build. 125LOCAL_POST_INSTALL_CMD = \ 126 $(hide) ln -sf $(notdir $(LOCAL_INSTALLED_MODULE)) $(dir $(LOCAL_INSTALLED_MODULE))libGLESv3.so 127 128include $(BUILD_SHARED_LIBRARY) 129 130############################################################################### 131# Build the ETC1 host static library 132# 133 134include $(CLEAR_VARS) 135 136LOCAL_SRC_FILES:= \ 137 ETC1/etc1.cpp \ 138# 139 140LOCAL_MODULE:= libETC1 141 142include $(BUILD_HOST_STATIC_LIBRARY) 143 144############################################################################### 145# Build the ETC1 device library 146# 147 148include $(CLEAR_VARS) 149 150LOCAL_SRC_FILES:= \ 151 ETC1/etc1.cpp \ 152# 153 154LOCAL_MODULE:= libETC1 155 156include $(BUILD_SHARED_LIBRARY) 157 158include $(call all-makefiles-under,$(LOCAL_PATH)) 159