diff options
Diffstat (limited to 'Android.mk')
-rw-r--r-- | Android.mk | 57 |
1 files changed, 56 insertions, 1 deletions
@@ -23,6 +23,11 @@ ## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## +# Control WebGL compiling in webkit. +ifneq ($(ENABLE_WEBGL),true) + ENABLE_WEBGL = false +endif + # Control SVG compiling in webkit. # Default is true unless explictly disabled. ifneq ($(ENABLE_SVG),false) @@ -92,6 +97,14 @@ LOCAL_C_INCLUDES := \ frameworks/base/core/jni/android/graphics \ frameworks/base/include +LOCAL_C_INCLUDES += external/libpng \ + external/zlib + +ifeq ($(ENABLE_WEBGL),true) +LOCAL_C_INCLUDES += frameworks/native/include/gui \ + frameworks/native/include/private/gui +endif + # Add Source/ for the include of <JavaScriptCore/config.h> from WebCore/config.h LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \ $(SOURCE_PATH) @@ -144,6 +157,7 @@ LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \ $(WEBCORE_PATH)/platform/image-decoders/jpeg \ $(WEBCORE_PATH)/platform/image-decoders/png \ $(WEBCORE_PATH)/platform/image-decoders/webp \ + $(WEBCORE_PATH)/platform/image-encoders/skia \ $(WEBCORE_PATH)/platform/mock \ $(WEBCORE_PATH)/platform/network \ $(WEBCORE_PATH)/platform/network/android \ @@ -200,6 +214,10 @@ LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \ LOCAL_CFLAGS += -DWEBKIT_IMPLEMENTATION=1 +# Needed for ANGLE +LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \ + $(SOURCE_PATH)/ThirdParty/ANGLE/include/GLSLANG + # Include WTF source file. d := Source/JavaScriptCore LOCAL_PATH := $(BASE_PATH)/$d @@ -278,6 +296,20 @@ ifeq ($(ENABLE_WTF_USE_ACCELERATED_COMPOSITING),true) LOCAL_CFLAGS += -DWTF_USE_ACCELERATED_COMPOSITING=1 endif +LOCAL_CFLAGS += -DENABLE_REQUEST_ANIMATION_FRAME=1 + +ifeq ($(ENABLE_WEBGL),true) +LOCAL_CFLAGS += -DENABLE_WEBGL +endif + +# PLD based optimizations should be enabled only on Krait platforms +KRAIT_BOARD_PLATFORM_LIST := msm8960 +KRAIT_BOARD_PLATFORM_LIST += msm8974 + +ifeq ($(call is-board-platform-in-list,$(KRAIT_BOARD_PLATFORM_LIST)),true) + LOCAL_CFLAGS += -DENABLE_PLD_DOM_TRAVERSAL +endif + # LOCAL_LDLIBS is used in simulator builds only and simulator builds are only # valid on Linux LOCAL_LDLIBS += -lpthread -ldl @@ -318,13 +350,17 @@ ifeq ($(SUPPORT_COMPLEX_SCRIPTS),true) LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \ external/harfbuzz/src \ external/harfbuzz/contrib -LOCAL_SHARED_LIBRARIES += libharfbuzz +LOCAL_SHARED_LIBRARIES += libharfbuzz libjpeg LOCAL_CFLAGS += -DSUPPORT_COMPLEX_SCRIPTS=1 endif # Build the list of static libraries LOCAL_STATIC_LIBRARIES := libxml2 libxslt libhyphenation libskiagpu libv8 +ifeq ($(ENABLE_WEBGL),true) +LOCAL_STATIC_LIBRARIES += libpng +endif + ifeq ($(ENABLE_AUTOFILL),true) LOCAL_SHARED_LIBRARIES += libexpat endif @@ -349,6 +385,24 @@ endif # Build the library all at once include $(BUILD_STATIC_LIBRARY) +# Build ANGLE as a static library. +include $(CLEAR_VARS) +LOCAL_MODULE := libangle +LOCAL_MODULE_CLASS := STATIC_LIBRARIES +LOCAL_MODULE_TAGS := optional +ANGLE_PATH := $(SOURCE_PATH)/ThirdParty/ANGLE +LOCAL_SHARED_LIBRARIES := $(WEBKIT_SHARED_LIBRARIES) +include $(ANGLE_PATH)/Android.mk +# Redefine LOCAL_SRC_FILES with the correct prefix +LOCAL_SRC_FILES := $(addprefix Source/ThirdParty/ANGLE/src/compiler/,$(LOCAL_SRC_FILES)) +# Append angle intermediate include paths to the WebKit include list. +LOCAL_C_INCLUDES := $(WEBKIT_C_INCLUDES) \ + $(ANGLE_PATH)/include \ + $(ANGLE_PATH)/src +LOCAL_CFLAGS += -Wno-error=non-virtual-dtor +# Build libangle +include $(BUILD_STATIC_LIBRARY) + # Now build the shared library using only the exported jni entry point. This # will strip out any unused code from the entry point. include $(CLEAR_VARS) @@ -360,6 +414,7 @@ LOCAL_MODULE := libwebcore LOCAL_LDLIBS := $(WEBKIT_LDLIBS) LOCAL_SHARED_LIBRARIES := $(WEBKIT_SHARED_LIBRARIES) LOCAL_STATIC_LIBRARIES := libwebcore $(WEBKIT_STATIC_LIBRARIES) +LOCAL_STATIC_LIBRARIES += libangle LOCAL_LDFLAGS := -fvisibility=hidden LOCAL_CFLAGS := $(WEBKIT_CFLAGS) LOCAL_CPPFLAGS := $(WEBKIT_CPPFLAGS) |