1 LIST(APPEND WebCore_INCLUDE_DIRECTORIES 2 "${WEBCORE_DIR}/bindings/js" 3 "${WEBCORE_DIR}/bridge/jsc" 4 ) 5 6 LIST(APPEND WebCore_IDL_INCLUDES 7 bindings/js 8 ) 9 10 LIST(APPEND WebCore_SOURCES 11 bindings/js/DOMObjectHashTableMap.cpp 12 bindings/js/DOMWrapperWorld.cpp 13 bindings/js/GCController.cpp 14 bindings/js/IDBBindingUtilities.cpp 15 bindings/js/JSAttrCustom.cpp 16 bindings/js/JSArrayBufferCustom.cpp 17 bindings/js/JSDataViewCustom.cpp 18 bindings/js/JSCDATASectionCustom.cpp 19 bindings/js/JSCSSFontFaceRuleCustom.cpp 20 bindings/js/JSCSSImportRuleCustom.cpp 21 bindings/js/JSCSSMediaRuleCustom.cpp 22 bindings/js/JSCSSPageRuleCustom.cpp 23 bindings/js/JSCSSRuleCustom.cpp 24 bindings/js/JSCSSRuleListCustom.cpp 25 bindings/js/JSCSSStyleDeclarationCustom.cpp 26 bindings/js/JSCSSStyleRuleCustom.cpp 27 bindings/js/JSCSSValueCustom.cpp 28 bindings/js/JSCallbackData.cpp 29 bindings/js/JSCanvasRenderingContext2DCustom.cpp 30 bindings/js/JSCanvasRenderingContextCustom.cpp 31 bindings/js/JSClipboardCustom.cpp 32 bindings/js/JSConsoleCustom.cpp 33 bindings/js/JSCoordinatesCustom.cpp 34 bindings/js/JSCustomPositionCallback.cpp 35 bindings/js/JSCustomPositionErrorCallback.cpp 36 bindings/js/JSCustomSQLStatementErrorCallback.cpp 37 bindings/js/JSCustomVoidCallback.cpp 38 bindings/js/JSCustomXPathNSResolver.cpp 39 bindings/js/JSDOMApplicationCacheCustom.cpp 40 bindings/js/JSDOMBinding.cpp 41 bindings/js/JSDOMFormDataCustom.cpp 42 bindings/js/JSDOMGlobalObject.cpp 43 bindings/js/JSDOMImplementationCustom.cpp 44 bindings/js/JSDOMMimeTypeArrayCustom.cpp 45 bindings/js/JSDOMPluginArrayCustom.cpp 46 bindings/js/JSDOMPluginCustom.cpp 47 bindings/js/JSDOMStringMapCustom.cpp 48 bindings/js/JSDOMWindowBase.cpp 49 bindings/js/JSDOMWindowCustom.cpp 50 bindings/js/JSDOMWindowShell.cpp 51 bindings/js/JSDOMWrapper.cpp 52 bindings/js/JSDataGridColumnListCustom.cpp 53 bindings/js/JSDataGridDataSource.cpp 54 bindings/js/JSDedicatedWorkerContextCustom.cpp 55 bindings/js/JSDeviceMotionEventCustom.cpp 56 bindings/js/JSDeviceOrientationEventCustom.cpp 57 bindings/js/JSDocumentCustom.cpp 58 bindings/js/JSElementCustom.cpp 59 bindings/js/JSErrorHandler.cpp 60 bindings/js/JSEventCustom.cpp 61 bindings/js/JSEventListener.cpp 62 bindings/js/JSEventSourceCustom.cpp 63 bindings/js/JSEventTarget.cpp 64 bindings/js/JSExceptionBase.cpp 65 bindings/js/JSFileReaderCustom.cpp 66 bindings/js/JSFloat32ArrayCustom.cpp 67 bindings/js/JSGeolocationCustom.cpp 68 bindings/js/JSHTMLAllCollectionCustom.cpp 69 bindings/js/JSHTMLAppletElementCustom.cpp 70 bindings/js/JSHTMLCanvasElementCustom.cpp 71 bindings/js/JSHTMLCollectionCustom.cpp 72 bindings/js/JSHTMLDataGridElementCustom.cpp 73 bindings/js/JSHTMLDocumentCustom.cpp 74 bindings/js/JSHTMLElementCustom.cpp 75 bindings/js/JSHTMLEmbedElementCustom.cpp 76 bindings/js/JSHTMLFormElementCustom.cpp 77 bindings/js/JSHTMLFrameElementCustom.cpp 78 bindings/js/JSHTMLFrameSetElementCustom.cpp 79 bindings/js/JSHTMLInputElementCustom.cpp 80 bindings/js/JSHTMLLinkElementCustom.cpp 81 bindings/js/JSHTMLObjectElementCustom.cpp 82 bindings/js/JSHTMLOptionsCollectionCustom.cpp 83 bindings/js/JSHTMLOutputElementCustom.cpp 84 bindings/js/JSHTMLSelectElementCustom.cpp 85 bindings/js/JSHTMLStyleElementCustom.cpp 86 bindings/js/JSHistoryCustom.cpp 87 bindings/js/JSIDBAnyCustom.cpp 88 bindings/js/JSIDBKeyCustom.cpp 89 bindings/js/JSImageConstructor.cpp 90 bindings/js/JSImageDataCustom.cpp 91 bindings/js/JSInt16ArrayCustom.cpp 92 bindings/js/JSInt32ArrayCustom.cpp 93 bindings/js/JSInt8ArrayCustom.cpp 94 bindings/js/JSInjectedScriptHostCustom.cpp 95 bindings/js/JSInjectedScriptManager.cpp 96 bindings/js/JSInspectorFrontendHostCustom.cpp 97 bindings/js/JSJavaScriptCallFrameCustom.cpp 98 bindings/js/JSLazyEventListener.cpp 99 bindings/js/JSLocationCustom.cpp 100 bindings/js/JSMainThreadExecState.cpp 101 bindings/js/JSMemoryInfoCustom.cpp 102 bindings/js/JSMessageChannelCustom.cpp 103 bindings/js/JSMessageEventCustom.cpp 104 bindings/js/JSMessagePortCustom.cpp 105 bindings/js/JSNamedNodeMapCustom.cpp 106 bindings/js/JSNavigatorCustom.cpp 107 bindings/js/JSNodeCustom.cpp 108 bindings/js/JSNodeFilterCondition.cpp 109 bindings/js/JSNodeFilterCustom.cpp 110 bindings/js/JSNodeIteratorCustom.cpp 111 bindings/js/JSNodeListCustom.cpp 112 bindings/js/JSOptionConstructor.cpp 113 bindings/js/JSPluginElementFunctions.cpp 114 bindings/js/JSProcessingInstructionCustom.cpp 115 bindings/js/JSSQLResultSetRowListCustom.cpp 116 bindings/js/JSSQLTransactionCustom.cpp 117 bindings/js/JSSQLTransactionSyncCustom.cpp 118 bindings/js/JSScriptProfileNodeCustom.cpp 119 bindings/js/JSSharedWorkerCustom.cpp 120 bindings/js/JSStorageCustom.cpp 121 bindings/js/JSStyleSheetCustom.cpp 122 bindings/js/JSStyleSheetListCustom.cpp 123 bindings/js/JSTextCustom.cpp 124 bindings/js/JSTouchCustom.cpp 125 bindings/js/JSTouchListCustom.cpp 126 bindings/js/JSTreeWalkerCustom.cpp 127 bindings/js/JSUint16ArrayCustom.cpp 128 bindings/js/JSUint32ArrayCustom.cpp 129 bindings/js/JSUint8ArrayCustom.cpp 130 bindings/js/JSWebKitAnimationCustom.cpp 131 bindings/js/JSWebKitAnimationListCustom.cpp 132 bindings/js/JSWebKitCSSKeyframeRuleCustom.cpp 133 bindings/js/JSWebKitCSSKeyframesRuleCustom.cpp 134 bindings/js/JSWebKitCSSMatrixCustom.cpp 135 bindings/js/JSWebKitPointCustom.cpp 136 bindings/js/JSWebSocketCustom.cpp 137 bindings/js/JSWorkerContextBase.cpp 138 bindings/js/JSWorkerContextCustom.cpp 139 bindings/js/JSWorkerCustom.cpp 140 bindings/js/JSXMLHttpRequestCustom.cpp 141 bindings/js/JSXMLHttpRequestUploadCustom.cpp 142 bindings/js/JSXSLTProcessorCustom.cpp 143 bindings/js/JavaScriptCallFrame.cpp 144 bindings/js/PageScriptDebugServer.cpp 145 bindings/js/ScheduledAction.cpp 146 bindings/js/ScriptCachedFrameData.cpp 147 bindings/js/ScriptCallStackFactory.cpp 148 bindings/js/ScriptController.cpp 149 bindings/js/ScriptDebugServer.cpp 150 bindings/js/ScriptEventListener.cpp 151 bindings/js/ScriptFunctionCall.cpp 152 bindings/js/ScriptGCEvent.cpp 153 bindings/js/ScriptObject.cpp 154 bindings/js/ScriptProfile.cpp 155 bindings/js/ScriptProfiler.cpp 156 bindings/js/ScriptState.cpp 157 bindings/js/ScriptValue.cpp 158 bindings/js/SerializedScriptValue.cpp 159 bindings/js/WorkerScriptController.cpp 160 bindings/js/WorkerScriptDebugServer.cpp 161 162 bridge/IdentifierRep.cpp 163 bridge/NP_jsobject.cpp 164 bridge/npruntime.cpp 165 bridge/runtime_array.cpp 166 bridge/runtime_method.cpp 167 bridge/runtime_object.cpp 168 bridge/runtime_root.cpp 169 170 bridge/c/CRuntimeObject.cpp 171 bridge/c/c_class.cpp 172 bridge/c/c_instance.cpp 173 bridge/c/c_runtime.cpp 174 bridge/c/c_utility.cpp 175 176 bridge/jsc/BridgeJSC.cpp 177 ) 178 179 LIST(APPEND SCRIPTS_BINDINGS 180 ${WEBCORE_DIR}/bindings/scripts/CodeGenerator.pm 181 ) 182 183 SET(IDL_INCLUDES "") 184 FOREACH (_include ${WebCore_IDL_INCLUDES}) 185 LIST(APPEND IDL_INCLUDES --include=${WEBCORE_DIR}/${_include}) 186 ENDFOREACH () 187 188 SET(FEATURE_DEFINES_JAVASCRIPT "LANGUAGE_JAVASCRIPT=1") 189 FOREACH (_feature ${FEATURE_DEFINES}) 190 SET(FEATURE_DEFINES_JAVASCRIPT "${FEATURE_DEFINES_JAVASCRIPT} ${_feature}") 191 ENDFOREACH () 192 193 # Create JavaScript C++ code given an IDL input 194 FOREACH (_file ${WebCore_IDL_FILES}) 195 GET_FILENAME_COMPONENT (_name ${_file} NAME_WE) 196 ADD_CUSTOM_COMMAND( 197 OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/JS${_name}.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/JS${_name}.h 198 MAIN_DEPENDENCY ${_file} 199 DEPENDS ${WEBCORE_DIR}/bindings/scripts/generate-bindings.pl ${SCRIPTS_BINDINGS} ${WEBCORE_DIR}/bindings/scripts/CodeGeneratorJS.pm ${_file} 200 COMMAND ${PERL_EXECUTABLE} -I${WEBCORE_DIR}/bindings/scripts ${WEBCORE_DIR}/bindings/scripts/generate-bindings.pl --defines "${FEATURE_DEFINES_JAVASCRIPT}" --generator JS ${IDL_INCLUDES} --outputDir "${DERIVED_SOURCES_WEBCORE_DIR}" --preprocessor "${CODE_GENERATOR_PREPROCESSOR}" ${WEBCORE_DIR}/${_file} 201 VERBATIM) 202 LIST(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/JS${_name}.cpp) 203 ENDFOREACH () 204