1 include $(top_srcdir)/build/autotools/Makefile.am.silent
6 # we recurse only into Cogl
19 -I$(top_srcdir)/clutter \
20 -I$(top_srcdir)/clutter/cogl \
21 -I$(top_srcdir)/clutter/cogl/pango \
22 -I$(top_srcdir)/clutter/$(CLUTTER_WINSYS) \
23 -I$(top_srcdir)/clutter/$(CLUTTER_WINSYS_BASE) \
24 -I$(top_srcdir)/clutter/cally \
25 -I$(top_srcdir)/clutter/evdev \
27 -I$(top_builddir)/clutter \
28 -I$(top_builddir)/clutter/cogl \
32 -DCLUTTER_PREFIX=\""$(prefix)"\" \
33 -DCLUTTER_LIBDIR=\""$(libdir)"\" \
34 -DCLUTTER_DATADIR=\""$(datadir)"\" \
35 -DCLUTTER_LOCALEDIR=\""$(localedir)"\" \
36 -DCLUTTER_COMPILATION=1 \
37 -DCLUTTER_DISABLE_DEPRECATED \
38 -DCOGL_DISABLE_DEPRECATED \
39 -DCOGL_ENABLE_EXPERIMENTAL_API \
40 -DG_DISABLE_DEPRECATED \
41 -DG_DISABLE_SINGLE_INCLUDES \
42 -DG_LOG_DOMAIN=\"Clutter\" \
43 $(CLUTTER_DEBUG_CFLAGS) \
44 $(CLUTTER_PROFILE_CFLAGS) \
47 AM_CFLAGS = $(CLUTTER_CFLAGS) $(MAINTAINER_CFLAGS) $(GCOV_CFLAGS)
49 # these are the gir files we generate by hand
52 # these are the gir files we generate using g-ir-scanner
55 # the base include path for headers
56 clutter_base_includedir = $(includedir)/clutter-$(CLUTTER_API_VERSION)
57 clutter_includedir = $(clutter_base_includedir)/clutter
62 # common sources - please, keep these sorted alphabetically
64 $(srcdir)/clutter-action.h \
65 $(srcdir)/clutter-actor-meta.h \
66 $(srcdir)/clutter-actor.h \
67 $(srcdir)/clutter-align-constraint.h \
68 $(srcdir)/clutter-alpha.h \
69 $(srcdir)/clutter-animatable.h \
70 $(srcdir)/clutter-animation.h \
71 $(srcdir)/clutter-animator.h \
72 $(srcdir)/clutter-backend.h \
73 $(srcdir)/clutter-behaviour.h \
74 $(srcdir)/clutter-behaviour-depth.h \
75 $(srcdir)/clutter-behaviour-ellipse.h \
76 $(srcdir)/clutter-behaviour-opacity.h \
77 $(srcdir)/clutter-behaviour-path.h \
78 $(srcdir)/clutter-behaviour-rotate.h \
79 $(srcdir)/clutter-behaviour-scale.h \
80 $(srcdir)/clutter-bind-constraint.h \
81 $(srcdir)/clutter-binding-pool.h \
82 $(srcdir)/clutter-bin-layout.h \
83 $(srcdir)/clutter-blur-effect.h \
84 $(srcdir)/clutter-box.h \
85 $(srcdir)/clutter-box-layout.h \
86 $(srcdir)/clutter-cairo-texture.h \
87 $(srcdir)/clutter-child-meta.h \
88 $(srcdir)/clutter-click-action.h \
89 $(srcdir)/clutter-clone.h \
90 $(srcdir)/clutter-color-static.h \
91 $(srcdir)/clutter-color.h \
92 $(srcdir)/clutter-colorize-effect.h \
93 $(srcdir)/clutter-constraint.h \
94 $(srcdir)/clutter-container.h \
95 $(srcdir)/clutter-deform-effect.h \
96 $(srcdir)/clutter-deprecated.h \
97 $(srcdir)/clutter-desaturate-effect.h \
98 $(srcdir)/clutter-device-manager.h \
99 $(srcdir)/clutter-drag-action.h \
100 $(srcdir)/clutter-effect.h \
101 $(srcdir)/clutter-event.h \
102 $(srcdir)/clutter-feature.h \
103 $(srcdir)/clutter-fixed.h \
104 $(srcdir)/clutter-fixed-layout.h \
105 $(srcdir)/clutter-flow-layout.h \
106 $(srcdir)/clutter-frame-source.h \
107 $(srcdir)/clutter-group.h \
108 $(srcdir)/clutter-input-device.h \
109 $(srcdir)/clutter-interval.h \
110 $(srcdir)/clutter-keysyms.h \
111 $(srcdir)/clutter-keysyms-compat.h \
112 $(srcdir)/clutter-layout-manager.h \
113 $(srcdir)/clutter-layout-meta.h \
114 $(srcdir)/clutter-list-model.h \
115 $(srcdir)/clutter-main.h \
116 $(srcdir)/clutter-media.h \
117 $(srcdir)/clutter-model.h \
118 $(srcdir)/clutter-offscreen-effect.h \
119 $(srcdir)/clutter-page-turn-effect.h \
120 $(srcdir)/clutter-path-constraint.h \
121 $(srcdir)/clutter-path.h \
122 $(srcdir)/clutter-rectangle.h \
123 $(srcdir)/clutter-score.h \
124 $(srcdir)/clutter-script.h \
125 $(srcdir)/clutter-scriptable.h \
126 $(srcdir)/clutter-settings.h \
127 $(srcdir)/clutter-shader.h \
128 $(srcdir)/clutter-shader-effect.h \
129 $(srcdir)/clutter-shader-types.h \
130 $(srcdir)/clutter-snap-constraint.h \
131 $(srcdir)/clutter-stage.h \
132 $(srcdir)/clutter-stage-manager.h \
133 $(srcdir)/clutter-stage-window.h \
134 $(srcdir)/clutter-state.h \
135 $(srcdir)/clutter-table-layout.h \
136 $(srcdir)/clutter-texture.h \
137 $(srcdir)/clutter-text.h \
138 $(srcdir)/clutter-timeline.h \
139 $(srcdir)/clutter-timeout-pool.h \
140 $(srcdir)/clutter-types.h \
141 $(srcdir)/clutter-units.h \
142 $(srcdir)/clutter-util.h \
146 $(srcdir)/clutter-action.c \
147 $(srcdir)/clutter-actor-box.c \
148 $(srcdir)/clutter-actor-meta.c \
149 $(srcdir)/clutter-actor.c \
150 $(srcdir)/clutter-align-constraint.c \
151 $(srcdir)/clutter-alpha.c \
152 $(srcdir)/clutter-animatable.c \
153 $(srcdir)/clutter-animation.c \
154 $(srcdir)/clutter-animator.c \
155 $(srcdir)/clutter-backend.c \
156 $(srcdir)/clutter-behaviour.c \
157 $(srcdir)/clutter-behaviour-depth.c \
158 $(srcdir)/clutter-behaviour-ellipse.c \
159 $(srcdir)/clutter-behaviour-opacity.c \
160 $(srcdir)/clutter-behaviour-path.c \
161 $(srcdir)/clutter-behaviour-rotate.c \
162 $(srcdir)/clutter-behaviour-scale.c \
163 $(srcdir)/clutter-bezier.c \
164 $(srcdir)/clutter-bind-constraint.c \
165 $(srcdir)/clutter-binding-pool.c \
166 $(srcdir)/clutter-bin-layout.c \
167 $(srcdir)/clutter-blur-effect.c \
168 $(srcdir)/clutter-box.c \
169 $(srcdir)/clutter-box-layout.c \
170 $(srcdir)/clutter-cairo-texture.c \
171 $(srcdir)/clutter-child-meta.c \
172 $(srcdir)/clutter-click-action.c \
173 $(srcdir)/clutter-clone.c \
174 $(srcdir)/clutter-color.c \
175 $(srcdir)/clutter-colorize-effect.c \
176 $(srcdir)/clutter-constraint.c \
177 $(srcdir)/clutter-container.c \
178 $(srcdir)/clutter-deform-effect.c \
179 $(srcdir)/clutter-desaturate-effect.c \
180 $(srcdir)/clutter-device-manager.c \
181 $(srcdir)/clutter-drag-action.c \
182 $(srcdir)/clutter-effect.c \
183 $(srcdir)/clutter-event.c \
184 $(srcdir)/clutter-feature.c \
185 $(srcdir)/clutter-fixed.c \
186 $(srcdir)/clutter-fixed-layout.c \
187 $(srcdir)/clutter-flow-layout.c \
188 $(srcdir)/clutter-frame-source.c \
189 $(srcdir)/clutter-group.c \
190 $(srcdir)/clutter-input-device.c \
191 $(srcdir)/clutter-interval.c \
192 $(srcdir)/clutter-layout-manager.c \
193 $(srcdir)/clutter-layout-meta.c \
194 $(srcdir)/clutter-list-model.c \
195 $(srcdir)/clutter-main.c \
196 $(srcdir)/clutter-master-clock.c \
197 $(srcdir)/clutter-media.c \
198 $(srcdir)/clutter-model.c \
199 $(srcdir)/clutter-offscreen-effect.c \
200 $(srcdir)/clutter-page-turn-effect.c \
201 $(srcdir)/clutter-path-constraint.c \
202 $(srcdir)/clutter-path.c \
203 $(srcdir)/clutter-rectangle.c \
204 $(srcdir)/clutter-score.c \
205 $(srcdir)/clutter-script.c \
206 $(srcdir)/clutter-script-parser.c \
207 $(srcdir)/clutter-scriptable.c \
208 $(srcdir)/clutter-settings.c \
209 $(srcdir)/clutter-shader.c \
210 $(srcdir)/clutter-shader-effect.c \
211 $(srcdir)/clutter-shader-types.c \
212 $(srcdir)/clutter-snap-constraint.c \
213 $(srcdir)/clutter-stage.c \
214 $(srcdir)/clutter-stage-manager.c \
215 $(srcdir)/clutter-stage-window.c \
216 $(srcdir)/clutter-state.c \
217 $(srcdir)/clutter-table-layout.c \
218 $(srcdir)/clutter-texture.c \
219 $(srcdir)/clutter-text.c \
220 $(srcdir)/clutter-timeline.c \
221 $(srcdir)/clutter-timeout-pool.c \
222 $(srcdir)/clutter-units.c \
223 $(srcdir)/clutter-util.c \
224 $(srcdir)/clutter-paint-volume.c \
227 # private headers; these should not be distributed or introspected
229 $(srcdir)/clutter-actor-meta-private.h \
230 $(srcdir)/clutter-actor-private.h \
231 $(srcdir)/clutter-backend-private.h \
232 $(srcdir)/clutter-bezier.h \
233 $(srcdir)/clutter-debug.h \
234 $(srcdir)/clutter-device-manager-private.h \
235 $(srcdir)/clutter-event-translator.h \
236 $(srcdir)/clutter-id-pool.h \
237 $(srcdir)/clutter-keysyms-table.h \
238 $(srcdir)/clutter-master-clock.h \
239 $(srcdir)/clutter-model-private.h \
240 $(srcdir)/clutter-paint-volume-private.h \
241 $(srcdir)/clutter-private.h \
242 $(srcdir)/clutter-profile.h \
243 $(srcdir)/clutter-script-private.h \
244 $(srcdir)/clutter-stage-manager-private.h \
245 $(srcdir)/clutter-stage-private.h \
246 $(srcdir)/clutter-timeout-interval.h \
249 # private source code; these should not be introspected
251 $(srcdir)/clutter-event-translator.c \
252 $(srcdir)/clutter-id-pool.c \
253 $(srcdir)/clutter-profile.c \
254 $(srcdir)/clutter-timeout-interval.c \
259 clutter-enum-types.c \
265 clutter-enum-types.h \
270 DISTCLEANFILES += clutter-config.h
271 EXTRA_DIST += clutter-config.h.in
274 DISTCLEANFILES += clutter-version.h
275 EXTRA_DIST += clutter-version.h.in
277 # key symbol update script
278 EXTRA_DIST += clutter-keysyms-update.pl
280 pc_files += clutter-$(CLUTTER_API_VERSION).pc
282 # backends source listings
284 # backend_source_c := source code
285 # backend_source_h := installed public headers
286 # backend_source_c_priv := source that should not be scanned by g-i
287 # backend_source_h_priv := private headers
288 # backend_source_built := built sources
292 backend_source_c_priv =
293 backend_source_h_priv =
294 backend_source_built =
298 $(srcdir)/x11/clutter-backend-x11.c \
299 $(srcdir)/x11/clutter-device-manager-core-x11.c \
300 $(srcdir)/x11/clutter-event-x11.c \
301 $(srcdir)/x11/clutter-input-device-core-x11.c \
302 $(srcdir)/x11/clutter-keymap-x11.c \
303 $(srcdir)/x11/clutter-stage-x11.c \
304 $(srcdir)/x11/clutter-x11-texture-pixmap.c \
308 $(srcdir)/x11/clutter-x11.h \
309 $(srcdir)/x11/clutter-x11-texture-pixmap.h \
312 x11_source_h_priv = \
313 $(srcdir)/x11/clutter-backend-x11.h \
314 $(srcdir)/x11/clutter-device-manager-core-x11.h \
315 $(srcdir)/x11/clutter-input-device-core-x11.h \
316 $(srcdir)/x11/clutter-keymap-x11.h \
317 $(srcdir)/x11/clutter-settings-x11.h \
318 $(srcdir)/x11/clutter-stage-x11.h \
321 x11_source_c_priv = \
322 $(srcdir)/x11/xsettings/xsettings-client.c \
323 $(srcdir)/x11/xsettings/xsettings-client.h \
324 $(srcdir)/x11/xsettings/xsettings-common.c \
325 $(srcdir)/x11/xsettings/xsettings-common.h \
330 $(srcdir)/x11/clutter-device-manager-xi2.c \
331 $(srcdir)/x11/clutter-input-device-xi2.c \
334 x11_source_h_priv += \
335 $(srcdir)/x11/clutter-device-manager-xi2.h \
336 $(srcdir)/x11/clutter-input-device-xi2.h \
341 backend_source_h += $(x11_source_h)
342 backend_source_c += $(x11_source_c)
343 backend_source_h_priv += $(x11_source_h_priv)
344 backend_source_c_priv += $(x11_source_c_priv)
346 # the list of files we want to introspect on X11
347 x11_introspection = $(x11_source_c) $(x11_source_h)
349 # pkg-config file for the X11 meta-backend
350 clutter-x11-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
351 $(QUIET_GEN)cp -f $< $(@F)
353 pc_files += clutter-x11-$(CLUTTER_API_VERSION).pc
355 clutterx11_includedir = $(clutter_includedir)/x11
356 clutterx11_include_HEADERS = $(x11_source_h)
361 $(srcdir)/glx/clutter-backend-glx.c \
362 $(srcdir)/glx/clutter-glx-texture-pixmap.c \
363 $(srcdir)/glx/clutter-stage-glx.c \
367 $(srcdir)/glx/clutter-glx-texture-pixmap.h \
368 $(srcdir)/glx/clutter-glx.h \
371 glx_source_h_priv = \
372 $(srcdir)/glx/clutter-backend-glx.h \
373 $(srcdir)/glx/clutter-stage-glx.h \
377 backend_source_h += $(glx_source_h)
378 backend_source_c += $(glx_source_c)
379 backend_source_h_priv += $(glx_source_h_priv)
381 # XXX - this is another hack; we installed glx headers under includedir/glx
382 # instead of using the same directory.
383 clutterglx_includedir = $(clutter_includedir)/glx
384 clutterglx_include_HEADERS = $(glx_source_h)
387 # Windows backend rules
389 $(srcdir)/win32/clutter-backend-win32.c \
390 $(srcdir)/win32/clutter-device-manager-win32.c \
391 $(srcdir)/win32/clutter-event-win32.c \
392 $(srcdir)/win32/clutter-stage-win32.c \
396 $(srcdir)/win32/clutter-win32.h \
399 win32_source_h_priv = \
400 $(srcdir)/win32/clutter-backend-win32.h \
401 $(srcdir)/win32/clutter-device-manager-win32.h \
402 $(srcdir)/win32/clutter-stage-win32.h \
406 # Ideally this resources stuff would go in win32/ but libtool doesn't
407 # seem to pass on the -Wl argument when linking a convenience library
408 # so we need to do it here as part of linking the dll. libtool also
409 # won't let you link against the .o directly because it wants you to
410 # link against libtool objects for dynamic libraries.
412 $(WINDRES) -I$(srcdir)/win32 $< $@
414 win32/resources.o : $(srcdir)/win32/invisible-cursor.cur
416 win32_resources = win32/resources.o
417 win32_resources_ldflag = -Wl,win32/resources.o
419 backend_source_h += $(win32_source_h)
420 backend_source_c += $(win32_source_c)
421 backend_source_h_priv += $(win32_source_h_priv)
423 clutterwin_includedir = $(clutter_includedir)/win32
424 clutterwin_include_HEADERS = $(win32_source_h)
425 endif # SUPPORT_WIN32
428 $(srcdir)/win32/invisible-cursor.cur \
429 $(srcdir)/win32/resources.rc \
434 $(srcdir)/egl/clutter-egl-headers.h \
435 $(srcdir)/egl/clutter-egl.h \
439 $(srcdir)/egl/clutter-backend-egl.c \
440 $(srcdir)/egl/clutter-stage-egl.c \
443 egl_source_h_priv = \
444 $(srcdir)/egl/clutter-backend-egl.h \
445 $(srcdir)/egl/clutter-stage-egl.h \
450 egl_tslib_c = $(srcdir)/egl/clutter-event-tslib.c
453 $(srcdir)/evdev/clutter-xkb-utils.c \
454 $(srcdir)/evdev/clutter-device-manager-evdev.c \
455 $(srcdir)/evdev/clutter-input-device-evdev.c \
458 $(srcdir)/evdev/clutter-xkb-utils.h \
459 $(srcdir)/evdev/clutter-device-manager-evdev.h \
460 $(srcdir)/evdev/clutter-input-device-evdev.h \
463 egl_cex_c_priv = $(srcdir)/egl/clutter-backend-cex100.c
464 egl_cex_h_priv = $(srcdir)/egl/clutter-backend-cex100.h
465 egl_cex_h = $(srcdir)/egl/clutter-cex100.h
470 egl_source_c_priv += $(egl_tslib_c)
471 endif # SUPPORT_TSLIB
474 egl_source_c_priv += $(evdev_c_priv)
475 egl_source_h_priv += $(evdev_h_priv)
476 endif # SUPPORT_EVDEV
479 egl_source_c_priv += $(egl_cex_c_priv)
480 egl_source_h_priv += $(egl_cex_h_priv)
481 egl_source_h += $(egl_cex_h)
482 endif # SUPPORT_CEX100
484 backend_source_h += $(egl_source_h)
485 backend_source_c += $(egl_source_c)
486 backend_source_h_priv += $(egl_source_h_priv)
487 backend_source_c_priv += $(egl_source_c_priv)
489 clutteregl_includedir = $(clutter_includedir)/egl
490 clutteregl_include_HEADERS = $(egl_source_h)
495 $(srcdir)/osx/clutter-backend-osx.c \
496 $(srcdir)/osx/clutter-stage-osx.c \
499 osx_source_h = $(srcdir)/osx/clutter-osx.h
501 osx_source_h_priv = \
502 $(srcdir)/osx/clutter-backend-osx.h \
503 $(srcdir)/osx/clutter-event-loop-osx.h \
504 $(srcdir)/osx/clutter-stage-osx.h \
507 osx_source_c_priv = \
508 $(srcdir)/osx/clutter-event-loop-osx.c \
509 $(srcdir)/osx/clutter-event-osx.c \
513 # we need to tell the compiler that part of our code base is
515 AM_CFLAGS += -xobjective-c
517 backend_source_h += $(osx_source_h)
518 backend_source_c += $(osx_source_c)
519 backend_source_h_priv += $(osx_source_h_priv)
520 backend_source_c_priv += $(osx_source_c_priv)
522 clutterosx_includedir = $(clutter_includedir)/osx
523 clutterosx_include_HEADERS = $(osx_source_h)
526 # Fruity backend rules
528 $(srcdir)/fruity/clutter-backend-fruity.c \
529 $(srcdir)/fruity/clutter-stage-fruity.c \
530 $(srcdir)/fruity/clutter-fruity.c \
534 $(srcdir)/fruity/clutter-backend-fruity.h \
535 $(srcdir)/fruity/clutter-stage-fruity.h \
536 $(srcdir)/fruity/clutter-fruity.h \
540 AM_CFLAGS += -xobjective-c
542 backend_source_c_priv += $(fruity_source_c)
543 backend_source_h_priv += $(fruity_source_h)
545 clutterfruity_includedir = $(clutter_includedir)/fruity
546 clutterfruity_include_HEADERS = $(srcdir)/fruity/clutter-fruity.h
547 endif # SUPPORT_FRUITY
549 # Wayland backend rules
551 backend_source_h += \
552 $(srcdir)/wayland/clutter-wayland.h
554 backend_source_h_priv += \
555 $(srcdir)/evdev/clutter-xkb-utils.h \
556 $(srcdir)/wayland/clutter-backend-wayland.h \
557 $(srcdir)/wayland/clutter-stage-wayland.h
559 backend_source_c += \
560 $(srcdir)/evdev/clutter-xkb-utils.c \
561 $(srcdir)/wayland/clutter-backend-wayland.c \
562 $(srcdir)/wayland/clutter-stage-wayland.c \
563 $(srcdir)/wayland/clutter-event-wayland.c \
564 $(srcdir)/wayland/clutter-input-device-wayland.c
566 clutterwayland_includedir = $(clutter_includedir)/wayland
567 clutterwayland_include_HEADERS = $(wayland_source_h)
568 endif # SUPPORT_WAYLAND
572 $(srcdir)/cally/cally-actor.h \
573 $(srcdir)/cally/cally-clone.h \
574 $(srcdir)/cally/cally-factory.h \
575 $(srcdir)/cally/cally-group.h \
576 $(srcdir)/cally/cally.h \
577 $(srcdir)/cally/cally-main.h \
578 $(srcdir)/cally/cally-rectangle.h \
579 $(srcdir)/cally/cally-root.h \
580 $(srcdir)/cally/cally-stage.h \
581 $(srcdir)/cally/cally-text.h \
582 $(srcdir)/cally/cally-texture.h \
583 $(srcdir)/cally/cally-util.h \
587 $(srcdir)/cally/cally-actor.c \
588 $(srcdir)/cally/cally.c \
589 $(srcdir)/cally/cally-clone.c \
590 $(srcdir)/cally/cally-group.c \
591 $(srcdir)/cally/cally-rectangle.c \
592 $(srcdir)/cally/cally-root.c \
593 $(srcdir)/cally/cally-stage.c \
594 $(srcdir)/cally/cally-text.c \
595 $(srcdir)/cally/cally-texture.c \
596 $(srcdir)/cally/cally-util.c \
599 cally_sources_private = \
600 $(srcdir)/cally/cally-actor-private.h \
603 cally_includedir = $(clutter_base_includedir)/cally
604 cally_include_HEADERS = $(cally_sources_h)
606 pc_files += cally/cally-$(CLUTTER_API_VERSION).pc
607 EXTRA_DIST += cally/cally.pc.in
609 # general build rules:
610 # you should not need to modify anything below this point
612 # glib-genmarshal rules
613 glib_marshal_list = clutter-marshal.list
614 glib_marshal_prefix = _clutter_marshal
615 include $(top_srcdir)/build/autotools/Makefile.am.marshal
618 glib_enum_h = clutter-enum-types.h
619 glib_enum_c = clutter-enum-types.c
620 glib_enum_headers = $(source_h) $(backend_source_h)
621 include $(top_srcdir)/build/autotools/Makefile.am.enums
623 # backend-specific pkg-config file
624 clutter-$(CLUTTER_WINSYS)-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
625 $(QUIET_GEN)cp -f $< $(@F)
627 pc_files += clutter-$(CLUTTER_WINSYS)-$(CLUTTER_API_VERSION).pc
629 pkgconfigdir = $(libdir)/pkgconfig
630 pkgconfig_DATA = $(pc_files)
631 DISTCLEANFILES += $(pc_files)
633 clutter_include_HEADERS = $(source_h) $(top_srcdir)/clutter/clutter.h
634 nodist_clutter_include_HEADERS = \
635 $(top_builddir)/clutter/clutter-config.h \
636 $(top_builddir)/clutter/clutter-version.h \
639 lib_LTLIBRARIES += libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
641 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_LIBADD = \
643 $(CLUTTER_PROFILE_LIBS) \
644 $(top_builddir)/clutter/cogl/cogl/libclutter-cogl.la \
645 $(top_builddir)/clutter/cogl/pango/libcoglpango.la
647 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_DEPENDENCIES = \
648 $(top_builddir)/clutter/cogl/cogl/libclutter-cogl.la \
649 $(top_builddir)/clutter/cogl/pango/libcoglpango.la \
652 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_SOURCES = \
653 $(backend_source_c) \
654 $(backend_source_h) \
655 $(backend_source_c_priv) \
656 $(backend_source_h_priv) \
663 $(cally_sources_private) \
666 nodist_libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_SOURCES = \
667 $(backend_source_built) \
671 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_LDFLAGS = \
672 $(CLUTTER_LINK_FLAGS) \
673 $(CLUTTER_LT_LDFLAGS) \
676 -export-symbols-regex "^(clutter|cogl|cally).*" \
678 $(win32_resources_ldflag) \
681 # gobject-introspection rules
682 -include $(INTROSPECTION_MAKEFILE)
684 if HAVE_INTROSPECTION
685 INTROSPECTION_GIRS += Clutter-@CLUTTER_API_VERSION@.gir
687 Clutter-@CLUTTER_API_VERSION@.gir: libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la Makefile
689 Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter
690 Clutter_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
691 Clutter_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
692 Clutter_@CLUTTER_API_VERSION_AM@_gir_FILES = $(clutter_include_HEADERS) $(nodist_clutter_include_HEADERS) $(source_c) $(built_source_c)
693 Clutter_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED
694 Clutter_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = GL-1.0 GObject-2.0 cairo-1.0 Atk-1.0 Pango-1.0 PangoCairo-1.0 Json-1.0
695 Clutter_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
696 --c-include='clutter/clutter.h' \
697 --pkg-export=clutter-@CLUTTER_API_VERSION@ \
698 --include-uninstalled=$(top_builddir)/clutter/cogl/cogl/Cogl-@CLUTTER_API_VERSION@.gir
700 # Cogl.gir is used included into Clutter.gir, so it needs to be built
701 # before the typelib is generated
702 Clutter-@CLUTTER_API_VERSION@.typelib: Cogl-@CLUTTER_API_VERSION@.gir
704 # We build Cogl.gir in the cogl/ subdir, but it needs to reference the shared
705 # library that it's built into, so we delay compiling the gir into typelib
706 # until after we've built the shared library. To create the final Cogl.gir
707 # that we compile and install, we transfer the shared-library="" line from
708 # Clutter.gir to Cogl.gir
709 Cogl-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir cogl/cogl/Cogl-@CLUTTER_API_VERSION@.gir
711 shlib=`sed -n 's/.*shared-library="\([^"]*\)".*/\1/p' < Clutter-@CLUTTER_API_VERSION@.gir` ; \
712 sed "s/shared-library=\"[^\"]*\"/shared-library=\"$$shlib\"/"< cogl/cogl/Cogl-@CLUTTER_API_VERSION@.gir > $@
714 BUILT_GIRSOURCES += Cogl-@CLUTTER_API_VERSION@.gir
716 Cally-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir Cogl-@CLUTTER_API_VERSION@.gir
718 Cally_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Cally
719 Cally_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
720 Cally_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
721 Cally_@CLUTTER_API_VERSION_AM@_gir_FILES = $(cally_sources_h) $(cally_sources_c)
722 Cally_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED
723 Cally_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
724 --identifier-prefix=Cally \
725 --symbol-prefix=cally \
726 --c-include='cally/cally.h' \
727 --pkg-export=cally-@CLUTTER_API_VERSION@ \
728 --include-uninstalled=$(top_builddir)/clutter/Cogl-@CLUTTER_API_VERSION@.gir \
729 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
731 INTROSPECTION_GIRS += Cally-@CLUTTER_API_VERSION@.gir
734 ClutterX11-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir Cogl-@CLUTTER_API_VERSION@.gir
736 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
737 --identifier-prefix=ClutterX11 \
738 --symbol-prefix=clutter_x11 \
739 --c-include='clutter/x11/clutter-x11.h' \
740 --pkg-export=clutter-x11-@CLUTTER_API_VERSION@ \
741 --include-uninstalled=$(top_builddir)/clutter/Cogl-@CLUTTER_API_VERSION@.gir \
742 --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
743 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = xlib-2.0
744 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
745 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_FILES = $(x11_introspection)
746 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED
748 INTROSPECTION_GIRS += ClutterX11-@CLUTTER_API_VERSION@.gir
751 # INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
752 # install anything - we need to install inside our prefix.
753 girdir = $(datadir)/gir-1.0
754 gir_DATA = $(BUILT_GIRSOURCES) $(INTROSPECTION_GIRS)
756 typelibsdir = $(libdir)/girepository-1.0/
757 typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) $(INTROSPECTION_GIRS:.gir=.typelib)
759 CLEANFILES += $(gir_DATA) $(typelibs_DATA)
760 endif # HAVE_INTROSPECTION
763 gcov_sources = $(source_c) $(backend_source_c)
764 include $(top_srcdir)/build/autotools/Makefile.am.gcov