Add support for [NoInterfaceObject] Web IDL extended attribute

https://bugs.webkit.org/show_bug.cgi?id=115714

Reviewed by Kentaro Hara.

.:

Update GENERATE_BINDINGS macro to take an additional _window_constructors_file
optional argument.

* Source/cmake/WebKitMacros.cmake:

Source/WebCore:

*Constructor attributes on the global DOMWindow object are now automatically
generated for each non-callback interface that is not declared with the
[NoInterfaceObject] extended attribute. It is thus no longer needed for
developers to manually add *Constructor attributes for their new interfaces
unless they wish to register an "extra" constructor for their interface.

This patch does not modify at all the behavior on JS side. To achieve this,
[NoInterfaceObject] extended attribute is added to interfaces that should
not have it according to specification (e.g. History, Location, ...).
This can be improved later as the behavior should not change with this
patch.

No new tests, no behavior change.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Modules/battery/BatteryManager.idl:
* Modules/encryptedmedia/MediaKeyMessageEvent.idl:
* Modules/encryptedmedia/MediaKeyNeededEvent.idl:
* Modules/encryptedmedia/MediaKeySession.idl:
* Modules/encryptedmedia/MediaKeys.idl:
* Modules/filesystem/DOMFileSystem.idl:
* Modules/filesystem/DOMFileSystemSync.idl:
* Modules/filesystem/DirectoryEntry.idl:
* Modules/filesystem/DirectoryEntrySync.idl:
* Modules/filesystem/DirectoryReader.idl:
* Modules/filesystem/DirectoryReaderSync.idl:
* Modules/filesystem/Entry.idl:
* Modules/filesystem/EntryArray.idl:
* Modules/filesystem/EntryArraySync.idl:
* Modules/filesystem/EntrySync.idl:
* Modules/filesystem/FileEntry.idl:
* Modules/filesystem/FileEntrySync.idl:
* Modules/filesystem/FileWriter.idl:
* Modules/filesystem/FileWriterSync.idl:
* Modules/filesystem/Metadata.idl:
* Modules/gamepad/Gamepad.idl:
* Modules/gamepad/GamepadList.idl:
* Modules/geolocation/Coordinates.idl:
* Modules/geolocation/Geolocation.idl:
* Modules/geolocation/Geoposition.idl:
* Modules/geolocation/PositionError.idl:
* Modules/indexeddb/DOMWindowIndexedDatabase.idl:
* Modules/indexeddb/IDBAny.idl:
* Modules/mediasource/MediaSource.idl:
* Modules/mediasource/SourceBuffer.idl:
* Modules/mediasource/SourceBufferList.idl:
* Modules/mediastream/DOMWindowMediaStream.idl: Removed.
* Modules/mediastream/MediaStream.idl:
* Modules/mediastream/MediaStreamTrack.idl:
* Modules/mediastream/MediaStreamTrackEvent.idl:
* Modules/mediastream/NavigatorUserMediaError.idl:
* Modules/mediastream/RTCDTMFSender.idl:
* Modules/mediastream/RTCDTMFToneChangeEvent.idl:
* Modules/mediastream/RTCDataChannel.idl:
* Modules/mediastream/RTCDataChannelEvent.idl:
* Modules/mediastream/RTCIceCandidateEvent.idl:
* Modules/mediastream/RTCPeerConnection.idl:
* Modules/mediastream/RTCStatsReport.idl:
* Modules/mediastream/RTCStatsResponse.idl:
* Modules/networkinfo/NetworkInfoConnection.idl:
* Modules/notifications/DOMWindowNotifications.idl:
* Modules/notifications/NotificationCenter.idl:
* Modules/quota/StorageInfo.idl:
* Modules/quota/StorageQuota.idl:
* Modules/speech/DOMWindowSpeech.idl: Removed.
* Modules/speech/DOMWindowSpeechSynthesis.idl:
* Modules/speech/SpeechGrammar.idl:
* Modules/speech/SpeechGrammarList.idl:
* Modules/speech/SpeechRecognition.idl:
* Modules/speech/SpeechRecognitionAlternative.idl:
* Modules/speech/SpeechRecognitionError.idl:
* Modules/speech/SpeechRecognitionEvent.idl:
* Modules/speech/SpeechRecognitionResult.idl:
* Modules/speech/SpeechRecognitionResultList.idl:
* Modules/speech/SpeechSynthesis.idl:
* Modules/speech/SpeechSynthesisVoice.idl:
* Modules/webaudio/AnalyserNode.idl:
* Modules/webaudio/AudioBuffer.idl:
* Modules/webaudio/AudioBufferSourceNode.idl:
* Modules/webaudio/AudioContext.idl:
* Modules/webaudio/AudioDestinationNode.idl:
* Modules/webaudio/AudioListener.idl:
* Modules/webaudio/AudioNode.idl:
* Modules/webaudio/AudioParam.idl:
* Modules/webaudio/AudioSourceNode.idl:
* Modules/webaudio/BiquadFilterNode.idl:
* Modules/webaudio/ChannelMergerNode.idl:
* Modules/webaudio/ChannelSplitterNode.idl:
* Modules/webaudio/ConvolverNode.idl:
* Modules/webaudio/DOMWindowWebAudio.idl: Removed.
* Modules/webaudio/DelayNode.idl:
* Modules/webaudio/DynamicsCompressorNode.idl:
* Modules/webaudio/GainNode.idl:
* Modules/webaudio/MediaElementAudioSourceNode.idl:
* Modules/webaudio/MediaStreamAudioDestinationNode.idl:
* Modules/webaudio/MediaStreamAudioSourceNode.idl:
* Modules/webaudio/OfflineAudioContext.idl:
* Modules/webaudio/OscillatorNode.idl:
* Modules/webaudio/PannerNode.idl:
* Modules/webaudio/ScriptProcessorNode.idl:
* Modules/webaudio/WaveShaperNode.idl:
* Modules/webaudio/WaveTable.idl:
* Modules/webdatabase/DOMWindowWebDatabase.idl:
* Modules/webdatabase/Database.idl:
* Modules/webdatabase/DatabaseSync.idl:
* Modules/webdatabase/SQLError.idl:
* Modules/webdatabase/SQLResultSet.idl:
* Modules/webdatabase/SQLResultSetRowList.idl:
* Modules/webdatabase/SQLTransaction.idl:
* Modules/webdatabase/SQLTransactionSync.idl:
* Modules/websockets/DOMWindowWebSocket.idl: Removed.
* Modules/websockets/WebSocket.idl:
* PlatformBlackBerry.cmake:
* UseJSC.cmake:
* WebCore.xcodeproj/project.pbxproj:
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/IDLParser.pm:
(parseTypedef):
* bindings/scripts/preprocess-idls.pl:
(GenerateConstructorAttribute):
(getFileContents):
(getPartialInterfaceNameFromIDL):
(isCallbackInterfaceFromIDL):
(trim):
(getInterfaceExtendedAttributesFromIDL):
* css/CSSFontFaceLoadEvent.idl:
* css/CSSFontFaceRule.idl:
* css/CSSSupportsRule.idl:
* css/CSSUnknownRule.idl:
* css/DOMWindowCSS.idl:
* css/FontLoader.idl:
* css/MediaQueryList.idl:
* css/MediaQueryListListener.idl:
* css/StyleMedia.idl:
* dom/CustomElementConstructor.idl:
* dom/DOMError.idl:
* dom/DOMNamedFlowCollection.idl:
* dom/DataTransferItem.idl:
* dom/DataTransferItemList.idl:
* dom/EventListener.idl:
* dom/EventTarget.idl:
* dom/NodeIterator.idl:
* dom/ShadowRoot.idl:
* dom/TreeWalker.idl:
* dom/WebKitNamedFlow.idl:
* fileapi/FileException.idl:
* fileapi/FileReaderSync.idl:
* html/HTMLAudioElement.idl:
* html/HTMLDetailsElement.idl:
* html/HTMLOptionElement.idl:
* html/MediaError.idl:
* html/MediaKeyError.idl:
* html/MicroDataItemValue.idl:
* html/RadioNodeList.idl:
* html/ValidityState.idl:
* html/canvas/CanvasRenderingContext.idl:
* html/canvas/DOMPath.idl:
* html/canvas/EXTDrawBuffers.idl:
* html/canvas/EXTTextureFilterAnisotropic.idl:
* html/canvas/OESElementIndexUint.idl:
* html/canvas/OESStandardDerivatives.idl:
* html/canvas/OESTextureFloat.idl:
* html/canvas/OESTextureHalfFloat.idl:
* html/canvas/OESVertexArrayObject.idl:
* html/canvas/WebGLCompressedTextureATC.idl:
* html/canvas/WebGLCompressedTexturePVRTC.idl:
* html/canvas/WebGLCompressedTextureS3TC.idl:
* html/canvas/WebGLContextAttributes.idl:
* html/canvas/WebGLDebugRendererInfo.idl:
* html/canvas/WebGLDebugShaders.idl:
* html/canvas/WebGLDepthTexture.idl:
* html/canvas/WebGLLoseContext.idl:
* html/canvas/WebGLVertexArrayObjectOES.idl:
* html/track/AudioTrack.idl:
* html/track/AudioTrackList.idl:
* html/track/TextTrackRegionList.idl:
* html/track/VideoTrack.idl:
* html/track/VideoTrackList.idl:
* inspector/InjectedScriptHost.idl:
* inspector/InspectorFrontendHost.idl:
* inspector/JavaScriptCallFrame.idl:
* inspector/ScriptProfile.idl:
* inspector/ScriptProfileNode.idl:
* loader/appcache/DOMApplicationCache.idl:
* page/AbstractView.idl:
* page/BarInfo.idl:
* page/Console.idl:
* page/Crypto.idl:
* page/DOMSecurityPolicy.idl:
* page/DOMWindow.idl:
* page/History.idl:
* page/Location.idl:
* page/MemoryInfo.idl:
* page/Navigator.idl:
* page/PagePopupController.idl:
* page/Performance.idl:
* page/PerformanceEntry.idl:
* page/PerformanceEntryList.idl:
* page/PerformanceMark.idl:
* page/PerformanceMeasure.idl:
* page/PerformanceNavigation.idl:
* page/PerformanceResourceTiming.idl:
* page/PerformanceTiming.idl:
* page/Screen.idl:
* page/SpeechInputResult.idl:
* page/SpeechInputResultList.idl:
* page/WorkerNavigator.idl:
* page/make_settings.pl:
(generateInternalSettingsIdlFile):
* svg/ElementTimeControl.idl:
* svg/SVGAnimationElement.idl:
* svg/SVGExternalResourcesRequired.idl:
* svg/SVGFilterPrimitiveStandardAttributes.idl:
* svg/SVGFitToViewBox.idl:
* svg/SVGLangSpace.idl:
* svg/SVGLocatable.idl:
* svg/SVGStyledElement.idl:
* svg/SVGTests.idl:
* svg/SVGTransformable.idl:
* svg/SVGURIReference.idl:
* testing/InternalSettings.idl:
* testing/Internals.idl:
* testing/MallocStatistics.idl:
* testing/TypeConversions.idl:
* workers/AbstractWorker.idl:
* workers/DedicatedWorkerContext.idl:
* workers/SharedWorker.idl:
* workers/SharedWorkerContext.idl:
* workers/WorkerContext.idl:
* workers/WorkerLocation.idl:
* xml/XPathExpression.idl:
* xml/XPathNSResolver.idl:

Tools:

Update BindingsTests.generate_supplemental_dependency() to pass an
additional windowConstructorsFile argument to preprocess-idls.pl.

* Scripts/webkitpy/bindings/main.py:
(BindingsTests.generate_supplemental_dependency):
(BindingsTests.main):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149796 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 5802dccc
2013-05-09 Christophe Dumez <ch.dumez@sisa.samsung.com>
Add support for [NoInterfaceObject] Web IDL extended attribute
https://bugs.webkit.org/show_bug.cgi?id=115714
Reviewed by Kentaro Hara.
Update GENERATE_BINDINGS macro to take an additional _window_constructors_file
optional argument.
* Source/cmake/WebKitMacros.cmake:
2013-05-08 José Dapena Paz <jdapena@igalia.com> and Zan Dobersek <zdobersek@igalia.com> 2013-05-08 José Dapena Paz <jdapena@igalia.com> and Zan Dobersek <zdobersek@igalia.com>
[GTK] Plumb the Automake build system for the Battery Status API feature [GTK] Plumb the Automake build system for the Battery Status API feature
......
...@@ -206,7 +206,6 @@ set(WebCore_IDL_FILES ...@@ -206,7 +206,6 @@ set(WebCore_IDL_FILES
Modules/mediasource/SourceBuffer.idl Modules/mediasource/SourceBuffer.idl
Modules/mediasource/SourceBufferList.idl Modules/mediasource/SourceBufferList.idl
Modules/mediastream/DOMWindowMediaStream.idl
Modules/mediastream/LocalMediaStream.idl Modules/mediastream/LocalMediaStream.idl
Modules/mediastream/MediaStream.idl Modules/mediastream/MediaStream.idl
Modules/mediastream/MediaStreamEvent.idl Modules/mediastream/MediaStreamEvent.idl
...@@ -261,7 +260,6 @@ set(WebCore_IDL_FILES ...@@ -261,7 +260,6 @@ set(WebCore_IDL_FILES
Modules/webaudio/AudioSourceNode.idl Modules/webaudio/AudioSourceNode.idl
Modules/webaudio/BiquadFilterNode.idl Modules/webaudio/BiquadFilterNode.idl
Modules/webaudio/ConvolverNode.idl Modules/webaudio/ConvolverNode.idl
Modules/webaudio/DOMWindowWebAudio.idl
Modules/webaudio/DelayNode.idl Modules/webaudio/DelayNode.idl
Modules/webaudio/DynamicsCompressorNode.idl Modules/webaudio/DynamicsCompressorNode.idl
Modules/webaudio/ScriptProcessorNode.idl Modules/webaudio/ScriptProcessorNode.idl
...@@ -291,7 +289,6 @@ set(WebCore_IDL_FILES ...@@ -291,7 +289,6 @@ set(WebCore_IDL_FILES
Modules/webdatabase/SQLTransactionSyncCallback.idl Modules/webdatabase/SQLTransactionSyncCallback.idl
Modules/websockets/CloseEvent.idl Modules/websockets/CloseEvent.idl
Modules/websockets/DOMWindowWebSocket.idl
Modules/websockets/WebSocket.idl Modules/websockets/WebSocket.idl
Modules/websockets/WorkerContextWebSocket.idl Modules/websockets/WorkerContextWebSocket.idl
...@@ -2948,6 +2945,7 @@ set(SCRIPTS_BINDINGS ...@@ -2948,6 +2945,7 @@ set(SCRIPTS_BINDINGS
) )
set(IDL_FILES_TMP ${DERIVED_SOURCES_WEBCORE_DIR}/idl_files.tmp) set(IDL_FILES_TMP ${DERIVED_SOURCES_WEBCORE_DIR}/idl_files.tmp)
set(SUPPLEMENTAL_DEPENDENCY_FILE ${DERIVED_SOURCES_WEBCORE_DIR}/supplemental_dependency.tmp) set(SUPPLEMENTAL_DEPENDENCY_FILE ${DERIVED_SOURCES_WEBCORE_DIR}/supplemental_dependency.tmp)
set(WINDOW_CONSTRUCTORS_FILE ${DERIVED_SOURCES_WEBCORE_DIR}/DOMWindowConstructors.idl)
set(IDL_ATTRIBUTES_FILE ${WEBCORE_DIR}/bindings/scripts/IDLAttributes.txt) set(IDL_ATTRIBUTES_FILE ${WEBCORE_DIR}/bindings/scripts/IDLAttributes.txt)
include(${WEBCORE_DIR}/UseJSC.cmake) include(${WEBCORE_DIR}/UseJSC.cmake)
......
This diff is collapsed.
...@@ -147,7 +147,6 @@ BINDING_IDLS = \ ...@@ -147,7 +147,6 @@ BINDING_IDLS = \
$(WebCore)/Modules/webaudio/AudioSourceNode.idl \ $(WebCore)/Modules/webaudio/AudioSourceNode.idl \
$(WebCore)/Modules/webaudio/BiquadFilterNode.idl \ $(WebCore)/Modules/webaudio/BiquadFilterNode.idl \
$(WebCore)/Modules/webaudio/ConvolverNode.idl \ $(WebCore)/Modules/webaudio/ConvolverNode.idl \
$(WebCore)/Modules/webaudio/DOMWindowWebAudio.idl \
$(WebCore)/Modules/webaudio/DelayNode.idl \ $(WebCore)/Modules/webaudio/DelayNode.idl \
$(WebCore)/Modules/webaudio/DynamicsCompressorNode.idl \ $(WebCore)/Modules/webaudio/DynamicsCompressorNode.idl \
$(WebCore)/Modules/webaudio/ScriptProcessorNode.idl \ $(WebCore)/Modules/webaudio/ScriptProcessorNode.idl \
...@@ -176,7 +175,6 @@ BINDING_IDLS = \ ...@@ -176,7 +175,6 @@ BINDING_IDLS = \
$(WebCore)/Modules/webdatabase/SQLTransactionSyncCallback.idl \ $(WebCore)/Modules/webdatabase/SQLTransactionSyncCallback.idl \
$(WebCore)/Modules/webdatabase/WorkerContextWebDatabase.idl \ $(WebCore)/Modules/webdatabase/WorkerContextWebDatabase.idl \
$(WebCore)/Modules/websockets/CloseEvent.idl \ $(WebCore)/Modules/websockets/CloseEvent.idl \
$(WebCore)/Modules/websockets/DOMWindowWebSocket.idl \
$(WebCore)/Modules/websockets/WebSocket.idl \ $(WebCore)/Modules/websockets/WebSocket.idl \
$(WebCore)/Modules/websockets/WorkerContextWebSocket.idl \ $(WebCore)/Modules/websockets/WorkerContextWebSocket.idl \
$(WebCore)/css/CSSCharsetRule.idl \ $(WebCore)/css/CSSCharsetRule.idl \
...@@ -662,6 +660,7 @@ WEB_DOM_HEADERS := ...@@ -662,6 +660,7 @@ WEB_DOM_HEADERS :=
all : \ all : \
$(SUPPLEMENTAL_DEPENDENCY_FILE) \ $(SUPPLEMENTAL_DEPENDENCY_FILE) \
$(WINDOW_CONSTRUCTORS_FILE) \
$(JS_DOM_HEADERS) \ $(JS_DOM_HEADERS) \
$(WEB_DOM_HEADERS) \ $(WEB_DOM_HEADERS) \
\ \
...@@ -1002,6 +1001,7 @@ JS_BINDINGS_SCRIPTS = $(GENERATE_SCRIPTS) bindings/scripts/CodeGeneratorJS.pm ...@@ -1002,6 +1001,7 @@ JS_BINDINGS_SCRIPTS = $(GENERATE_SCRIPTS) bindings/scripts/CodeGeneratorJS.pm
SUPPLEMENTAL_DEPENDENCY_FILE = ./SupplementalDependencies.txt SUPPLEMENTAL_DEPENDENCY_FILE = ./SupplementalDependencies.txt
SUPPLEMENTAL_MAKEFILE_DEPS = ./SupplementalDependencies.dep SUPPLEMENTAL_MAKEFILE_DEPS = ./SupplementalDependencies.dep
WINDOW_CONSTRUCTORS_FILE = ./DOMWindowConstructors.idl
IDL_FILES_TMP = ./idl_files.tmp IDL_FILES_TMP = ./idl_files.tmp
ADDITIONAL_IDLS = $(WebCore)/inspector/JavaScriptCallFrame.idl ADDITIONAL_IDLS = $(WebCore)/inspector/JavaScriptCallFrame.idl
IDL_ATTRIBUTES_FILE = $(WebCore)/bindings/scripts/IDLAttributes.txt IDL_ATTRIBUTES_FILE = $(WebCore)/bindings/scripts/IDLAttributes.txt
...@@ -1013,10 +1013,10 @@ space += ...@@ -1013,10 +1013,10 @@ space +=
$(SUPPLEMENTAL_MAKEFILE_DEPS) : $(PREPROCESS_IDLS_SCRIPTS) $(BINDING_IDLS) $(ADDITIONAL_IDLS) $(SUPPLEMENTAL_MAKEFILE_DEPS) : $(PREPROCESS_IDLS_SCRIPTS) $(BINDING_IDLS) $(ADDITIONAL_IDLS)
printf "$(subst $(space),,$(patsubst %,%\n,$(BINDING_IDLS) $(ADDITIONAL_IDLS)))" > $(IDL_FILES_TMP) printf "$(subst $(space),,$(patsubst %,%\n,$(BINDING_IDLS) $(ADDITIONAL_IDLS)))" > $(IDL_FILES_TMP)
$(call preprocess_idls_script, $(PREPROCESS_IDLS_SCRIPTS)) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --idlFilesList $(IDL_FILES_TMP) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) --supplementalMakefileDeps $@ $(call preprocess_idls_script, $(PREPROCESS_IDLS_SCRIPTS)) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --idlFilesList $(IDL_FILES_TMP) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) --windowConstructorsFile $(WINDOW_CONSTRUCTORS_FILE) --supplementalMakefileDeps $@
rm -f $(IDL_FILES_TMP) rm -f $(IDL_FILES_TMP)
JS%.h : %.idl $(JS_BINDINGS_SCRIPTS) $(IDL_ATTRIBUTES_FILE) JS%.h : %.idl $(JS_BINDINGS_SCRIPTS) $(IDL_ATTRIBUTES_FILE) $(WINDOW_CONSTRUCTORS_FILE)
$(call generator_script, $(JS_BINDINGS_SCRIPTS)) $(IDL_COMMON_ARGS) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --generator JS --idlAttributesFile $(IDL_ATTRIBUTES_FILE) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) $< $(call generator_script, $(JS_BINDINGS_SCRIPTS)) $(IDL_COMMON_ARGS) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --generator JS --idlAttributesFile $(IDL_ATTRIBUTES_FILE) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) $<
include $(SUPPLEMENTAL_MAKEFILE_DEPS) include $(SUPPLEMENTAL_MAKEFILE_DEPS)
......
...@@ -161,7 +161,6 @@ IDL_BINDINGS += \ ...@@ -161,7 +161,6 @@ IDL_BINDINGS += \
$$PWD/Modules/webaudio/BiquadFilterNode.idl \ $$PWD/Modules/webaudio/BiquadFilterNode.idl \
$$PWD/Modules/webaudio/ConvolverNode.idl \ $$PWD/Modules/webaudio/ConvolverNode.idl \
$$PWD/Modules/webaudio/DelayNode.idl \ $$PWD/Modules/webaudio/DelayNode.idl \
$$PWD/Modules/webaudio/DOMWindowWebAudio.idl \
$$PWD/Modules/webaudio/DynamicsCompressorNode.idl \ $$PWD/Modules/webaudio/DynamicsCompressorNode.idl \
$$PWD/Modules/webaudio/ScriptProcessorNode.idl \ $$PWD/Modules/webaudio/ScriptProcessorNode.idl \
$$PWD/Modules/webaudio/MediaElementAudioSourceNode.idl \ $$PWD/Modules/webaudio/MediaElementAudioSourceNode.idl \
...@@ -189,7 +188,6 @@ IDL_BINDINGS += \ ...@@ -189,7 +188,6 @@ IDL_BINDINGS += \
$$PWD/Modules/webdatabase/SQLTransactionSyncCallback.idl \ $$PWD/Modules/webdatabase/SQLTransactionSyncCallback.idl \
$$PWD/Modules/webdatabase/WorkerContextWebDatabase.idl \ $$PWD/Modules/webdatabase/WorkerContextWebDatabase.idl \
$$PWD/Modules/websockets/CloseEvent.idl \ $$PWD/Modules/websockets/CloseEvent.idl \
$$PWD/Modules/websockets/DOMWindowWebSocket.idl \
$$PWD/Modules/websockets/WebSocket.idl \ $$PWD/Modules/websockets/WebSocket.idl \
$$PWD/Modules/websockets/WorkerContextWebSocket.idl \ $$PWD/Modules/websockets/WorkerContextWebSocket.idl \
$$PWD/css/Counter.idl \ $$PWD/css/Counter.idl \
...@@ -733,6 +731,7 @@ IDL_BINDINGS += generated/$$INTERNAL_SETTINGS_GENERATED_IDL ...@@ -733,6 +731,7 @@ IDL_BINDINGS += generated/$$INTERNAL_SETTINGS_GENERATED_IDL
# GENERATOR 0: Resolve [Supplemental] dependency in IDLs # GENERATOR 0: Resolve [Supplemental] dependency in IDLs
SUPPLEMENTAL_DEPENDENCY_FILE = supplemental_dependency.tmp SUPPLEMENTAL_DEPENDENCY_FILE = supplemental_dependency.tmp
WINDOW_CONSTRUCTORS_FILE = DOMWindowConstructors.idl
IDL_FILES_TMP = ${QMAKE_FUNC_FILE_OUT_PATH}/idl_files.tmp IDL_FILES_TMP = ${QMAKE_FUNC_FILE_OUT_PATH}/idl_files.tmp
PREPROCESS_IDLS_SCRIPT = $$PWD/bindings/scripts/preprocess-idls.pl PREPROCESS_IDLS_SCRIPT = $$PWD/bindings/scripts/preprocess-idls.pl
IDL_ATTRIBUTES_FILE = $$PWD/bindings/scripts/IDLAttributes.txt IDL_ATTRIBUTES_FILE = $$PWD/bindings/scripts/IDLAttributes.txt
...@@ -750,8 +749,9 @@ for(binding, IDL_BINDINGS) { ...@@ -750,8 +749,9 @@ for(binding, IDL_BINDINGS) {
preprocessIdls.commands += perl -I$$PWD/bindings/scripts $$preprocessIdls.script \ preprocessIdls.commands += perl -I$$PWD/bindings/scripts $$preprocessIdls.script \
--defines \"$$javascriptFeatureDefines()\" \ --defines \"$$javascriptFeatureDefines()\" \
--idlFilesList $$IDL_FILES_TMP \ --idlFilesList $$IDL_FILES_TMP \
--supplementalDependencyFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$SUPPLEMENTAL_DEPENDENCY_FILE --supplementalDependencyFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$SUPPLEMENTAL_DEPENDENCY_FILE \
preprocessIdls.output = $$SUPPLEMENTAL_DEPENDENCY_FILE --windowConstructorsFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$WINDOW_CONSTRUCTORS_FILE
preprocessIdls.output = $$SUPPLEMENTAL_DEPENDENCY_FILE $$WINDOW_CONSTRUCTORS_FILE
preprocessIdls.add_output_to_sources = false preprocessIdls.add_output_to_sources = false
preprocessIdls.depends = $$IDL_BINDINGS preprocessIdls.depends = $$IDL_BINDINGS
GENERATORS += preprocessIdls GENERATORS += preprocessIdls
......
...@@ -407,6 +407,7 @@ IDL_PATH := \ ...@@ -407,6 +407,7 @@ IDL_PATH := \
vpath %.idl $(IDL_PATH) vpath %.idl $(IDL_PATH)
supplemental_dependency_file = $(top_builddir)/DerivedSources/WebCore/idl_supplemental_dependencies supplemental_dependency_file = $(top_builddir)/DerivedSources/WebCore/idl_supplemental_dependencies
window_constructors_file = $(top_builddir)/DerivedSources/WebCore/DOMWindowConstructors.idl
idl_files_list = $(top_builddir)/DerivedSources/WebCore/idl_files_list idl_files_list = $(top_builddir)/DerivedSources/WebCore/idl_files_list
idl_attributes_file = $(WebCore)/bindings/scripts/IDLAttributes.txt idl_attributes_file = $(WebCore)/bindings/scripts/IDLAttributes.txt
...@@ -415,14 +416,14 @@ $(supplemental_dependency_file): $(SCRIPTS_FOR_PREPROCESS_IDLS) $(dom_binding_id ...@@ -415,14 +416,14 @@ $(supplemental_dependency_file): $(SCRIPTS_FOR_PREPROCESS_IDLS) $(dom_binding_id
$(AM_V_GEN) $(AM_V_GEN)
$(AM_V_at)echo -n > $(idl_files_list) $(AM_V_at)echo -n > $(idl_files_list)
$(AM_V_at)($(foreach idl, $(dom_binding_idls), echo $(idl) &&) echo -n) >> $(idl_files_list) $(AM_V_at)($(foreach idl, $(dom_binding_idls), echo $(idl) &&) echo -n) >> $(idl_files_list)
$(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/preprocess-idls.pl --defines "LANGUAGE_JAVASCRIPT=1 $(feature_defines)" --idlFilesList $(idl_files_list) --supplementalDependencyFile $@ $(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/preprocess-idls.pl --defines "LANGUAGE_JAVASCRIPT=1 $(feature_defines)" --idlFilesList $(idl_files_list) --windowConstructorsFile $(window_constructors_file) --supplementalDependencyFile $@
# This does not appear to work correctly with gnumake unless # This does not appear to work correctly with gnumake unless
# it includes an empty command list (the semicolon). # it includes an empty command list (the semicolon).
DerivedSources/WebCore/JS%.cpp: DerivedSources/WebCore/JS%.h; DerivedSources/WebCore/JS%.cpp: DerivedSources/WebCore/JS%.h;
.SECONDARY: .SECONDARY:
DerivedSources/WebCore/JS%.h: %.idl $(SCRIPTS_FOR_GENERATE_BINDINGS) $(WebCore)/bindings/scripts/CodeGeneratorJS.pm $(supplemental_dependency_file) $(idl_attributes_file) DerivedSources/WebCore/JS%.h: %.idl $(SCRIPTS_FOR_GENERATE_BINDINGS) $(WebCore)/bindings/scripts/CodeGeneratorJS.pm $(supplemental_dependency_file) $(idl_attributes_file) $(window_constructors_file)
$(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/generate-bindings.pl $(IDL_PATH:%=--include "%") --outputDir "$(GENSOURCES_WEBCORE)" --defines "LANGUAGE_JAVASCRIPT=1 $(feature_defines)" --generator JS --idlAttributesFile $(idl_attributes_file) --supplementalDependencyFile $(supplemental_dependency_file) $< $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/generate-bindings.pl $(IDL_PATH:%=--include "%") --outputDir "$(GENSOURCES_WEBCORE)" --defines "LANGUAGE_JAVASCRIPT=1 $(feature_defines)" --generator JS --idlAttributesFile $(idl_attributes_file) --supplementalDependencyFile $(supplemental_dependency_file) $<
.SECONDARY: .SECONDARY:
......
...@@ -1269,7 +1269,6 @@ dom_binding_idls += \ ...@@ -1269,7 +1269,6 @@ dom_binding_idls += \
$(WebCore)/Modules/mediasource/MediaSource.idl \ $(WebCore)/Modules/mediasource/MediaSource.idl \
$(WebCore)/Modules/mediasource/SourceBuffer.idl \ $(WebCore)/Modules/mediasource/SourceBuffer.idl \
$(WebCore)/Modules/mediasource/SourceBufferList.idl \ $(WebCore)/Modules/mediasource/SourceBufferList.idl \
$(WebCore)/Modules/mediastream/DOMWindowMediaStream.idl \
$(WebCore)/Modules/mediastream/LocalMediaStream.idl \ $(WebCore)/Modules/mediastream/LocalMediaStream.idl \
$(WebCore)/Modules/mediastream/MediaStream.idl \ $(WebCore)/Modules/mediastream/MediaStream.idl \
$(WebCore)/Modules/mediastream/MediaStreamEvent.idl \ $(WebCore)/Modules/mediastream/MediaStreamEvent.idl \
...@@ -1324,7 +1323,6 @@ dom_binding_idls += \ ...@@ -1324,7 +1323,6 @@ dom_binding_idls += \
$(WebCore)/Modules/webaudio/BiquadFilterNode.idl \ $(WebCore)/Modules/webaudio/BiquadFilterNode.idl \
$(WebCore)/Modules/webaudio/ConvolverNode.idl \ $(WebCore)/Modules/webaudio/ConvolverNode.idl \
$(WebCore)/Modules/webaudio/DelayNode.idl \ $(WebCore)/Modules/webaudio/DelayNode.idl \
$(WebCore)/Modules/webaudio/DOMWindowWebAudio.idl \
$(WebCore)/Modules/webaudio/DynamicsCompressorNode.idl \ $(WebCore)/Modules/webaudio/DynamicsCompressorNode.idl \
$(WebCore)/Modules/webaudio/ScriptProcessorNode.idl \ $(WebCore)/Modules/webaudio/ScriptProcessorNode.idl \
$(WebCore)/Modules/webaudio/MediaElementAudioSourceNode.idl \ $(WebCore)/Modules/webaudio/MediaElementAudioSourceNode.idl \
...@@ -1352,7 +1350,6 @@ dom_binding_idls += \ ...@@ -1352,7 +1350,6 @@ dom_binding_idls += \
$(WebCore)/Modules/webdatabase/SQLTransactionSyncCallback.idl \ $(WebCore)/Modules/webdatabase/SQLTransactionSyncCallback.idl \
$(WebCore)/Modules/webdatabase/WorkerContextWebDatabase.idl \ $(WebCore)/Modules/webdatabase/WorkerContextWebDatabase.idl \
$(WebCore)/Modules/websockets/CloseEvent.idl \ $(WebCore)/Modules/websockets/CloseEvent.idl \
$(WebCore)/Modules/websockets/DOMWindowWebSocket.idl \
$(WebCore)/Modules/websockets/WebSocket.idl \ $(WebCore)/Modules/websockets/WebSocket.idl \
$(WebCore)/Modules/websockets/WorkerContextWebSocket.idl \ $(WebCore)/Modules/websockets/WorkerContextWebSocket.idl \
$(WebCore)/css/CSSCharsetRule.idl \ $(WebCore)/css/CSSCharsetRule.idl \
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
// http://dev.w3.org/2009/dap/system-info/battery-status.html // http://dev.w3.org/2009/dap/system-info/battery-status.html
[ [
NoInterfaceObject,
Conditional=BATTERY_STATUS, Conditional=BATTERY_STATUS,
ActiveDOMObject, ActiveDOMObject,
EventTarget EventTarget
......
...@@ -23,10 +23,10 @@ ...@@ -23,10 +23,10 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
interface [ [
Conditional=ENCRYPTED_MEDIA_V2, Conditional=ENCRYPTED_MEDIA_V2,
ConstructorTemplate=Event ConstructorTemplate=Event
] MediaKeyMessageEvent : Event { ] interface MediaKeyMessageEvent : Event {
readonly attribute Uint8Array message; readonly attribute Uint8Array message;
readonly attribute [InitializedByEventConstructor] DOMString destinationURL; readonly attribute [InitializedByEventConstructor] DOMString destinationURL;
}; };
......
...@@ -23,10 +23,10 @@ ...@@ -23,10 +23,10 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
interface [ [
Conditional=ENCRYPTED_MEDIA_V2, Conditional=ENCRYPTED_MEDIA_V2,
ConstructorTemplate=Event ConstructorTemplate=Event
] MediaKeyNeededEvent : Event { ] interface MediaKeyNeededEvent : Event {
readonly attribute Uint8Array initData; readonly attribute Uint8Array initData;
}; };
...@@ -23,10 +23,10 @@ ...@@ -23,10 +23,10 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
interface [ [
Conditional=ENCRYPTED_MEDIA_V2, Conditional=ENCRYPTED_MEDIA_V2,
EventTarget, EventTarget,
] MediaKeySession { ] interface MediaKeySession {
// error state // error state
readonly attribute MediaKeyError error; readonly attribute MediaKeyError error;
......
...@@ -23,11 +23,11 @@ ...@@ -23,11 +23,11 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
interface [ [
Conditional=ENCRYPTED_MEDIA_V2, Conditional=ENCRYPTED_MEDIA_V2,
Constructor(DOMString keySystem), Constructor(DOMString keySystem),
ConstructorRaisesException, ConstructorRaisesException,
] MediaKeys { ] interface MediaKeys {
[CallWith=ScriptExecutionContext] MediaKeySession createSession([Default=Undefined] optional DOMString type, [Default=Undefined] optional Uint8Array initData) [CallWith=ScriptExecutionContext] MediaKeySession createSession([Default=Undefined] optional DOMString type, [Default=Undefined] optional Uint8Array initData)
raises(DOMException); raises(DOMException);
......
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
ActiveDOMObject, ActiveDOMObject,
JSNoStaticTables JSNoStaticTables
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
JSNoStaticTables JSNoStaticTables
] interface DOMFileSystemSync { ] interface DOMFileSystemSync {
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
JSGenerateToNativeObject, JSGenerateToNativeObject,
JSGenerateToJSObject, JSGenerateToJSObject,
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
JSGenerateToNativeObject, JSGenerateToNativeObject,
JSGenerateToJSObject, JSGenerateToJSObject,
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
JSNoStaticTables, JSNoStaticTables,
ImplementationLacksVTable ImplementationLacksVTable
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
JSNoStaticTables, JSNoStaticTables,
ImplementationLacksVTable ImplementationLacksVTable
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
CustomToJSObject, CustomToJSObject,
JSNoStaticTables JSNoStaticTables
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
IndexedGetter, IndexedGetter,
JSNoStaticTables, JSNoStaticTables,
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
IndexedGetter, IndexedGetter,
JSNoStaticTables, JSNoStaticTables,
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
CustomToJSObject, CustomToJSObject,
JSNoStaticTables JSNoStaticTables
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
JSGenerateToNativeObject, JSGenerateToNativeObject,
JSGenerateToJSObject, JSGenerateToJSObject,
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
*/ */
[ [
NoInterfaceObject,
Conditional=FILE_SYSTEM, Conditional=FILE_SYSTEM,
JSGenerateToNativeObject, JSGenerateToNativeObject,
JSGenerateToJSObject, JSGenerateToJSObject,
......
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
*/ */
[ [