56922b5db67e6cec584fd62b74c2b76de0537de5
[WebKit-https.git] / Source / WebCore / GNUmakefile.am
1 include $(srcdir)/Source/WebCore/GNUmakefile.list.am
2
3 SVG_FEATURES :=
4 HTML_FEATURES :=
5
6 WEBCORE_CSS_PROPERTY_NAMES := $(WebCore)/css/CSSPropertyNames.in
7 WEBCORE_CSS_VALUE_KEYWORDS := $(WebCore)/css/CSSValueKeywords.in
8
9 webcore_cppflags += \
10         -I$(srcdir)/Source/ThirdParty/ANGLE/src \
11         -I$(srcdir)/Source/ThirdParty/ANGLE/include \
12         -I$(srcdir)/Source/ThirdParty/ANGLE/include/GLSLANG \
13         -I$(srcdir)/Source/WebCore \
14         -I$(srcdir)/Source/WebCore/Modules/geolocation \
15         -I$(srcdir)/Source/WebCore/Modules/mediastream \
16         -I$(srcdir)/Source/WebCore/Modules/websockets \
17         -I$(srcdir)/Source/WebCore/accessibility \
18         -I$(srcdir)/Source/WebCore/bindings \
19         -I$(srcdir)/Source/WebCore/bindings/generic \
20         -I$(srcdir)/Source/WebCore/bindings/js \
21         -I$(srcdir)/Source/WebCore/bindings/js/specialization \
22         -I$(srcdir)/Source/WebCore/bridge \
23         -I$(srcdir)/Source/WebCore/bridge/c \
24         -I$(srcdir)/Source/WebCore/bridge/jni/jsc \
25         -I$(srcdir)/Source/WebCore/bridge/jsc \
26         -I$(srcdir)/Source/WebCore/css \
27         -I$(srcdir)/Source/WebCore/dom \
28         -I$(srcdir)/Source/WebCore/dom/default \
29         -I$(srcdir)/Source/WebCore/editing \
30         -I$(srcdir)/Source/WebCore/fileapi \
31         -I$(srcdir)/Source/WebCore/history \
32         -I$(srcdir)/Source/WebCore/html \
33         -I$(srcdir)/Source/WebCore/html/canvas \
34         -I$(srcdir)/Source/WebCore/html/parser \
35         -I$(srcdir)/Source/WebCore/html/shadow \
36         -I$(srcdir)/Source/WebCore/html/track \
37         -I$(srcdir)/Source/WebCore/inspector \
38         -I$(srcdir)/Source/WebCore/loader \
39         -I$(srcdir)/Source/WebCore/loader/appcache \
40         -I$(srcdir)/Source/WebCore/loader/archive \
41         -I$(srcdir)/Source/WebCore/loader/cache \
42         -I$(srcdir)/Source/WebCore/loader/icon \
43         -I$(srcdir)/Source/WebCore/mathml \
44         -I$(srcdir)/Source/WebCore/notifications \
45         -I$(srcdir)/Source/WebCore/page \
46         -I$(srcdir)/Source/WebCore/page/animation \
47         -I$(srcdir)/Source/WebCore/page/scrolling \
48         -I$(srcdir)/Source/WebCore/platform \
49         -I$(srcdir)/Source/WebCore/platform/animation \
50         -I$(srcdir)/Source/WebCore/platform/audio \
51         -I$(srcdir)/Source/WebCore/platform/graphics \
52         -I$(srcdir)/Source/WebCore/platform/graphics/filters \
53         -I$(srcdir)/Source/WebCore/platform/graphics/filters/arm \
54         -I$(srcdir)/Source/WebCore/platform/graphics/gpu \
55         -I$(srcdir)/Source/WebCore/platform/graphics/opengl \
56         -I$(srcdir)/Source/WebCore/platform/graphics/opentype \
57         -I$(srcdir)/Source/WebCore/platform/graphics/transforms \
58         -I$(srcdir)/Source/WebCore/platform/image-decoders \
59         -I$(srcdir)/Source/WebCore/platform/image-decoders/bmp \
60         -I$(srcdir)/Source/WebCore/platform/image-decoders/gif \
61         -I$(srcdir)/Source/WebCore/platform/image-decoders/ico \
62         -I$(srcdir)/Source/WebCore/platform/image-decoders/jpeg \
63         -I$(srcdir)/Source/WebCore/platform/image-decoders/webp \
64         -I$(srcdir)/Source/WebCore/platform/image-decoders/png \
65         -I$(srcdir)/Source/WebCore/platform/leveldb \
66         -I$(srcdir)/Source/WebCore/platform/mediastream \
67         -I$(srcdir)/Source/WebCore/platform/mock \
68         -I$(srcdir)/Source/WebCore/platform/network \
69         -I$(srcdir)/Source/WebCore/platform/sql \
70         -I$(srcdir)/Source/WebCore/platform/text \
71         -I$(srcdir)/Source/WebCore/platform/text/transcoder \
72         -I$(srcdir)/Source/WebCore/platform/win \
73         -I$(srcdir)/Source/WebCore/plugins \
74         -I$(srcdir)/Source/WebCore/plugins/win \
75         -I$(srcdir)/Source/WebCore/rendering \
76         -I$(srcdir)/Source/WebCore/rendering/mathml \
77         -I$(srcdir)/Source/WebCore/rendering/style \
78         -I$(srcdir)/Source/WebCore/rendering/svg \
79         -I$(srcdir)/Source/WebCore/storage \
80         -I$(srcdir)/Source/WebCore/svg \
81         -I$(srcdir)/Source/WebCore/svg/animation \
82         -I$(srcdir)/Source/WebCore/svg/graphics \
83         -I$(srcdir)/Source/WebCore/svg/graphics/filters \
84         -I$(srcdir)/Source/WebCore/svg/properties \
85         -I$(srcdir)/Source/WebCore/testing \
86         -I$(srcdir)/Source/WebCore/testing/js \
87         -I$(srcdir)/Source/WebCore/webaudio \
88         -I$(srcdir)/Source/WebCore/websockets \
89         -I$(srcdir)/Source/WebCore/workers \
90         -I$(srcdir)/Source/WebCore/xml \
91         -I$(srcdir)/Source/WebCore/xml/parser \
92         -I$(top_builddir)/WebCore/bindings/js \
93         -I$(top_builddir)/DerivedSources/WebCore \
94         -I$(top_builddir)/DerivedSources \
95         -I$(top_builddir)/DerivedSources/JavaScriptCore \
96         -DDATA_DIR=\"${datadir}\"
97
98 webcoregtk_cppflags += \
99         -DWEBKITGTK_API_VERSION_STRING=\"@WEBKITGTK_API_VERSION@\" \
100         -DWTF_USE_SOUP=1 \
101         -I$(srcdir)/Source/WebCore/accessibility/gtk \
102         -I$(srcdir)/Source/WebCore/loader/gtk \
103         -I$(srcdir)/Source/WebCore/page/gtk \
104         -I$(srcdir)/Source/WebCore/platform/cairo \
105         -I$(srcdir)/Source/WebCore/platform/audio/gstreamer \
106         -I$(srcdir)/Source/WebCore/platform/graphics/cairo \
107         -I$(srcdir)/Source/WebCore/platform/graphics/glx \
108         -I$(srcdir)/Source/WebCore/platform/graphics/gstreamer \
109         -I$(srcdir)/Source/WebCore/platform/graphics/gtk \
110         -I$(srcdir)/Source/WebCore/platform/gtk \
111         -I$(srcdir)/Source/WebCore/platform/network/soup
112
113 # ---
114 # Channel mesaging support
115 # ---
116 if ENABLE_CHANNEL_MESSAGING
117 FEATURE_DEFINES += ENABLE_CHANNEL_MESSAGING=1
118 webcore_cppflags += -DENABLE_CHANNEL_MESSAGING=1
119 endif # END ENABLE_CHANNEL_MESSAGING
120
121 # ---
122 # Fast Mobile Scrolling
123 # ---
124 if ENABLE_FAST_MOBILE_SCROLLING
125 FEATURE_DEFINES += ENABLE_FAST_MOBILE_SCROLLING=1
126 webcore_cppflags += -DENABLE_FAST_MOBILE_SCROLLING=1
127 endif # END ENABLE_FAST_MOBILE_SCROLLING
128
129 # ---
130 # FreeType font backend
131 # ---
132 if USE_FREETYPE
133 webcoregtk_cppflags += \
134         -DWTF_USE_FREETYPE=1 \
135         -I$(srcdir)/Source/WebCore/platform/graphics/freetype
136 endif # END USE_FREETYPE
137
138 # ---
139 # Pango font backend
140 # ---
141 if USE_PANGO
142 webcoregtk_cppflags += \
143         -DWTF_USE_PANGO=1 \
144         -I$(srcdir)/Source/WebCore/platform/graphics/pango
145 endif # END USE_PANGO
146
147 # ----
148 # HTML Details Element
149 # ----
150 if ENABLE_DETAILS
151 FEATURE_DEFINES += ENABLE_DETAILS=1
152 webcore_cppflags += -DENABLE_DETAILS=1
153 endif # END ENABLE_DETAILS
154
155 # ----
156 # HTML Meter Element
157 # ----
158 if ENABLE_METER_TAG
159 FEATURE_DEFINES += ENABLE_METER_TAG=1
160 webcore_cppflags += -DENABLE_METER_TAG=1
161 endif # END ENABLE_METER_TAG
162
163 # ----
164 # HTML Progress Element
165 # ----
166 if ENABLE_PROGRESS_TAG
167 FEATURE_DEFINES += ENABLE_PROGRESS_TAG=1
168 webcore_cppflags += -DENABLE_PROGRESS_TAG=1
169 endif # END ENABLE_PROGRESS_TAG
170
171 # ----
172 # JavaScript Debugger/Profiler
173 # ----
174 if ENABLE_JAVASCRIPT_DEBUGGER
175 FEATURE_DEFINES += ENABLE_JAVASCRIPT_DEBUGGER=1
176 webcore_cppflags += -DENABLE_JAVASCRIPT_DEBUGGER=1
177 else
178 webcore_cppflags += -DENABLE_JAVASCRIPT_DEBUGGER=0
179 endif # END ENABLE_JAVASCRIPT_DEBUGGER
180
181 # ----
182 # Gamepad support
183 # ---
184 if ENABLE_GAMEPAD
185 FEATURE_DEFINES += ENABLE_GAMEPAD=1
186 webcore_cppflags += -DENABLE_GAMEPAD=1
187 else
188 webcore_cppflags += -DENABLE_GAMEPAD=0
189 endif # END ENABLE_GAMEPAD
190
191 # ----
192 # Database Support
193 # ----
194 if ENABLE_SQL_DATABASE
195 FEATURE_DEFINES += ENABLE_SQL_DATABASE=1
196 webcore_cppflags += -DENABLE_SQL_DATABASE=1
197 else
198 webcore_cppflags += -DENABLE_SQL_DATABASE=0
199 endif # END ENABLE_SQL_DATABASE
200
201 # ----
202 # HTML5 datalist Support
203 # ----
204 if ENABLE_DATALIST
205 FEATURE_DEFINES += ENABLE_DATALIST=1
206 HTML_FEATURES += ENABLE_DATALIST=1
207 webcore_cppflags += -DENABLE_DATALIST=1
208 endif # END ENABLE_DATALIST
209
210 # ----
211 # HTML5 data transfer items support
212 # ----
213 if ENABLE_DATA_TRANSFER_ITEMS
214 FEATURE_DEFINES += ENABLE_DATA_TRANSFER_ITEMS=1
215 webcore_cppflags += -DENABLE_DATA_TRANSFER_ITEMS=1
216 endif # END ENABLE_DATA_TRANSFER_ITEMS
217
218 # ----
219 # HTML5 <style scoped> support
220 # ----
221 if ENABLE_STYLE_SCOPED
222 FEATURE_DEFINES += ENABLE_STYLE_SCOPED=1
223 webcore_cppflags += -DENABLE_STYLE_SCOPED=1
224 endif # END ENABLE_STYLE_SCOPED
225
226 # ----
227 # Indexed Database API support
228 # ----
229 if ENABLE_INDEXED_DATABASE
230 FEATURE_DEFINES += ENABLE_INDEXED_DATABASE=1
231 webcore_cppflags += -DENABLE_INDEXED_DATABASE=1
232 endif # END ENABLE_INDEXED_DATABASE
233
234 # ----
235 # Support for <input type="file" directory>
236 # ----
237 if ENABLE_DIRECTORY_UPLOAD
238 FEATURE_DEFINES += ENABLE_DIRECTORY_UPLOAD=1
239 webcore_cppflags += -DENABLE_DIRECTORY_UPLOAD=1
240 else
241 webcore_cppflags += -DENABLE_DIRECTORY_UPLOAD=0
242 endif # END ENABLE_DIRECTORY_UPLOAD
243
244 # ----
245 # DOM mutation observer support
246 # ----
247 if ENABLE_MUTATION_OBSERVERS
248 FEATURE_DEFINES += ENABLE_MUTATION_OBSERVERS=1
249 webcore_cppflags += -DENABLE_MUTATION_OBSERVERS=1
250 endif # END ENABLE_MUTATION_OBSERVERS
251
252 # ----
253 # FileSystem API support
254 # ----
255 if ENABLE_FILE_SYSTEM
256 FEATURE_DEFINES += ENABLE_FILE_SYSTEM=1
257 webcore_cppflags += -DENABLE_FILE_SYSTEM=1
258 endif # END ENABLE_FILE_SYSTEM
259
260 # ----
261 # Quota support
262 # ----
263 if ENABLE_QUOTA
264 FEATURE_DEFINES += ENABLE_QUOTA=1
265 webcore_cppflags += -DENABLE_QUOTA=1
266 endif # END ENABLE_QUOTA
267
268 # ----
269 # Touch Icon Loading
270 # ----
271 if ENABLE_TOUCH_ICON_LOADING
272 FEATURE_DEFINES += ENABLE_TOUCH_ICON_LOADING=1
273 webcore_cppflags += -DENABLE_TOUCH_ICON_LOADING=1
274 else
275 webcore_cppflags += -DENABLE_TOUCH_ICON_LOADING=0
276 endif # END ENABLE_TOUCH_ICON_LOADING
277
278 # ----
279 # Color Input API support
280 # ----
281 if ENABLE_INPUT_COLOR
282 FEATURE_DEFINES += ENABLE_INPUT_COLOR=1
283 webcore_cppflags += -DENABLE_INPUT_COLOR=1
284 else
285 webcore_cppflags += -DENABLE_INPUT_COLOR=0
286 endif # END ENABLE_INPUT_COLOR
287
288 # ----
289 # Speech Input API support
290 # ----
291 if ENABLE_INPUT_SPEECH
292 FEATURE_DEFINES += ENABLE_INPUT_SPEECH=1
293 webcore_cppflags += -DENABLE_INPUT_SPEECH=1
294 else
295 webcore_cppflags += -DENABLE_INPUT_SPEECH=0
296 endif # END ENABLE_INPUT_SPEECH
297
298 # ----
299 # Icon Database Support
300 # ----
301 if ENABLE_ICONDATABASE
302 webcore_cppflags += -DENABLE_ICONDATABASE=1
303 else
304 webcore_cppflags += -DENABLE_ICONDATABASE=0
305 endif # END ENABLE_ICONDATABASE
306
307 # ----
308 # Orientation Events
309 # ----
310 if ENABLE_ORIENTATION_EVENTS
311 FEATURE_DEFINES += ENABLE_ORIENTATION_EVENTS=1
312 webcore_cppflags += -DENABLE_ORIENTATION_EVENTS=1
313 endif # END ENABLE_ORIENTATION_EVENTS
314
315 # ----
316 # Video Support
317 # ----
318 if ENABLE_VIDEO
319 FEATURE_DEFINES += ENABLE_VIDEO=1
320 HTML_FEATURES += ENABLE_VIDEO=1
321 webcore_cppflags += -DENABLE_VIDEO=1
322
323 if USE_GSTREAMER
324 if ENABLE_DEBUG
325 webcore_cppflags += -DGST_DISABLE_DEPRECATED
326 endif # END ENABLE_DEBUG
327 webcore_libadd += \
328         -lgstinterfaces-0.10 \
329         -lgstvideo-0.10 \
330         -lgstpbutils-0.10 \
331         -lgstapp-0.10
332 endif # END USE_GSTREAMER
333 endif # END ENABLE_VIDEO
334
335 # ----
336 # Media Source Support
337 # ----
338 if ENABLE_MEDIA_SOURCE
339 FEATURE_DEFINES += ENABLE_MEDIA_SOURCE=1
340 webcore_cppflags += -DENABLE_MEDIA_SOURCE=1
341 else
342 webcore_cppflags += -DENABLE_MEDIA_SOURCE=0
343 endif # END ENABLE_MEDIA_SOURCE
344
345 # ----
346 # Media Statistics Support
347 # ----
348 if ENABLE_MEDIA_STATISTICS
349 FEATURE_DEFINES += ENABLE_MEDIA_STATISTICS=1
350 webcore_cppflags += -DENABLE_MEDIA_STATISTICS=1
351 else
352 webcore_cppflags += -DENABLE_MEDIA_STATISTICS=0
353 endif # END ENABLE_MEDIA_STATISTICS
354
355 # ----
356 # Javascript Fullscreen Support
357 # ----
358 if ENABLE_FULLSCREEN_API
359 FEATURE_DEFINES += ENABLE_FULLSCREEN_API=1
360 webcore_cppflags += -DENABLE_FULLSCREEN_API=1
361 endif # END ENABLE_FULLSCREEN_API
362
363 # ----
364 # Track Support
365 # ----
366 if ENABLE_VIDEO_TRACK
367 FEATURE_DEFINES += ENABLE_VIDEO_TRACK=1
368 webcore_cppflags += -DENABLE_VIDEO_TRACK=1
369 else
370 webcore_cppflags += -DENABLE_VIDEO_TRACK=0
371 endif # END ENABLE_VIDEO_TRACK
372
373 # ----
374 # Media Stream Support
375 # ----
376 if ENABLE_MEDIA_STREAM
377 FEATURE_DEFINES += ENABLE_MEDIA_STREAM=1
378 webcore_cppflags += -DENABLE_MEDIA_STREAM=1
379 else
380 webcore_cppflags += -DENABLE_MEDIA_STREAM=0
381 endif # END ENABLE_MEDIA_STREAM
382
383 # XPath grammar
384 # NOTE: older versions of bison do not inject an inclusion guard, so we do it
385 $(GENSOURCES_WEBCORE)/XPathGrammar.h: $(GENSOURCES_WEBCORE)/XPathGrammar.cpp
386 $(GENSOURCES_WEBCORE)/XPathGrammar.cpp: $(WebCore)/xml/XPathGrammar.y
387         $(AM_V_GEN)
388         $(AM_V_at)rm -f $(GENSOURCES_WEBCORE)/XPathGrammar.cpp.h $(GENSOURCES_WEBCORE)/XPathGrammar.hpp
389         $(AM_V_at)$(BISON) -d -p xpathyy $< -o $(GENSOURCES_WEBCORE)/XPathGrammar.cpp
390         $(AM_V_at)touch $(GENSOURCES_WEBCORE)/XPathGrammar.cpp.h $(GENSOURCES_WEBCORE)/XPathGrammar.hpp
391         $(AM_V_at)echo '#ifndef XPathGrammar_h' > $(GENSOURCES_WEBCORE)/XPathGrammar.h
392         $(AM_V_at)echo '#define XPathGrammar_h' >> $(GENSOURCES_WEBCORE)/XPathGrammar.h
393         $(AM_V_at)cat $(GENSOURCES_WEBCORE)/XPathGrammar.cpp.h $(GENSOURCES_WEBCORE)/XPathGrammar.hpp >> $(GENSOURCES_WEBCORE)/XPathGrammar.h
394         $(AM_V_at)echo '#endif' >> $(GENSOURCES_WEBCORE)/XPathGrammar.h
395         $(AM_V_at)rm -f $(GENSOURCES_WEBCORE)/XPathGrammar.cpp.h $(GENSOURCES_WEBCORE)/XPathGrammar.hpp
396
397 # ----
398 # XSLT Support
399 # ----
400 if ENABLE_XSLT
401 FEATURE_DEFINES += ENABLE_XSLT=1
402 webcore_cppflags += -DENABLE_XSLT=1
403 endif # END ENABLE_XSLT
404
405 # ----
406 # Web Workers support
407 # ----
408 if ENABLE_WORKERS
409 FEATURE_DEFINES += ENABLE_WORKERS=1
410 webcore_cppflags += -DENABLE_WORKERS=1
411 endif
412
413 # ---
414 # Shadow DOM support
415 # ---
416 if ENABLE_SHADOW_DOM
417 FEATURE_DEFINES += ENABLE_SHADOW_DOM=1
418 webcore_cppflags += -DENABLE_SHADOW_DOM=1
419 endif
420
421 # ---
422 # SharedWorker support
423 # ---
424 if ENABLE_SHARED_WORKERS
425 FEATURE_DEFINES += ENABLE_SHARED_WORKERS=1
426 webcore_cppflags += -DENABLE_SHARED_WORKERS=1
427 endif
428
429 # ----
430 # Filters
431 # ----
432 if ENABLE_FILTERS
433 FEATURE_DEFINES += ENABLE_FILTERS=1
434 webcore_cppflags += -DENABLE_FILTERS=1
435 if ENABLE_SVG
436 SVG_FEATURES += ENABLE_FILTERS=1
437 endif
438
439 endif # END ENABLE_FILTERS
440
441 # ----
442 # Geolocation
443 # ----
444 if ENABLE_GEOLOCATION
445
446 FEATURE_DEFINES += ENABLE_GEOLOCATION=1 ENABLE_CLIENT_BASED_GEOLOCATION=1
447 webcore_cppflags += -DENABLE_GEOLOCATION=1 -DENABLE_CLIENT_BASED_GEOLOCATION=1
448 endif # END ENABLE_GEOLOCATION
449
450 # ----
451 # MathML support
452 # ----
453 if ENABLE_MATHML
454 FEATURE_DEFINES += ENABLE_MATHML=1
455 webcore_cppflags += -DENABLE_MATHML=1
456 endif # END ENABLE_MATHML
457
458 # MathML tag and attribute names, and element factory 
459 DerivedSources/WebCore/MathMLElementFactory.h: DerivedSources/WebCore/MathMLElementFactory.cpp
460 DerivedSources/WebCore/MathMLNames.h: DerivedSources/WebCore/MathMLNames.cpp
461 DerivedSources/WebCore/MathMLElementFactory.cpp DerivedSources/WebCore/MathMLNames.cpp: $(WebCore)/dom/make_names.pl $(WebCore)/mathml/mathtags.in $(WebCore)/mathml/mathattrs.in
462         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --tags $(WebCore)/mathml/mathtags.in --attrs $(WebCore)/mathml/mathattrs.in --factory --wrapperFactory --outputDir "$(GENSOURCES_WEBCORE)"
463
464 # ----
465 # Notifications support
466 # ----
467 if ENABLE_NOTIFICATIONS
468 FEATURE_DEFINES += ENABLE_NOTIFICATIONS=1
469 webcore_cppflags += -DENABLE_NOTIFICATIONS=1
470 endif # END ENABLE_NOTIFICATIONS
471
472 # ----
473 # SVG Support
474 #
475 # FIXME: allow a more fine-grained inclusion/generation of sources per SVG feature
476 # ----
477 if ENABLE_SVG
478 FEATURE_DEFINES += ENABLE_SVG=1
479 webcore_cppflags += -DENABLE_SVG=1
480 WEBCORE_CSS_PROPERTY_NAMES += $(WebCore)/css/SVGCSSPropertyNames.in 
481 WEBCORE_CSS_VALUE_KEYWORDS += $(WebCore)/css/SVGCSSValueKeywords.in
482
483 # SVG Features
484 if ENABLE_SVG_FONTS
485 FEATURE_DEFINES += ENABLE_SVG_FONTS=1
486 SVG_FEATURES += ENABLE_SVG_FONTS=1
487 webcore_cppflags += -DENABLE_SVG_FONTS=1
488 endif
489
490 endif # END ENABLE_SVG
491
492 # SVG tag and attribute names (need to pass an extra flag if svg experimental features are enabled)
493 DerivedSources/WebCore/SVGNames.cpp: DerivedSources/WebCore/SVGElementFactory.cpp
494 DerivedSources/WebCore/JSSVGElementWrapperFactory.cpp: DerivedSources/WebCore/SVGElementFactory.cpp
495
496 if SVG_FLAGS
497 DerivedSources/WebCore/SVGElementFactory.cpp: $(WebCore)/dom/make_names.pl $(WebCore)/svg/svgtags.in $(WebCore)/svg/svgattrs.in
498         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --tags $(WebCore)/svg/svgtags.in --attrs $(WebCore)/svg/svgattrs.in --extraDefines "$(SVG_FEATURES)" --factory --wrapperFactory --outputDir "$(GENSOURCES_WEBCORE)"
499 else
500 DerivedSources/WebCore/SVGElementFactory.cpp: $(WebCore)/dom/make_names.pl $(WebCore)/svg/svgtags.in $(WebCore)/svg/svgattrs.in
501         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --tags $(WebCore)/svg/svgtags.in --attrs $(WebCore)/svg/svgattrs.in --factory --wrapperFactory --outputDir "$(GENSOURCES_WEBCORE)"
502 endif # SVG_FLAGS
503
504 # end SVG Features
505
506 DerivedSources/WebCore/XLinkNames.h: DerivedSources/WebCore/XLinkNames.cpp
507 DerivedSources/WebCore/XLinkNames.cpp : $(WebCore)/dom/make_names.pl $(WebCore)/svg/xlinkattrs.in
508         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --attrs $(WebCore)/svg/xlinkattrs.in --outputDir "$(GENSOURCES_WEBCORE)"
509
510 # ----
511 # Web Audio Support
512 # ----
513 if ENABLE_WEB_AUDIO
514 FEATURE_DEFINES += ENABLE_WEB_AUDIO=1
515 webcore_cppflags += -DENABLE_WEB_AUDIO=1
516 endif
517
518 if USE_WEBAUDIO_GSTREAMER
519 webcore_cppflags += -DWTF_USE_WEBAUDIO_GSTREAMER=1
520 endif
521
522 # ----
523 # Web Sockets Support
524 # ----
525 if ENABLE_WEB_SOCKETS
526 FEATURE_DEFINES += ENABLE_WEB_SOCKETS=1
527 webcore_cppflags += -DENABLE_WEB_SOCKETS=1
528 else
529 webcore_cppflags += -DENABLE_WEB_SOCKETS=0
530 endif  # END ENABLE_WEB_SOCKETS
531
532 # ---
533 # Blob support
534 # ---
535 if ENABLE_BLOB
536 FEATURE_DEFINES += ENABLE_BLOB=1
537 webcore_cppflags += -DENABLE_BLOB=1
538 endif  # END ENABLE_BLOB
539
540 # ---
541 # Animation API support
542 # ---
543 if ENABLE_ANIMATION_API
544 FEATURE_DEFINES += ENABLE_ANIMATION_API=1
545 webcore_cppflags += -DENABLE_ANIMATION_API=1
546 endif  # END ENABLE_ANIMATION_API
547
548 # ---
549 # RequestAnimationFrame support
550 # ---
551 if ENABLE_REQUEST_ANIMATION_FRAME
552 FEATURE_DEFINES += ENABLE_REQUEST_ANIMATION_FRAME=1
553 webcore_cppflags += -DENABLE_REQUEST_ANIMATION_FRAME=1
554 endif  # END ENABLE_REQUEST_ANIMATION_FRAME
555
556 # ---
557 # 3D canvas (WebGL) support
558 # ---
559 if ENABLE_WEBGL
560 FEATURE_DEFINES += ENABLE_WEBGL=1
561 webcore_cppflags += -DENABLE_WEBGL=1
562 endif  # END ENABLE_WEBGL
563
564 # ---
565 # Accelerated compositing support
566 # ---
567 if USE_ACCELERATED_COMPOSITING
568 FEATURE_DEFINES += \
569         ENABLE_3D_RENDERING=1 \
570         ACCELERATED_COMPOSITING=1
571 endif  # END USE_ACCELERATED_COMPOSITING
572
573 if USE_TEXTURE_MAPPER_CAIRO
574 webcore_cppflags += \
575         -I$(srcdir)/Source/WebCore/platform/graphics/texmap
576 endif  # END USE_TEXTURE_MAPPER_CAIRO
577
578 if USE_TEXTURE_MAPPER_GL
579 webcore_cppflags += \
580         -I$(srcdir)/Source/WebCore/platform/graphics/texmap
581 endif  # END USETEXTURE_MAPPER_GL
582
583 if USE_CLUTTER
584 webcore_cppflags += \
585         -I$(srcdir)/Source/WebCore/platform/clutter \
586         -I$(srcdir)/Source/WebCore/platform/graphics/clutter
587 endif  # END USE_CLUTTER
588
589 # ---
590 # MHTML support
591 # ---
592 if ENABLE_MHTML
593 FEATURE_DEFINES += ENABLE_MHTML=1
594 webcore_cppflags += \
595         -DENABLE_MHTML=1 \
596         -I$(srcdir)/Source/WebCore/loader/archive/mhtml
597 endif  # END ENABLE_MHTML
598
599 # ---
600 # HTML5 Microdata support
601 # ---
602 if ENABLE_MICRODATA
603 FEATURE_DEFINES += ENABLE_MICRODATA=1
604 webcore_cppflags += -DENABLE_MICRODATA=1
605 endif  # END ENABLE_MICRODATA
606
607 # ---
608 # Register Protocol Handler support
609 # ---
610 if ENABLE_REGISTER_PROTOCOL_HANDLER
611 FEATURE_DEFINES += ENABLE_REGISTER_PROTOCOL_HANDLER=1
612 webcore_cppflags += -DENABLE_REGISTER_PROTOCOL_HANDLER=1
613 endif  # END ENABLE_REGISTER_PROTOCOL_HANDLER
614
615 # ---
616 # DeviceOrientation support
617 # ---
618 if ENABLE_DEVICE_ORIENTATION
619 FEATURE_DEFINES += ENABLE_DEVICE_ORIENTATION=1
620 webcore_cppflags += -DENABLE_DEVICE_ORIENTATION=1
621 endif  # END ENABLE_DEVICE_ORIENTATION
622
623 DerivedSources/WebCore/CSSPropertyNames.cpp: DerivedSources/WebCore/CSSPropertyNames.h
624 DerivedSources/WebCore/CSSPropertyNames.h: $(WEBCORE_CSS_PROPERTY_NAMES) $(WebCore)/css/makeprop.pl
625         $(AM_V_GEN)
626         $(AM_V_at)cat $(WEBCORE_CSS_PROPERTY_NAMES) > CSSPropertyNames.in
627         $(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts "$(WebCore)/css/makeprop.pl" --defines "$(FEATURE_DEFINES)"
628         $(AM_V_at)mv CSSPropertyNames* $(GENSOURCES_WEBCORE)
629
630 # Lower case all the values, as CSS values are case-insensitive
631 DerivedSources/WebCore/CSSValueKeywords.cpp: DerivedSources/WebCore/CSSValueKeywords.h
632 DerivedSources/WebCore/CSSValueKeywords.h: $(WEBCORE_CSS_VALUE_KEYWORDS) $(WebCore)/css/makevalues.pl
633         $(AM_V_GEN)
634         $(AM_V_at)cat $(WEBCORE_CSS_VALUE_KEYWORDS) > CSSValueKeywords.in
635         $(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts "$(WebCore)/css/makevalues.pl" --defines "$(FEATURE_DEFINES)"
636         $(AM_V_at)mv CSSValueKeywords* $(GENSOURCES_WEBCORE)
637
638 # XML Viewer CSS
639 DerivedSources/WebCore/XMLViewerCSS.h: $(WebCore)/xml/XMLViewer.css
640         $(AM_V_GEN)$(PERL) $(WebCore)/inspector/xxd.pl XMLViewer_css $(WebCore)/xml/XMLViewer.css $(GENSOURCES_WEBCORE)/XMLViewerCSS.h
641
642 # XML Viewer JS
643 DerivedSources/WebCore/XMLViewerJS.h: $(WebCore)/xml/XMLViewer.js
644         $(AM_V_GEN)$(PERL) $(WebCore)/inspector/xxd.pl XMLViewer_js $(WebCore)/xml/XMLViewer.js $(GENSOURCES_WEBCORE)/XMLViewerJS.h
645
646 # HTML entity names
647 DerivedSources/WebCore/HTMLEntityTable.cpp: $(WebCore)/html/parser/HTMLEntityNames.in $(WebCore)/html/parser/create-html-entity-table
648         $(AM_V_GEN)$(PYTHON) $(WebCore)/html/parser/create-html-entity-table -o $(GENSOURCES_WEBCORE)/HTMLEntityTable.cpp $(WebCore)/html/parser/HTMLEntityNames.in
649
650 # color names
651 DerivedSources/WebCore/ColorData.cpp: $(WebCore)/platform/ColorData.gperf $(WebCore)/make-hash-tools.pl
652         $(AM_V_GEN)$(PERL) $(WebCore)/make-hash-tools.pl $(GENSOURCES_WEBCORE) $(WebCore)/platform/ColorData.gperf
653
654 # CSS grammar
655
656 # NOTE: older versions of bison do not inject an inclusion guard, so we do it
657 DerivedSources/WebCore/CSSGrammar.h: $(GENSOURCES_WEBCORE)/CSSGrammar.cpp
658 DerivedSources/WebCore/CSSGrammar.cpp: $(WebCore)/css/CSSGrammar.y
659         $(AM_V_GEN)
660         $(AM_V_at)rm -f $(GENSOURCES_WEBCORE)/CSSGrammar.cpp.h $(GENSOURCES_WEBCORE)/CSSGrammar.hpp
661         $(AM_V_at)$(BISON) -d -p cssyy $< -o $(GENSOURCES_WEBCORE)/CSSGrammar.cpp
662         $(AM_V_at)touch $(GENSOURCES_WEBCORE)/CSSGrammar.cpp.h $(GENSOURCES_WEBCORE)/CSSGrammar.hpp
663         $(AM_V_at)echo '#ifndef CSSGrammar_h' > $(GENSOURCES_WEBCORE)/CSSGrammar.h
664         $(AM_V_at)echo '#define CSSGrammar_h' >> $(GENSOURCES_WEBCORE)/CSSGrammar.h
665         $(AM_V_at)cat $(GENSOURCES_WEBCORE)/CSSGrammar.cpp.h $(GENSOURCES_WEBCORE)/CSSGrammar.hpp >> $(GENSOURCES_WEBCORE)/CSSGrammar.h
666         $(AM_V_at)echo '#endif' >> $(GENSOURCES_WEBCORE)/CSSGrammar.h
667         $(AM_V_at)rm -f $(GENSOURCES_WEBCORE)/CSSGrammar.cpp.h $(GENSOURCES_WEBCORE)/CSSGrammar.hpp
668
669 # user agent style sheets
670 USER_AGENT_STYLE_SHEETS = \
671         $(WebCore)/css/html.css \
672         $(WebCore)/css/mathml.css \
673         $(WebCore)/css/quirks.css \
674         $(WebCore)/css/view-source.css \
675         $(WebCore)/css/svg.css \
676         $(WebCore)/css/mediaControls.css \
677         $(WebCore)/css/mediaControlsGtk.css \
678         $(WebCore)/css/fullscreen.css
679
680 # new-style JavaScript bindings
681 SCRIPTS_FOR_GENERATE_BINDINGS = \
682         $(WebCore)/bindings/scripts/CodeGenerator.pm \
683         $(WebCore)/bindings/scripts/IDLParser.pm \
684         $(WebCore)/bindings/scripts/IDLStructure.pm \
685         $(WebCore)/bindings/scripts/InFilesCompiler.pm \
686         $(WebCore)/bindings/scripts/InFilesParser.pm \
687         $(WebCore)/bindings/scripts/generate-bindings.pl \
688         $(WebCore)/bindings/scripts/preprocessor.pm
689
690 SCRIPTS_FOR_RESOLVE_SUPPLEMENTAL = \
691         $(WebCore)/bindings/scripts/IDLParser.pm \
692         $(WebCore)/bindings/scripts/resolve-supplemental.pl
693
694 DerivedSources/WebCore/UserAgentStyleSheetsData.cpp: DerivedSources/WebCore/UserAgentStyleSheets.h
695 DerivedSources/WebCore/UserAgentStyleSheets.h: $(WebCore)/css/make-css-file-arrays.pl $(WebCore)/bindings/scripts/preprocessor.pm $(USER_AGENT_STYLE_SHEETS)
696         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $<  --defines "$(FEATURE_DEFINES)" $@ DerivedSources/WebCore/UserAgentStyleSheetsData.cpp $(USER_AGENT_STYLE_SHEETS)
697
698 DerivedSources/WebCore/WebKitFontFamilyNames.cpp: DerivedSources/WebCore/WebKitFontFamilyNames.h
699 DerivedSources/WebCore/WebKitFontFamilyNames.h: $(WebCore)/dom/make_names.pl $(WebCore)/css/WebKitFontFamilyNames.in
700         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --fonts $(WebCore)/css/WebKitFontFamilyNames.in --outputDir "$(GENSOURCES_WEBCORE)"
701
702
703 # HTML tag and attribute names
704 DerivedSources/WebCore/JSHTMLElementWrapperFactory.cpp: DerivedSources/WebCore/HTMLElementFactory.cpp
705 DerivedSources/WebCore/HTMLElementFactory.cpp: DerivedSources/WebCore/HTMLElementFactory.h
706 DerivedSources/WebCore/HTMLElementFactory.h: DerivedSources/WebCore/HTMLNames.cpp
707 DerivedSources/WebCore/HTMLNames.cpp: DerivedSources/WebCore/HTMLNames.h
708 if HTML_FLAGS
709 DerivedSources/WebCore/HTMLNames.h: $(WebCore)/dom/make_names.pl $(WebCore)/html/HTMLTagNames.in $(WebCore)/html/HTMLAttributeNames.in
710         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --tags $(WebCore)/html/HTMLTagNames.in --attrs $(WebCore)/html/HTMLAttributeNames.in --extraDefines "$(HTML_FEATURES)" --factory --wrapperFactory --outputDir "$(GENSOURCES_WEBCORE)"
711 else
712 DerivedSources/WebCore/HTMLNames.h: $(WebCore)/dom/make_names.pl $(WebCore)/html/HTMLTagNames.in $(WebCore)/html/HTMLAttributeNames.in
713         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --tags $(WebCore)/html/HTMLTagNames.in --attrs $(WebCore)/html/HTMLAttributeNames.in --factory --wrapperFactory --outputDir "$(GENSOURCES_WEBCORE)"
714 endif # HTML_FLAGS
715
716
717 DerivedSources/WebCore/XMLNSNames.cpp DerivedSources/WebCore/XMLNSNames.h: $(WebCore)/dom/make_names.pl $(WebCore)/xml/xmlnsattrs.in
718         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --attrs $(WebCore)/xml/xmlnsattrs.in --outputDir "$(GENSOURCES_WEBCORE)"
719
720 DerivedSources/WebCore/XMLNames.cpp DerivedSources/WebCore/XMLNames.h: $(WebCore)/dom/make_names.pl $(WebCore)/xml/xmlattrs.in
721         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --attrs $(WebCore)/xml/xmlattrs.in --outputDir "$(GENSOURCES_WEBCORE)"
722
723 DerivedSources/WebCore/EventFactory.cpp DerivedSources/WebCore/EventHeaders.h DerivedSources/WebCore/EventInterfaces.h: $(WebCore)/dom/make_event_factory.pl $(WebCore)/dom/EventFactory.in
724         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --input $(WebCore)/dom/EventFactory.in --outputDir "$(GENSOURCES_WEBCORE)"
725
726 DerivedSources/WebCore/EventTargetHeaders.h DerivedSources/WebCore/EventTargetInterfaces.h: $(WebCore)/dom/make_event_factory.pl $(WebCore)/dom/EventTargetFactory.in
727         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --input $(WebCore)/dom/EventTargetFactory.in --outputDir "$(GENSOURCES_WEBCORE)"
728
729 DerivedSources/WebCore/ExceptionCodeDescription.cpp DerivedSources/WebCore/ExceptionCodeDescription.h DerivedSources/WebCore/ExceptionHeaders.h DerivedSources/WebCore/ExceptionInterfaces.h: $(WebCore)/dom/make_dom_exceptions.pl $(WebCore)/dom/DOMExceptions.in
730         $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --input $(WebCore)/dom/DOMExceptions.in --outputDir "$(GENSOURCES_WEBCORE)"
731
732 # All Web Inspector generated files are created with this one call to CodeGeneratorInspector.py
733 DerivedSources/WebCore/InspectorProtocolVersion.h : $(WebCore)/inspector/Inspector.json $(WebCore)/inspector/generate-inspector-protocol-version
734         $(AM_V_GEN)$(PYTHON) $(WebCore)/inspector/generate-inspector-protocol-version -o $(GENSOURCES_WEBCORE)/InspectorProtocolVersion.h $(WebCore)/inspector/Inspector.json
735
736 DerivedSources/WebCore/InspectorBackendDispatcher.cpp: $(WebCore)/inspector/Inspector.json $(WebCore)/inspector/CodeGeneratorInspector.py
737         $(AM_V_GEN)$(PYTHON) $(WebCore)/inspector/CodeGeneratorInspector.py $< --output_h_dir $(GENSOURCES_WEBCORE) --output_cpp_dir $(GENSOURCES_WEBCORE)
738 DerivedSources/WebCore/InspectorTypeBuilder.h: DerivedSources/WebCore/InspectorTypeBuilder.cpp
739 DerivedSources/WebCore/InspectorTypeBuilder.cpp: DerivedSources/WebCore/InspectorFrontend.h
740 DerivedSources/WebCore/InspectorFrontend.h: DerivedSources/WebCore/InspectorFrontend.cpp
741 DerivedSources/WebCore/InspectorFrontend.cpp: DerivedSources/WebCore/InspectorBackendStub.js
742 DerivedSources/WebCore/InspectorBackendStub.js: DerivedSources/WebCore/InspectorBackendDispatcher.h
743 DerivedSources/WebCore/InspectorBackendDispatcher.h: DerivedSources/WebCore/InspectorBackendDispatcher.cpp
744 DerivedSources/WebCore/InjectedScriptSource.h: $(WebCore)/inspector/InjectedScriptSource.js
745         $(AM_V_GEN)$(PERL) $(WebCore)/inspector/xxd.pl InjectedScriptSource_js $(WebCore)/inspector/InjectedScriptSource.js $(GENSOURCES_WEBCORE)/InjectedScriptSource.h
746
747 if ENABLE_WEB_AUDIO
748 # Installing HRTF database wav files
749 audiodir = ${datadir}/webkitgtk-@WEBKITGTK_API_VERSION@/resources/audio/
750 audio_DATA = $(WebCore)/platform/audio/resources/Composite.wav
751 dist_audio_DATA = $(audio_DATA)
752 endif  # END ENABLE_WEB_AUDIO
753
754 # ANGLE tokenizer & parser
755 DerivedSources/ANGLE/glslang.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.l
756         $(AM_V_GEN)$(FLEX) --noline --nounistd --outfile="$@" "$<"
757
758 DerivedSources/ANGLE/glslang_tab.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.y
759         $(AM_V_GEN)$(BISON) --no-lines --defines="DerivedSources/ANGLE/glslang_tab.h" --skeleton=yacc.c --output="$@" $<
760 DerivedSources/ANGLE/glslang_tab.h: DerivedSources/ANGLE/glslang_tab.cpp
761
762 IDL_PATH := \
763     $(WebCore)/Modules/geolocation \
764     $(WebCore)/Modules/mediastream \
765     $(WebCore)/Modules/websockets \
766     $(WebCore)/bindings/js \
767     $(WebCore)/css \
768     $(WebCore)/dom \
769     $(WebCore)/dom/testing \
770     $(WebCore)/fileapi \
771     $(WebCore)/html \
772     $(WebCore)/html/canvas \
773     $(WebCore)/html/shadow \
774     $(WebCore)/html/track \
775     $(WebCore)/inspector \
776     $(WebCore)/loader/appcache \
777     $(WebCore)/notifications \
778     $(WebCore)/page \
779     $(WebCore)/plugins \
780     $(WebCore)/storage \
781     $(WebCore)/svg \
782     $(WebCore)/testing \
783     $(WebCore)/webaudio \
784     $(WebCore)/websockets \
785     $(WebCore)/workers \
786     $(WebCore)/xml
787
788 vpath %.idl $(IDL_PATH)
789
790 supplemental_dependency_file = $(top_builddir)/DerivedSources/WebCore/idl_supplemental_dependencies
791 idl_files_list = $(top_builddir)/DerivedSources/WebCore/idl_files_list
792 idl_attributes_file = $(WebCore)/bindings/scripts/IDLAttributes.txt
793
794 .SECONDARY:
795 $(supplemental_dependency_file): $(SCRIPTS_FOR_RESOLVE_SUPPLEMENTAL) $(dom_binding_idls) $(idl_attributes_file)
796         $(AM_V_GEN)
797         $(AM_V_at)echo -n > $(idl_files_list)
798         $(AM_V_at)($(foreach idl, $(dom_binding_idls), echo $(idl) &&) echo -n) >> $(idl_files_list)
799         $(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/resolve-supplemental.pl --defines "LANGUAGE_JAVASCRIPT=1 $(FEATURE_DEFINES)" --idlFilesList $(idl_files_list) --supplementalDependencyFile $@ --idlAttributesFile $(idl_attributes_file)
800
801 # This does not appear to work correctly with gnumake unless
802 # it includes an empty command list (the semicolon).
803 DerivedSources/WebCore/JS%.cpp: DerivedSources/WebCore/JS%.h;
804
805 .SECONDARY:
806 DerivedSources/WebCore/JS%.h: %.idl $(SCRIPTS_FOR_GENERATE_BINDINGS) $(WebCore)/bindings/scripts/CodeGeneratorJS.pm $(supplemental_dependency_file)
807         $(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 --supplementalDependencyFile $(supplemental_dependency_file) $<
808
809 # See https://bugs.webkit.org/show_bug.cgi?id=76388
810 # We need to introduce a manual dependency to prevent non-generated sources from 
811 # trying to build before the generated ones. This can happen if the supplemental
812 # IDL generation takes a long time. The pipe represents an order-only dependency,
813 # which means that GNUmake will only try to build the dependencies first, but
814 # not rebuild all the targets if the dependencies change.
815 $(webkitgtk_sources) $(webkit2_sources) $(webkit2_plugin_process_sources) $(webcore_sources) $(webcoregtk_sources) : | $(supplemental_dependency_file) $(webcore_built_sources)
816
817 noinst_LTLIBRARIES += \
818         libWebCore.la
819
820 nodist_EXTRA_libWebCore_la_SOURCES = \
821         $(webcore_built_nosources)
822
823 nodist_libWebCore_la_SOURCES = \
824         $(webcore_built_sources)
825
826 libWebCore_la_SOURCES = \
827         $(webcore_sources)
828
829 libWebCore_la_CXXFLAGS = \
830         $(SYMBOL_VISIBILITY_INLINES) \
831         $(global_cxxflags)
832
833 libWebCore_la_CFLAGS = \
834         $(SYMBOL_VISIBILITY) \
835         $(global_cflags)
836
837 libWebCore_la_CPPFLAGS = \
838         -DBUILDING_WEBKIT \
839         $(global_cppflags) \
840         $(webcore_cppflags) \
841         $(webcoregtk_cppflags) \
842         $(javascriptcore_cppflags) \
843         -fno-strict-aliasing \
844         $(CAIRO_CFLAGS) \
845         $(CLUTTER_CFLAGS) \
846         $(COVERAGE_CFLAGS) \
847         $(ENCHANT_CFLAGS) \
848         $(GEOCLUE_CFLAGS) \
849         $(GLIB_CFLAGS) \
850         $(GSTREAMER_CFLAGS) \
851         $(LIBSOUP_CFLAGS) \
852         $(LIBXML_CFLAGS) \
853         $(LIBXSLT_CFLAGS) \
854         $(PANGO_CFLAGS) \
855         $(SQLITE3_CFLAGS) \
856         $(UNICODE_CFLAGS) \
857         $(XRENDER_CFLAGS) \
858         $(XT_CFLAGS)
859
860 # We have a different library with only the files that require GTK+. It allows us
861 # to build a common WebCore lib and two different gtk WebCore libs depending on
862 # the gtk version. In WeKit2 gtk2 is not supported, but the plugin process needs to
863 # be built using gtk2 because plugins like flash still use gtk2. For WebKit2, we build
864 # the common libWebCore and two libWebCoreGtk, one using gtk3 and the other one using gtk2.
865 noinst_LTLIBRARIES += \
866         libWebCoreGtk.la
867
868 libWebCoreGtk_la_SOURCES = \
869         $(webcoregtk_sources)
870
871 libWebCoreGtk_la_CXXFLAGS = \
872         $(SYMBOL_VISIBILITY_INLINES) \
873         $(global_cxxflags)
874
875 libWebCoreGtk_la_CFLAGS = \
876         $(SYMBOL_VISIBILITY) \
877         $(global_cflags)
878
879 libWebCoreGtk_la_CPPFLAGS = \
880         -DBUILDING_WEBKIT \
881         $(global_cppflags) \
882         $(webcore_cppflags) \
883         $(webcoregtk_cppflags) \
884         $(javascriptcore_cppflags) \
885         -fno-strict-aliasing \
886         $(HILDON_CPPFLAGS) \
887         $(COVERAGE_CFLAGS) \
888         $(ENCHANT_CFLAGS) \
889         $(GAIL_CFLAGS) \
890         $(GEOCLUE_CFLAGS) \
891         $(GLIB_CFLAGS) \
892         $(GSTREAMER_CFLAGS) \
893         $(GTK_CFLAGS) \
894         $(HILDON_CFLAGS) \
895         $(LIBSOUP_CFLAGS) \
896         $(LIBXML_CFLAGS) \
897         $(LIBXSLT_CFLAGS) \
898         $(SQLITE3_CFLAGS) \
899         $(UNICODE_CFLAGS) \
900         $(XRENDER_CFLAGS) \
901         $(XT_CFLAGS)
902
903 EXTRA_DIST += \
904         $(shell ls $(srcdir)/Source/WebCore/Modules/geolocation/*.idl) \
905         $(shell ls $(srcdir)/Source/WebCore/Modules/mediastream/*.idl) \
906         $(shell ls $(srcdir)/Source/WebCore/Modules/websockets/*.idl) \
907         $(shell ls $(srcdir)/Source/WebCore/css/*.idl) \
908         $(shell ls $(srcdir)/Source/WebCore/dom/*.idl) \
909         $(shell ls $(srcdir)/Source/WebCore/fileapi/*.idl) \
910         $(shell ls $(srcdir)/Source/WebCore/html/canvas/*.idl) \
911         $(shell ls $(srcdir)/Source/WebCore/html/shadow/*.idl) \
912         $(shell ls $(srcdir)/Source/WebCore/html/track/*.idl) \
913         $(shell ls $(srcdir)/Source/WebCore/html/*.idl) \
914         $(shell ls $(srcdir)/Source/WebCore/inspector/*.idl) \
915         $(shell ls $(srcdir)/Source/WebCore/loader/appcache/*.idl) \
916         $(shell ls $(srcdir)/Source/WebCore/notifications/*.idl) \
917         $(shell ls $(srcdir)/Source/WebCore/page/*.idl) \
918         $(shell ls $(srcdir)/Source/WebCore/plugins/*.idl) \
919         $(shell ls $(srcdir)/Source/WebCore/storage/*.idl) \
920         $(shell ls $(srcdir)/Source/WebCore/svg/*.idl) \
921         $(shell ls $(srcdir)/Source/WebCore/testing/*.idl) \
922         $(shell ls $(srcdir)/Source/WebCore/webaudio/*.idl) \
923         $(shell ls $(srcdir)/Source/WebCore/workers/*.idl) \
924         $(shell ls $(srcdir)/Source/WebCore/xml/*.idl) \
925         Source/ThirdParty/ANGLE/src/compiler/glslang.l \
926         Source/ThirdParty/ANGLE/src/compiler/glslang.y \
927         Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm \
928         Source/WebCore/bindings/scripts/CodeGeneratorJS.pm \
929         Source/WebCore/bindings/scripts/CodeGenerator.pm \
930         Source/WebCore/bindings/scripts/IDLAttributes.txt \
931         Source/WebCore/bindings/scripts/IDLParser.pm \
932         Source/WebCore/bindings/scripts/IDLStructure.pm \
933         Source/WebCore/bindings/scripts/InFilesCompiler.pm \
934         Source/WebCore/bindings/scripts/InFilesParser.pm \
935         Source/WebCore/bindings/scripts/generate-bindings.pl \
936         Source/WebCore/bindings/scripts/gobject-generate-headers.pl \
937         Source/WebCore/bindings/scripts/preprocessor.pm \
938         Source/WebCore/bindings/scripts/resolve-supplemental.pl \
939         Source/WebCore/ChangeLog \
940         Source/WebCore/css/CSSGrammar.y \
941         Source/WebCore/css/CSSPropertyNames.in \
942         Source/WebCore/css/CSSValueKeywords.in \
943         Source/WebCore/dom/DOMExceptions.in \
944         Source/WebCore/css/fullscreen.css \
945         Source/WebCore/css/fullscreenQuickTime.css \
946         Source/WebCore/css/html.css \
947         Source/WebCore/css/make-css-file-arrays.pl \
948         Source/WebCore/css/makegrammar.pl \
949         Source/WebCore/css/makeprop.pl \
950         Source/WebCore/css/maketokenizer \
951         Source/WebCore/css/makevalues.pl \
952         Source/WebCore/css/mathml.css \
953         Source/WebCore/css/mediaControls.css \
954         Source/WebCore/css/mediaControlsGtk.css \
955         Source/WebCore/css/quirks.css \
956         Source/WebCore/css/svg.css \
957         Source/WebCore/css/SVGCSSPropertyNames.in \
958         Source/WebCore/css/SVGCSSValueKeywords.in \
959         Source/WebCore/css/view-source.css \
960         Source/WebCore/css/WebKitFontFamilyNames.in \
961         Source/WebCore/dom/EventFactory.in \
962         Source/WebCore/dom/EventTargetFactory.in \
963         Source/WebCore/dom/make_dom_exceptions.pl \
964         Source/WebCore/dom/make_event_factory.pl \
965         Source/WebCore/dom/make_names.pl \
966         Source/WebCore/html/HTMLAttributeNames.in \
967         Source/WebCore/html/HTMLTagNames.in \
968         Source/WebCore/html/parser/create-html-entity-table \
969         Source/WebCore/html/parser/HTMLEntityNames.in \
970         Source/WebCore/icu/LICENSE \
971         Source/WebCore/inspector/CodeGeneratorInspector.py \
972         Source/WebCore/inspector/InjectedScriptSource.js \
973         Source/WebCore/inspector/Inspector.json \
974         Source/WebCore/inspector/Inspector-1.0.json \
975         Source/WebCore/inspector/generate-inspector-protocol-version \
976         Source/WebCore/inspector/xxd.pl \
977         Source/WebCore/LICENSE-APPLE \
978         Source/WebCore/LICENSE-LGPL-2 \
979         Source/WebCore/LICENSE-LGPL-2.1 \
980         Source/WebCore/make-hash-tools.pl \
981         Source/WebCore/mathml/mathattrs.in \
982         Source/WebCore/mathml/mathtags.in \
983         Source/WebCore/platform/ColorData.gperf \
984         Source/WebCore/platform/text/mac/make-charset-table.pl \
985         Source/WebCore/svg/svgattrs.in \
986         Source/WebCore/svg/svgtags.in \
987         Source/WebCore/svg/xlinkattrs.in \
988         Source/WebCore/xml/xmlattrs.in \
989         Source/WebCore/xml/xmlnsattrs.in \
990         Source/WebCore/xml/XMLViewer.css \
991         Source/WebCore/xml/XMLViewer.js \
992         Source/WebCore/xml/XPathGrammar.y
993
994 # Installing web inspector files
995 webinspectordir = ${datadir}/webkitgtk-@WEBKITGTK_API_VERSION@/webinspector
996 dist_webinspector_DATA = \
997         $(WebCore)/English.lproj/localizedStrings.js \
998         DerivedSources/WebCore/InspectorBackendStub.js \
999         $(shell ls $(WebCore)/inspector/front-end/*.js) \
1000         $(shell ls $(WebCore)/inspector/front-end/*.html) \
1001         $(shell ls $(WebCore)/inspector/front-end/*.css)
1002
1003 webinspectoruglifyjsdir = ${datadir}/webkitgtk-@WEBKITGTK_API_VERSION@/webinspector/UglifyJS
1004 dist_webinspectoruglifyjs_DATA = \
1005         $(shell ls $(WebCore)/inspector/front-end/UglifyJS/*.js)
1006
1007 webinspectorimagesdir = ${datadir}/webkitgtk-@WEBKITGTK_API_VERSION@/webinspector/Images
1008 dist_webinspectorimages_DATA = \
1009         $(shell ls $(WebCore)/inspector/front-end/Images/*.gif) \
1010         $(shell ls $(WebCore)/inspector/front-end/Images/*.png)
1011
1012 # It seems that $(shell) does not expand when it is a rule dependency, so
1013 # we must redefine this list of copied files with traditional dependency wildcards.
1014 noinst_DATA = ${GENSOURCES_INSPECTOR}/inspector.html
1015 ${GENSOURCES_INSPECTOR}/inspector.html: $(WebCore)/inspector/front-end/*.html \
1016                 $(WebCore)/inspector/front-end/*.js \
1017                 $(WebCore)/inspector/front-end/UglifyJS/*.js \
1018                 $(WebCore)/inspector/front-end/*.css \
1019                 $(WebCore)/inspector/front-end/Images/* \
1020                 DerivedSources/WebCore/InspectorBackendStub.js \
1021                 $(WebCore)/English.lproj/localizedStrings.js
1022         $(AM_V_GEN)
1023         $(AM_V_at)mkdir -p ${GENSOURCES_INSPECTOR}/UglifyJS
1024         $(AM_V_at)mkdir -p ${GENSOURCES_INSPECTOR}/images
1025         $(AM_V_at)cp ${dist_webinspector_DATA} ${GENSOURCES_INSPECTOR}
1026         $(AM_V_at)cp ${dist_webinspectoruglifyjs_DATA} ${GENSOURCES_INSPECTOR}/UglifyJS
1027         $(AM_V_at)cp ${dist_webinspectorimages_DATA} ${GENSOURCES_INSPECTOR}/images
1028
1029 webresourcesdir = ${datadir}/webkitgtk-@WEBKITGTK_API_VERSION@/images
1030 dist_webresources_DATA = \
1031         $(WebCore)/Resources/textAreaResizeCorner.png \
1032         $(WebCore)/Resources/nullPlugin.png \
1033         $(WebCore)/Resources/urlIcon.png \
1034         $(WebCore)/Resources/missingImage.png \
1035         $(WebCore)/Resources/panIcon.png \
1036         $(WebCore)/Resources/deleteButton.png \
1037         $(WebCore)/Resources/inputSpeech.png