Index: Android.mk |
diff --git a/Android.mk b/Android.mk |
index 487118520af1ee2c4b296d3e23f50dc2649b3d81..6249a1c1b3863d5b963b3216e3a06d907925d95e 100644 |
--- a/Android.mk |
+++ b/Android.mk |
@@ -5,18 +5,43 @@ |
# This Android makefile is used to build WebView in the Android build system. |
# gyp autogenerates most of the real makefiles, which we include below. |
-# Don't do anything if the product is using a prebuilt webviewchromium, to avoid |
-# duplicate target definitions between this directory and the prebuilts. |
-ifneq ($(PRODUCT_PREBUILT_WEBVIEWCHROMIUM),yes) |
- |
-CHROMIUM_DIR := $(call my-dir) |
+LOCAL_PATH := $(call my-dir) |
+CHROMIUM_DIR := $(LOCAL_PATH) |
# We default to release for the Android build system. Developers working on |
# WebView code can build with "make GYP_CONFIGURATION=Debug". |
GYP_CONFIGURATION := Release |
-# Include the manually-written makefile that builds all the WebView java code. |
+# If the product is using a prebuilt libwebviewchromium then we need to skip |
+# including most of the makefiles to avoid duplicate target definitions. Some |
+# targets are still needed, so list their makefiles explicitly. |
+ifeq ($(PRODUCT_PREBUILT_WEBVIEWCHROMIUM),yes) |
+GYP_MAKEFILE_STEMS := \ |
+ $(addprefix $(CHROMIUM_DIR)/v8/tools/gyp/, \ |
+ generate_trig_table.host \ |
+ js2c.host \ |
+ mksnapshot.host \ |
+ v8_base.host \ |
+ v8_libbase.host \ |
+ v8_nosnapshot.host \ |
+ v8_base.target \ |
+ v8_libbase.target \ |
+ v8_snapshot.target \ |
+ ) \ |
+ $(addprefix $(CHROMIUM_DIR)/third_party/icu/, \ |
+ icudata.host \ |
+ icui18n.host \ |
+ icuuc.host \ |
+ icui18n.target \ |
+ icuuc.target \ |
+ system_icu.target \ |
+ ) |
+else |
+# Not using a prebuilt; include the manually-written makefile that builds all |
+# the WebView java code, and use the main autogenerated makefile. |
include $(CHROMIUM_DIR)/android_webview/Android.mk |
+GYP_MAKEFILE_STEMS := $(CHROMIUM_DIR)/GypAndroid |
+endif |
# If the gyp-generated makefile exists for the current host OS and primary |
# target architecture, we need to include it. If it doesn't exist then just do |
@@ -40,7 +65,8 @@ GYP_HOST_MULTILIB := 32 |
endif |
endif |
-include $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_ARCH).mk |
+# Include the appropriate version of each of the makefiles. |
+include $(addsuffix .$(HOST_OS)-$(TARGET_ARCH).mk,$(GYP_MAKEFILE_STEMS)) |
endif # End primary architecture handling. |
@@ -66,8 +92,7 @@ GYP_HOST_MULTILIB := 32 |
endif |
endif |
-include $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_2ND_ARCH).mk |
+# Include the appropriate version of each of the makefiles. |
+include $(addsuffix .$(HOST_OS)-$(TARGET_2ND_ARCH).mk,$(GYP_MAKEFILE_STEMS)) |
endif # End secondary architecture handling. |
- |
-endif |