LOCAL_PATH:= $(call my-dir) ############################################################################### # Build META EGL library # egl.cfg_config_module := # OpenGL drivers config file ifneq ($(BOARD_EGL_CFG),) include $(CLEAR_VARS) LOCAL_MODULE := egl.cfg LOCAL_MODULE_TAGS := optional LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT)/lib/egl LOCAL_SRC_FILES := ../../../../$(BOARD_EGL_CFG) include $(BUILD_PREBUILT) egl.cfg_config_module := $(LOCAL_MODULE) endif include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ EGL/egl_tls.cpp \ EGL/egl_cache.cpp \ EGL/egl_display.cpp \ EGL/egl_object.cpp \ EGL/egl.cpp \ EGL/eglApi.cpp \ EGL/getProcAddress.cpp.arm \ EGL/Loader.cpp \ # LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libui LOCAL_MODULE:= libEGL LOCAL_LDFLAGS += -Wl,--exclude-libs=ALL LOCAL_SHARED_LIBRARIES += libdl # we need to access the private Bionic header <bionic_tls.h> LOCAL_C_INCLUDES += bionic/libc/private LOCAL_CFLAGS += -DLOG_TAG=\"libEGL\" LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES LOCAL_CFLAGS += -fvisibility=hidden ifeq ($(BOARD_ALLOW_EGL_HIBERNATION),true) LOCAL_CFLAGS += -DBOARD_ALLOW_EGL_HIBERNATION endif ifneq ($(MAX_EGL_CACHE_ENTRY_SIZE),) LOCAL_CFLAGS += -DMAX_EGL_CACHE_ENTRY_SIZE=$(MAX_EGL_CACHE_ENTRY_SIZE) endif ifneq ($(MAX_EGL_CACHE_KEY_SIZE),) LOCAL_CFLAGS += -DMAX_EGL_CACHE_KEY_SIZE=$(MAX_EGL_CACHE_KEY_SIZE) endif ifneq ($(MAX_EGL_CACHE_SIZE),) LOCAL_CFLAGS += -DMAX_EGL_CACHE_SIZE=$(MAX_EGL_CACHE_SIZE) endif ifneq ($(filter address,$(SANITIZE_TARGET)),) LOCAL_CFLAGS_32 += -DEGL_WRAPPER_DIR=\"/$(TARGET_COPY_OUT_DATA)/lib\" LOCAL_CFLAGS_64 += -DEGL_WRAPPER_DIR=\"/$(TARGET_COPY_OUT_DATA)/lib64\" endif LOCAL_REQUIRED_MODULES := $(egl.cfg_config_module) egl.cfg_config_module := include $(BUILD_SHARED_LIBRARY) ############################################################################### # Build the wrapper OpenGL ES 1.x library # include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ GLES_CM/gl.cpp.arm \ # LOCAL_CLANG := false LOCAL_SHARED_LIBRARIES += libcutils liblog libEGL LOCAL_MODULE:= libGLESv1_CM LOCAL_SHARED_LIBRARIES += libdl # we need to access the private Bionic header <bionic_tls.h> LOCAL_C_INCLUDES += bionic/libc/private LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv1\" LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES LOCAL_CFLAGS += -fvisibility=hidden # TODO: This is to work around b/20093774. Remove after root cause is fixed LOCAL_LDFLAGS_arm += -Wl,--hash-style,both include $(BUILD_SHARED_LIBRARY) ############################################################################### # Build the wrapper OpenGL ES 2.x library # include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ GLES2/gl2.cpp \ # LOCAL_CLANG := false LOCAL_ARM_MODE := arm LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libEGL LOCAL_MODULE:= libGLESv2 LOCAL_SHARED_LIBRARIES += libdl # we need to access the private Bionic header <bionic_tls.h> LOCAL_C_INCLUDES += bionic/libc/private LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv2\" LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES LOCAL_CFLAGS += -fvisibility=hidden # TODO: This is to work around b/20093774. Remove after root cause is fixed LOCAL_LDFLAGS_arm += -Wl,--hash-style,both include $(BUILD_SHARED_LIBRARY) ############################################################################### # Build the wrapper OpenGL ES 3.x library (this is just different name for v2) # include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ GLES2/gl2.cpp \ # LOCAL_CLANG := false LOCAL_ARM_MODE := arm LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libEGL LOCAL_MODULE:= libGLESv3 LOCAL_SHARED_LIBRARIES += libdl # we need to access the private Bionic header <bionic_tls.h> LOCAL_C_INCLUDES += bionic/libc/private LOCAL_CFLAGS += -DLOG_TAG=\"libGLESv3\" LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES LOCAL_CFLAGS += -fvisibility=hidden # TODO: This is to work around b/20093774. Remove after root cause is fixed LOCAL_LDFLAGS_arm += -Wl,--hash-style,both include $(BUILD_SHARED_LIBRARY) ############################################################################### # Build the ETC1 host static library # include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ ETC1/etc1.cpp \ # LOCAL_MODULE:= libETC1 LOCAL_MODULE_HOST_OS := darwin linux windows include $(BUILD_HOST_STATIC_LIBRARY) ############################################################################### # Build the ETC1 device library # include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ ETC1/etc1.cpp \ # LOCAL_MODULE:= libETC1 include $(BUILD_SHARED_LIBRARY) include $(call all-makefiles-under,$(LOCAL_PATH))