summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2009-07-01 20:02:08 +0100
committerBen Murdoch <benm@google.com>2009-07-06 11:26:30 +0100
commit0f474a448c71c0204d9d41f067d725b6e90703ef (patch)
tree0c0dfde0f7c1c6bcded9fb2d56e8e6bd28fe2549
parent3f84acc12c5a694d9c4073aa1de33fbdf1cd22d1 (diff)
downloadexternal_webkit-0f474a448c71c0204d9d41f067d725b6e90703ef.zip
external_webkit-0f474a448c71c0204d9d41f067d725b6e90703ef.tar.gz
external_webkit-0f474a448c71c0204d9d41f067d725b6e90703ef.tar.bz2
Enable workers w/JSC.
-rw-r--r--Android.jsc.mk1
-rw-r--r--WebCore/Android.derived.mk29
-rw-r--r--WebCore/Android.mk19
-rw-r--r--WebCore/config.h2
4 files changed, 39 insertions, 12 deletions
diff --git a/Android.jsc.mk b/Android.jsc.mk
index bfcd6b6..4fc6156 100644
--- a/Android.jsc.mk
+++ b/Android.jsc.mk
@@ -180,6 +180,7 @@ LOCAL_C_INCLUDES := \
$(base_intermediates)/WebCore/platform \
$(base_intermediates)/WebCore/plugins \
$(base_intermediates)/WebCore/storage \
+ $(base_intermediates)/WebCore/workers \
$(base_intermediates)/WebCore/xml
ifeq ($(ENABLE_SVG), true)
diff --git a/WebCore/Android.derived.mk b/WebCore/Android.derived.mk
index a28bbd2..c8a2651 100644
--- a/WebCore/Android.derived.mk
+++ b/WebCore/Android.derived.mk
@@ -23,11 +23,9 @@
# css/RGBColor.idl \
# dom/EventListener.idl \
# dom/EventTarget.idl \
-# dom/Worker*.idl \
# html/CanvasPixelArray.idl \
# page/AbstractView.idl \
# page/PositionCallback.idl \
-# page/Worker*.idl \
# svg/ElementTimeControl.idl \
# svg/SVGAnimatedPathData.idl \
# svg/SVGAnimatedPoints.idl \
@@ -48,7 +46,6 @@
#
# The following files are intentionally not generated
# LOCAL_GENERATED_FILES_EXCLUDED := \
-# JSWorkerContextBase.lut.h \
# WMLElementFactory.cpp \
# WMLNames.cpp \
# XLinkNames.cpp \
@@ -59,8 +56,8 @@
# The following directory wildcard matches are intentionally not included
# If an entry starts with '/', any subdirectory may match
# If an entry starts with '^', the first directory must match
-# LOCAL_DIR_WILDCARD_EXCLUDED := \
-# ^workers/* \
+# LOCAL_DIR_WILDCARD_EXCLUDED :=
+#
# This comment block is read by tools/webkitsync/diff.cpp
# Don't remove it or move it.
@@ -214,7 +211,7 @@ js_binding_scripts := $(addprefix $(LOCAL_PATH)/,\
bindings/scripts/generate-bindings.pl \
)
-FEATURE_DEFINES := ANDROID_ORIENTATION_SUPPORT ENABLE_TOUCH_EVENTS=1 ENABLE_DATABASE=1 ENABLE_OFFLINE_WEB_APPLICATIONS=1 ENABLE_DOM_STORAGE=1 ENABLE_VIDEO=1
+FEATURE_DEFINES := ANDROID_ORIENTATION_SUPPORT ENABLE_TOUCH_EVENTS=1 ENABLE_DATABASE=1 ENABLE_OFFLINE_WEB_APPLICATIONS=1 ENABLE_DOM_STORAGE=1 ENABLE_VIDEO=1 ENABLE_WORKERS=1
GEN := \
$(intermediates)/css/JSCSSCharsetRule.h \
@@ -454,7 +451,9 @@ GEN := \
$(intermediates)/page/JSPositionError.h \
$(intermediates)/page/JSPositionErrorCallback.h \
$(intermediates)/page/JSScreen.h \
- $(intermediates)/page/JSWebKitPoint.h
+ $(intermediates)/page/JSWebKitPoint.h \
+ $(intermediates)/page/JSWorkerNavigator.h
+
$(GEN): PRIVATE_PATH := $(LOCAL_PATH)
$(GEN): PRIVATE_CUSTOM_TOOL = perl -I$(PRIVATE_PATH)/bindings/scripts $(PRIVATE_PATH)/bindings/scripts/generate-bindings.pl --defines "$(FEATURE_DEFINES) LANGUAGE_JAVASCRIPT" --generator JS --include dom --include html --outputdir $(dir $@) $<
$(GEN): $(intermediates)/page/JS%.h : $(LOCAL_PATH)/page/%.idl $(js_binding_scripts)
@@ -661,6 +660,22 @@ LOCAL_GENERATED_SOURCES += $(GEN) $(GEN:%.h=%.cpp)
$(patsubst %.h,%.cpp,$(GEN)): $(intermediates)/svg/%.cpp : $(intermediates)/svg/%.h
endif
+# new section for Workers
+GEN := \
+ $(intermediates)/workers/JSWorker.h \
+ $(intermediates)/workers/JSWorkerContext.h \
+ $(intermediates)/workers/JSWorkerLocation.h
+
+$(GEN): PRIVATE_PATH := $(LOCAL_PATH)
+$(GEN): PRIVATE_CUSTOM_TOOL = perl -I$(PRIVATE_PATH)/bindings/scripts $(PRIVATE_PATH)/bindings/scripts/generate-bindings.pl --defines "$(FEATURE_DEFINES) LANGUAGE_JAVASCRIPT" --generator JS --include dom --include html --outputdir $(dir $@) $<
+$(GEN): $(intermediates)/workers/JS%.h : $(LOCAL_PATH)/workers/%.idl $(js_binding_scripts)
+ $(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN) $(GEN:%.h=%.cpp)
+
+# We also need the .cpp files, which are generated as side effects of the
+# above rules. Specifying this explicitly makes -j2 work.
+$(patsubst %.h,%.cpp,$(GEN)): $(intermediates)/workers/%.cpp : $(intermediates)/workers/%.h
+
#new section for xml/DOMParser.idl
GEN := \
$(intermediates)/xml/JSDOMParser.h \
diff --git a/WebCore/Android.mk b/WebCore/Android.mk
index 182c0a7..f02dfa3 100644
--- a/WebCore/Android.mk
+++ b/WebCore/Android.mk
@@ -26,8 +26,6 @@
# bindings/js/JSCustomVersionChangeCallback.cpp \
# bindings/js/JSInspectorControllerCustom.cpp \
# bindings/js/JSXSLTProcessor*.cpp \
-# bindings/js/JSWorker*.cpp \
-# bindings/js/Worker*.cpp \
# bindings/js/*Gtk.cpp \
# bindings/js/*Qt.cpp \
# bindings/js/*Win.cpp \
@@ -45,13 +43,11 @@
# loader/CachedXSLStyleSheet.cpp \
# loader/FTP*.cpp \
# loader/UserStyleSheetLoader.cpp \
-# loader/WorkerThreadableLoader.cpp \
# loader/icon/IconDatabaseNone.cpp \
# page/AXObjectCache.cpp \
# page/Accessibility*.cpp \
# page/InspectorController.cpp \
# page/JavaScript*.cpp \
-# page/WorkerNavigator.cpp \
# platform/ThreadingNone.cpp \
# platform/graphics/FloatPoint3D.cpp \
# rendering/RenderThemeChromium*.cpp \
@@ -90,7 +86,6 @@
# /symbian/* \
# /v8/* \
# /win/* \
-# ^workers/* \
# ^wml/* \
# /wx/* \
@@ -203,6 +198,10 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
bindings/js/JSTreeWalkerCustom.cpp \
bindings/js/JSWebKitCSSMatrixConstructor.cpp \
bindings/js/JSWebKitPointConstructor.cpp \
+ bindings/js/JSWorkerConstructor.cpp \
+ bindings/js/JSWorkerContextBase.cpp \
+ bindings/js/JSWorkerContextCustom.cpp \
+ bindings/js/JSWorkerCustom.cpp \
bindings/js/JSXMLHttpRequestConstructor.cpp \
bindings/js/JSXMLHttpRequestCustom.cpp \
bindings/js/JSXMLHttpRequestUploadCustom.cpp \
@@ -218,6 +217,7 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
bindings/js/ScriptObjectQuarantine.cpp \
bindings/js/ScriptState.cpp \
bindings/js/ScriptValue.cpp \
+ bindings/js/WorkerScriptController.cpp \
\
bridge/IdentifierRep.cpp \
bridge/NP_jsobject.cpp \
@@ -578,6 +578,7 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
loader/icon/PageURLRecord.cpp \
\
loader/loader.cpp \
+ loader/WorkerThreadableLoader.cpp \
\
page/BarInfo.cpp \
page/Chrome.cpp \
@@ -608,6 +609,7 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
page/SecurityOrigin.cpp \
page/Settings.cpp \
page/WindowFeatures.cpp \
+ page/WorkerNavigator.cpp \
\
page/android/DragControllerAndroid.cpp \
page/android/EventHandlerAndroid.cpp \
@@ -1144,6 +1146,13 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
endif
LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
+ workers/Worker.cpp \
+ workers/WorkerContext.cpp \
+ workers/WorkerImportScriptsClient.cpp \
+ workers/WorkerLocation.cpp \
+ workers/WorkerMessagingProxy.cpp \
+ workers/WorkerRunLoop.cpp \
+ workers/WorkerThread.cpp \
xml/DOMParser.cpp \
xml/XMLHttpRequest.cpp \
xml/XMLHttpRequestUpload.cpp \
diff --git a/WebCore/config.h b/WebCore/config.h
index 247384f..0611287 100644
--- a/WebCore/config.h
+++ b/WebCore/config.h
@@ -101,6 +101,8 @@
#define ENABLE_DOM_STORAGE 1
#undef ENABLE_FTPDIR
#define ENABLE_FTPDIR 0
+#undef ENABLE_WORKERS
+#define ENABLE_WORKERS 1
#ifndef ENABLE_SVG
#define ENABLE_SVG 0
#endif