1 include $(top_srcdir)/build/autotools/Makefile.am.silent
16 -I$(top_srcdir)/clutter \
17 -I$(top_srcdir)/clutter/deprecated \
18 -I$(top_srcdir)/clutter/cally \
20 -I$(top_builddir)/clutter \
24 -DCLUTTER_PREFIX=\""$(prefix)"\" \
25 -DCLUTTER_LIBDIR=\""$(libdir)"\" \
26 -DCLUTTER_DATADIR=\""$(datadir)"\" \
27 -DCLUTTER_LOCALEDIR=\""$(localedir)"\" \
28 -DCLUTTER_SYSCONFDIR=\""$(sysconfdir)"\" \
29 -DCLUTTER_COMPILATION=1 \
30 -DCOGL_ENABLE_EXPERIMENTAL_API \
31 -DG_LOG_DOMAIN=\"Clutter\" \
32 $(CLUTTER_DEPRECATED_CFLAGS) \
33 $(CLUTTER_DEBUG_CFLAGS) \
34 $(CLUTTER_PROFILE_CFLAGS) \
37 AM_CFLAGS = $(CLUTTER_CFLAGS) $(MAINTAINER_CFLAGS) $(GCOV_CFLAGS)
39 # these are the gir files we generate using g-ir-scanner
42 # the base include path for headers
43 clutter_base_includedir = $(includedir)/clutter-$(CLUTTER_API_VERSION)
44 clutter_includedir = $(clutter_base_includedir)/clutter
45 clutter_deprecateddir = $(clutter_base_includedir)/clutter/deprecated
50 # common sources - please, keep these sorted alphabetically
52 $(srcdir)/clutter-action.h \
53 $(srcdir)/clutter-actor-meta.h \
54 $(srcdir)/clutter-actor.h \
55 $(srcdir)/clutter-align-constraint.h \
56 $(srcdir)/clutter-animatable.h \
57 $(srcdir)/clutter-backend.h \
58 $(srcdir)/clutter-bind-constraint.h \
59 $(srcdir)/clutter-binding-pool.h \
60 $(srcdir)/clutter-bin-layout.h \
61 $(srcdir)/clutter-blur-effect.h \
62 $(srcdir)/clutter-box-layout.h \
63 $(srcdir)/clutter-brightness-contrast-effect.h \
64 $(srcdir)/clutter-cairo.h \
65 $(srcdir)/clutter-canvas.h \
66 $(srcdir)/clutter-child-meta.h \
67 $(srcdir)/clutter-click-action.h \
68 $(srcdir)/clutter-cogl-compat.h \
69 $(srcdir)/clutter-clone.h \
70 $(srcdir)/clutter-color-static.h \
71 $(srcdir)/clutter-color.h \
72 $(srcdir)/clutter-colorize-effect.h \
73 $(srcdir)/clutter-constraint.h \
74 $(srcdir)/clutter-container.h \
75 $(srcdir)/clutter-content.h \
76 $(srcdir)/clutter-deform-effect.h \
77 $(srcdir)/clutter-deprecated.h \
78 $(srcdir)/clutter-desaturate-effect.h \
79 $(srcdir)/clutter-device-manager.h \
80 $(srcdir)/clutter-drag-action.h \
81 $(srcdir)/clutter-drop-action.h \
82 $(srcdir)/clutter-effect.h \
83 $(srcdir)/clutter-enums.h \
84 $(srcdir)/clutter-event.h \
85 $(srcdir)/clutter-feature.h \
86 $(srcdir)/clutter-fixed-layout.h \
87 $(srcdir)/clutter-flow-layout.h \
88 $(srcdir)/clutter-gesture-action.h \
89 $(srcdir)/clutter-grid-layout.h \
90 $(srcdir)/clutter-group.h \
91 $(srcdir)/clutter-image.h \
92 $(srcdir)/clutter-input-device.h \
93 $(srcdir)/clutter-interval.h \
94 $(srcdir)/clutter-keyframe-transition.h \
95 $(srcdir)/clutter-keysyms.h \
96 $(srcdir)/clutter-layout-manager.h \
97 $(srcdir)/clutter-layout-meta.h \
98 $(srcdir)/clutter-list-model.h \
99 $(srcdir)/clutter-macros.h \
100 $(srcdir)/clutter-main.h \
101 $(srcdir)/clutter-model.h \
102 $(srcdir)/clutter-offscreen-effect.h \
103 $(srcdir)/clutter-page-turn-effect.h \
104 $(srcdir)/clutter-paint-nodes.h \
105 $(srcdir)/clutter-paint-node.h \
106 $(srcdir)/clutter-path-constraint.h \
107 $(srcdir)/clutter-path.h \
108 $(srcdir)/clutter-property-transition.h \
109 $(srcdir)/clutter-script.h \
110 $(srcdir)/clutter-scriptable.h \
111 $(srcdir)/clutter-scroll-actor.h \
112 $(srcdir)/clutter-settings.h \
113 $(srcdir)/clutter-shader-effect.h \
114 $(srcdir)/clutter-shader-types.h \
115 $(srcdir)/clutter-swipe-action.h \
116 $(srcdir)/clutter-snap-constraint.h \
117 $(srcdir)/clutter-stage.h \
118 $(srcdir)/clutter-stage-manager.h \
119 $(srcdir)/clutter-table-layout.h \
120 $(srcdir)/clutter-texture.h \
121 $(srcdir)/clutter-text.h \
122 $(srcdir)/clutter-text-buffer.h \
123 $(srcdir)/clutter-timeline.h \
124 $(srcdir)/clutter-transition-group.h \
125 $(srcdir)/clutter-transition.h \
126 $(srcdir)/clutter-types.h \
127 $(srcdir)/clutter-units.h \
131 $(srcdir)/clutter-action.c \
132 $(srcdir)/clutter-actor-box.c \
133 $(srcdir)/clutter-actor-meta.c \
134 $(srcdir)/clutter-actor.c \
135 $(srcdir)/clutter-align-constraint.c \
136 $(srcdir)/clutter-animatable.c \
137 $(srcdir)/clutter-backend.c \
138 $(srcdir)/clutter-base-types.c \
139 $(srcdir)/clutter-bezier.c \
140 $(srcdir)/clutter-bind-constraint.c \
141 $(srcdir)/clutter-binding-pool.c \
142 $(srcdir)/clutter-bin-layout.c \
143 $(srcdir)/clutter-blur-effect.c \
144 $(srcdir)/clutter-box-layout.c \
145 $(srcdir)/clutter-brightness-contrast-effect.c \
146 $(srcdir)/clutter-cairo.c \
147 $(srcdir)/clutter-canvas.c \
148 $(srcdir)/clutter-child-meta.c \
149 $(srcdir)/clutter-click-action.c \
150 $(srcdir)/clutter-clone.c \
151 $(srcdir)/clutter-color.c \
152 $(srcdir)/clutter-colorize-effect.c \
153 $(srcdir)/clutter-constraint.c \
154 $(srcdir)/clutter-container.c \
155 $(srcdir)/clutter-content.c \
156 $(srcdir)/clutter-deform-effect.c \
157 $(srcdir)/clutter-desaturate-effect.c \
158 $(srcdir)/clutter-device-manager.c \
159 $(srcdir)/clutter-drag-action.c \
160 $(srcdir)/clutter-drop-action.c \
161 $(srcdir)/clutter-effect.c \
162 $(srcdir)/clutter-event.c \
163 $(srcdir)/clutter-feature.c \
164 $(srcdir)/clutter-fixed-layout.c \
165 $(srcdir)/clutter-flatten-effect.c \
166 $(srcdir)/clutter-flow-layout.c \
167 $(srcdir)/clutter-gesture-action.c \
168 $(srcdir)/clutter-grid-layout.c \
169 $(srcdir)/clutter-image.c \
170 $(srcdir)/clutter-input-device.c \
171 $(srcdir)/clutter-interval.c \
172 $(srcdir)/clutter-keyframe-transition.c \
173 $(srcdir)/clutter-keysyms-table.c \
174 $(srcdir)/clutter-layout-manager.c \
175 $(srcdir)/clutter-layout-meta.c \
176 $(srcdir)/clutter-list-model.c \
177 $(srcdir)/clutter-main.c \
178 $(srcdir)/clutter-master-clock.c \
179 $(srcdir)/clutter-model.c \
180 $(srcdir)/clutter-offscreen-effect.c \
181 $(srcdir)/clutter-page-turn-effect.c \
182 $(srcdir)/clutter-paint-nodes.c \
183 $(srcdir)/clutter-paint-node.c \
184 $(srcdir)/clutter-path-constraint.c \
185 $(srcdir)/clutter-path.c \
186 $(srcdir)/clutter-property-transition.c \
187 $(srcdir)/clutter-script.c \
188 $(srcdir)/clutter-script-parser.c \
189 $(srcdir)/clutter-scriptable.c \
190 $(srcdir)/clutter-scroll-actor.c \
191 $(srcdir)/clutter-settings.c \
192 $(srcdir)/clutter-shader-effect.c \
193 $(srcdir)/clutter-shader-types.c \
194 $(srcdir)/clutter-swipe-action.c \
195 $(srcdir)/clutter-snap-constraint.c \
196 $(srcdir)/clutter-stage.c \
197 $(srcdir)/clutter-stage-manager.c \
198 $(srcdir)/clutter-stage-window.c \
199 $(srcdir)/clutter-table-layout.c \
200 $(srcdir)/clutter-texture.c \
201 $(srcdir)/clutter-text.c \
202 $(srcdir)/clutter-text-buffer.c \
203 $(srcdir)/clutter-transition-group.c \
204 $(srcdir)/clutter-transition.c \
205 $(srcdir)/clutter-timeline.c \
206 $(srcdir)/clutter-units.c \
207 $(srcdir)/clutter-util.c \
208 $(srcdir)/clutter-paint-volume.c \
211 # private headers; these should not be distributed or introspected
213 $(srcdir)/clutter-actor-meta-private.h \
214 $(srcdir)/clutter-actor-private.h \
215 $(srcdir)/clutter-backend-private.h \
216 $(srcdir)/clutter-bezier.h \
217 $(srcdir)/clutter-content-private.h \
218 $(srcdir)/clutter-debug.h \
219 $(srcdir)/clutter-device-manager-private.h \
220 $(srcdir)/clutter-easing.h \
221 $(srcdir)/clutter-effect-private.h \
222 $(srcdir)/clutter-event-translator.h \
223 $(srcdir)/clutter-event-private.h \
224 $(srcdir)/clutter-flatten-effect.h \
225 $(srcdir)/clutter-id-pool.h \
226 $(srcdir)/clutter-master-clock.h \
227 $(srcdir)/clutter-model-private.h \
228 $(srcdir)/clutter-offscreen-effect-private.h \
229 $(srcdir)/clutter-paint-node-private.h \
230 $(srcdir)/clutter-paint-volume-private.h \
231 $(srcdir)/clutter-private.h \
232 $(srcdir)/clutter-profile.h \
233 $(srcdir)/clutter-script-private.h \
234 $(srcdir)/clutter-settings-private.h \
235 $(srcdir)/clutter-stage-manager-private.h \
236 $(srcdir)/clutter-stage-private.h \
237 $(srcdir)/clutter-stage-window.h \
240 # private source code; these should not be introspected
242 $(srcdir)/clutter-easing.c \
243 $(srcdir)/clutter-event-translator.c \
244 $(srcdir)/clutter-id-pool.c \
245 $(srcdir)/clutter-profile.c \
248 # deprecated installed headers
250 $(srcdir)/deprecated/clutter-actor.h \
251 $(srcdir)/deprecated/clutter-alpha.h \
252 $(srcdir)/deprecated/clutter-animatable.h \
253 $(srcdir)/deprecated/clutter-animation.h \
254 $(srcdir)/deprecated/clutter-animator.h \
255 $(srcdir)/deprecated/clutter-backend.h \
256 $(srcdir)/deprecated/clutter-behaviour.h \
257 $(srcdir)/deprecated/clutter-behaviour-depth.h \
258 $(srcdir)/deprecated/clutter-behaviour-ellipse.h \
259 $(srcdir)/deprecated/clutter-behaviour-opacity.h \
260 $(srcdir)/deprecated/clutter-behaviour-path.h \
261 $(srcdir)/deprecated/clutter-behaviour-rotate.h \
262 $(srcdir)/deprecated/clutter-behaviour-scale.h \
263 $(srcdir)/deprecated/clutter-bin-layout.h \
264 $(srcdir)/deprecated/clutter-box.h \
265 $(srcdir)/deprecated/clutter-cairo-texture.h \
266 $(srcdir)/deprecated/clutter-container.h \
267 $(srcdir)/deprecated/clutter-fixed.h \
268 $(srcdir)/deprecated/clutter-frame-source.h \
269 $(srcdir)/deprecated/clutter-group.h \
270 $(srcdir)/deprecated/clutter-keysyms.h \
271 $(srcdir)/deprecated/clutter-main.h \
272 $(srcdir)/deprecated/clutter-media.h \
273 $(srcdir)/deprecated/clutter-rectangle.h \
274 $(srcdir)/deprecated/clutter-score.h \
275 $(srcdir)/deprecated/clutter-shader.h \
276 $(srcdir)/deprecated/clutter-stage-manager.h \
277 $(srcdir)/deprecated/clutter-stage.h \
278 $(srcdir)/deprecated/clutter-state.h \
279 $(srcdir)/deprecated/clutter-texture.h \
280 $(srcdir)/deprecated/clutter-timeline.h \
281 $(srcdir)/deprecated/clutter-timeout-pool.h \
282 $(srcdir)/deprecated/clutter-util.h \
285 # deprecated source code
287 $(srcdir)/deprecated/clutter-actor-deprecated.c \
288 $(srcdir)/deprecated/clutter-alpha.c \
289 $(srcdir)/deprecated/clutter-animation.c \
290 $(srcdir)/deprecated/clutter-animator.c \
291 $(srcdir)/deprecated/clutter-behaviour.c \
292 $(srcdir)/deprecated/clutter-behaviour-depth.c \
293 $(srcdir)/deprecated/clutter-behaviour-ellipse.c \
294 $(srcdir)/deprecated/clutter-behaviour-opacity.c \
295 $(srcdir)/deprecated/clutter-behaviour-path.c \
296 $(srcdir)/deprecated/clutter-behaviour-rotate.c \
297 $(srcdir)/deprecated/clutter-behaviour-scale.c \
298 $(srcdir)/deprecated/clutter-box.c \
299 $(srcdir)/deprecated/clutter-cairo-texture.c \
300 $(srcdir)/deprecated/clutter-fixed.c \
301 $(srcdir)/deprecated/clutter-frame-source.c \
302 $(srcdir)/deprecated/clutter-group.c \
303 $(srcdir)/deprecated/clutter-media.c \
304 $(srcdir)/deprecated/clutter-rectangle.c \
305 $(srcdir)/deprecated/clutter-score.c \
306 $(srcdir)/deprecated/clutter-shader.c \
307 $(srcdir)/deprecated/clutter-state.c \
308 $(srcdir)/deprecated/clutter-timeout-pool.c \
311 # deprecated private headers; these should not be installed
312 deprecated_h_priv = \
313 $(srcdir)/deprecated/clutter-timeout-interval.h \
316 # deprecated private source code; these should not be introspected
317 deprecated_c_priv = \
318 $(srcdir)/deprecated/clutter-timeout-interval.c \
323 clutter-enum-types.c \
329 clutter-enum-types.h \
334 DISTCLEANFILES += clutter-config.h
335 EXTRA_DIST += clutter-config.h.in
338 DISTCLEANFILES += clutter-version.h
339 EXTRA_DIST += clutter-version.h.in clutter-version.h
341 # key symbol update script
342 EXTRA_DIST += clutter-keysyms-update.pl
344 pc_files += clutter-$(CLUTTER_API_VERSION).pc
346 # in order to be compatible with Clutter < 1.10, when we shipped a single
347 # shared library whose name was determined by the single backend it
348 # supported, we need to install symbolic links so that existing applications
349 # using Clutter won't break in the Brave New World of multi-backend support
350 # in the same shared object.
353 # backends source listings
355 # backend_source_c := source code
356 # backend_source_h := installed public headers
357 # backend_source_c_priv := source that should not be scanned by g-i
358 # backend_source_h_priv := private headers
359 # backend_source_built := built sources
363 backend_source_c_priv =
364 backend_source_h_priv =
365 backend_source_built =
369 $(srcdir)/x11/clutter-backend-x11.c \
370 $(srcdir)/x11/clutter-device-manager-core-x11.c \
371 $(srcdir)/x11/clutter-event-x11.c \
372 $(srcdir)/x11/clutter-input-device-core-x11.c \
373 $(srcdir)/x11/clutter-keymap-x11.c \
374 $(srcdir)/x11/clutter-stage-x11.c \
375 $(srcdir)/x11/clutter-x11-texture-pixmap.c \
379 $(srcdir)/x11/clutter-x11.h \
380 $(srcdir)/x11/clutter-x11-texture-pixmap.h \
383 x11_source_h_priv = \
384 $(srcdir)/x11/clutter-backend-x11.h \
385 $(srcdir)/x11/clutter-device-manager-core-x11.h \
386 $(srcdir)/x11/clutter-input-device-core-x11.h \
387 $(srcdir)/x11/clutter-keymap-x11.h \
388 $(srcdir)/x11/clutter-settings-x11.h \
389 $(srcdir)/x11/clutter-stage-x11.h \
392 x11_source_c_priv = \
393 $(srcdir)/x11/xsettings/xsettings-client.c \
394 $(srcdir)/x11/xsettings/xsettings-client.h \
395 $(srcdir)/x11/xsettings/xsettings-common.c \
396 $(srcdir)/x11/xsettings/xsettings-common.h \
401 $(srcdir)/x11/clutter-device-manager-xi2.c \
402 $(srcdir)/x11/clutter-input-device-xi2.c \
405 x11_source_h_priv += \
406 $(srcdir)/x11/clutter-device-manager-xi2.h \
407 $(srcdir)/x11/clutter-input-device-xi2.h \
412 backend_source_h += $(x11_source_h)
413 backend_source_c += $(x11_source_c)
414 backend_source_h_priv += $(x11_source_h_priv)
415 backend_source_c_priv += $(x11_source_c_priv)
417 # the list of files we want to introspect on X11
418 x11_introspection = $(x11_source_c) $(x11_source_h)
420 clutterx11_includedir = $(clutter_includedir)/x11
421 clutterx11_include_HEADERS = $(x11_source_h)
423 clutter-x11-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
424 $(QUIET_GEN)cp -f $< $(@F)
426 pc_files += clutter-x11-$(CLUTTER_API_VERSION).pc
429 # Shared cogl backend files
433 $(srcdir)/cogl/clutter-stage-cogl.c \
436 cogl_source_h_priv = \
437 $(srcdir)/cogl/clutter-stage-cogl.h \
443 backend_source_h += $(cogl_source_h)
444 backend_source_c += $(cogl_source_c)
445 backend_source_h_priv += $(cogl_source_h_priv)
446 backend_source_c_priv += $(cogl_source_c_priv)
448 # pkg-config file for the cogl meta-backend
449 clutter-cogl-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
450 $(QUIET_GEN)cp -f $< $(@F)
452 pc_files += clutter-cogl-$(CLUTTER_API_VERSION).pc
455 # For compatibility with the old GLX backend
457 # Note: there wasn't actually anything GLX specific so we can add
458 # the compatibility if clutter supports x11
459 glx_source_c = $(srcdir)/x11/clutter-glx-texture-pixmap.c
460 glx_source_h = $(srcdir)/x11/clutter-glx-texture-pixmap.h \
461 $(srcdir)/x11/clutter-glx.h
464 backend_source_h += $(glx_source_h)
465 backend_source_c += $(glx_source_c)
467 clutterglx_includedir = $(clutter_includedir)/glx
468 clutterglx_include_HEADERS = $(glx_source_h)
470 clutter-glx-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
471 $(QUIET_GEN)cp -f $< $(@F)
473 pc_files += clutter-glx-$(CLUTTER_API_VERSION).pc
476 libclutter-glx-$(CLUTTER_API_VERSION).so \
482 $(srcdir)/gdk/clutter-backend-gdk.c \
483 $(srcdir)/gdk/clutter-device-manager-gdk.c \
484 $(srcdir)/gdk/clutter-input-device-gdk.c \
485 $(srcdir)/gdk/clutter-event-gdk.c \
486 $(srcdir)/gdk/clutter-stage-gdk.c \
490 $(srcdir)/gdk/clutter-gdk.h \
493 gdk_source_h_priv = \
494 $(srcdir)/gdk/clutter-settings-gdk.h \
495 $(srcdir)/gdk/clutter-backend-gdk.h \
496 $(srcdir)/gdk/clutter-device-manager-gdk.h \
497 $(srcdir)/gdk/clutter-input-device-gdk.h \
498 $(srcdir)/gdk/clutter-stage-gdk.h \
502 backend_source_h += $(gdk_source_h)
503 backend_source_c += $(gdk_source_c)
504 backend_source_h_priv += $(gdk_source_h_priv)
506 cluttergdk_includedir = $(clutter_includedir)/gdk
507 cluttergdk_include_HEADERS = $(gdk_source_h)
509 clutter-gdk-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
510 $(QUIET_GEN)cp -f $< $(@F)
512 pc_files += clutter-gdk-$(CLUTTER_API_VERSION).pc
514 gdk_introspection = $(gdk_source_c) $(gdk_source_h)
517 # Windows backend rules
519 $(srcdir)/win32/clutter-backend-win32.c \
520 $(srcdir)/win32/clutter-device-manager-win32.c \
521 $(srcdir)/win32/clutter-event-win32.c \
522 $(srcdir)/win32/clutter-stage-win32.c \
526 $(srcdir)/win32/clutter-win32.h \
529 win32_source_h_priv = \
530 $(srcdir)/win32/clutter-backend-win32.h \
531 $(srcdir)/win32/clutter-device-manager-win32.h \
532 $(srcdir)/win32/clutter-stage-win32.h \
536 # Ideally this resources stuff would go in win32/ but libtool doesn't
537 # seem to pass on the -Wl argument when linking a convenience library
538 # so we need to do it here as part of linking the dll. libtool also
539 # won't let you link against the .o directly because it wants you to
540 # link against libtool objects for dynamic libraries.
543 $(WINDRES) -I$(srcdir)/win32 $< $@
545 win32/resources.o : $(srcdir)/win32/invisible-cursor.cur
547 win32_resources = win32/resources.o
548 win32_resources_ldflag = -Wl,win32/resources.o
550 backend_source_h += $(win32_source_h)
551 backend_source_c += $(win32_source_c)
552 backend_source_h_priv += $(win32_source_h_priv)
554 clutterwin_includedir = $(clutter_includedir)/win32
555 clutterwin_include_HEADERS = $(win32_source_h)
557 clutter-win32-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
558 $(QUIET_GEN)cp -f $< $(@F)
560 pc_files += clutter-win32-$(CLUTTER_API_VERSION).pc
561 endif # SUPPORT_WIN32
564 $(srcdir)/win32/invisible-cursor.cur \
565 $(srcdir)/win32/resources.rc \
568 egl_tslib_h = $(srcdir)/tslib/clutter-event-tslib.h
569 egl_tslib_c = $(srcdir)/tslib/clutter-event-tslib.c
572 backend_source_c_priv += $(egl_tslib_c)
573 backend_source_h_priv += $(egl_tslib_h)
574 endif # SUPPORT_TSLIB
577 $(srcdir)/evdev/clutter-device-manager-evdev.c \
578 $(srcdir)/evdev/clutter-input-device-evdev.c \
581 $(srcdir)/evdev/clutter-device-manager-evdev.h \
582 $(srcdir)/evdev/clutter-input-device-evdev.h \
584 evdev_h = $(srcdir)/evdev/clutter-evdev.h
587 backend_source_c_priv += $(evdev_c_priv)
588 backend_source_h_priv += $(evdev_h_priv)
589 backend_source_h += $(evdev_h)
591 clutterevdev_includedir = $(clutter_includedir)/evdev
592 clutterevdev_include_HEADERS = $(evdev_h)
593 endif # SUPPORT_EVDEV
596 backend_source_c += $(srcdir)/evdev/clutter-xkb-utils.c
597 backend_source_h_priv += $(srcdir)/evdev/clutter-xkb-utils.h
600 cex_source_h_priv = $(srcdir)/cex100/clutter-backend-cex100.h
601 cex_source_c = $(srcdir)/cex100/clutter-backend-cex100.c
602 cex_h = cex100/clutter-cex100.h
603 BUILT_SOURCES += $(cex_h)
604 EXTRA_DIST += $(srcdir)/$(cex_h).in
607 backend_source_h += $(cex_h)
608 backend_source_c += $(cex_source_c)
609 backend_source_h_priv += $(cex_source_h_priv)
611 cluttercex100_includedir = $(clutter_includedir)/cex100
612 cluttercex100_include_HEADERS = $(cex_h)
614 clutter-cex100-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
615 $(QUIET_GEN)cp -f $< $(@F)
617 pc_files += clutter-cex100-$(CLUTTER_API_VERSION).pc
620 libclutter-cex100-$(CLUTTER_API_VERSION).so \
622 endif # SUPPORT_CEX100
626 $(srcdir)/egl/clutter-egl-headers.h \
627 $(srcdir)/egl/clutter-egl.h \
630 egl_source_h_priv = $(srcdir)/egl/clutter-backend-eglnative.h
631 egl_source_c = $(srcdir)/egl/clutter-backend-eglnative.c
633 # Wayland backend rules
635 backend_source_h_priv += \
636 $(srcdir)/wayland/clutter-backend-wayland.h \
637 $(srcdir)/wayland/clutter-stage-wayland.h \
638 $(srcdir)/wayland/clutter-event-wayland.h \
639 $(srcdir)/wayland/clutter-input-device-wayland.h \
640 $(srcdir)/wayland/clutter-device-manager-wayland.h
642 backend_source_c += \
643 $(srcdir)/wayland/clutter-backend-wayland.c \
644 $(srcdir)/wayland/clutter-stage-wayland.c \
645 $(srcdir)/wayland/clutter-event-wayland.c \
646 $(srcdir)/wayland/clutter-input-device-wayland.c \
647 $(srcdir)/wayland/clutter-device-manager-wayland.c
650 clutterwayland_includedir = $(clutter_includedir)/wayland
651 clutterwayland_include_HEADERS = $(srcdir)/wayland/clutter-wayland.h
653 clutter-wayland-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
654 $(QUIET_GEN)cp -f $< $(@F)
656 pc_files += clutter-wayland-$(CLUTTER_API_VERSION).pc
657 endif # SUPPORT_WAYLAND
659 if SUPPORT_WAYLAND_COMPOSITOR
660 wayland_compositor_source_h = \
661 $(srcdir)/wayland/clutter-wayland-compositor.h \
662 $(srcdir)/wayland/clutter-wayland-surface.h
663 backend_source_h += $(wayland_compositor_source_h)
664 backend_source_c += \
665 $(srcdir)/wayland/clutter-wayland-surface.c
667 wayland_compositor_includedir = $(clutter_includedir)/wayland
668 wayland_compositor_include_HEADERS = $(wayland_compositor_source_h)
670 clutter-wayland-compositor-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
671 $(QUIET_GEN)cp -f $< $(@F)
673 pc_files += clutter-wayland-compositor-$(CLUTTER_API_VERSION).pc
677 backend_source_h += $(egl_source_h)
678 backend_source_c += $(egl_source_c)
679 backend_source_h_priv += $(egl_source_h_priv)
681 clutteregl_includedir = $(clutter_includedir)/egl
682 clutteregl_include_HEADERS = $(egl_source_h)
684 clutter-egl-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
685 $(QUIET_GEN)cp -f $< $(@F)
687 pc_files += clutter-egl-$(CLUTTER_API_VERSION).pc
692 $(srcdir)/osx/clutter-backend-osx.c \
693 $(srcdir)/osx/clutter-stage-osx.c \
696 osx_source_h = $(srcdir)/osx/clutter-osx.h
698 osx_source_h_priv = \
699 $(srcdir)/osx/clutter-backend-osx.h \
700 $(srcdir)/osx/clutter-event-loop-osx.h \
701 $(srcdir)/osx/clutter-stage-osx.h \
702 $(srcdir)/osx/clutter-device-manager-osx.h \
705 osx_source_c_priv = \
706 $(srcdir)/osx/clutter-event-loop-osx.c \
707 $(srcdir)/osx/clutter-event-osx.c \
708 $(srcdir)/osx/clutter-device-manager-osx.c \
712 # we need to tell the compiler that part of our code base is
714 AM_CFLAGS += -xobjective-c
716 backend_source_h += $(osx_source_h)
717 backend_source_c += $(osx_source_c)
718 backend_source_h_priv += $(osx_source_h_priv)
719 backend_source_c_priv += $(osx_source_c_priv)
721 clutterosx_includedir = $(clutter_includedir)/osx
722 clutterosx_include_HEADERS = $(osx_source_h)
724 clutter-osx-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
725 $(QUIET_GEN)cp -f $< $(@F)
727 pc_files += clutter-osx-$(CLUTTER_API_VERSION).pc
732 $(srcdir)/cally/cally-actor.h \
733 $(srcdir)/cally/cally-clone.h \
734 $(srcdir)/cally/cally-factory.h \
735 $(srcdir)/cally/cally-group.h \
736 $(srcdir)/cally/cally.h \
737 $(srcdir)/cally/cally-main.h \
738 $(srcdir)/cally/cally-rectangle.h \
739 $(srcdir)/cally/cally-root.h \
740 $(srcdir)/cally/cally-stage.h \
741 $(srcdir)/cally/cally-text.h \
742 $(srcdir)/cally/cally-texture.h \
743 $(srcdir)/cally/cally-util.h \
747 $(srcdir)/cally/cally-actor.c \
748 $(srcdir)/cally/cally.c \
749 $(srcdir)/cally/cally-clone.c \
750 $(srcdir)/cally/cally-group.c \
751 $(srcdir)/cally/cally-rectangle.c \
752 $(srcdir)/cally/cally-root.c \
753 $(srcdir)/cally/cally-stage.c \
754 $(srcdir)/cally/cally-text.c \
755 $(srcdir)/cally/cally-texture.c \
756 $(srcdir)/cally/cally-util.c \
759 cally_sources_private = \
760 $(srcdir)/cally/cally-actor-private.h \
763 cally_includedir = $(clutter_base_includedir)/cally
764 cally_include_HEADERS = $(cally_sources_h)
766 pc_files += cally/cally-$(CLUTTER_API_VERSION).pc
767 EXTRA_DIST += cally/cally.pc.in
769 # general build rules:
770 # you should not need to modify anything below this point
772 # glib-genmarshal rules
773 glib_marshal_list = clutter-marshal.list
774 glib_marshal_prefix = _clutter_marshal
775 include $(top_srcdir)/build/autotools/Makefile.am.marshal
778 glib_enum_h = clutter-enum-types.h
779 glib_enum_c = clutter-enum-types.c
780 glib_enum_headers = $(source_h) $(backend_source_h)
781 include $(top_srcdir)/build/autotools/Makefile.am.enums
783 pkgconfigdir = $(libdir)/pkgconfig
784 pkgconfig_DATA = $(pc_files)
785 DISTCLEANFILES += $(pc_files)
787 clutter_include_HEADERS = \
789 $(top_srcdir)/clutter/clutter.h \
790 $(top_builddir)/clutter/clutter-version.h
792 nodist_clutter_include_HEADERS = \
793 $(top_builddir)/clutter/clutter-config.h \
796 clutter_deprecated_HEADERS = $(deprecated_h)
798 lib_LTLIBRARIES += libclutter-@CLUTTER_API_VERSION@.la
800 libclutter_@CLUTTER_API_VERSION@_la_LIBADD = \
803 $(CLUTTER_PROFILE_LIBS)
805 libclutter_@CLUTTER_API_VERSION@_la_DEPENDENCIES = \
808 libclutter_@CLUTTER_API_VERSION@_la_SOURCES = \
809 $(backend_source_c) \
810 $(backend_source_h) \
811 $(backend_source_c_priv) \
812 $(backend_source_h_priv) \
819 $(deprecated_c_priv) \
820 $(deprecated_h_priv) \
823 $(cally_sources_private) \
826 nodist_libclutter_@CLUTTER_API_VERSION@_la_SOURCES = \
827 $(backend_source_built) \
831 libclutter_@CLUTTER_API_VERSION@_la_LDFLAGS = \
832 $(CLUTTER_LINK_FLAGS) \
833 $(CLUTTER_LT_LDFLAGS) \
836 -export-symbols-regex "^(clutter|cally).*" \
838 $(win32_resources_ldflag) \
841 dist-hook: ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters ../build/win32/gen-enums.bat
843 ../build/win32/vs9/clutter.vcproj: $(top_srcdir)/build/win32/vs9/clutter.vcprojin
844 for F in `echo $(win32_source_c) $(cally_sources_c) $(source_c) $(source_c_priv) $(deprecated_c) $(deprecated_c_priv) $(built_source_c) | tr '/' '\\'`; do \
846 *.c) echo ' <File RelativePath="..\..\..\clutter\'$$F'" />' \
849 done >clutter.sourcefiles
850 $(CPP) -P - <$(top_srcdir)/build/win32/vs9/clutter.vcprojin >$@
851 rm clutter.sourcefiles
853 ../build/win32/vs10/clutter.vcxproj: $(top_srcdir)/build/win32/vs10/clutter.vcxprojin
854 for F in `echo $(win32_source_c) $(cally_sources_c) $(source_c) $(source_c_priv) $(deprecated_c) $(deprecated_c_priv) $(built_source_c) | tr '/' '\\'`; do \
856 *.c) echo ' <ClCompile Include="..\..\..\clutter\'$$F'" />' \
859 done >clutter.vs10.sourcefiles
860 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxprojin >$@
861 rm clutter.vs10.sourcefiles
863 ../build/win32/vs10/clutter.vcxproj.filters: $(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin
864 for F in `echo $(win32_source_c) $(cally_sources_c) $(source_c) $(source_c_priv) $(deprecated_c) $(deprecated_c_priv) $(built_source_c) | tr '/' '\\'`; do \
866 *.c) echo ' <ClCompile Include="..\..\..\clutter\'$$F'"><Filter>Sources</Filter></ClCompile>' \
869 done >clutter.vs10.sourcefiles.filters
870 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin >$@
871 rm clutter.vs10.sourcefiles.filters
874 echo 'perl %1\bin\glib-mkenums --template ../../clutter/clutter-enum-types.h.in ' >vsenums_h.temp1
875 for F in `echo $(source_h) $(backend_source_h) $(srcdir)/win32/clutter-win32.h`; do \
877 *-x11*.h|*-wayland*.h|*-gdk*.h|*-glx*.h|*-cex*.h|*-egl*.h|*-osx*.h) ;; \
878 *.h) echo '../../clutter'$$F' ' \
881 done >>vsenums_h.temp1
882 cat vsenums_h.temp1 | sed 's_/clutter./_/clutter/_' >vsenums_h.temp
883 cat vsenums_h.temp | tr -d '\n' >>$@
884 echo '> ..\..\clutter\clutter-enum-types.h' >>$@
889 echo 'perl %1\bin\glib-mkenums --template ../../clutter/clutter-enum-types.c.in ' >vsenums_c.temp1
890 for F in `echo $(source_h) $(backend_source_h) $(srcdir)/win32/clutter-win32.h`; do \
892 *-x11*.h|*-wayland*.h|*-gdk*.h|*-glx*.h|*-cex*.h|*-egl*.h|*-osx*.h) ;; \
893 *.h) echo '../../clutter'$$F' ' \
896 done >>vsenums_c.temp1
897 cat vsenums_c.temp1 | sed 's_/clutter./_/clutter/_' >vsenums_c.temp
898 cat vsenums_c.temp | tr -d '\n' >>$@
899 echo '> ..\..\clutter\clutter-enum-types.c' >>$@
903 ../build/win32/gen-enums.bat: clutter.vsenums_h clutter.vsenums_c
904 echo 'if exist ..\..\clutter\clutter-enum-types.h goto DONE_COGL_ENUMS_H' >$@
905 cat clutter.vsenums_h >>$@
906 echo ':DONE_COGL_ENUMS_H' >>$@
907 echo 'if exist ..\..\clutter\clutter-enum-types.c goto DONE_COGL_ENUMS_C' >>$@
908 cat clutter.vsenums_c >>$@
909 echo ':DONE_COGL_ENUMS_C' >>$@
914 clutter-config.h.win32 \
915 clutter-config.h.win32_GDK \
919 # Let the VS9/VS10 Project files be cleared out before they are re-expanded...
920 DISTCLEANFILES += ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters ../build/win32/gen-enums.bat
923 test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
924 for lib in `echo $(compat_libs)`; do \
925 (cd $(DESTDIR)$(libdir) && \
926 rm -f $$lib.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION); \
928 (cd $(DESTDIR)$(libdir) && \
929 { ln -s -f libclutter-$(CLUTTER_API_VERSION).so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib.0 || \
930 { rm -f $$lib.0 && ln -s libclutter-1.0.so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib.0; }; \
933 (cd $(DESTDIR)$(libdir) && \
934 { ln -s -f libclutter-$(CLUTTER_API_VERSION).so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib || \
935 { rm -f $$lib && ln -s libclutter-1.0.so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib; }; \
940 # gobject-introspection rules
941 -include $(INTROSPECTION_MAKEFILE)
943 if HAVE_INTROSPECTION
944 Clutter-@CLUTTER_API_VERSION@.gir: libclutter-@CLUTTER_API_VERSION@.la Makefile
946 Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter
947 Clutter_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
948 Clutter_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
949 Clutter_@CLUTTER_API_VERSION_AM@_gir_FILES = \
950 $(clutter_include_HEADERS) \
951 $(clutter_deprecated_HEADERS) \
952 $(nodist_clutter_include_HEADERS) \
956 Clutter_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
957 Clutter_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = GL-1.0 GObject-2.0 cairo-1.0 Cogl-1.0 CoglPango-1.0 Atk-1.0 Json-1.0
958 Clutter_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
960 --c-include='clutter/clutter.h' \
961 --pkg-export=clutter-@CLUTTER_API_VERSION@
963 INTROSPECTION_GIRS += Clutter-@CLUTTER_API_VERSION@.gir
965 Cally-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
967 Cally_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Cally
968 Cally_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
969 Cally_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
970 Cally_@CLUTTER_API_VERSION_AM@_gir_FILES = $(cally_sources_h) $(cally_sources_c)
971 Cally_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
972 Cally_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
974 --identifier-prefix=Cally \
975 --symbol-prefix=cally \
976 --c-include='cally/cally.h' \
977 --pkg-export=cally-@CLUTTER_API_VERSION@ \
978 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
980 INTROSPECTION_GIRS += Cally-@CLUTTER_API_VERSION@.gir
983 ClutterX11-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
985 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
987 --identifier-prefix=ClutterX11 \
988 --symbol-prefix=clutter_x11 \
989 --c-include='clutter/x11/clutter-x11.h' \
990 --pkg-export=clutter-x11-@CLUTTER_API_VERSION@ \
991 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
992 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = xlib-2.0
993 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
994 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_FILES = $(x11_introspection)
995 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
997 INTROSPECTION_GIRS += ClutterX11-@CLUTTER_API_VERSION@.gir
1001 ClutterGdk-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
1003 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
1004 --identifier-prefix=ClutterGdk \
1005 --symbol-prefix=clutter_gdk \
1006 --c-include='clutter/gdk/clutter-gdk.h' \
1007 --pkg-export=clutter-gdk-@CLUTTER_API_VERSION@ \
1008 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
1009 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = Gdk-3.0
1010 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
1011 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_FILES = $(gdk_introspection)
1012 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
1014 INTROSPECTION_GIRS += ClutterGdk-@CLUTTER_API_VERSION@.gir
1017 # INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
1018 # install anything - we need to install inside our prefix.
1019 girdir = $(datadir)/gir-1.0
1020 gir_DATA = $(INTROSPECTION_GIRS)
1022 typelibdir = $(libdir)/girepository-1.0
1023 typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
1025 CLEANFILES += $(gir_DATA) $(typelib_DATA)
1026 endif # HAVE_INTROSPECTION
1029 clutter_all_c_sources = \
1030 $(backend_source_c) \
1031 $(backend_source_c_priv) \
1035 $(deprecated_c_priv) \
1036 $(cally_sources_c) \
1039 TESTS_ENVIRONMENT = srcdir="$(srcdir)" CLUTTER_BACKENDS="$(CLUTTER_BACKENDS)"
1044 EXTRA_DIST += abicheck.sh
1047 gcov_sources = $(source_c) $(backend_source_c)
1048 include $(top_srcdir)/build/autotools/Makefile.am.gcov