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-alpha.h \
57 $(srcdir)/clutter-animatable.h \
58 $(srcdir)/clutter-animation.h \
59 $(srcdir)/clutter-animator.h \
60 $(srcdir)/clutter-backend.h \
61 $(srcdir)/clutter-bind-constraint.h \
62 $(srcdir)/clutter-binding-pool.h \
63 $(srcdir)/clutter-bin-layout.h \
64 $(srcdir)/clutter-blur-effect.h \
65 $(srcdir)/clutter-box-layout.h \
66 $(srcdir)/clutter-brightness-contrast-effect.h \
67 $(srcdir)/clutter-cairo-texture.h \
68 $(srcdir)/clutter-canvas.h \
69 $(srcdir)/clutter-child-meta.h \
70 $(srcdir)/clutter-click-action.h \
71 $(srcdir)/clutter-cogl-compat.h \
72 $(srcdir)/clutter-clone.h \
73 $(srcdir)/clutter-color-static.h \
74 $(srcdir)/clutter-color.h \
75 $(srcdir)/clutter-colorize-effect.h \
76 $(srcdir)/clutter-constraint.h \
77 $(srcdir)/clutter-container.h \
78 $(srcdir)/clutter-content.h \
79 $(srcdir)/clutter-deform-effect.h \
80 $(srcdir)/clutter-deprecated.h \
81 $(srcdir)/clutter-desaturate-effect.h \
82 $(srcdir)/clutter-device-manager.h \
83 $(srcdir)/clutter-drag-action.h \
84 $(srcdir)/clutter-drop-action.h \
85 $(srcdir)/clutter-effect.h \
86 $(srcdir)/clutter-enums.h \
87 $(srcdir)/clutter-event.h \
88 $(srcdir)/clutter-feature.h \
89 $(srcdir)/clutter-fixed-layout.h \
90 $(srcdir)/clutter-flow-layout.h \
91 $(srcdir)/clutter-gesture-action.h \
92 $(srcdir)/clutter-group.h \
93 $(srcdir)/clutter-image.h \
94 $(srcdir)/clutter-input-device.h \
95 $(srcdir)/clutter-interval.h \
96 $(srcdir)/clutter-keysyms.h \
97 $(srcdir)/clutter-layout-manager.h \
98 $(srcdir)/clutter-layout-meta.h \
99 $(srcdir)/clutter-list-model.h \
100 $(srcdir)/clutter-macros.h \
101 $(srcdir)/clutter-main.h \
102 $(srcdir)/clutter-media.h \
103 $(srcdir)/clutter-model.h \
104 $(srcdir)/clutter-offscreen-effect.h \
105 $(srcdir)/clutter-page-turn-effect.h \
106 $(srcdir)/clutter-paint-nodes.h \
107 $(srcdir)/clutter-paint-node.h \
108 $(srcdir)/clutter-path-constraint.h \
109 $(srcdir)/clutter-path.h \
110 $(srcdir)/clutter-property-transition.h \
111 $(srcdir)/clutter-script.h \
112 $(srcdir)/clutter-scriptable.h \
113 $(srcdir)/clutter-settings.h \
114 $(srcdir)/clutter-shader-effect.h \
115 $(srcdir)/clutter-shader-types.h \
116 $(srcdir)/clutter-swipe-action.h \
117 $(srcdir)/clutter-snap-constraint.h \
118 $(srcdir)/clutter-stage.h \
119 $(srcdir)/clutter-stage-manager.h \
120 $(srcdir)/clutter-state.h \
121 $(srcdir)/clutter-table-layout.h \
122 $(srcdir)/clutter-texture.h \
123 $(srcdir)/clutter-text.h \
124 $(srcdir)/clutter-text-buffer.h \
125 $(srcdir)/clutter-timeline.h \
126 $(srcdir)/clutter-transition.h \
127 $(srcdir)/clutter-types.h \
128 $(srcdir)/clutter-units.h \
132 $(srcdir)/clutter-action.c \
133 $(srcdir)/clutter-actor-box.c \
134 $(srcdir)/clutter-actor-meta.c \
135 $(srcdir)/clutter-actor.c \
136 $(srcdir)/clutter-align-constraint.c \
137 $(srcdir)/clutter-alpha.c \
138 $(srcdir)/clutter-animatable.c \
139 $(srcdir)/clutter-animation.c \
140 $(srcdir)/clutter-animator.c \
141 $(srcdir)/clutter-backend.c \
142 $(srcdir)/clutter-bezier.c \
143 $(srcdir)/clutter-bind-constraint.c \
144 $(srcdir)/clutter-binding-pool.c \
145 $(srcdir)/clutter-bin-layout.c \
146 $(srcdir)/clutter-blur-effect.c \
147 $(srcdir)/clutter-box-layout.c \
148 $(srcdir)/clutter-brightness-contrast-effect.c \
149 $(srcdir)/clutter-cairo-texture.c \
150 $(srcdir)/clutter-canvas.c \
151 $(srcdir)/clutter-child-meta.c \
152 $(srcdir)/clutter-click-action.c \
153 $(srcdir)/clutter-clone.c \
154 $(srcdir)/clutter-color.c \
155 $(srcdir)/clutter-colorize-effect.c \
156 $(srcdir)/clutter-constraint.c \
157 $(srcdir)/clutter-container.c \
158 $(srcdir)/clutter-content.c \
159 $(srcdir)/clutter-deform-effect.c \
160 $(srcdir)/clutter-desaturate-effect.c \
161 $(srcdir)/clutter-device-manager.c \
162 $(srcdir)/clutter-drag-action.c \
163 $(srcdir)/clutter-drop-action.c \
164 $(srcdir)/clutter-effect.c \
165 $(srcdir)/clutter-event.c \
166 $(srcdir)/clutter-feature.c \
167 $(srcdir)/clutter-fixed-layout.c \
168 $(srcdir)/clutter-flatten-effect.c \
169 $(srcdir)/clutter-flow-layout.c \
170 $(srcdir)/clutter-gesture-action.c \
171 $(srcdir)/clutter-image.c \
172 $(srcdir)/clutter-input-device.c \
173 $(srcdir)/clutter-interval.c \
174 $(srcdir)/clutter-keysyms-table.c \
175 $(srcdir)/clutter-layout-manager.c \
176 $(srcdir)/clutter-layout-meta.c \
177 $(srcdir)/clutter-list-model.c \
178 $(srcdir)/clutter-main.c \
179 $(srcdir)/clutter-master-clock.c \
180 $(srcdir)/clutter-media.c \
181 $(srcdir)/clutter-model.c \
182 $(srcdir)/clutter-offscreen-effect.c \
183 $(srcdir)/clutter-page-turn-effect.c \
184 $(srcdir)/clutter-paint-nodes.c \
185 $(srcdir)/clutter-paint-node.c \
186 $(srcdir)/clutter-path-constraint.c \
187 $(srcdir)/clutter-path.c \
188 $(srcdir)/clutter-property-transition.c \
189 $(srcdir)/clutter-script.c \
190 $(srcdir)/clutter-script-parser.c \
191 $(srcdir)/clutter-scriptable.c \
192 $(srcdir)/clutter-settings.c \
193 $(srcdir)/clutter-shader-effect.c \
194 $(srcdir)/clutter-shader-types.c \
195 $(srcdir)/clutter-swipe-action.c \
196 $(srcdir)/clutter-snap-constraint.c \
197 $(srcdir)/clutter-stage.c \
198 $(srcdir)/clutter-stage-manager.c \
199 $(srcdir)/clutter-stage-window.c \
200 $(srcdir)/clutter-state.c \
201 $(srcdir)/clutter-table-layout.c \
202 $(srcdir)/clutter-texture.c \
203 $(srcdir)/clutter-text.c \
204 $(srcdir)/clutter-text-buffer.c \
205 $(srcdir)/clutter-transition.c \
206 $(srcdir)/clutter-timeline.c \
207 $(srcdir)/clutter-units.c \
208 $(srcdir)/clutter-util.c \
209 $(srcdir)/clutter-paint-volume.c \
212 # private headers; these should not be distributed or introspected
214 $(srcdir)/clutter-actor-meta-private.h \
215 $(srcdir)/clutter-actor-private.h \
216 $(srcdir)/clutter-backend-private.h \
217 $(srcdir)/clutter-bezier.h \
218 $(srcdir)/clutter-content-private.h \
219 $(srcdir)/clutter-debug.h \
220 $(srcdir)/clutter-device-manager-private.h \
221 $(srcdir)/clutter-easing.h \
222 $(srcdir)/clutter-effect-private.h \
223 $(srcdir)/clutter-event-translator.h \
224 $(srcdir)/clutter-event-private.h \
225 $(srcdir)/clutter-flatten-effect.h \
226 $(srcdir)/clutter-id-pool.h \
227 $(srcdir)/clutter-master-clock.h \
228 $(srcdir)/clutter-model-private.h \
229 $(srcdir)/clutter-offscreen-effect-private.h \
230 $(srcdir)/clutter-paint-node-private.h \
231 $(srcdir)/clutter-paint-volume-private.h \
232 $(srcdir)/clutter-private.h \
233 $(srcdir)/clutter-profile.h \
234 $(srcdir)/clutter-script-private.h \
235 $(srcdir)/clutter-settings-private.h \
236 $(srcdir)/clutter-stage-manager-private.h \
237 $(srcdir)/clutter-stage-private.h \
238 $(srcdir)/clutter-stage-window.h \
241 # private source code; these should not be introspected
243 $(srcdir)/clutter-easing.c \
244 $(srcdir)/clutter-event-translator.c \
245 $(srcdir)/clutter-id-pool.c \
246 $(srcdir)/clutter-profile.c \
249 # deprecated installed headers
251 $(srcdir)/deprecated/clutter-actor.h \
252 $(srcdir)/deprecated/clutter-animatable.h \
253 $(srcdir)/deprecated/clutter-animation.h \
254 $(srcdir)/deprecated/clutter-backend.h \
255 $(srcdir)/deprecated/clutter-behaviour.h \
256 $(srcdir)/deprecated/clutter-behaviour-depth.h \
257 $(srcdir)/deprecated/clutter-behaviour-ellipse.h \
258 $(srcdir)/deprecated/clutter-behaviour-opacity.h \
259 $(srcdir)/deprecated/clutter-behaviour-path.h \
260 $(srcdir)/deprecated/clutter-behaviour-rotate.h \
261 $(srcdir)/deprecated/clutter-behaviour-scale.h \
262 $(srcdir)/deprecated/clutter-box.h \
263 $(srcdir)/deprecated/clutter-cairo-texture.h \
264 $(srcdir)/deprecated/clutter-container.h \
265 $(srcdir)/deprecated/clutter-fixed.h \
266 $(srcdir)/deprecated/clutter-frame-source.h \
267 $(srcdir)/deprecated/clutter-group.h \
268 $(srcdir)/deprecated/clutter-keysyms.h \
269 $(srcdir)/deprecated/clutter-main.h \
270 $(srcdir)/deprecated/clutter-rectangle.h \
271 $(srcdir)/deprecated/clutter-score.h \
272 $(srcdir)/deprecated/clutter-shader.h \
273 $(srcdir)/deprecated/clutter-stage-manager.h \
274 $(srcdir)/deprecated/clutter-stage.h \
275 $(srcdir)/deprecated/clutter-texture.h \
276 $(srcdir)/deprecated/clutter-timeline.h \
277 $(srcdir)/deprecated/clutter-timeout-pool.h \
278 $(srcdir)/deprecated/clutter-util.h \
281 # deprecated source code
283 $(srcdir)/deprecated/clutter-actor-deprecated.c \
284 $(srcdir)/deprecated/clutter-behaviour.c \
285 $(srcdir)/deprecated/clutter-behaviour-depth.c \
286 $(srcdir)/deprecated/clutter-behaviour-ellipse.c \
287 $(srcdir)/deprecated/clutter-behaviour-opacity.c \
288 $(srcdir)/deprecated/clutter-behaviour-path.c \
289 $(srcdir)/deprecated/clutter-behaviour-rotate.c \
290 $(srcdir)/deprecated/clutter-behaviour-scale.c \
291 $(srcdir)/deprecated/clutter-box.c \
292 $(srcdir)/deprecated/clutter-fixed.c \
293 $(srcdir)/deprecated/clutter-frame-source.c \
294 $(srcdir)/deprecated/clutter-group.c \
295 $(srcdir)/deprecated/clutter-rectangle.c \
296 $(srcdir)/deprecated/clutter-score.c \
297 $(srcdir)/deprecated/clutter-shader.c \
298 $(srcdir)/deprecated/clutter-timeout-pool.c \
301 # deprecated private headers; these should not be installed
302 deprecated_h_priv = \
303 $(srcdir)/deprecated/clutter-timeout-interval.h \
306 # deprecated private source code; these should not be introspected
307 deprecated_c_priv = \
308 $(srcdir)/deprecated/clutter-timeout-interval.c \
313 clutter-enum-types.c \
319 clutter-enum-types.h \
324 DISTCLEANFILES += clutter-config.h
325 EXTRA_DIST += clutter-config.h.in
328 DISTCLEANFILES += clutter-version.h
329 EXTRA_DIST += clutter-version.h.in clutter-version.h
331 # key symbol update script
332 EXTRA_DIST += clutter-keysyms-update.pl
334 pc_files += clutter-$(CLUTTER_API_VERSION).pc
336 # in order to be compatible with Clutter < 1.10, when we shipped a single
337 # shared library whose name was determined by the single backend it
338 # supported, we need to install symbolic links so that existing applications
339 # using Clutter won't break in the Brave New World of multi-backend support
340 # in the same shared object.
343 # backends source listings
345 # backend_source_c := source code
346 # backend_source_h := installed public headers
347 # backend_source_c_priv := source that should not be scanned by g-i
348 # backend_source_h_priv := private headers
349 # backend_source_built := built sources
353 backend_source_c_priv =
354 backend_source_h_priv =
355 backend_source_built =
359 $(srcdir)/x11/clutter-backend-x11.c \
360 $(srcdir)/x11/clutter-device-manager-core-x11.c \
361 $(srcdir)/x11/clutter-event-x11.c \
362 $(srcdir)/x11/clutter-input-device-core-x11.c \
363 $(srcdir)/x11/clutter-keymap-x11.c \
364 $(srcdir)/x11/clutter-stage-x11.c \
365 $(srcdir)/x11/clutter-x11-texture-pixmap.c \
369 $(srcdir)/x11/clutter-x11.h \
370 $(srcdir)/x11/clutter-x11-texture-pixmap.h \
373 x11_source_h_priv = \
374 $(srcdir)/x11/clutter-backend-x11.h \
375 $(srcdir)/x11/clutter-device-manager-core-x11.h \
376 $(srcdir)/x11/clutter-input-device-core-x11.h \
377 $(srcdir)/x11/clutter-keymap-x11.h \
378 $(srcdir)/x11/clutter-settings-x11.h \
379 $(srcdir)/x11/clutter-stage-x11.h \
382 x11_source_c_priv = \
383 $(srcdir)/x11/xsettings/xsettings-client.c \
384 $(srcdir)/x11/xsettings/xsettings-client.h \
385 $(srcdir)/x11/xsettings/xsettings-common.c \
386 $(srcdir)/x11/xsettings/xsettings-common.h \
391 $(srcdir)/x11/clutter-device-manager-xi2.c \
392 $(srcdir)/x11/clutter-input-device-xi2.c \
395 x11_source_h_priv += \
396 $(srcdir)/x11/clutter-device-manager-xi2.h \
397 $(srcdir)/x11/clutter-input-device-xi2.h \
402 backend_source_h += $(x11_source_h)
403 backend_source_c += $(x11_source_c)
404 backend_source_h_priv += $(x11_source_h_priv)
405 backend_source_c_priv += $(x11_source_c_priv)
407 # the list of files we want to introspect on X11
408 x11_introspection = $(x11_source_c) $(x11_source_h)
410 clutterx11_includedir = $(clutter_includedir)/x11
411 clutterx11_include_HEADERS = $(x11_source_h)
413 clutter-x11-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
414 $(QUIET_GEN)cp -f $< $(@F)
416 pc_files += clutter-x11-$(CLUTTER_API_VERSION).pc
419 # Shared cogl backend files
423 $(srcdir)/cogl/clutter-stage-cogl.c \
426 cogl_source_h_priv = \
427 $(srcdir)/cogl/clutter-stage-cogl.h \
433 backend_source_h += $(cogl_source_h)
434 backend_source_c += $(cogl_source_c)
435 backend_source_h_priv += $(cogl_source_h_priv)
436 backend_source_c_priv += $(cogl_source_c_priv)
438 # pkg-config file for the cogl meta-backend
439 clutter-cogl-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
440 $(QUIET_GEN)cp -f $< $(@F)
442 pc_files += clutter-cogl-$(CLUTTER_API_VERSION).pc
445 # For compatibility with the old GLX backend
447 # Note: there wasn't actually anything GLX specific so we can add
448 # the compatibility if clutter supports x11
449 glx_source_c = $(srcdir)/x11/clutter-glx-texture-pixmap.c
450 glx_source_h = $(srcdir)/x11/clutter-glx-texture-pixmap.h \
451 $(srcdir)/x11/clutter-glx.h
454 backend_source_h += $(glx_source_h)
455 backend_source_c += $(glx_source_c)
457 clutterglx_includedir = $(clutter_includedir)/glx
458 clutterglx_include_HEADERS = $(glx_source_h)
460 clutter-glx-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
461 $(QUIET_GEN)cp -f $< $(@F)
463 pc_files += clutter-glx-$(CLUTTER_API_VERSION).pc
466 libclutter-glx-$(CLUTTER_API_VERSION).so \
472 $(srcdir)/gdk/clutter-backend-gdk.c \
473 $(srcdir)/gdk/clutter-device-manager-gdk.c \
474 $(srcdir)/gdk/clutter-input-device-gdk.c \
475 $(srcdir)/gdk/clutter-event-gdk.c \
476 $(srcdir)/gdk/clutter-stage-gdk.c \
480 $(srcdir)/gdk/clutter-gdk.h \
483 gdk_source_h_priv = \
484 $(srcdir)/gdk/clutter-settings-gdk.h \
485 $(srcdir)/gdk/clutter-backend-gdk.h \
486 $(srcdir)/gdk/clutter-device-manager-gdk.h \
487 $(srcdir)/gdk/clutter-input-device-gdk.h \
488 $(srcdir)/gdk/clutter-stage-gdk.h \
492 backend_source_h += $(gdk_source_h)
493 backend_source_c += $(gdk_source_c)
494 backend_source_h_priv += $(gdk_source_h_priv)
496 cluttergdk_includedir = $(clutter_includedir)/gdk
497 cluttergdk_include_HEADERS = $(gdk_source_h)
499 clutter-gdk-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
500 $(QUIET_GEN)cp -f $< $(@F)
502 pc_files += clutter-gdk-$(CLUTTER_API_VERSION).pc
504 gdk_introspection = $(gdk_source_c) $(gdk_source_h)
507 # Windows backend rules
509 $(srcdir)/win32/clutter-backend-win32.c \
510 $(srcdir)/win32/clutter-device-manager-win32.c \
511 $(srcdir)/win32/clutter-event-win32.c \
512 $(srcdir)/win32/clutter-stage-win32.c \
516 $(srcdir)/win32/clutter-win32.h \
519 win32_source_h_priv = \
520 $(srcdir)/win32/clutter-backend-win32.h \
521 $(srcdir)/win32/clutter-device-manager-win32.h \
522 $(srcdir)/win32/clutter-stage-win32.h \
526 # Ideally this resources stuff would go in win32/ but libtool doesn't
527 # seem to pass on the -Wl argument when linking a convenience library
528 # so we need to do it here as part of linking the dll. libtool also
529 # won't let you link against the .o directly because it wants you to
530 # link against libtool objects for dynamic libraries.
533 $(WINDRES) -I$(srcdir)/win32 $< $@
535 win32/resources.o : $(srcdir)/win32/invisible-cursor.cur
537 win32_resources = win32/resources.o
538 win32_resources_ldflag = -Wl,win32/resources.o
540 backend_source_h += $(win32_source_h)
541 backend_source_c += $(win32_source_c)
542 backend_source_h_priv += $(win32_source_h_priv)
544 clutterwin_includedir = $(clutter_includedir)/win32
545 clutterwin_include_HEADERS = $(win32_source_h)
547 clutter-win32-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
548 $(QUIET_GEN)cp -f $< $(@F)
550 pc_files += clutter-win32-$(CLUTTER_API_VERSION).pc
551 endif # SUPPORT_WIN32
554 $(srcdir)/win32/invisible-cursor.cur \
555 $(srcdir)/win32/resources.rc \
558 egl_tslib_h = $(srcdir)/tslib/clutter-event-tslib.h
559 egl_tslib_c = $(srcdir)/tslib/clutter-event-tslib.c
562 backend_source_c_priv += $(egl_tslib_c)
563 backend_source_h_priv += $(egl_tslib_h)
564 endif # SUPPORT_TSLIB
567 $(srcdir)/evdev/clutter-device-manager-evdev.c \
568 $(srcdir)/evdev/clutter-input-device-evdev.c \
571 $(srcdir)/evdev/clutter-device-manager-evdev.h \
572 $(srcdir)/evdev/clutter-input-device-evdev.h \
574 evdev_h = $(srcdir)/evdev/clutter-evdev.h
577 backend_source_c_priv += $(evdev_c_priv)
578 backend_source_h_priv += $(evdev_h_priv)
579 backend_source_h += $(evdev_h)
581 clutterevdev_includedir = $(clutter_includedir)/evdev
582 clutterevdev_include_HEADERS = $(evdev_h)
583 endif # SUPPORT_EVDEV
586 backend_source_c_priv += $(srcdir)/evdev/clutter-xkb-utils.c
587 backend_source_h_priv += $(srcdir)/evdev/clutter-xkb-utils.h
590 cex_source_h_priv = $(srcdir)/cex100/clutter-backend-cex100.h
591 cex_source_c = $(srcdir)/cex100/clutter-backend-cex100.c
592 cex_h = cex100/clutter-cex100.h
593 BUILT_SOURCES += $(cex_h)
594 EXTRA_DIST += $(srcdir)/$(cex_h).in
597 backend_source_h += $(cex_h)
598 backend_source_c += $(cex_source_c)
599 backend_source_h_priv += $(cex_source_h_priv)
601 cluttercex100_includedir = $(clutter_includedir)/cex100
602 cluttercex100_include_HEADERS = $(cex_h)
604 clutter-cex100-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
605 $(QUIET_GEN)cp -f $< $(@F)
607 pc_files += clutter-cex100-$(CLUTTER_API_VERSION).pc
610 libclutter-cex100-$(CLUTTER_API_VERSION).so \
612 endif # SUPPORT_CEX100
616 $(srcdir)/egl/clutter-egl-headers.h \
617 $(srcdir)/egl/clutter-egl.h \
620 egl_source_h_priv = $(srcdir)/egl/clutter-backend-eglnative.h
621 egl_source_c = $(srcdir)/egl/clutter-backend-eglnative.c
623 # Wayland backend rules
625 backend_source_h_priv += \
626 $(srcdir)/evdev/clutter-xkb-utils.h \
627 $(srcdir)/wayland/clutter-backend-wayland.h \
628 $(srcdir)/wayland/clutter-stage-wayland.h \
629 $(srcdir)/wayland/clutter-event-wayland.h \
630 $(srcdir)/wayland/clutter-input-device-wayland.h \
631 $(srcdir)/wayland/clutter-device-manager-wayland.h
633 backend_source_c += \
634 $(srcdir)/evdev/clutter-xkb-utils.c \
635 $(srcdir)/wayland/clutter-backend-wayland.c \
636 $(srcdir)/wayland/clutter-stage-wayland.c \
637 $(srcdir)/wayland/clutter-event-wayland.c \
638 $(srcdir)/wayland/clutter-input-device-wayland.c \
639 $(srcdir)/wayland/clutter-device-manager-wayland.c
642 clutterwayland_includedir = $(clutter_includedir)/wayland
643 clutterwayland_include_HEADERS = $(srcdir)/wayland/clutter-wayland.h
645 clutter-wayland-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
646 $(QUIET_GEN)cp -f $< $(@F)
648 pc_files += clutter-wayland-$(CLUTTER_API_VERSION).pc
649 endif # SUPPORT_WAYLAND
651 if SUPPORT_WAYLAND_COMPOSITOR
652 wayland_compositor_source_h = \
653 $(srcdir)/wayland/clutter-wayland-compositor.h \
654 $(srcdir)/wayland/clutter-wayland-surface.h
655 backend_source_h += $(wayland_compositor_source_h)
656 backend_source_c += \
657 $(srcdir)/wayland/clutter-wayland-surface.c
659 wayland_compositor_includedir = $(clutter_includedir)/wayland
660 wayland_compositor_include_HEADERS = $(wayland_compositor_source_h)
662 clutter-wayland-compositor-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
663 $(QUIET_GEN)cp -f $< $(@F)
665 pc_files += clutter-wayland-compositor-$(CLUTTER_API_VERSION).pc
669 backend_source_h += $(egl_source_h)
670 backend_source_c += $(egl_source_c)
671 backend_source_h_priv += $(egl_source_h_priv)
673 clutteregl_includedir = $(clutter_includedir)/egl
674 clutteregl_include_HEADERS = $(egl_source_h)
676 clutter-egl-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
677 $(QUIET_GEN)cp -f $< $(@F)
679 pc_files += clutter-egl-$(CLUTTER_API_VERSION).pc
684 $(srcdir)/osx/clutter-backend-osx.c \
685 $(srcdir)/osx/clutter-stage-osx.c \
688 osx_source_h = $(srcdir)/osx/clutter-osx.h
690 osx_source_h_priv = \
691 $(srcdir)/osx/clutter-backend-osx.h \
692 $(srcdir)/osx/clutter-event-loop-osx.h \
693 $(srcdir)/osx/clutter-stage-osx.h \
694 $(srcdir)/osx/clutter-device-manager-osx.h \
697 osx_source_c_priv = \
698 $(srcdir)/osx/clutter-event-loop-osx.c \
699 $(srcdir)/osx/clutter-event-osx.c \
700 $(srcdir)/osx/clutter-device-manager-osx.c \
704 # we need to tell the compiler that part of our code base is
706 AM_CFLAGS += -xobjective-c
708 backend_source_h += $(osx_source_h)
709 backend_source_c += $(osx_source_c)
710 backend_source_h_priv += $(osx_source_h_priv)
711 backend_source_c_priv += $(osx_source_c_priv)
713 clutterosx_includedir = $(clutter_includedir)/osx
714 clutterosx_include_HEADERS = $(osx_source_h)
716 clutter-osx-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
717 $(QUIET_GEN)cp -f $< $(@F)
719 pc_files += clutter-osx-$(CLUTTER_API_VERSION).pc
724 $(srcdir)/cally/cally-actor.h \
725 $(srcdir)/cally/cally-clone.h \
726 $(srcdir)/cally/cally-factory.h \
727 $(srcdir)/cally/cally-group.h \
728 $(srcdir)/cally/cally.h \
729 $(srcdir)/cally/cally-main.h \
730 $(srcdir)/cally/cally-rectangle.h \
731 $(srcdir)/cally/cally-root.h \
732 $(srcdir)/cally/cally-stage.h \
733 $(srcdir)/cally/cally-text.h \
734 $(srcdir)/cally/cally-texture.h \
735 $(srcdir)/cally/cally-util.h \
739 $(srcdir)/cally/cally-actor.c \
740 $(srcdir)/cally/cally.c \
741 $(srcdir)/cally/cally-clone.c \
742 $(srcdir)/cally/cally-group.c \
743 $(srcdir)/cally/cally-rectangle.c \
744 $(srcdir)/cally/cally-root.c \
745 $(srcdir)/cally/cally-stage.c \
746 $(srcdir)/cally/cally-text.c \
747 $(srcdir)/cally/cally-texture.c \
748 $(srcdir)/cally/cally-util.c \
751 cally_sources_private = \
752 $(srcdir)/cally/cally-actor-private.h \
755 cally_includedir = $(clutter_base_includedir)/cally
756 cally_include_HEADERS = $(cally_sources_h)
758 pc_files += cally/cally-$(CLUTTER_API_VERSION).pc
759 EXTRA_DIST += cally/cally.pc.in
761 # general build rules:
762 # you should not need to modify anything below this point
764 # glib-genmarshal rules
765 glib_marshal_list = clutter-marshal.list
766 glib_marshal_prefix = _clutter_marshal
767 include $(top_srcdir)/build/autotools/Makefile.am.marshal
770 glib_enum_h = clutter-enum-types.h
771 glib_enum_c = clutter-enum-types.c
772 glib_enum_headers = $(source_h) $(backend_source_h)
773 include $(top_srcdir)/build/autotools/Makefile.am.enums
775 pkgconfigdir = $(libdir)/pkgconfig
776 pkgconfig_DATA = $(pc_files)
777 DISTCLEANFILES += $(pc_files)
779 clutter_include_HEADERS = \
781 $(top_srcdir)/clutter/clutter.h \
782 $(top_builddir)/clutter/clutter-version.h
784 nodist_clutter_include_HEADERS = \
785 $(top_builddir)/clutter/clutter-config.h \
788 clutter_deprecated_HEADERS = $(deprecated_h)
790 lib_LTLIBRARIES += libclutter-@CLUTTER_API_VERSION@.la
792 libclutter_@CLUTTER_API_VERSION@_la_LIBADD = \
795 $(CLUTTER_PROFILE_LIBS)
797 libclutter_@CLUTTER_API_VERSION@_la_DEPENDENCIES = \
800 libclutter_@CLUTTER_API_VERSION@_la_SOURCES = \
801 $(backend_source_c) \
802 $(backend_source_h) \
803 $(backend_source_c_priv) \
804 $(backend_source_h_priv) \
811 $(deprecated_c_priv) \
812 $(deprecated_h_priv) \
815 $(cally_sources_private) \
818 nodist_libclutter_@CLUTTER_API_VERSION@_la_SOURCES = \
819 $(backend_source_built) \
823 libclutter_@CLUTTER_API_VERSION@_la_LDFLAGS = \
824 $(CLUTTER_LINK_FLAGS) \
825 $(CLUTTER_LT_LDFLAGS) \
828 -export-symbols-regex "^(clutter|cally).*" \
830 $(win32_resources_ldflag) \
833 dist-hook: ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters ../build/win32/gen-enums.bat
835 ../build/win32/vs9/clutter.vcproj: $(top_srcdir)/build/win32/vs9/clutter.vcprojin
836 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 \
838 *.c) echo ' <File RelativePath="..\..\..\clutter\'$$F'" />' \
841 done >clutter.sourcefiles
842 $(CPP) -P - <$(top_srcdir)/build/win32/vs9/clutter.vcprojin >$@
843 rm clutter.sourcefiles
845 ../build/win32/vs10/clutter.vcxproj: $(top_srcdir)/build/win32/vs10/clutter.vcxprojin
846 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 \
848 *.c) echo ' <ClCompile Include="..\..\..\clutter\'$$F'" />' \
851 done >clutter.vs10.sourcefiles
852 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxprojin >$@
853 rm clutter.vs10.sourcefiles
855 ../build/win32/vs10/clutter.vcxproj.filters: $(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin
856 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 \
858 *.c) echo ' <ClCompile Include="..\..\..\clutter\'$$F'"><Filter>Sources</Filter></ClCompile>' \
861 done >clutter.vs10.sourcefiles.filters
862 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin >$@
863 rm clutter.vs10.sourcefiles.filters
866 echo 'perl %1\bin\glib-mkenums --template ../../clutter/clutter-enum-types.h.in ' >vsenums_h.temp1
867 for F in `echo $(source_h) $(backend_source_h) $(srcdir)/win32/clutter-win32.h`; do \
869 *-x11*.h|*-wayland*.h|*-gdk*.h|*-glx*.h|*-cex*.h|*-egl*.h|*-osx*.h) ;; \
870 *.h) echo '../../clutter'$$F' ' \
873 done >>vsenums_h.temp1
874 cat vsenums_h.temp1 | sed 's_/clutter./_/clutter/_' >vsenums_h.temp
875 cat vsenums_h.temp | tr -d '\n' >>$@
876 echo '> ..\..\clutter\clutter-enum-types.h' >>$@
881 echo 'perl %1\bin\glib-mkenums --template ../../clutter/clutter-enum-types.c.in ' >vsenums_c.temp1
882 for F in `echo $(source_h) $(backend_source_h) $(srcdir)/win32/clutter-win32.h`; do \
884 *-x11*.h|*-wayland*.h|*-gdk*.h|*-glx*.h|*-cex*.h|*-egl*.h|*-osx*.h) ;; \
885 *.h) echo '../../clutter'$$F' ' \
888 done >>vsenums_c.temp1
889 cat vsenums_c.temp1 | sed 's_/clutter./_/clutter/_' >vsenums_c.temp
890 cat vsenums_c.temp | tr -d '\n' >>$@
891 echo '> ..\..\clutter\clutter-enum-types.c' >>$@
895 ../build/win32/gen-enums.bat: clutter.vsenums_h clutter.vsenums_c
896 echo 'if exist ..\..\clutter\clutter-enum-types.h goto DONE_COGL_ENUMS_H' >$@
897 cat clutter.vsenums_h >>$@
898 echo ':DONE_COGL_ENUMS_H' >>$@
899 echo 'if exist ..\..\clutter\clutter-enum-types.c goto DONE_COGL_ENUMS_C' >>$@
900 cat clutter.vsenums_c >>$@
901 echo ':DONE_COGL_ENUMS_C' >>$@
906 clutter-config.h.win32 \
910 # Let the VS9/VS10 Project files be cleared out before they are re-expanded...
911 DISTCLEANFILES += ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters ../build/win32/gen-enums.bat
914 test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
915 for lib in `echo $(compat_libs)`; do \
916 (cd $(DESTDIR)$(libdir) && \
917 rm -f $$lib.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION); \
919 (cd $(DESTDIR)$(libdir) && \
920 { ln -s -f libclutter-$(CLUTTER_API_VERSION).so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib.0 || \
921 { rm -f $$lib.0 && ln -s libclutter-1.0.so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib.0; }; \
924 (cd $(DESTDIR)$(libdir) && \
925 { ln -s -f libclutter-$(CLUTTER_API_VERSION).so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib || \
926 { rm -f $$lib && ln -s libclutter-1.0.so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib; }; \
931 # gobject-introspection rules
932 -include $(INTROSPECTION_MAKEFILE)
934 if HAVE_INTROSPECTION
935 Clutter-@CLUTTER_API_VERSION@.gir: libclutter-@CLUTTER_API_VERSION@.la Makefile
937 Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter
938 Clutter_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
939 Clutter_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
940 Clutter_@CLUTTER_API_VERSION_AM@_gir_FILES = \
941 $(clutter_include_HEADERS) \
942 $(clutter_deprecated_HEADERS) \
943 $(nodist_clutter_include_HEADERS) \
947 Clutter_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
948 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
949 Clutter_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
951 --c-include='clutter/clutter.h' \
952 --pkg-export=clutter-@CLUTTER_API_VERSION@
954 INTROSPECTION_GIRS += Clutter-@CLUTTER_API_VERSION@.gir
956 Cally-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
958 Cally_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Cally
959 Cally_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
960 Cally_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
961 Cally_@CLUTTER_API_VERSION_AM@_gir_FILES = $(cally_sources_h) $(cally_sources_c)
962 Cally_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
963 Cally_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
964 --identifier-prefix=Cally \
965 --symbol-prefix=cally \
966 --c-include='cally/cally.h' \
967 --pkg-export=cally-@CLUTTER_API_VERSION@ \
968 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
970 INTROSPECTION_GIRS += Cally-@CLUTTER_API_VERSION@.gir
973 ClutterX11-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
975 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
976 --identifier-prefix=ClutterX11 \
977 --symbol-prefix=clutter_x11 \
978 --c-include='clutter/x11/clutter-x11.h' \
979 --pkg-export=clutter-x11-@CLUTTER_API_VERSION@ \
980 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
981 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = xlib-2.0
982 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
983 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_FILES = $(x11_introspection)
984 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
986 INTROSPECTION_GIRS += ClutterX11-@CLUTTER_API_VERSION@.gir
990 ClutterGdk-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
992 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
993 --identifier-prefix=ClutterGdk \
994 --symbol-prefix=clutter_gdk \
995 --c-include='clutter/gdk/clutter-gdk.h' \
996 --pkg-export=clutter-gdk-@CLUTTER_API_VERSION@ \
997 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
998 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = Gdk-3.0
999 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
1000 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_FILES = $(gdk_introspection)
1001 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
1003 INTROSPECTION_GIRS += ClutterGdk-@CLUTTER_API_VERSION@.gir
1006 # INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
1007 # install anything - we need to install inside our prefix.
1008 girdir = $(datadir)/gir-1.0
1009 gir_DATA = $(INTROSPECTION_GIRS)
1011 typelibdir = $(libdir)/girepository-1.0
1012 typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
1014 CLEANFILES += $(gir_DATA) $(typelib_DATA)
1015 endif # HAVE_INTROSPECTION
1018 clutter_all_c_sources = \
1019 $(backend_source_c) \
1020 $(backend_source_c_priv) \
1024 $(deprecated_c_priv) \
1025 $(cally_sources_c) \
1028 TESTS_ENVIRONMENT = srcdir="$(srcdir)" CLUTTER_BACKENDS="$(CLUTTER_BACKENDS)"
1033 EXTRA_DIST += abicheck.sh
1036 gcov_sources = $(source_c) $(backend_source_c)
1037 include $(top_srcdir)/build/autotools/Makefile.am.gcov