OSDN Git Service

Merge "fix viewport lagging a drawGL call behind" into ics-mr1
[android-x86/external-webkit.git] / Android.mk
index 51640aa..623a35f 100644 (file)
@@ -23,8 +23,6 @@
 ## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 ##
 
-LOCAL_PATH := $(call my-dir)
-
 # Control SVG compiling in webkit.
 # Default is true unless explictly disabled.
 ifneq ($(ENABLE_SVG),false)
@@ -68,10 +66,6 @@ ifneq ($(JAVASCRIPT_ENGINE),jsc)
     endif
   endif
 endif
-# We can't use V8 on the simulator
-ifeq ($(TARGET_SIMULATOR),true)
-  JAVASCRIPT_ENGINE = jsc
-endif
 
 # V8 also requires an ARMv7 CPU, and since we must use jsc, we cannot
 # use the Chrome http stack either.
@@ -129,7 +123,13 @@ WEBKIT_SRC_FILES :=
 # We have to use bison 2.3
 include $(BASE_PATH)/bison_check.mk
 
-# Build our list of include paths. We include WebKit/android/icu first so that
+SOURCE_PATH := $(BASE_PATH)/Source
+WEBCORE_PATH := $(SOURCE_PATH)/WebCore
+JAVASCRIPTCORE_PATH := $(SOURCE_PATH)/JavaScriptCore
+WEBKIT_PATH := $(SOURCE_PATH)/WebKit
+WEBCORE_INTERMEDIATES_PATH := $(base_intermediates)/Source/WebCore
+
+# Build our list of include paths. We include Source/WebKit/android/icu first so that
 # any files that include <unicode/ucnv.h> will include our ucnv.h first. We
 # also add external/ as an include directory so that we can specify the real
 # icu header directory as a more exact reference to avoid including our ucnv.h.
@@ -138,16 +138,19 @@ include $(BASE_PATH)/bison_check.mk
 # the right config.h.
 LOCAL_C_INCLUDES := \
        $(JNI_H_INCLUDE) \
-       $(LOCAL_PATH)/WebKit/android/icu \
+       $(WEBKIT_PATH)/android/icu \
        external/ \
        external/icu4c/common \
        external/icu4c/i18n \
+       external/jpeg \
        external/libxml2/include \
        external/libxslt \
        external/hyphenation \
        external/skia/emoji \
+       external/skia/gpu/include \
        external/skia/include/core \
        external/skia/include/effects \
+       external/skia/include/gpu \
        external/skia/include/images \
        external/skia/include/ports \
        external/skia/include/utils \
@@ -156,93 +159,101 @@ LOCAL_C_INCLUDES := \
        frameworks/base/core/jni/android/graphics \
        frameworks/base/include
 
+# Add Source/ for the include of <JavaScriptCore/config.h> from WebCore/config.h
+LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
+       $(SOURCE_PATH)
+
 LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
-       $(LOCAL_PATH)/WebCore \
-       $(LOCAL_PATH)/WebCore/accessibility \
-       $(LOCAL_PATH)/WebCore/bindings/ \
-       $(LOCAL_PATH)/WebCore/bindings/generic \
-       $(LOCAL_PATH)/WebCore/css \
-       $(LOCAL_PATH)/WebCore/dom \
-       $(LOCAL_PATH)/WebCore/editing \
-       $(LOCAL_PATH)/WebCore/fileapi \
-       $(LOCAL_PATH)/WebCore/history \
-       $(LOCAL_PATH)/WebCore/history/android \
-       $(LOCAL_PATH)/WebCore/html \
-       $(LOCAL_PATH)/WebCore/html/canvas \
-       $(LOCAL_PATH)/WebCore/html/parser \
-       $(LOCAL_PATH)/WebCore/inspector \
-       $(LOCAL_PATH)/WebCore/loader \
-       $(LOCAL_PATH)/WebCore/loader/appcache \
-       $(LOCAL_PATH)/WebCore/loader/archive \
-       $(LOCAL_PATH)/WebCore/loader/archive/android \
-       $(LOCAL_PATH)/WebCore/loader/cache \
-       $(LOCAL_PATH)/WebCore/loader/icon \
-       $(LOCAL_PATH)/WebCore/notifications \
-       $(LOCAL_PATH)/WebCore/page \
-       $(LOCAL_PATH)/WebCore/page/android \
-       $(LOCAL_PATH)/WebCore/page/animation \
-       $(LOCAL_PATH)/WebCore/platform \
-       $(LOCAL_PATH)/WebCore/platform/android \
-       $(LOCAL_PATH)/WebCore/platform/animation \
-       $(LOCAL_PATH)/WebCore/platform/graphics \
-       $(LOCAL_PATH)/WebCore/platform/graphics/android \
-       $(LOCAL_PATH)/WebCore/platform/graphics/filters \
-       $(LOCAL_PATH)/WebCore/platform/graphics/gpu \
-       $(LOCAL_PATH)/WebCore/platform/graphics/network \
-       $(LOCAL_PATH)/WebCore/platform/graphics/skia \
-       $(LOCAL_PATH)/WebCore/platform/graphics/transforms \
-       $(LOCAL_PATH)/WebCore/platform/image-decoders \
-       $(LOCAL_PATH)/WebCore/platform/image-decoders/bmp \
-       $(LOCAL_PATH)/WebCore/platform/image-decoders/gif \
-       $(LOCAL_PATH)/WebCore/platform/image-decoders/ico \
-       $(LOCAL_PATH)/WebCore/platform/image-decoders/jpeg \
-       $(LOCAL_PATH)/WebCore/platform/image-decoders/png \
-       $(LOCAL_PATH)/WebCore/platform/image-decoders/webp \
-       $(LOCAL_PATH)/WebCore/platform/mock \
-       $(LOCAL_PATH)/WebCore/platform/network \
-       $(LOCAL_PATH)/WebCore/platform/network/android \
-       $(LOCAL_PATH)/WebCore/platform/sql \
-       $(LOCAL_PATH)/WebCore/platform/text \
-       $(LOCAL_PATH)/WebCore/platform/text/transcoder \
-       $(LOCAL_PATH)/WebCore/plugins \
-       $(LOCAL_PATH)/WebCore/plugins/android \
-       $(LOCAL_PATH)/WebCore/rendering \
-       $(LOCAL_PATH)/WebCore/rendering/style \
-       $(LOCAL_PATH)/WebCore/rendering/svg \
-       $(LOCAL_PATH)/WebCore/storage \
-       $(LOCAL_PATH)/WebCore/svg \
-       $(LOCAL_PATH)/WebCore/svg/animation \
-       $(LOCAL_PATH)/WebCore/svg/graphics \
-       $(LOCAL_PATH)/WebCore/svg/graphics/filters \
-       $(LOCAL_PATH)/WebCore/svg/properties \
-       $(LOCAL_PATH)/WebCore/websockets \
-       $(LOCAL_PATH)/WebCore/workers \
-       $(LOCAL_PATH)/WebCore/xml
+       $(WEBCORE_PATH) \
+       $(WEBCORE_PATH)/accessibility \
+       $(WEBCORE_PATH)/bindings/ \
+       $(WEBCORE_PATH)/bindings/generic \
+       $(WEBCORE_PATH)/css \
+       $(WEBCORE_PATH)/dom \
+       $(WEBCORE_PATH)/editing \
+       $(WEBCORE_PATH)/fileapi \
+       $(WEBCORE_PATH)/history \
+       $(WEBCORE_PATH)/history/android \
+       $(WEBCORE_PATH)/html \
+       $(WEBCORE_PATH)/html/canvas \
+       $(WEBCORE_PATH)/html/parser \
+       $(WEBCORE_PATH)/html/shadow \
+       $(WEBCORE_PATH)/inspector \
+       $(WEBCORE_PATH)/loader \
+       $(WEBCORE_PATH)/loader/appcache \
+       $(WEBCORE_PATH)/loader/archive \
+       $(WEBCORE_PATH)/loader/archive/android \
+       $(WEBCORE_PATH)/loader/cache \
+       $(WEBCORE_PATH)/loader/icon \
+       $(WEBCORE_PATH)/notifications \
+       $(WEBCORE_PATH)/page \
+       $(WEBCORE_PATH)/page/android \
+       $(WEBCORE_PATH)/page/animation \
+       $(WEBCORE_PATH)/platform \
+       $(WEBCORE_PATH)/platform/android \
+       $(WEBCORE_PATH)/platform/animation \
+       $(WEBCORE_PATH)/platform/graphics \
+       $(WEBCORE_PATH)/platform/graphics/android \
+       $(WEBCORE_PATH)/platform/graphics/filters \
+       $(WEBCORE_PATH)/platform/graphics/gpu \
+       $(WEBCORE_PATH)/platform/graphics/network \
+       $(WEBCORE_PATH)/platform/graphics/skia \
+       $(WEBCORE_PATH)/platform/graphics/transforms \
+       $(WEBCORE_PATH)/platform/image-decoders \
+       $(WEBCORE_PATH)/platform/image-decoders/bmp \
+       $(WEBCORE_PATH)/platform/image-decoders/gif \
+       $(WEBCORE_PATH)/platform/image-decoders/ico \
+       $(WEBCORE_PATH)/platform/image-decoders/jpeg \
+       $(WEBCORE_PATH)/platform/image-decoders/png \
+       $(WEBCORE_PATH)/platform/image-decoders/webp \
+       $(WEBCORE_PATH)/platform/mock \
+       $(WEBCORE_PATH)/platform/network \
+       $(WEBCORE_PATH)/platform/network/android \
+       $(WEBCORE_PATH)/platform/sql \
+       $(WEBCORE_PATH)/platform/text \
+       $(WEBCORE_PATH)/platform/text/transcoder \
+       $(WEBCORE_PATH)/plugins \
+       $(WEBCORE_PATH)/plugins/android \
+       $(WEBCORE_PATH)/rendering \
+       $(WEBCORE_PATH)/rendering/style \
+       $(WEBCORE_PATH)/rendering/svg \
+       $(WEBCORE_PATH)/storage \
+       $(WEBCORE_PATH)/svg \
+       $(WEBCORE_PATH)/svg/animation \
+       $(WEBCORE_PATH)/svg/graphics \
+       $(WEBCORE_PATH)/svg/graphics/filters \
+       $(WEBCORE_PATH)/svg/properties \
+       $(WEBCORE_PATH)/websockets \
+       $(WEBCORE_PATH)/workers \
+       $(WEBCORE_PATH)/xml
 
 LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
-       $(LOCAL_PATH)/WebKit/android \
-       $(LOCAL_PATH)/WebKit/android/WebCoreSupport \
-       $(LOCAL_PATH)/WebKit/android/jni \
-       $(LOCAL_PATH)/WebKit/android/nav \
-       $(LOCAL_PATH)/WebKit/android/plugins
+       $(WEBKIT_PATH)/android \
+       $(WEBKIT_PATH)/android/WebCoreSupport \
+       $(WEBKIT_PATH)/android/jni \
+       $(WEBKIT_PATH)/android/nav \
+       $(WEBKIT_PATH)/android/plugins
 
 LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
-       $(LOCAL_PATH)/JavaScriptCore \
-       $(LOCAL_PATH)/JavaScriptCore/wtf \
-       $(LOCAL_PATH)/JavaScriptCore/wtf/unicode \
-       $(LOCAL_PATH)/JavaScriptCore/wtf/unicode/icu
+       $(JAVASCRIPTCORE_PATH) \
+       $(JAVASCRIPTCORE_PATH)/collector/handles \
+       $(JAVASCRIPTCORE_PATH)/heap \
+       $(JAVASCRIPTCORE_PATH)/wtf \
+       $(JAVASCRIPTCORE_PATH)/wtf/unicode \
+       $(JAVASCRIPTCORE_PATH)/wtf/unicode/icu
 
 LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
-       $(base_intermediates)/WebCore/ \
-       $(base_intermediates)/WebCore/css \
-       $(base_intermediates)/WebCore/html \
-       $(base_intermediates)/WebCore/platform
+       $(WEBCORE_INTERMEDIATES_PATH) \
+       $(WEBCORE_INTERMEDIATES_PATH)/css \
+       $(WEBCORE_INTERMEDIATES_PATH)/html \
+       $(WEBCORE_INTERMEDIATES_PATH)/platform \
+       $(WEBCORE_INTERMEDIATES_PATH)/xml
 
 # The following includes are needed by the AutoFill feature, or the chrome http
 # stack
 LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
-       $(LOCAL_PATH)/WebKit/chromium \
-       $(LOCAL_PATH)/WebKit/chromium/public \
+       $(WEBKIT_PATH)/chromium \
+       $(WEBKIT_PATH)/chromium/public \
        external/chromium/chrome/browser \
        external/chromium/chrome/renderer \
        external/chromium \
@@ -251,7 +262,7 @@ LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
 
 ifeq ($(JAVASCRIPT_ENGINE),v8)
 # Include WTF source file.
-d := JavaScriptCore
+d := Source/JavaScriptCore
 LOCAL_PATH := $(BASE_PATH)/$d
 intermediates := $(base_intermediates)/$d
 include $(LOCAL_PATH)/Android.v8.wtf.mk
@@ -259,9 +270,8 @@ WEBKIT_SRC_FILES += $(addprefix $d/,$(LOCAL_SRC_FILES))
 endif  # JAVASCRIPT_ENGINE == v8
 
 # Include source files for WebCore
-d := WebCore
+d := Source/WebCore
 LOCAL_PATH := $(BASE_PATH)/$d
-JAVASCRIPTCORE_PATH := $(BASE_PATH)/JavaScriptCore
 intermediates := $(base_intermediates)/$d
 include $(LOCAL_PATH)/Android.mk
 ifeq ($(JAVASCRIPT_ENGINE),jsc)
@@ -284,7 +294,7 @@ include $(LOCAL_PATH)/Android.derived.v8bindings.mk
 endif
 
 # Include source files for android WebKit port
-d := WebKit
+d := Source/WebKit
 LOCAL_PATH := $(BASE_PATH)/$d
 intermediates := $(base_intermediates)/$d
 include $(LOCAL_PATH)/Android.mk
@@ -352,6 +362,7 @@ LOCAL_LDLIBS += -lpthread -ldl
 
 # Build the list of shared libraries
 LOCAL_SHARED_LIBRARIES := \
+       libandroid \
        libandroid_runtime \
        libnativehelper \
        libsqlite \
@@ -362,23 +373,24 @@ LOCAL_SHARED_LIBRARIES := \
        libicuuc \
        libicui18n \
        libmedia \
-       libsurfaceflinger_client \
        libEGL \
        libGLESv2 \
        libgui
 
+ifeq ($(PLATFORM_VERSION),3.1.4.1.5.9.2.6.5)
+LOCAL_SHARED_LIBRARIES += libsurfaceflinger_client
+endif
+
 ifeq ($(WEBCORE_INSTRUMENTATION),true)
 LOCAL_SHARED_LIBRARIES += libhardware_legacy
 endif
 
-# We have to use the android version of libdl when we are not on the simulator
-ifneq ($(TARGET_SIMULATOR),true)
+# We have to use the android version of libdl
 LOCAL_SHARED_LIBRARIES += libdl libstlport
 # We have to fake out some headers when using stlport.
 LOCAL_C_INCLUDES += \
        external/chromium/android
 include external/stlport/libstlport.mk
-endif
 
 # We need Harfbuzz library to support complex scripts(Arabic, Thai, Hindi...).
 ifeq ($(SUPPORT_COMPLEX_SCRIPTS),true)
@@ -390,14 +402,13 @@ LOCAL_CFLAGS += -DSUPPORT_COMPLEX_SCRIPTS=1
 endif
 
 # Build the list of static libraries
-LOCAL_STATIC_LIBRARIES := libxml2 libxslt libhyphenation
+LOCAL_STATIC_LIBRARIES := libxml2 libxslt libhyphenation libskiagpu
 ifeq ($(JAVASCRIPT_ENGINE),v8)
 LOCAL_STATIC_LIBRARIES += libv8
 endif
 
 ifeq ($(HTTP_STACK),chrome)
-LOCAL_STATIC_LIBRARIES += libchromium_net
-LOCAL_SHARED_LIBRARIES += libcrypto libssl libz
+LOCAL_SHARED_LIBRARIES += libcrypto libssl libz libchromium_net
 endif # HTTP_STACK == chrome
 
 ifeq ($(ENABLE_AUTOFILL),true)
@@ -428,7 +439,7 @@ LOCAL_SHARED_LIBRARIES := $(WEBKIT_SHARED_LIBRARIES)
 LOCAL_STATIC_LIBRARIES := $(WEBKIT_STATIC_LIBRARIES)
 LOCAL_CFLAGS := $(WEBKIT_CFLAGS)
 # Include source files for JavaScriptCore
-d := JavaScriptCore
+d := Source/JavaScriptCore
 LOCAL_PATH := $(BASE_PATH)/$d
 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 # Cannot use base_intermediates as this is a new module
@@ -450,7 +461,10 @@ endif  # JAVASCRIPT_ENGINE == jsc
 # 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)
-# if you need to make webcore huge (for debugging), enable this line
+# Do not attempt prelink this library. Needed to keep master-gpl happy, no
+# effect in master.
+# TODO: remove this when master-gpl is updated.
+LOCAL_PRELINK_MODULE := false
 LOCAL_MODULE := libwebcore
 LOCAL_LDLIBS := $(WEBKIT_LDLIBS)
 LOCAL_SHARED_LIBRARIES := $(WEBKIT_SHARED_LIBRARIES)
@@ -464,7 +478,7 @@ LOCAL_CPPFLAGS := $(WEBKIT_CPPFLAGS)
 LOCAL_C_INCLUDES := $(WEBKIT_C_INCLUDES)
 LOCAL_PATH := $(BASE_PATH)
 LOCAL_SRC_FILES := \
-       WebKit/android/jni/WebCoreJniOnLoad.cpp
+       Source/WebKit/android/jni/WebCoreJniOnLoad.cpp
 
 ifeq ($(ENABLE_AUTOFILL),true)
 # AutoFill requires some cpp files from Chromium to link with
@@ -472,10 +486,10 @@ ifeq ($(ENABLE_AUTOFILL),true)
 # because they have cpp file extensions, not .cc.
 LOCAL_CFLAGS += -DWEBKIT_IMPLEMENTATION=1
 LOCAL_SRC_FILES += \
-       WebKit/android/WebCoreSupport/autofill/MainThreadProxy.cpp \
-       WebKit/chromium/src/WebCString.cpp \
-       WebKit/chromium/src/WebRegularExpression.cpp \
-       WebKit/chromium/src/WebString.cpp
+       Source/WebKit/android/WebCoreSupport/autofill/MainThreadProxy.cpp \
+       Source/WebKit/chromium/src/WebCString.cpp \
+       Source/WebKit/chromium/src/WebRegularExpression.cpp \
+       Source/WebKit/chromium/src/WebString.cpp
 endif
 
 # Do this dependency by hand. The reason we have to do this is because the
@@ -486,10 +500,10 @@ LOCAL_ADDITIONAL_DEPENDENCIES := $(filter %.h, $(WEBKIT_GENERATED_SOURCES))
 include $(BUILD_SHARED_LIBRARY)
 
 # Build the wds client
-include $(BASE_PATH)/WebKit/android/wds/client/Android.mk
+include $(WEBKIT_PATH)/android/wds/client/Android.mk
 
 # Build the performance command line tool.
-include $(BASE_PATH)/WebKit/android/benchmark/Android.mk
+include $(WEBKIT_PATH)/android/benchmark/Android.mk
 
 # Build the webkit merge tool.
-include $(BASE_PATH)/WebKitTools/android/webkitmerge/Android.mk
+include $(BASE_PATH)/Tools/android/webkitmerge/Android.mk