2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
[WebKit-https.git] / WebCore / CMakeLists.txt
1
2 project( WebCore )
3
4 # Global switch for SVG support
5 SET (USE_WEBKIT_SVG_SUPPORT 1)
6
7 include (CheckCXXCompilerFlag)
8
9 include_directories(
10    BEFORE ${CMAKE_CURRENT_BINARY_DIR}
11    ${CMAKE_CURRENT_SOURCE_DIR}/ForwardingHeaders
12    ${CMAKE_CURRENT_SOURCE_DIR}/platform
13    ${CMAKE_CURRENT_SOURCE_DIR}/loader
14    ${CMAKE_CURRENT_BINARY_DIR}/css
15    ${CMAKE_CURRENT_SOURCE_DIR}/css
16    ${CMAKE_CURRENT_SOURCE_DIR}/dom
17    ${CMAKE_CURRENT_SOURCE_DIR}/page
18    ${CMAKE_CURRENT_SOURCE_DIR}/bridge
19    ${CMAKE_CURRENT_SOURCE_DIR}/editing
20    ${CMAKE_CURRENT_SOURCE_DIR}/kwq
21    ${CMAKE_CURRENT_SOURCE_DIR}/rendering
22    ${CMAKE_CURRENT_SOURCE_DIR}/xml
23    ${CMAKE_CURRENT_BINARY_DIR}/xml
24    ${CMAKE_CURRENT_SOURCE_DIR}/html
25    ${CMAKE_CURRENT_SOURCE_DIR}/bindings/js
26    ${CMAKE_CURRENT_BINARY_DIR}/html
27    ${CMAKE_CURRENT_SOURCE_DIR}/kcanvas
28    ${CMAKE_CURRENT_SOURCE_DIR}/kcanvas/device
29    ${CMAKE_CURRENT_SOURCE_DIR}/kcanvas/device/qt 
30    ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2 
31    ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/css
32    ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/svg
33    ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg
34    ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/misc 
35    ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/misc 
36    ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/events
37    ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/bindings/js
38    ${CMAKE_CURRENT_BINARY_DIR}/platform
39    ${CMAKE_CURRENT_SOURCE_DIR}/platform/image-decoders
40    ${CMAKE_CURRENT_SOURCE_DIR}/platform/image-decoders/gif
41    ${CMAKE_CURRENT_SOURCE_DIR}/platform/image-decoders/jpeg
42    ${CMAKE_CURRENT_SOURCE_DIR}/platform/image-decoders/ico
43    ${CMAKE_CURRENT_SOURCE_DIR}/platform/image-decoders/xbm
44    ${CMAKE_CURRENT_SOURCE_DIR}/platform/image-decoders/bmp
45    ${CMAKE_CURRENT_SOURCE_DIR}/platform/image-decoders/png
46    ${CMAKE_CURRENT_SOURCE_DIR}/platform/qt
47    ${CMAKE_CURRENT_SOURCE_DIR}/WebCore+SVG
48    ${CMAKE_CURRENT_SOURCE_DIR}/../JavaScriptCore/kjs
49    ${CMAKE_CURRENT_SOURCE_DIR}/../JavaScriptCore/
50    ${CMAKE_CURRENT_SOURCE_DIR}/../
51    )
52
53 include_directories( ${LIBXML2_INCLUDE_DIR} ${QT_INCLUDES}
54   # don't. pulls in kjs
55   # ${KDE4_KDECORE_INCLUDES}
56   )
57
58 add_definitions ( -DQT3_SUPPORT -Wno-undef -Wno-unused-parameter )
59
60 IF (USE_WEBKIT_SVG_SUPPORT)
61 add_definitions ( -DSVG_SUPPORT=1 )
62 ENDIF (USE_WEBKIT_SVG_SUPPORT)
63
64 check_cxx_compiler_flag(-Wno-variadic-macros __KDE_HAVE_WVARIADIC_MACROS)
65
66 IF(__KDE_HAVE_WVARIADIC_MACROS)
67   add_definitions ( -Wno-variadic-macros )
68 ENDIF(__KDE_HAVE_WVARIADIC_MACROS)
69
70 kde4_automoc(platform/qt/ScrollViewCanvasQt.cpp)
71
72 # rules for generated files
73 IF (USE_WEBKIT_SVG_SUPPORT)
74 set(IDL_BINDINGS_SVG
75 # ksvg2/svg/SVGNumber.idl
76 # ksvg2/svg/SVGPoint.idl
77 # ksvg2/svg/SVGRect.idl
78 # ksvg2/svg/SVGEvent.idl
79
80   ksvg2/svg/SVGAngle.idl
81   ksvg2/svg/SVGMatrix.idl
82   ksvg2/svg/SVGTransform.idl
83   ksvg2/svg/SVGLength.idl
84   ksvg2/svg/SVGAnimatedLength.idl
85   ksvg2/svg/SVGElement.idl
86   ksvg2/svg/SVGColor.idl
87   ksvg2/svg/SVGDocument.idl
88   ksvg2/svg/SVGSVGElement.idl
89   ksvg2/svg/SVGMetadataElement.idl
90 )
91 ENDIF (USE_WEBKIT_SVG_SUPPORT)
92
93 set(IDL_BINDINGS
94   css/CSSValue.idl
95   css/CSSRuleList.idl
96   css/CSSValueList.idl
97   css/CSSStyleDeclaration.idl
98   css/CSSPrimitiveValue.idl
99   css/CSSRule.idl
100   css/Counter.idl
101   css/MediaList.idl
102   dom/Event.idl
103   dom/Range.idl
104   dom/Text.idl
105   dom/DOMImplementation.idl
106   dom/NodeFilter.idl
107   dom/MouseEvent.idl
108   dom/CharacterData.idl
109   dom/DocumentFragment.idl
110   dom/Entity.idl
111   dom/UIEvent.idl
112   dom/Node.idl
113   dom/ProcessingInstruction.idl
114   dom/Notation.idl
115   dom/Element.idl
116   dom/DocumentType.idl
117   dom/Document.idl
118   dom/Attr.idl
119   dom/MutationEvent.idl
120   dom/KeyboardEvent.idl
121   dom/WheelEvent.idl
122   dom/OverflowEvent.idl
123   dom/NodeIterator.idl
124   dom/TreeWalker.idl
125   html/CanvasGradient.idl
126   html/CanvasPattern.idl
127   html/CanvasRenderingContext2D.idl
128   html/HTMLAnchorElement.idl
129   html/HTMLAppletElement.idl
130   html/HTMLAreaElement.idl
131   html/HTMLBaseElement.idl
132   html/HTMLBaseFontElement.idl
133   html/HTMLBlockquoteElement.idl
134   html/HTMLBodyElement.idl
135   html/HTMLBRElement.idl
136   html/HTMLButtonElement.idl
137   html/HTMLCanvasElement.idl
138   html/HTMLDirectoryElement.idl
139   html/HTMLDivElement.idl
140   html/HTMLDListElement.idl
141   html/HTMLDocument.idl
142   html/HTMLElement.idl
143   html/HTMLFieldSetElement.idl
144   html/HTMLFontElement.idl
145   html/HTMLFormElement.idl
146   html/HTMLHeadElement.idl
147   html/HTMLHeadingElement.idl
148   html/HTMLHRElement.idl
149   html/HTMLHtmlElement.idl
150   html/HTMLImageElement.idl
151   html/HTMLInputElement.idl
152   html/HTMLIsIndexElement.idl
153   html/HTMLLabelElement.idl
154   html/HTMLLegendElement.idl
155   html/HTMLLIElement.idl
156   html/HTMLLinkElement.idl
157   html/HTMLMapElement.idl
158   html/HTMLMenuElement.idl
159   html/HTMLMetaElement.idl
160   html/HTMLModElement.idl
161   html/HTMLOListElement.idl
162   html/HTMLOptGroupElement.idl
163   html/HTMLOptionElement.idl
164   html/HTMLParagraphElement.idl
165   html/HTMLParamElement.idl
166   html/HTMLPreElement.idl
167   html/HTMLQuoteElement.idl
168   html/HTMLScriptElement.idl
169   html/HTMLStyleElement.idl
170   html/HTMLTextAreaElement.idl
171   html/HTMLTitleElement.idl
172   html/HTMLUListElement.idl
173   html/HTMLOptionsCollection.idl
174
175   xml/XPathNSResolver.idl
176   xml/XPathExpression.idl
177   xml/XPathResult.idl
178   xml/XPathEvaluator.idl
179  
180   xml/DOMParser.idl
181   xml/XMLSerializer.idl
182
183   page/DOMWindow.idl
184
185   ${IDL_BINDINGS_SVG}
186 )
187
188 set(WebCore-unity-IDLGeneratedSources )
189
190 # create these files at build time on demand, not everytime at cmake-time, Alex
191 foreach (idl ${IDL_BINDINGS})
192    get_filename_component(_basename ${idl} NAME_WE)
193    add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/JS${_basename}.cpp ${CMAKE_CURRENT_BINARY_DIR}/JS${_basename}.h
194       COMMAND perl -I${CMAKE_CURRENT_SOURCE_DIR}/bindings/scripts ${CMAKE_CURRENT_SOURCE_DIR}/bindings/scripts/generate-bindings.pl  --defines \"SVG_SUPPORT=${USE_WEBKIT_SVG_SUPPORT}\" --generator JS --include dom --include html --include xml --include ksvg2/svg --outputdir ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${idl}
195       DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${idl} )
196    set(WebCore-unity-IDLGeneratedSources ${WebCore-unity-IDLGeneratedSources} ${CMAKE_CURRENT_BINARY_DIR}/JS${_basename}.cpp ${CMAKE_CURRENT_BINARY_DIR}/JS${_basename}.h )
197 endforeach (idl)
198
199 set(CREATE_HASH_TABLE ${CMAKE_CURRENT_SOURCE_DIR}/../JavaScriptCore/kjs/create_hash_table )
200
201 macro(CREATE_LUT _srcs_LIST _in_FILE _out_FILE _dep_FILE)
202
203    add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_out_FILE}
204       COMMAND ${PERL_EXECUTABLE} ${CREATE_HASH_TABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_in_FILE} -i > ${CMAKE_CURRENT_BINARY_DIR}/${_out_FILE}
205       DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_in_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_dep_FILE} )
206    set( ${_srcs_LIST}  ${${_srcs_LIST}} ${CMAKE_CURRENT_BINARY_DIR}/${_out_FILE})
207 endmacro(CREATE_LUT)
208
209 macro(CREATE_CPP_LUT _in_FILE _out_FILE _dep_FILE)
210    add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_out_FILE}
211       COMMAND ${PERL_EXECUTABLE} ${CREATE_HASH_TABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_in_FILE} -i > ${CMAKE_CURRENT_BINARY_DIR}/${_out_FILE}
212       DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_in_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_dep_FILE} )
213 endmacro(CREATE_CPP_LUT)
214
215 create_lut(WebCore-unity_LIB_SRCS bindings/js/kjs_window.cpp kjs_window.lut.h bindings/js/kjs_window.cpp)
216 create_lut(WebCore-unity_LIB_SRCS bindings/js/kjs_css.cpp kjs_css.lut.h bindings/js/kjs_css.cpp)
217 create_lut(WebCore-unity_LIB_SRCS bindings/js/kjs_dom.cpp kjs_dom.lut.h bindings/js/kjs_dom.cpp)
218 create_lut(WebCore-unity_LIB_SRCS bindings/js/kjs_html.cpp kjs_html.lut.h bindings/js/kjs_html.cpp)
219 create_lut(WebCore-unity_LIB_SRCS bindings/js/kjs_events.cpp kjs_events.lut.h bindings/js/kjs_events.cpp)
220 create_lut(WebCore-unity_LIB_SRCS bindings/js/kjs_navigator.cpp kjs_navigator.lut.h bindings/js/kjs_navigator.cpp)
221 create_lut(WebCore-unity_LIB_SRCS bindings/js/kjs_traversal.cpp kjs_traversal.lut.h bindings/js/kjs_traversal.cpp)
222 create_lut(WebCore-unity_LIB_SRCS bindings/js/JSXMLHttpRequest.cpp JSXMLHttpRequest.lut.h bindings/js/JSXMLHttpRequest.cpp)
223 create_lut(WebCore-unity_LIB_SRCS bindings/js/JSXSLTProcessor.cpp JSXSLTProcessor.lut.h bindings/js/JSXSLTProcessor.cpp)
224 create_cpp_lut(bindings/js/JSHTMLInputElementBase.cpp JSHTMLInputElementBaseTable.cpp bindings/js/JSHTMLInputElementBase.cpp)
225
226 IF (USE_WEBKIT_SVG_SUPPORT)
227   create_cpp_lut(ksvg2/bindings/js/JSSVGPoint.cpp JSSVGPointTable.cpp ksvg2/bindings/js/JSSVGPoint.cpp)
228   create_cpp_lut(ksvg2/bindings/js/JSSVGRect.cpp JSSVGRectTable.cpp ksvg2/bindings/js/JSSVGRect.cpp)
229 ENDIF (USE_WEBKIT_SVG_SUPPORT)
230
231 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/tokenizer.cpp
232   COMMAND flex -t < ${CMAKE_CURRENT_SOURCE_DIR}/css/tokenizer.flex | perl ${CMAKE_CURRENT_SOURCE_DIR}/css/maketokenizer > ${CMAKE_CURRENT_BINARY_DIR}/tokenizer.cpp
233
234   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/css/tokenizer.flex
235 )
236
237 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/CSSPropertyNames.h ${CMAKE_CURRENT_BINARY_DIR}/CSSPropertyNames.c
238
239   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
240   COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/css/CSSPropertyNames.in ${CMAKE_CURRENT_BINARY_DIR}/CSSPropertyNames.in
241   COMMAND sh ${CMAKE_CURRENT_SOURCE_DIR}/css/makeprop
242
243   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/css/CSSPropertyNames.in
244 )
245
246 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/CSSValueKeywords.h ${CMAKE_CURRENT_BINARY_DIR}/CSSValueKeywords.c
247
248   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
249   COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/css/CSSValueKeywords.in ${CMAKE_CURRENT_BINARY_DIR}
250   COMMAND sh ${CMAKE_CURRENT_SOURCE_DIR}/css/makevalues
251
252   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/css/CSSValueKeywords.in
253 )
254
255 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/CSSGrammar.cpp ${CMAKE_CURRENT_BINARY_DIR}/CSSGrammar.h
256   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
257   COMMAND ${BISON_EXECUTABLE} -d -p cssyy ${CMAKE_CURRENT_SOURCE_DIR}/css/CSSGrammar.y
258   COMMAND mv CSSGrammar.tab.c ${CMAKE_CURRENT_BINARY_DIR}/CSSGrammar.cpp
259   #COMMAND rm -f CSSGrammar.tab.h
260   #COMMAND touch CSSGrammar.h
261   COMMAND mv CSSGrammar.tab.h ${CMAKE_CURRENT_BINARY_DIR}/CSSGrammar.h
262   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/css/CSSGrammar.y
263 )
264
265 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/html/HTMLNames.cpp ${CMAKE_CURRENT_BINARY_DIR}/html/HTMLNames.h
266   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
267   COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/html
268   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/make_names.pl --tags ${CMAKE_CURRENT_SOURCE_DIR}/html/HTMLTagNames.in --attrs ${CMAKE_CURRENT_SOURCE_DIR}/html/HTMLAttributeNames.in --namespace HTML --namespacePrefix xhtml --cppNamespace WebCore --namespaceURI "http://www.w3.org/1999/xhtml" --attrsNullNamespace --output html
269
270   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/html/HTMLTagNames.in ${CMAKE_CURRENT_SOURCE_DIR}/html/HTMLAttributeNames.in
271 )
272
273 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg/SVGNames.cpp ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg/SVGNames.h ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg/SVGElementFactory.cpp ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg/SVGElementFactory.h
274   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
275   COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg
276   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/make_names.pl --tags ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/svg/svgtags.in --attrs ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/svg/svgattrs.in --namespace SVG --cppNamespace WebCore --namespaceURI "http://www.w3.org/2000/svg" --factory --attrsNullNamespace --output ksvg2/svg
277
278   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/svg/svgtags.in ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/svg/svgattrs.in
279 )
280
281 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/misc/XLinkNames.cpp ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/misc/XLinkNames.h
282   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
283   COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/misc
284   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/make_names.pl --attrs ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/misc/xlinkattrs.in --namespace XLink --cppNamespace WebCore --namespaceURI "http://www.w3.org/1999/xlink" --output ksvg2/misc
285
286   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/misc/xlinkattrs.in
287 )
288
289 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/xml/XMLNames.cpp ${CMAKE_CURRENT_BINARY_DIR}/xml/XMLNames.h
290   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
291   COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/xml
292   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/make_names.pl --attrs ${CMAKE_CURRENT_SOURCE_DIR}/xml/xmlattrs.in --namespace XML --cppNamespace WebCore --namespaceURI "http://www.w3.org/XML/1998/namespace" --output xml
293
294   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/xml/xmlattrs.in
295 )
296
297 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/html/HTMLEntityNames.c
298   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
299   COMMAND mkdir -p html
300   COMMAND echo '\#include <string.h>' > html/HTMLEntityNames.c
301   COMMAND ${GPERF_EXECUTABLE} -a -L ANSI-C -C -G -c -o -t -k '*' -N findEntity -D -s 2 < ${CMAKE_CURRENT_SOURCE_DIR}/html/HTMLEntityNames.gperf >> html/HTMLEntityNames.c
302
303   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/html/HTMLEntityNames.gperf
304 )
305
306 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/html/DocTypeStrings.cpp
307   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
308   COMMAND mkdir -p html
309   COMMAND echo '\#include <string.h>' > html/DocTypeStrings.cpp
310   COMMAND ${GPERF_EXECUTABLE} -CEot -L ANSI-C -k \"*\" -N findDoctypeEntry -F ,PubIDInfo::eAlmostStandards,PubIDInfo::eAlmostStandards < ${CMAKE_CURRENT_SOURCE_DIR}/html/DocTypeStrings.gperf >> html/DocTypeStrings.cpp
311   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/html/DocTypeStrings.gperf
312 )
313
314 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/platform/ColorData.c
315   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
316   COMMAND mkdir -p platform
317   COMMAND echo '\#include <string.h>' > platform/ColorData.c
318   COMMAND ${GPERF_EXECUTABLE} -CDEot -L ANSI-C -k \"*\" -N findColor -D -s 2 < ${CMAKE_CURRENT_SOURCE_DIR}/platform/ColorData.gperf >> platform/ColorData.c
319   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/platform/ColorData.gperf
320 )
321
322 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ksvgcssproperties.h
323   COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/css/CSSPropertyNames.in ${CMAKE_CURRENT_BINARY_DIR}/ksvgcssproperties.in
324   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/cssmakeprops -n SVG -f ksvgcssproperties.in
325   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/cssmakeprops ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/css/CSSPropertyNames.in
326 )
327
328 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ksvgcssvalues.h
329   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
330   COMMAND perl -ne 'print lc' ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/css/CSSValueKeywords.in > ksvgcssvalues.in
331   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/cssmakevalues -n SVG -f ksvgcssvalues.in
332   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/scripts/cssmakevalues ${CMAKE_CURRENT_SOURCE_DIR}/ksvg2/css/CSSValueKeywords.in
333 )
334
335 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/UserAgentStyleSheets.h ${CMAKE_CURRENT_BINARY_DIR}/UserAgentStyleSheetsData.cpp
336   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/css/make-css-file-arrays.pl ${CMAKE_CURRENT_BINARY_DIR}/UserAgentStyleSheets.h ${CMAKE_CURRENT_BINARY_DIR}/UserAgentStyleSheetsData.cpp ${CMAKE_CURRENT_SOURCE_DIR}/css/html4.css ${CMAKE_CURRENT_SOURCE_DIR}/css/quirks.css ${CMAKE_CURRENT_SOURCE_DIR}/css/svg.css ${CMAKE_CURRENT_SOURCE_DIR}/css/view-source.css
337   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/css/html4.css ${CMAKE_CURRENT_SOURCE_DIR}/css/quirks.css ${CMAKE_CURRENT_SOURCE_DIR}/css/svg.css
338 )
339
340 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/CharacterData.cpp
341   COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/platform/make-charset-table.pl ${CMAKE_CURRENT_SOURCE_DIR}/platform/character-sets.txt ${CMAKE_CURRENT_SOURCE_DIR}/platform/qt/qt-encodings.txt \" \" > ${CMAKE_CURRENT_BINARY_DIR}/CharacterData.cpp
342   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/platform/make-charset-table.pl ${CMAKE_CURRENT_SOURCE_DIR}/platform/character-sets.txt
343 )
344
345 # source stuff
346 IF (USE_WEBKIT_SVG_SUPPORT)
347 set (SVG_STUFF
348     ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg/SVGNames.cpp
349     ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/svg/SVGElementFactory.cpp
350     ${CMAKE_CURRENT_BINARY_DIR}/ksvg2/misc/XLinkNames.cpp
351     ${CMAKE_CURRENT_BINARY_DIR}/xml/XMLNames.cpp
352
353     ksvg2/bindings/js/JSSVGPoint.cpp
354     ksvg2/bindings/js/JSSVGRect.cpp
355     ksvg2/bindings/js/JSSVGNumber.cpp
356     ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp 
357
358     ksvg2/css/SVGCSSParser.cpp
359     ksvg2/css/SVGRenderStyleDefs.cpp
360     ksvg2/css/SVGRenderStyle.cpp
361     ksvg2/css/SVGCSSStyleSelector.cpp
362     ksvg2/svg/SVGHelper.cpp
363     ksvg2/svg/SVGFEFuncBElement.cpp
364     ksvg2/svg/SVGPathSeg.cpp
365     ksvg2/svg/SVGColor.cpp
366     ksvg2/svg/SVGSwitchElement.cpp
367     ksvg2/svg/SVGFETileElement.cpp
368     ksvg2/svg/SVGDOMImplementation.cpp
369     ksvg2/svg/SVGMarkerElement.cpp
370     ksvg2/svg/SVGFECompositeElement.cpp
371     ksvg2/svg/SVGPoint.cpp
372     ksvg2/svg/SVGImageElement.cpp
373     ksvg2/svg/SVGAnimateElement.cpp
374     ksvg2/svg/SVGURIReference.cpp
375     ksvg2/svg/SVGLength.cpp
376     ksvg2/svg/SVGPathSegCurvetoCubic.cpp
377     ksvg2/svg/SVGExternalResourcesRequired.cpp
378     ksvg2/svg/SVGPolylineElement.cpp
379     ksvg2/svg/SVGFEOffsetElement.cpp
380     ksvg2/svg/SVGFETurbulenceElement.cpp
381     ksvg2/svg/SVGZoomAndPan.cpp
382     ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp
383     ksvg2/svg/SVGStyledLocatableElement.cpp
384     ksvg2/svg/SVGLineElement.cpp
385     ksvg2/svg/SVGAnimatedAngle.cpp
386     ksvg2/svg/SVGTransform.cpp
387     ksvg2/svg/SVGPathSegLinetoVertical.cpp
388     ksvg2/svg/SVGFitToViewBox.cpp
389     ksvg2/svg/SVGRadialGradientElement.cpp
390     ksvg2/svg/SVGMatrix.cpp
391     ksvg2/svg/SVGAnimatedPreserveAspectRatio.cpp
392     ksvg2/svg/SVGMaskElement.cpp
393     ksvg2/svg/SVGTitleElement.cpp
394     ksvg2/svg/SVGTRefElement.cpp
395     ksvg2/svg/SVGLangSpace.cpp
396     ksvg2/svg/SVGTransformList.cpp
397     ksvg2/svg/SVGNumber.cpp
398     ksvg2/svg/SVGStylable.cpp
399     ksvg2/svg/SVGPolyElement.cpp
400     ksvg2/svg/SVGPolygonElement.cpp
401 #   ksvg2/svg/SVGElementInstanceList.cpp
402     ksvg2/svg/SVGTSpanElement.cpp
403     ksvg2/svg/SVGFEFuncRElement.cpp
404     ksvg2/svg/SVGAnimatedPoints.cpp
405     ksvg2/svg/SVGFEFloodElement.cpp
406     ksvg2/svg/SVGPointList.cpp
407     ksvg2/svg/SVGAnimatedEnumeration.cpp
408     ksvg2/svg/SVGAnimatedPathData.cpp
409     ksvg2/svg/SVGUseElement.cpp
410     ksvg2/svg/SVGNumberList.cpp
411     ksvg2/svg/SVGFEPointLightElement.cpp
412     ksvg2/svg/SVGPathSegLineto.cpp
413     ksvg2/svg/SVGRectElement.cpp
414     ksvg2/svg/SVGTextContentElement.cpp
415     ksvg2/svg/SVGFESpotLightElement.cpp
416     ksvg2/svg/SVGLocatable.cpp
417     ksvg2/svg/SVGEllipseElement.cpp
418     ksvg2/svg/SVGPathElement.cpp
419     ksvg2/svg/SVGStyledElement.cpp
420     ksvg2/svg/SVGFEMergeNodeElement.cpp
421     ksvg2/svg/SVGAnimatedLengthList.cpp
422     ksvg2/svg/svgpathparser.cpp
423     ksvg2/svg/SVGFEGaussianBlurElement.cpp
424     ksvg2/svg/SVGLinearGradientElement.cpp
425     ksvg2/svg/SVGFEDisplacementMapElement.cpp
426     ksvg2/svg/SVGFEImageElement.cpp
427     ksvg2/svg/SVGFEDiffuseLightingElement.cpp
428     ksvg2/svg/SVGSymbolElement.cpp
429     ksvg2/svg/SVGAnimatedLength.cpp
430     ksvg2/svg/SVGForeignObjectElement.cpp
431     ksvg2/svg/SVGAngle.cpp
432     ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp
433     ksvg2/svg/SVGSVGElement.cpp
434     ksvg2/svg/SVGFESpecularLightingElement.cpp
435     ksvg2/svg/SVGAnimateColorElement.cpp
436     ksvg2/svg/SVGGElement.cpp
437     ksvg2/svg/SVGFEFuncGElement.cpp
438     ksvg2/svg/SVGFEComponentTransferElement.cpp
439     ksvg2/svg/SVGSetElement.cpp
440     ksvg2/svg/SVGFEBlendElement.cpp
441     ksvg2/svg/SVGFEMergeElement.cpp
442     ksvg2/svg/SVGAnimatedString.cpp
443     ksvg2/svg/SVGCursorElement.cpp
444     ksvg2/svg/SVGAnimatedNumber.cpp
445     ksvg2/svg/SVGStringList.cpp
446 #   ksvg2/svg/SVGElementInstance.cpp
447     ksvg2/svg/SVGRect.cpp
448     ksvg2/svg/SVGFilterElement.cpp
449     ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp
450     ksvg2/svg/SVGPatternElement.cpp
451     ksvg2/svg/SVGPathSegList.cpp
452     ksvg2/svg/SVGStyleElement.cpp
453     ksvg2/svg/SVGAnimatedColor.cpp
454     ksvg2/svg/SVGPaint.cpp
455     ksvg2/svg/SVGFEDistantLightElement.cpp
456     ksvg2/svg/SVGTextPositioningElement.cpp
457     ksvg2/svg/SVGAnimatedRect.cpp
458     ksvg2/svg/SVGPreserveAspectRatio.cpp
459     ksvg2/svg/SVGScriptElement.cpp
460     ksvg2/svg/SVGComponentTransferFunctionElement.cpp
461     ksvg2/svg/SVGTextElement.cpp
462     ksvg2/svg/SVGViewElement.cpp
463     ksvg2/svg/SVGAnimatedTransformList.cpp
464     ksvg2/svg/SVGLengthList.cpp
465     ksvg2/svg/SVGStyledTransformableElement.cpp
466     ksvg2/svg/SVGPathSegArc.cpp
467     ksvg2/svg/SVGAnimatedBoolean.cpp
468     ksvg2/svg/SVGDescElement.cpp
469     ksvg2/svg/SVGTransformable.cpp
470     ksvg2/svg/SVGDocument.cpp
471     ksvg2/svg/SVGAnimatedInteger.cpp
472     ksvg2/svg/SVGClipPathElement.cpp
473     ksvg2/svg/SVGPathSegMoveto.cpp
474     ksvg2/svg/SVGAElement.cpp
475     ksvg2/svg/SVGCircleElement.cpp
476     ksvg2/svg/SVGFEFuncAElement.cpp
477     ksvg2/svg/SVGTests.cpp
478     ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp
479     ksvg2/svg/SVGElement.cpp
480     ksvg2/svg/SVGAnimateTransformElement.cpp
481     ksvg2/svg/SVGAnimatedNumberList.cpp
482     ksvg2/svg/SVGFEColorMatrixElement.cpp
483     ksvg2/svg/SVGGradientElement.cpp
484     ksvg2/svg/SVGAnimationElement.cpp
485     ksvg2/svg/SVGFELightElement.cpp
486     ksvg2/svg/SVGPathSegClosePath.cpp
487     ksvg2/svg/SVGPathSegLinetoHorizontal.cpp
488     ksvg2/svg/SVGStopElement.cpp
489     ksvg2/svg/SVGDefsElement.cpp
490     ksvg2/svg/SVGMetadataElement.cpp
491 #   ksvg2/ecma/GlobalObject.cpp
492 #   ksvg2/ecma/Ecma.cpp
493     ksvg2/misc/SVGImageLoader.cpp
494     ksvg2/misc/SVGDocumentExtensions.cpp
495     ksvg2/misc/KSVGTimeScheduler.cpp
496     ksvg2/misc/KCanvasRenderingStyle.cpp
497     ksvg2/events/JSSVGLazyEventListener.cpp
498     ksvg2/events/SVGZoomEvent.cpp
499     kcanvas/KCanvasCreator.cpp
500     kcanvas/KCanvasTreeDebug.cpp
501     kcanvas/KCanvasFilters.cpp
502     kcanvas/RenderSVGText.cpp
503     kcanvas/device/KRenderingPaintServerGradient.cpp
504     kcanvas/device/KRenderingPaintServerSolid.cpp
505     kcanvas/device/KRenderingFillPainter.cpp
506     kcanvas/device/KRenderingStrokePainter.cpp
507     kcanvas/device/KRenderingPaintServerPattern.cpp
508     kcanvas/device/KRenderingDevice.cpp
509     kcanvas/device/qt/RenderPathQt.cpp
510     kcanvas/device/qt/KRenderingDeviceQt.cpp
511     kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp
512     kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp
513     kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp
514     kcanvas/device/qt/KRenderingPaintServerQt.cpp
515     kcanvas/device/qt/KCanvasClipperQt.cpp
516 #   kcanvas/device/qt/KCanvasFilterQt.cpp
517 #   kcanvas/device/qt/KCanvasImageItemQt.cpp
518     kcanvas/RenderSVGContainer.cpp
519     kcanvas/RenderPath.cpp
520     kcanvas/KCanvasResources.cpp
521     kcanvas/RenderSVGImage.cpp
522     kcanvas/RenderForeignObject.cpp
523  )
524 ENDIF(USE_WEBKIT_SVG_SUPPORT)
525
526
527 set(WebCore_SRCS
528
529     ${WebCore-unity_LIB_SRCS}
530
531     ${CMAKE_CURRENT_BINARY_DIR}/CSSPropertyNames.h
532     ${CMAKE_CURRENT_BINARY_DIR}/CSSValueKeywords.h
533     ${CMAKE_CURRENT_BINARY_DIR}/CSSGrammar.h
534     ${CMAKE_CURRENT_BINARY_DIR}/CSSGrammar.cpp
535     ${CMAKE_CURRENT_BINARY_DIR}/CharacterData.cpp
536     ${CMAKE_CURRENT_BINARY_DIR}/UserAgentStyleSheets.h
537     ${CMAKE_CURRENT_BINARY_DIR}/UserAgentStyleSheetsData.cpp
538     ${CMAKE_CURRENT_BINARY_DIR}/html/HTMLNames.cpp
539     ${CMAKE_CURRENT_BINARY_DIR}/html/HTMLEntityNames.c
540     ${CMAKE_CURRENT_BINARY_DIR}/html/DocTypeStrings.cpp
541     ${CMAKE_CURRENT_BINARY_DIR}/platform/ColorData.c
542     ${CMAKE_CURRENT_BINARY_DIR}/ksvgcssproperties.h
543     ${CMAKE_CURRENT_BINARY_DIR}/ksvgcssvalues.h
544
545     bindings/js/kjs_binding.cpp
546     bindings/js/kjs_css.cpp
547     bindings/js/kjs_dom.cpp
548     bindings/js/kjs_events.cpp
549     bindings/js/kjs_html.cpp
550     bindings/js/kjs_navigator.cpp
551     bindings/js/kjs_proxy.cpp
552     bindings/js/kjs_traversal.cpp
553     bindings/js/kjs_window.cpp
554
555     bindings/js/JSCanvasRenderingContext2DCustom.cpp
556     bindings/js/JSHTMLElementWrapperFactory.cpp
557     bindings/js/JSHTMLFormElementCustom.cpp
558     bindings/js/JSHTMLOptionElementConstructor.cpp
559     bindings/js/JSHTMLOptionsCollectionCustom.cpp
560     bindings/js/JSHTMLInputElementBase.cpp
561     bindings/js/JSXMLHttpRequest.cpp
562     bindings/js/JSNodeIteratorCustom.cpp
563     bindings/js/JSTreeWalkerCustom.cpp
564     bindings/js/JSXSLTProcessor.cpp
565
566     css/cssparser.cpp
567     css/cssstyleselector.cpp
568     css/csshelper.cpp
569     css/FontValue.cpp
570     css/CSSSelector.cpp
571     css/MediaFeatureNames.cpp
572     css/CSSRuleList.cpp
573     css/MediaQueryExp.cpp
574     css/CSSImportRule.cpp
575     css/CSSValueList.cpp
576     css/CSSStyleDeclaration.cpp
577     css/CSSPrimitiveValue.cpp
578     css/CSSProperty.cpp
579     css/CSSBorderImageValue.cpp
580     css/MediaQuery.cpp
581     css/StyleSheet.cpp
582     css/CSSPageRule.cpp
583     css/StyleSheetList.cpp
584     css/MediaQueryEvaluator.cpp
585     css/StyleBase.cpp
586     css/CSSRule.cpp
587     css/CSSStyleSheet.cpp
588     css/CSSInitialValue.cpp
589     css/CSSImageValue.cpp
590     css/CSSStyleRule.cpp
591     css/CSSInheritedValue.cpp
592     css/StyleList.cpp
593     css/FontFamilyValue.cpp
594     css/CSSMediaRule.cpp
595     css/CSSComputedStyleDeclaration.cpp
596     css/CSSMutableStyleDeclaration.cpp
597     css/MediaList.cpp
598     css/CSSFontFaceRule.cpp
599     css/ShadowValue.cpp
600     dom/Event.cpp
601     dom/Range.cpp
602     dom/Text.cpp
603     dom/DOMImplementation.cpp
604     dom/NodeFilter.cpp
605     dom/MouseEvent.cpp
606     dom/EntityReference.cpp
607     dom/NameNodeList.cpp
608     dom/CharacterData.cpp
609     dom/XMLTokenizer.cpp
610     dom/StyledElement.cpp
611     dom/MappedAttribute.cpp
612     dom/NamedAttrMap.cpp
613     dom/ContainerNode.cpp
614     dom/NamedMappedAttrMap.cpp
615     dom/EventNames.cpp
616     dom/Comment.cpp
617     dom/EditingText.cpp
618     dom/DocumentFragment.cpp
619     dom/ChildNodeList.cpp
620     dom/Entity.cpp
621     dom/BeforeTextInsertedEvent.cpp
622     dom/UIEvent.cpp
623     dom/Node.cpp
624     dom/Attribute.cpp
625     dom/Position.cpp
626     dom/ProcessingInstruction.cpp
627     dom/TreeWalker.cpp
628     dom/Notation.cpp
629     dom/Element.cpp
630     dom/NodeFilterCondition.cpp
631     dom/CDATASection.cpp
632     dom/DocumentType.cpp
633     dom/NodeList.cpp
634     dom/CSSMappedAttributeDeclaration.cpp
635     dom/QualifiedName.cpp
636     dom/Document.cpp
637     dom/Attr.cpp
638     dom/OverflowEvent.cpp
639     dom/RegisteredEventListener.cpp
640     dom/EventTargetNode.cpp
641     dom/BeforeUnloadEvent.cpp
642     dom/MutationEvent.cpp
643     dom/MouseRelatedEvent.cpp
644     dom/KeyboardEvent.cpp
645     dom/NodeIterator.cpp
646     dom/ClipboardEvent.cpp
647     dom/Traversal.cpp
648     dom/WheelEvent.cpp
649 #   kwq/KWQWMatrix.cpp
650 #   kwq/KWQCString.cpp
651
652     ${SVG_STUFF}
653     editing/InsertIntoTextNodeCommand.cpp
654     editing/WrapContentsInDummySpanCommand.cpp
655     editing/ReplaceSelectionCommand.cpp
656     editing/MoveSelectionCommand.cpp
657     editing/RemoveNodePreservingChildrenCommand.cpp
658     editing/HTMLInterchange.cpp
659     editing/UnlinkCommand.cpp
660     editing/InsertLineBreakCommand.cpp
661     editing/FormatBlockCommand.cpp
662     editing/AppendNodeCommand.cpp
663     editing/BreakBlockquoteCommand.cpp
664     editing/htmlediting.cpp
665     editing/RebalanceWhitespaceCommand.cpp
666     editing/markup.cpp
667     editing/InsertParagraphSeparatorCommand.cpp
668     editing/ModifySelectionListLevel.cpp
669     editing/JSEditor.cpp
670     editing/Selection.cpp
671     editing/TextIterator.cpp
672     editing/InsertListCommand.cpp
673     editing/IndentOutdentCommand.cpp
674     editing/InsertNodeBeforeCommand.cpp
675     editing/SplitTextNodeContainingElementCommand.cpp
676     editing/TypingCommand.cpp
677     editing/MergeIdenticalElementsCommand.cpp
678     editing/EditCommand.cpp
679     editing/SplitTextNodeCommand.cpp
680     editing/RemoveCSSPropertyCommand.cpp
681     editing/JoinTextNodesCommand.cpp
682     editing/InsertTextCommand.cpp
683     editing/SelectionController.cpp
684     editing/DeleteSelectionCommand.cpp
685     editing/SplitElementCommand.cpp
686     editing/VisiblePosition.cpp
687     editing/ApplyStyleCommand.cpp
688     editing/visible_units.cpp
689     editing/RemoveNodeAttributeCommand.cpp
690     editing/DeleteFromTextNodeCommand.cpp
691     editing/RemoveNodeCommand.cpp
692     editing/CompositeEditCommand.cpp
693     editing/SetNodeAttributeCommand.cpp
694     editing/CreateLinkCommand.cpp
695
696
697 #   kwq/KWQTextStream.cpp
698     xml/XSLStyleSheet.cpp
699     xml/XSLTProcessor.cpp
700     xml/XSLImportRule.cpp
701     xml/DOMParser.cpp
702     xml/XMLSerializer.cpp
703     xml/xmlhttprequest.cpp
704 #   icon/IconDatabase.cpp
705 #   icon/SQLTransaction.cpp
706 #   icon/SQLStatement.cpp
707 #   icon/SiteIcon.cpp
708 #   icon/SQLDatabase.cpp
709     html/HTMLParser.cpp
710     html/HTMLFontElement.cpp
711     html/HTMLEmbedElement.cpp
712     html/HTMLLinkElement.cpp
713     html/HTMLOptGroupElement.cpp
714     html/HTMLCanvasElement.cpp
715     html/HTMLTitleElement.cpp
716     html/CanvasRenderingContext2D.cpp
717     html/HTMLObjectElement.cpp
718     html/HTMLAppletElement.cpp
719     html/HTMLKeygenElement.cpp
720     html/HTMLDivElement.cpp
721     html/HTMLMapElement.cpp
722     html/HTMLScriptElement.cpp
723     html/HTMLHtmlElement.cpp
724     html/HTMLTokenizer.cpp
725     html/HTMLOptionElement.cpp
726     html/HTMLTableCaptionElement.cpp
727     html/HTMLImageLoader.cpp
728     html/FormDataList.cpp
729     html/HTMLLabelElement.cpp
730     html/HTMLTableColElement.cpp
731     html/HTMLDListElement.cpp
732     html/HTMLTablePartElement.cpp
733     html/HTMLTableSectionElement.cpp
734     html/HTMLTextAreaElement.cpp
735     html/HTMLTextFieldInnerElement.cpp
736     html/HTMLAreaElement.cpp
737     html/CanvasStyle.cpp
738     html/HTMLIsIndexElement.cpp
739     html/HTMLHeadElement.cpp
740     html/HTMLFrameSetElement.cpp
741     html/HTMLBodyElement.cpp
742     html/HTMLBRElement.cpp
743     html/HTMLNameCollection.cpp
744     html/HTMLLegendElement.cpp
745     html/HTMLLIElement.cpp
746     html/HTMLParamElement.cpp
747     html/HTMLMetaElement.cpp
748     html/HTMLHeadingElement.cpp
749     html/HTMLUListElement.cpp
750     html/HTMLInputElement.cpp
751     html/HTMLElementFactory.cpp
752     html/HTMLPlugInElement.cpp
753     html/HTMLFieldSetElement.cpp
754     html/HTMLParagraphElement.cpp
755     html/HTMLStyleElement.cpp
756     html/HTMLMarqueeElement.cpp
757     html/HTMLGenericFormElement.cpp
758     html/HTMLElement.cpp
759     html/HTMLDocument.cpp
760     html/HTMLOListElement.cpp
761     html/HTMLFormElement.cpp
762     html/HTMLPreElement.cpp
763     html/HTMLTableElement.cpp
764     html/CanvasGradient.cpp
765     html/HTMLViewSourceDocument.cpp
766     html/HTMLFrameElement.cpp
767     html/HTMLAnchorElement.cpp
768     html/HTMLTableCellElement.cpp
769     html/CanvasPattern.cpp
770     html/HTMLBlockquoteElement.cpp
771     html/HTMLIFrameElement.cpp
772     html/HTMLMenuElement.cpp
773     html/HTMLCollection.cpp
774     html/HTMLModElement.cpp
775     html/HTMLQuoteElement.cpp
776     html/HTMLDirectoryElement.cpp
777     html/HTMLSelectElement.cpp
778     html/HTMLImageElement.cpp
779     html/HTMLOptionsCollection.cpp
780     html/HTMLTableRowElement.cpp
781     html/HTMLBaseFontElement.cpp
782     html/HTMLHRElement.cpp
783     html/HTMLButtonElement.cpp
784     html/HTMLFormCollection.cpp
785     html/HTMLBaseElement.cpp
786     page/FrameTree.cpp
787     page/DOMWindow.cpp
788     page/MouseEventWithHitTestResults.cpp
789     page/Frame.cpp
790     page/Page.cpp
791     page/FrameView.cpp
792     xml/XPathUtil.cpp
793     xml/XPathPredicate.cpp
794     xml/XPathVariableReference.cpp
795     xml/XPathValue.cpp
796     xml/XPathPath.cpp
797     xml/XPathFunctions.cpp
798     xml/XPathParser.cpp
799     xml/XPathStep.cpp
800     xml/XPathExpressionNode.cpp
801     xml/XPathNamespace.cpp
802     xml/XPathNSResolver.cpp
803     xml/XPathExpression.cpp
804     xml/XPathResult.cpp
805     xml/XPathEvaluator.cpp
806     loader/CachedImage.cpp
807     loader/CachedScript.cpp
808     loader/Request.cpp
809     loader/CachedXSLStyleSheet.cpp
810     loader/DocLoader.cpp
811     loader/PluginDocument.cpp
812     loader/TextDocument.cpp
813     loader/ImageDocument.cpp
814     loader/CachedResourceClientWalker.cpp
815     loader/loader.cpp
816     loader/CachedCSSStyleSheet.cpp
817     loader/CachedXBLDocument.cpp
818     loader/CachedResource.cpp
819     loader/Cache.cpp
820     loader/Decoder.cpp
821     loader/FormData.cpp
822     platform/AtomicString.cpp
823     platform/AffineTransform.cpp
824     platform/TextStream.cpp
825     platform/Widget.cpp
826     platform/GlyphWidthMap.cpp
827     platform/Pen.cpp
828     platform/Image.cpp
829     platform/DeprecatedStringList.cpp
830     platform/FloatSize.cpp
831     platform/String.cpp
832     platform/DeprecatedValueListImpl.cpp
833     platform/GraphicsTypes.cpp
834     platform/IntRect.cpp
835     platform/Arena.cpp
836     platform/CharsetNames.cpp
837     platform/ArrayImpl.cpp
838     platform/FloatPoint.cpp
839     platform/SegmentedString.cpp
840     platform/StreamingTextDecoder.cpp
841     platform/StreamingTextDecoderICU.cpp
842     platform/DeprecatedString.cpp
843     platform/DeprecatedCString.cpp
844     platform/TextEncoding.cpp
845     platform/GraphicsContext.cpp
846     platform/Logging.cpp
847     platform/Color.cpp
848     platform/DeprecatedPtrListImpl.cpp
849     platform/KURL.cpp
850     platform/StringImpl.cpp
851     platform/FloatRect.cpp
852     platform/ResourceLoader.cpp
853     platform/qt/AffineTransformQt.cpp
854     platform/qt/StringQt.cpp
855     platform/qt/ColorQt.cpp
856     platform/qt/GlyphMapQt.cpp
857     platform/qt/BrowserExtensionQt.cpp
858     platform/qt/CookieJarQt.cpp
859     platform/qt/FontPlatformDataQt.cpp
860     platform/qt/GraphicsContextQt.cpp
861     platform/qt/ScrollViewQt.cpp
862     platform/qt/TemporaryLinkStubs.cpp
863     platform/qt/CursorQt.cpp
864     platform/qt/WidgetQt.cpp
865     platform/qt/SystemTimeQt.cpp
866     platform/qt/RenderThemeQt.cpp
867     platform/qt/FontDataQt.cpp
868     platform/qt/SharedTimerQt.cpp
869     platform/qt/RenderPopupMenuQt.cpp
870     platform/qt/ResourceLoaderCurl.cpp
871     platform/qt/ResourceLoaderManager.cpp
872     platform/qt/FloatPointQt.cpp
873     platform/qt/ListBoxQt.cpp
874     platform/qt/FloatRectQt.cpp
875     platform/qt/IntPointQt.cpp
876     platform/qt/IntRectQt.cpp
877     platform/qt/IntSizeQt.cpp
878     platform/qt/PageQt.cpp
879     platform/qt/PathQt.cpp
880     platform/qt/ImageQt.cpp
881     platform/qt/ImageSourceQt.cpp
882     platform/qt/FontCacheQt.cpp
883     platform/qt/FontQt.cpp
884 #   platform/qt/LineEditQt.cpp
885     platform/qt/ScreenQt.cpp
886 #   platform/qt/FileButtonQt.cpp
887     platform/qt/FrameQt.cpp
888 #   platform/qt/TextEditQt.cpp
889     platform/qt/ScrollViewCanvasQt.cpp
890     platform/qt/PlatformMouseEventQt.cpp
891     platform/qt/PlatformKeyboardEventQt.cpp
892     platform/image-decoders/bmp/BMPImageDecoder.cpp
893     platform/image-decoders/gif/GIFImageReader.cpp
894     platform/image-decoders/gif/GIFImageDecoder.cpp
895     platform/image-decoders/ico/ICOImageDecoder.cpp
896     platform/image-decoders/png/PNGImageDecoder.cpp
897     platform/image-decoders/xbm/XBMImageDecoder.cpp
898     platform/image-decoders/jpeg/JPEGImageDecoder.cpp
899     platform/FontFamily.cpp
900     platform/Timer.cpp
901     platform/FontCache.cpp
902     platform/FontFallbackList.cpp
903     platform/RegularExpression.cpp
904     platform/GlyphMap.cpp
905     platform/Font.cpp
906     platform/FontData.cpp
907     rendering/RenderReplaced.cpp
908     rendering/RenderPartObject.cpp
909     rendering/RenderView.cpp
910     rendering/RenderMenuList.cpp
911     rendering/RenderPopupMenu.cpp
912     rendering/InlineFlowBox.cpp
913     rendering/RenderListMarker.cpp
914     rendering/RenderImage.cpp
915     rendering/RenderTheme.cpp
916     rendering/RenderLayer.cpp
917     rendering/RenderTableCell.cpp
918     rendering/RenderListItem.cpp
919     rendering/RenderImageButton.cpp
920     rendering/AutoTableLayout.cpp
921     rendering/RenderArena.cpp
922     rendering/RenderWidget.cpp
923     rendering/break_lines.cpp
924     rendering/RenderStyle.cpp
925     rendering/RenderContainer.cpp
926     rendering/EllipsisBox.cpp
927     rendering/DeprecatedRenderSelect.cpp
928     rendering/RenderFieldset.cpp
929     rendering/RenderFrameSet.cpp
930     rendering/RenderTable.cpp
931     rendering/RenderPart.cpp
932     rendering/RenderBlock.cpp
933     rendering/DeprecatedSlider.cpp
934     rendering/InlineBox.cpp
935     rendering/RenderText.cpp
936     rendering/RenderFrame.cpp
937     rendering/RenderLineEdit.cpp
938     rendering/FixedTableLayout.cpp
939     rendering/RenderTableCol.cpp
940     rendering/RenderObject.cpp
941     rendering/RenderTreeAsText.cpp
942     rendering/RootInlineBox.cpp
943     rendering/RenderFormElement.cpp
944     rendering/RenderBox.cpp
945     rendering/RenderButton.cpp
946     rendering/RenderTableSection.cpp
947     rendering/ListMarkerBox.cpp
948     rendering/RenderLabel.cpp
949     rendering/RenderTableRow.cpp
950     rendering/RenderInline.cpp
951     rendering/RenderFileButton.cpp
952     rendering/RenderHTMLCanvas.cpp
953     rendering/bidi.cpp
954     rendering/RenderFlexibleBox.cpp
955     rendering/RenderApplet.cpp
956     rendering/RenderLegend.cpp
957     rendering/RenderTextControl.cpp
958     rendering/RenderTextFragment.cpp
959     rendering/RenderBR.cpp
960     rendering/InlineTextBox.cpp
961     rendering/RenderFlow.cpp
962     platform/image-decoders/png/png.c
963     platform/image-decoders/png/pngget.c
964     platform/image-decoders/png/pngread.c
965     platform/image-decoders/png/pngrutil.c
966     platform/image-decoders/png/pngvcrd.c
967     platform/image-decoders/png/pngwtran.c
968     platform/image-decoders/png/pngerror.c
969     platform/image-decoders/png/pngmem.c
970     platform/image-decoders/png/pngrio.c
971     platform/image-decoders/png/pngset.c
972     platform/image-decoders/png/pngwio.c
973     platform/image-decoders/png/pngwutil.c
974     platform/image-decoders/png/pnggccrd.c
975     platform/image-decoders/png/pngpread.c
976     platform/image-decoders/png/pngrtran.c
977     platform/image-decoders/png/pngtrans.c
978     platform/image-decoders/png/pngwrite.c
979     platform/image-decoders/jpeg/jcomapi.c
980     platform/image-decoders/jpeg/jdapimin.c
981     platform/image-decoders/jpeg/jdapistd.c
982     platform/image-decoders/jpeg/jdatadst.c
983     platform/image-decoders/jpeg/jdatasrc.c
984     platform/image-decoders/jpeg/jdcoefct.c
985     platform/image-decoders/jpeg/jdcolor.c
986     platform/image-decoders/jpeg/jddctmgr.c
987     platform/image-decoders/jpeg/jdhuff.c
988     platform/image-decoders/jpeg/jdinput.c
989     platform/image-decoders/jpeg/jdmainct.c
990     platform/image-decoders/jpeg/jdmarker.c
991     platform/image-decoders/jpeg/jdmaster.c
992     platform/image-decoders/jpeg/jdmerge.c
993     platform/image-decoders/jpeg/jdphuff.c
994     platform/image-decoders/jpeg/jdpostct.c
995     platform/image-decoders/jpeg/jdsample.c
996     platform/image-decoders/jpeg/jerror.c
997     platform/image-decoders/jpeg/jfdctflt.c
998     platform/image-decoders/jpeg/jfdctfst.c
999     platform/image-decoders/jpeg/jfdctint.c
1000     platform/image-decoders/jpeg/jidctflt.c
1001     platform/image-decoders/jpeg/jidctfst.c
1002     platform/image-decoders/jpeg/jidctint.c
1003     platform/image-decoders/jpeg/jmemmgr.c
1004     platform/image-decoders/jpeg/jmemnobs.c
1005     platform/image-decoders/jpeg/jquant1.c
1006     platform/image-decoders/jpeg/jquant2.c
1007     platform/image-decoders/jpeg/jutils.c
1008
1009     ${WebCore-unity-IDLGeneratedSources}
1010 )
1011
1012
1013 kde4_automoc(platform/qt/SharedTimerQt.cpp)
1014
1015 kde4_add_library(WebCore-unity SHARED  ${WebCore_SRCS})
1016
1017 target_link_libraries(WebCore-unity
1018
1019   ${QT_QT3SUPPORT_LIBRARY}
1020   ${QT_QTCORE_LIBRARY}
1021   ${QT_QTSVG_LIBRARY}
1022   ${QT_QTGUI_LIBRARY}
1023   ${LIBXSLT_LIBRARIES}
1024   ${LIBXML2_LIBRARIES}
1025   icuuc
1026   curl
1027   wtf-unity
1028   kjs-unity
1029   pcre-unity
1030
1031 )