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.h \
66 $(srcdir)/clutter-box-layout.h \
67 $(srcdir)/clutter-cairo-texture.h \
68 $(srcdir)/clutter-child-meta.h \
69 $(srcdir)/clutter-click-action.h \
70 $(srcdir)/clutter-clone.h \
71 $(srcdir)/clutter-color-static.h \
72 $(srcdir)/clutter-color.h \
73 $(srcdir)/clutter-colorize-effect.h \
74 $(srcdir)/clutter-constraint.h \
75 $(srcdir)/clutter-container.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-group.h \
90 $(srcdir)/clutter-input-device.h \
91 $(srcdir)/clutter-interval.h \
92 $(srcdir)/clutter-keysyms.h \
93 $(srcdir)/clutter-layout-manager.h \
94 $(srcdir)/clutter-layout-meta.h \
95 $(srcdir)/clutter-list-model.h \
96 $(srcdir)/clutter-main.h \
97 $(srcdir)/clutter-media.h \
98 $(srcdir)/clutter-model.h \
99 $(srcdir)/clutter-offscreen-effect.h \
100 $(srcdir)/clutter-page-turn-effect.h \
101 $(srcdir)/clutter-path-constraint.h \
102 $(srcdir)/clutter-path.h \
103 $(srcdir)/clutter-rectangle.h \
104 $(srcdir)/clutter-script.h \
105 $(srcdir)/clutter-scriptable.h \
106 $(srcdir)/clutter-settings.h \
107 $(srcdir)/clutter-shader-effect.h \
108 $(srcdir)/clutter-shader-types.h \
109 $(srcdir)/clutter-swipe-action.h \
110 $(srcdir)/clutter-snap-constraint.h \
111 $(srcdir)/clutter-stage.h \
112 $(srcdir)/clutter-stage-manager.h \
113 $(srcdir)/clutter-stage-window.h \
114 $(srcdir)/clutter-state.h \
115 $(srcdir)/clutter-table-layout.h \
116 $(srcdir)/clutter-texture.h \
117 $(srcdir)/clutter-text.h \
118 $(srcdir)/clutter-timeline.h \
119 $(srcdir)/clutter-types.h \
120 $(srcdir)/clutter-units.h \
121 $(srcdir)/clutter-util.h \
125 $(srcdir)/clutter-action.c \
126 $(srcdir)/clutter-actor-box.c \
127 $(srcdir)/clutter-actor-meta.c \
128 $(srcdir)/clutter-actor.c \
129 $(srcdir)/clutter-align-constraint.c \
130 $(srcdir)/clutter-alpha.c \
131 $(srcdir)/clutter-animatable.c \
132 $(srcdir)/clutter-animation.c \
133 $(srcdir)/clutter-animator.c \
134 $(srcdir)/clutter-backend.c \
135 $(srcdir)/clutter-bezier.c \
136 $(srcdir)/clutter-bind-constraint.c \
137 $(srcdir)/clutter-binding-pool.c \
138 $(srcdir)/clutter-bin-layout.c \
139 $(srcdir)/clutter-blur-effect.c \
140 $(srcdir)/clutter-box.c \
141 $(srcdir)/clutter-box-layout.c \
142 $(srcdir)/clutter-cairo-texture.c \
143 $(srcdir)/clutter-child-meta.c \
144 $(srcdir)/clutter-click-action.c \
145 $(srcdir)/clutter-clone.c \
146 $(srcdir)/clutter-color.c \
147 $(srcdir)/clutter-colorize-effect.c \
148 $(srcdir)/clutter-constraint.c \
149 $(srcdir)/clutter-container.c \
150 $(srcdir)/clutter-deform-effect.c \
151 $(srcdir)/clutter-desaturate-effect.c \
152 $(srcdir)/clutter-device-manager.c \
153 $(srcdir)/clutter-drag-action.c \
154 $(srcdir)/clutter-drop-action.c \
155 $(srcdir)/clutter-effect.c \
156 $(srcdir)/clutter-event.c \
157 $(srcdir)/clutter-feature.c \
158 $(srcdir)/clutter-fixed-layout.c \
159 $(srcdir)/clutter-flatten-effect.c \
160 $(srcdir)/clutter-flow-layout.c \
161 $(srcdir)/clutter-gesture-action.c \
162 $(srcdir)/clutter-group.c \
163 $(srcdir)/clutter-input-device.c \
164 $(srcdir)/clutter-interval.c \
165 $(srcdir)/clutter-keysyms-table.c \
166 $(srcdir)/clutter-layout-manager.c \
167 $(srcdir)/clutter-layout-meta.c \
168 $(srcdir)/clutter-list-model.c \
169 $(srcdir)/clutter-main.c \
170 $(srcdir)/clutter-master-clock.c \
171 $(srcdir)/clutter-media.c \
172 $(srcdir)/clutter-model.c \
173 $(srcdir)/clutter-offscreen-effect.c \
174 $(srcdir)/clutter-page-turn-effect.c \
175 $(srcdir)/clutter-path-constraint.c \
176 $(srcdir)/clutter-path.c \
177 $(srcdir)/clutter-rectangle.c \
178 $(srcdir)/clutter-script.c \
179 $(srcdir)/clutter-script-parser.c \
180 $(srcdir)/clutter-scriptable.c \
181 $(srcdir)/clutter-settings.c \
182 $(srcdir)/clutter-shader-effect.c \
183 $(srcdir)/clutter-shader-types.c \
184 $(srcdir)/clutter-swipe-action.c \
185 $(srcdir)/clutter-snap-constraint.c \
186 $(srcdir)/clutter-stage.c \
187 $(srcdir)/clutter-stage-manager.c \
188 $(srcdir)/clutter-stage-window.c \
189 $(srcdir)/clutter-state.c \
190 $(srcdir)/clutter-table-layout.c \
191 $(srcdir)/clutter-texture.c \
192 $(srcdir)/clutter-text.c \
193 $(srcdir)/clutter-timeline.c \
194 $(srcdir)/clutter-units.c \
195 $(srcdir)/clutter-util.c \
196 $(srcdir)/clutter-paint-volume.c \
199 # private headers; these should not be distributed or introspected
201 $(srcdir)/clutter-actor-meta-private.h \
202 $(srcdir)/clutter-actor-private.h \
203 $(srcdir)/clutter-backend-private.h \
204 $(srcdir)/clutter-bezier.h \
205 $(srcdir)/clutter-debug.h \
206 $(srcdir)/clutter-device-manager-private.h \
207 $(srcdir)/clutter-effect-private.h \
208 $(srcdir)/clutter-event-translator.h \
209 $(srcdir)/clutter-event-private.h \
210 $(srcdir)/clutter-flatten-effect.h \
211 $(srcdir)/clutter-id-pool.h \
212 $(srcdir)/clutter-master-clock.h \
213 $(srcdir)/clutter-model-private.h \
214 $(srcdir)/clutter-offscreen-effect-private.h \
215 $(srcdir)/clutter-paint-volume-private.h \
216 $(srcdir)/clutter-private.h \
217 $(srcdir)/clutter-profile.h \
218 $(srcdir)/clutter-script-private.h \
219 $(srcdir)/clutter-settings-private.h \
220 $(srcdir)/clutter-stage-manager-private.h \
221 $(srcdir)/clutter-stage-private.h \
224 # private source code; these should not be introspected
226 $(srcdir)/clutter-event-translator.c \
227 $(srcdir)/clutter-id-pool.c \
228 $(srcdir)/clutter-profile.c \
231 # deprecated installed headers
233 $(srcdir)/deprecated/clutter-actor.h \
234 $(srcdir)/deprecated/clutter-backend.h \
235 $(srcdir)/deprecated/clutter-behaviour.h \
236 $(srcdir)/deprecated/clutter-behaviour-depth.h \
237 $(srcdir)/deprecated/clutter-behaviour-ellipse.h \
238 $(srcdir)/deprecated/clutter-behaviour-opacity.h \
239 $(srcdir)/deprecated/clutter-behaviour-path.h \
240 $(srcdir)/deprecated/clutter-behaviour-rotate.h \
241 $(srcdir)/deprecated/clutter-behaviour-scale.h \
242 $(srcdir)/deprecated/clutter-fixed.h \
243 $(srcdir)/deprecated/clutter-frame-source.h \
244 $(srcdir)/deprecated/clutter-group.h \
245 $(srcdir)/deprecated/clutter-keysyms.h \
246 $(srcdir)/deprecated/clutter-main.h \
247 $(srcdir)/deprecated/clutter-timeout-pool.h \
248 $(srcdir)/deprecated/clutter-score.h \
249 $(srcdir)/deprecated/clutter-shader.h \
250 $(srcdir)/deprecated/clutter-stage.h \
253 # deprecated source code
255 $(srcdir)/deprecated/clutter-behaviour.c \
256 $(srcdir)/deprecated/clutter-behaviour-depth.c \
257 $(srcdir)/deprecated/clutter-behaviour-ellipse.c \
258 $(srcdir)/deprecated/clutter-behaviour-opacity.c \
259 $(srcdir)/deprecated/clutter-behaviour-path.c \
260 $(srcdir)/deprecated/clutter-behaviour-rotate.c \
261 $(srcdir)/deprecated/clutter-behaviour-scale.c \
262 $(srcdir)/deprecated/clutter-fixed.c \
263 $(srcdir)/deprecated/clutter-frame-source.c \
264 $(srcdir)/deprecated/clutter-timeout-pool.c \
265 $(srcdir)/deprecated/clutter-score.c \
266 $(srcdir)/deprecated/clutter-shader.c \
269 # deprecated private headers; these should not be installed
270 deprecated_h_priv = \
271 $(srcdir)/deprecated/clutter-timeout-interval.h \
274 # deprecated private source code; these should not be introspected
275 deprecated_c_priv = \
276 $(srcdir)/deprecated/clutter-timeout-interval.c \
281 clutter-enum-types.c \
287 clutter-enum-types.h \
292 DISTCLEANFILES += clutter-config.h
293 EXTRA_DIST += clutter-config.h.in
296 DISTCLEANFILES += clutter-version.h
297 EXTRA_DIST += clutter-version.h.in
299 # key symbol update script
300 EXTRA_DIST += clutter-keysyms-update.pl
302 pc_files += clutter-$(CLUTTER_API_VERSION).pc
304 # in order to be compatible with Clutter < 1.10, when we shipped a single
305 # shared library whose name was determined by the single backend it
306 # supported, we need to install symbolic links so that existing applications
307 # using Clutter won't break in the Brave New World of multi-backend support
308 # in the same shared object.
311 # backends source listings
313 # backend_source_c := source code
314 # backend_source_h := installed public headers
315 # backend_source_c_priv := source that should not be scanned by g-i
316 # backend_source_h_priv := private headers
317 # backend_source_built := built sources
321 backend_source_c_priv =
322 backend_source_h_priv =
323 backend_source_built =
327 $(srcdir)/x11/clutter-backend-x11.c \
328 $(srcdir)/x11/clutter-device-manager-core-x11.c \
329 $(srcdir)/x11/clutter-event-x11.c \
330 $(srcdir)/x11/clutter-input-device-core-x11.c \
331 $(srcdir)/x11/clutter-keymap-x11.c \
332 $(srcdir)/x11/clutter-stage-x11.c \
333 $(srcdir)/x11/clutter-x11-texture-pixmap.c \
337 $(srcdir)/x11/clutter-x11.h \
338 $(srcdir)/x11/clutter-x11-texture-pixmap.h \
341 x11_source_h_priv = \
342 $(srcdir)/x11/clutter-backend-x11.h \
343 $(srcdir)/x11/clutter-device-manager-core-x11.h \
344 $(srcdir)/x11/clutter-input-device-core-x11.h \
345 $(srcdir)/x11/clutter-keymap-x11.h \
346 $(srcdir)/x11/clutter-settings-x11.h \
347 $(srcdir)/x11/clutter-stage-x11.h \
350 x11_source_c_priv = \
351 $(srcdir)/x11/xsettings/xsettings-client.c \
352 $(srcdir)/x11/xsettings/xsettings-client.h \
353 $(srcdir)/x11/xsettings/xsettings-common.c \
354 $(srcdir)/x11/xsettings/xsettings-common.h \
359 $(srcdir)/x11/clutter-device-manager-xi2.c \
360 $(srcdir)/x11/clutter-input-device-xi2.c \
363 x11_source_h_priv += \
364 $(srcdir)/x11/clutter-device-manager-xi2.h \
365 $(srcdir)/x11/clutter-input-device-xi2.h \
370 backend_source_h += $(x11_source_h)
371 backend_source_c += $(x11_source_c)
372 backend_source_h_priv += $(x11_source_h_priv)
373 backend_source_c_priv += $(x11_source_c_priv)
375 # the list of files we want to introspect on X11
376 x11_introspection = $(x11_source_c) $(x11_source_h)
378 clutterx11_includedir = $(clutter_includedir)/x11
379 clutterx11_include_HEADERS = $(x11_source_h)
381 clutter-x11-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
382 $(QUIET_GEN)cp -f $< $(@F)
384 pc_files += clutter-x11-$(CLUTTER_API_VERSION).pc
387 # Shared cogl backend files
391 $(srcdir)/cogl/clutter-stage-cogl.c \
394 cogl_source_h_priv = \
395 $(srcdir)/cogl/clutter-stage-cogl.h \
401 backend_source_h += $(cogl_source_h)
402 backend_source_c += $(cogl_source_c)
403 backend_source_h_priv += $(cogl_source_h_priv)
404 backend_source_c_priv += $(cogl_source_c_priv)
406 # pkg-config file for the cogl meta-backend
407 clutter-cogl-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
408 $(QUIET_GEN)cp -f $< $(@F)
410 pc_files += clutter-cogl-$(CLUTTER_API_VERSION).pc
413 # For compatibility with the old GLX backend
415 # Note: there wasn't actually anything GLX specific so we can add
416 # the compatibility if clutter supports x11
417 glx_source_c = $(srcdir)/x11/clutter-glx-texture-pixmap.c
418 glx_source_h = $(srcdir)/x11/clutter-glx-texture-pixmap.h \
419 $(srcdir)/x11/clutter-glx.h
422 backend_source_h += $(glx_source_h)
423 backend_source_c += $(glx_source_c)
425 clutterglx_includedir = $(clutter_includedir)/glx
426 clutterglx_include_HEADERS = $(glx_source_h)
428 clutter-glx-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
429 $(QUIET_GEN)cp -f $< $(@F)
431 pc_files += clutter-glx-$(CLUTTER_API_VERSION).pc
434 libclutter-glx-$(CLUTTER_API_VERSION).so \
440 $(srcdir)/gdk/clutter-backend-gdk.c \
441 $(srcdir)/gdk/clutter-device-manager-gdk.c \
442 $(srcdir)/gdk/clutter-input-device-gdk.c \
443 $(srcdir)/gdk/clutter-event-gdk.c \
444 $(srcdir)/gdk/clutter-stage-gdk.c \
448 $(srcdir)/gdk/clutter-gdk.h \
451 gdk_source_h_priv = \
452 $(srcdir)/gdk/clutter-settings-gdk.h \
453 $(srcdir)/gdk/clutter-backend-gdk.h \
454 $(srcdir)/gdk/clutter-device-manager-gdk.h \
455 $(srcdir)/gdk/clutter-input-device-gdk.h \
456 $(srcdir)/gdk/clutter-stage-gdk.h \
460 backend_source_h += $(gdk_source_h)
461 backend_source_c += $(gdk_source_c)
462 backend_source_h_priv += $(gdk_source_h_priv)
464 cluttergdk_includedir = $(clutter_includedir)/gdk
465 cluttergdk_include_HEADERS = $(gdk_source_h)
467 clutter-gdk-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
468 $(QUIET_GEN)cp -f $< $(@F)
470 pc_files += clutter-gdk-$(CLUTTER_API_VERSION).pc
472 gdk_introspection = $(gdk_source_c) $(gdk_source_h)
475 # Windows backend rules
477 $(srcdir)/win32/clutter-backend-win32.c \
478 $(srcdir)/win32/clutter-device-manager-win32.c \
479 $(srcdir)/win32/clutter-event-win32.c \
480 $(srcdir)/win32/clutter-stage-win32.c \
484 $(srcdir)/win32/clutter-win32.h \
487 win32_source_h_priv = \
488 $(srcdir)/win32/clutter-backend-win32.h \
489 $(srcdir)/win32/clutter-device-manager-win32.h \
490 $(srcdir)/win32/clutter-stage-win32.h \
494 # Ideally this resources stuff would go in win32/ but libtool doesn't
495 # seem to pass on the -Wl argument when linking a convenience library
496 # so we need to do it here as part of linking the dll. libtool also
497 # won't let you link against the .o directly because it wants you to
498 # link against libtool objects for dynamic libraries.
501 $(WINDRES) -I$(srcdir)/win32 $< $@
503 win32/resources.o : $(srcdir)/win32/invisible-cursor.cur
505 win32_resources = win32/resources.o
506 win32_resources_ldflag = -Wl,win32/resources.o
508 backend_source_h += $(win32_source_h)
509 backend_source_c += $(win32_source_c)
510 backend_source_h_priv += $(win32_source_h_priv)
512 clutterwin_includedir = $(clutter_includedir)/win32
513 clutterwin_include_HEADERS = $(win32_source_h)
515 clutter-win32-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
516 $(QUIET_GEN)cp -f $< $(@F)
518 pc_files += clutter-win32-$(CLUTTER_API_VERSION).pc
519 endif # SUPPORT_WIN32
522 $(srcdir)/win32/invisible-cursor.cur \
523 $(srcdir)/win32/resources.rc \
526 egl_tslib_h = $(srcdir)/tslib/clutter-event-tslib.h
527 egl_tslib_c = $(srcdir)/tslib/clutter-event-tslib.c
530 backend_source_c_priv += $(egl_tslib_c)
531 backend_source_h_priv += $(egl_tslib_h)
532 endif # SUPPORT_TSLIB
535 $(srcdir)/evdev/clutter-xkb-utils.c \
536 $(srcdir)/evdev/clutter-device-manager-evdev.c \
537 $(srcdir)/evdev/clutter-input-device-evdev.c \
540 $(srcdir)/evdev/clutter-xkb-utils.h \
541 $(srcdir)/evdev/clutter-device-manager-evdev.h \
542 $(srcdir)/evdev/clutter-input-device-evdev.h \
546 backend_source_c_priv += $(evdev_c_priv)
547 backend_source_h_priv += $(evdev_h_priv)
548 endif # SUPPORT_EVDEV
550 cex_source_h_priv = $(srcdir)/cex100/clutter-backend-cex100.h
551 cex_source_c = $(srcdir)/cex100/clutter-backend-cex100.c
552 cex_h = cex100/clutter-cex100.h
553 BUILT_SOURCES += $(cex_h)
554 EXTRA_DIST += $(srcdir)/$(cex_h).in
557 backend_source_h += $(cex_h)
558 backend_source_c += $(cex_source_c)
559 backend_source_h_priv += $(cex_source_h_priv)
561 cluttercex100_includedir = $(clutter_includedir)/cex100
562 cluttercex100_include_HEADERS = $(cex_h)
564 clutter-cex100-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
565 $(QUIET_GEN)cp -f $< $(@F)
567 pc_files += clutter-cex100-$(CLUTTER_API_VERSION).pc
570 libclutter-cex100-$(CLUTTER_API_VERSION).so \
572 endif # SUPPORT_CEX100
576 $(srcdir)/egl/clutter-egl-headers.h \
577 $(srcdir)/egl/clutter-egl.h \
580 egl_source_h_priv = $(srcdir)/egl/clutter-backend-eglnative.h
581 egl_source_c = $(srcdir)/egl/clutter-backend-eglnative.c
584 backend_source_h += $(egl_source_h)
585 backend_source_c += $(egl_source_c)
587 clutteregl_includedir = $(clutter_includedir)/egl
588 clutteregl_include_HEADERS = $(egl_source_h)
590 clutter-egl-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
591 $(QUIET_GEN)cp -f $< $(@F)
593 pc_files += clutter-egl-$(CLUTTER_API_VERSION).pc
598 $(srcdir)/osx/clutter-backend-osx.c \
599 $(srcdir)/osx/clutter-stage-osx.c \
602 osx_source_h = $(srcdir)/osx/clutter-osx.h
604 osx_source_h_priv = \
605 $(srcdir)/osx/clutter-backend-osx.h \
606 $(srcdir)/osx/clutter-event-loop-osx.h \
607 $(srcdir)/osx/clutter-stage-osx.h \
608 $(srcdir)/osx/clutter-device-manager-osx.h \
611 osx_source_c_priv = \
612 $(srcdir)/osx/clutter-event-loop-osx.c \
613 $(srcdir)/osx/clutter-event-osx.c \
614 $(srcdir)/osx/clutter-device-manager-osx.c \
618 # we need to tell the compiler that part of our code base is
620 AM_CFLAGS += -xobjective-c
622 backend_source_h += $(osx_source_h)
623 backend_source_c += $(osx_source_c)
624 backend_source_h_priv += $(osx_source_h_priv)
625 backend_source_c_priv += $(osx_source_c_priv)
627 clutterosx_includedir = $(clutter_includedir)/osx
628 clutterosx_include_HEADERS = $(osx_source_h)
630 clutter-osx-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
631 $(QUIET_GEN)cp -f $< $(@F)
633 pc_files += clutter-osx-$(CLUTTER_API_VERSION).pc
636 # Wayland backend rules
638 backend_source_h += \
639 $(srcdir)/wayland/clutter-wayland.h
641 backend_source_h_priv += \
642 $(srcdir)/evdev/clutter-xkb-utils.h \
643 $(srcdir)/wayland/clutter-backend-wayland.h \
644 $(srcdir)/wayland/clutter-stage-wayland.h
646 backend_source_c += \
647 $(srcdir)/evdev/clutter-xkb-utils.c \
648 $(srcdir)/wayland/clutter-backend-wayland.c \
649 $(srcdir)/wayland/clutter-stage-wayland.c \
650 $(srcdir)/wayland/clutter-event-wayland.c \
651 $(srcdir)/wayland/clutter-input-device-wayland.c
653 clutterwayland_includedir = $(clutter_includedir)/wayland
654 clutterwayland_include_HEADERS = $(wayland_source_h)
656 clutter-wayland-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
657 $(QUIET_GEN)cp -f $< $(@F)
659 pc_files += clutter-wayland-$(CLUTTER_API_VERSION).pc
662 libclutter-wayland-$(CLUTTER_API_VERSION).so \
664 endif # SUPPORT_WAYLAND
668 $(srcdir)/cally/cally-actor.h \
669 $(srcdir)/cally/cally-clone.h \
670 $(srcdir)/cally/cally-factory.h \
671 $(srcdir)/cally/cally-group.h \
672 $(srcdir)/cally/cally.h \
673 $(srcdir)/cally/cally-main.h \
674 $(srcdir)/cally/cally-rectangle.h \
675 $(srcdir)/cally/cally-root.h \
676 $(srcdir)/cally/cally-stage.h \
677 $(srcdir)/cally/cally-text.h \
678 $(srcdir)/cally/cally-texture.h \
679 $(srcdir)/cally/cally-util.h \
683 $(srcdir)/cally/cally-actor.c \
684 $(srcdir)/cally/cally.c \
685 $(srcdir)/cally/cally-clone.c \
686 $(srcdir)/cally/cally-group.c \
687 $(srcdir)/cally/cally-rectangle.c \
688 $(srcdir)/cally/cally-root.c \
689 $(srcdir)/cally/cally-stage.c \
690 $(srcdir)/cally/cally-text.c \
691 $(srcdir)/cally/cally-texture.c \
692 $(srcdir)/cally/cally-util.c \
695 cally_sources_private = \
696 $(srcdir)/cally/cally-actor-private.h \
699 cally_includedir = $(clutter_base_includedir)/cally
700 cally_include_HEADERS = $(cally_sources_h)
702 pc_files += cally/cally-$(CLUTTER_API_VERSION).pc
703 EXTRA_DIST += cally/cally.pc.in
705 # general build rules:
706 # you should not need to modify anything below this point
708 # glib-genmarshal rules
709 glib_marshal_list = clutter-marshal.list
710 glib_marshal_prefix = _clutter_marshal
711 include $(top_srcdir)/build/autotools/Makefile.am.marshal
714 glib_enum_h = clutter-enum-types.h
715 glib_enum_c = clutter-enum-types.c
716 glib_enum_headers = $(source_h) $(backend_source_h)
717 include $(top_srcdir)/build/autotools/Makefile.am.enums
719 pkgconfigdir = $(libdir)/pkgconfig
720 pkgconfig_DATA = $(pc_files)
721 DISTCLEANFILES += $(pc_files)
723 clutter_include_HEADERS = $(source_h) $(top_srcdir)/clutter/clutter.h
724 nodist_clutter_include_HEADERS = \
725 $(top_builddir)/clutter/clutter-config.h \
726 $(top_builddir)/clutter/clutter-version.h \
729 clutter_deprecated_HEADERS = $(deprecated_h)
731 lib_LTLIBRARIES += libclutter-@CLUTTER_API_VERSION@.la
733 libclutter_@CLUTTER_API_VERSION@_la_LIBADD = \
736 $(CLUTTER_PROFILE_LIBS)
738 libclutter_@CLUTTER_API_VERSION@_la_DEPENDENCIES = \
741 libclutter_@CLUTTER_API_VERSION@_la_SOURCES = \
742 $(backend_source_c) \
743 $(backend_source_h) \
744 $(backend_source_c_priv) \
745 $(backend_source_h_priv) \
752 $(deprecated_c_priv) \
753 $(deprecated_h_priv) \
756 $(cally_sources_private) \
759 nodist_libclutter_@CLUTTER_API_VERSION@_la_SOURCES = \
760 $(backend_source_built) \
764 libclutter_@CLUTTER_API_VERSION@_la_LDFLAGS = \
765 $(CLUTTER_LINK_FLAGS) \
766 $(CLUTTER_LT_LDFLAGS) \
769 -export-symbols-regex "^(clutter|cally).*" \
771 $(win32_resources_ldflag) \
774 dist-hook: ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters ../build/win32/gen-enums.bat
776 ../build/win32/vs9/clutter.vcproj: $(top_srcdir)/build/win32/vs9/clutter.vcprojin
777 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 \
779 *.c) echo ' <File RelativePath="..\..\..\clutter\'$$F'" />' \
782 done >clutter.sourcefiles
783 $(CPP) -P - <$(top_srcdir)/build/win32/vs9/clutter.vcprojin >$@
784 rm clutter.sourcefiles
786 ../build/win32/vs10/clutter.vcxproj: $(top_srcdir)/build/win32/vs10/clutter.vcxprojin
787 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 \
789 *.c) echo ' <ClCompile Include="..\..\..\clutter\'$$F'" />' \
792 done >clutter.vs10.sourcefiles
793 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxprojin >$@
794 rm clutter.vs10.sourcefiles
796 ../build/win32/vs10/clutter.vcxproj.filters: $(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin
797 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 \
799 *.c) echo ' <ClCompile Include="..\..\..\clutter\'$$F'"><Filter>Sources</Filter></ClCompile>' \
802 done >clutter.vs10.sourcefiles.filters
803 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin >$@
804 rm clutter.vs10.sourcefiles.filters
807 echo 'perl %1\bin\glib-mkenums --template ../../clutter/clutter-enum-types.h.in ' >vsenums_h.temp1
808 for F in `echo $(source_h) $(backend_source_h) $(srcdir)/clutter-win32.h`; do \
810 *-x11*.h|*-wayland*.h|*-gdk*.h|*-glx*.h|*-cex*.h|*-egl*.h|*-osx*.h) ;; \
811 *.h) echo '../../clutter'$$F' ' \
814 done >>vsenums_h.temp1
815 cat vsenums_h.temp1 | sed 's_/clutter./_/clutter/_' >vsenums_h.temp
816 cat vsenums_h.temp | tr -d '\n' >>$@
817 echo '> ..\..\clutter\clutter-enum-types.h' >>$@
822 echo 'perl %1\bin\glib-mkenums --template ../../clutter/clutter-enum-types.c.in ' >vsenums_c.temp1
823 for F in `echo $(source_h) $(backend_source_h) $(srcdir)/clutter-win32.h`; do \
825 *-x11*.h|*-wayland*.h|*-gdk*.h|*-glx*.h|*-cex*.h|*-egl*.h|*-osx*.h) ;; \
826 *.h) echo '../../clutter'$$F' ' \
829 done >>vsenums_c.temp1
830 cat vsenums_c.temp1 | sed 's_/clutter./_/clutter/_' >vsenums_c.temp
831 cat vsenums_c.temp | tr -d '\n' >>$@
832 echo '> ..\..\clutter\clutter-enum-types.c' >>$@
836 ../build/win32/gen-enums.bat: clutter.vsenums_h clutter.vsenums_c
837 echo 'if exist ..\..\clutter\clutter-enum-types.h goto DONE_COGL_ENUMS_H' >$@
838 cat clutter.vsenums_h >>$@
839 echo ':DONE_COGL_ENUMS_H' >>$@
840 echo 'if exist ..\..\clutter\clutter-enum-types.c goto DONE_COGL_ENUMS_C' >>$@
841 cat clutter.vsenums_c >>$@
842 echo ':DONE_COGL_ENUMS_C' >>$@
847 clutter-version.h.win32 \
848 clutter-config.h.win32 \
849 clutter-version.h.win32.in \
853 # Let the VS9/VS10 Project files be cleared out before they are re-expanded...
854 DISTCLEANFILES += ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters ../build/win32/gen-enums.bat
857 test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
858 for lib in `echo $(compat_libs)`; do \
859 (cd $(DESTDIR)$(libdir) && \
860 rm -f $$lib.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION); \
862 (cd $(DESTDIR)$(libdir) && \
863 { ln -s -f libclutter-$(CLUTTER_API_VERSION).so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib.0 || \
864 { rm -f $$lib.0 && ln -s libclutter-1.0.so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib.0; }; \
867 (cd $(DESTDIR)$(libdir) && \
868 { ln -s -f libclutter-$(CLUTTER_API_VERSION).so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib || \
869 { rm -f $$lib && ln -s libclutter-1.0.so.0.$(CLUTTER_LT_CURRENT).$(CLUTTER_LT_REVISION) $$lib; }; \
874 # gobject-introspection rules
875 -include $(INTROSPECTION_MAKEFILE)
877 if HAVE_INTROSPECTION
878 Clutter-@CLUTTER_API_VERSION@.gir: libclutter-@CLUTTER_API_VERSION@.la Makefile
880 Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter
881 Clutter_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
882 Clutter_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
883 Clutter_@CLUTTER_API_VERSION_AM@_gir_FILES = \
884 $(clutter_include_HEADERS) \
885 $(clutter_deprecated_HEADERS) \
886 $(nodist_clutter_include_HEADERS) \
890 Clutter_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
891 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
892 Clutter_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
894 --c-include='clutter/clutter.h' \
895 --pkg-export=clutter-@CLUTTER_API_VERSION@
897 INTROSPECTION_GIRS += Clutter-@CLUTTER_API_VERSION@.gir
899 Cally-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
901 Cally_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Cally
902 Cally_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
903 Cally_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
904 Cally_@CLUTTER_API_VERSION_AM@_gir_FILES = $(cally_sources_h) $(cally_sources_c)
905 Cally_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
906 Cally_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
907 --identifier-prefix=Cally \
908 --symbol-prefix=cally \
909 --c-include='cally/cally.h' \
910 --pkg-export=cally-@CLUTTER_API_VERSION@ \
911 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
913 INTROSPECTION_GIRS += Cally-@CLUTTER_API_VERSION@.gir
916 ClutterX11-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
918 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
919 --identifier-prefix=ClutterX11 \
920 --symbol-prefix=clutter_x11 \
921 --c-include='clutter/x11/clutter-x11.h' \
922 --pkg-export=clutter-x11-@CLUTTER_API_VERSION@ \
923 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
924 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = xlib-2.0
925 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
926 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_FILES = $(x11_introspection)
927 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
929 INTROSPECTION_GIRS += ClutterX11-@CLUTTER_API_VERSION@.gir
933 ClutterGdk-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
935 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
936 --identifier-prefix=ClutterGdk \
937 --symbol-prefix=clutter_gdk \
938 --c-include='clutter/gdk/clutter-gdk.h' \
939 --pkg-export=clutter-gdk-@CLUTTER_API_VERSION@ \
940 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
941 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = Gdk-3.0
942 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_API_VERSION@.la
943 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_FILES = $(gdk_introspection)
944 ClutterGdk_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS)
946 INTROSPECTION_GIRS += ClutterGdk-@CLUTTER_API_VERSION@.gir
949 # INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
950 # install anything - we need to install inside our prefix.
951 girdir = $(datadir)/gir-1.0
952 gir_DATA = $(INTROSPECTION_GIRS)
954 typelibdir = $(libdir)/girepository-1.0
955 typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
957 CLEANFILES += $(gir_DATA) $(typelib_DATA)
958 endif # HAVE_INTROSPECTION
961 gcov_sources = $(source_c) $(backend_source_c)
962 include $(top_srcdir)/build/autotools/Makefile.am.gcov