build: fix Makefile.am to build glx tfp code on x11 platforms
[profile/ivi/clutter.git] / clutter / Makefile.am
1 include $(top_srcdir)/build/autotools/Makefile.am.silent
2
3 # preamble
4 NULL =
5
6 # common definitions
7 CLEANFILES =
8 DISTCLEANFILES =
9 EXTRA_DIST =
10 BUILT_SOURCES =
11
12 lib_LTLIBRARIES =
13
14 INCLUDES = \
15         -I$(top_srcdir)                                 \
16         -I$(top_srcdir)/clutter                         \
17         -I$(top_srcdir)/clutter/$(CLUTTER_WINSYS)       \
18         -I$(top_srcdir)/clutter/$(CLUTTER_WINSYS_BASE)  \
19         -I$(top_srcdir)/clutter/cally                   \
20         -I$(top_srcdir)/clutter/evdev                   \
21         -I$(top_builddir)                               \
22         -I$(top_builddir)/clutter                       \
23         $(NULL)
24
25 AM_CPPFLAGS = \
26         -DCLUTTER_PREFIX=\""$(prefix)"\"        \
27         -DCLUTTER_LIBDIR=\""$(libdir)"\"        \
28         -DCLUTTER_DATADIR=\""$(datadir)"\"      \
29         -DCLUTTER_LOCALEDIR=\""$(localedir)"\"  \
30         -DCLUTTER_COMPILATION=1                 \
31         -DCOGL_ENABLE_EXPERIMENTAL_API          \
32         -DG_LOG_DOMAIN=\"Clutter\"              \
33         $(CLUTTER_DEPRECATED_CFLAGS)            \
34         $(CLUTTER_DEBUG_CFLAGS)                 \
35         $(CLUTTER_PROFILE_CFLAGS)               \
36         $(NULL)
37
38 AM_CFLAGS = $(CLUTTER_CFLAGS) $(MAINTAINER_CFLAGS) $(GCOV_CFLAGS)
39
40 # these are the gir files we generate using g-ir-scanner
41 INTROSPECTION_GIRS =
42
43 # the base include path for headers
44 clutter_base_includedir = $(includedir)/clutter-$(CLUTTER_API_VERSION)
45 clutter_includedir = $(clutter_base_includedir)/clutter
46
47 # pkg-config files
48 pc_files =
49
50 # common sources - please, keep these sorted alphabetically
51 source_h =                                      \
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-behaviour.h           \
62         $(srcdir)/clutter-behaviour-depth.h     \
63         $(srcdir)/clutter-behaviour-ellipse.h   \
64         $(srcdir)/clutter-behaviour-opacity.h   \
65         $(srcdir)/clutter-behaviour-path.h      \
66         $(srcdir)/clutter-behaviour-rotate.h    \
67         $(srcdir)/clutter-behaviour-scale.h     \
68         $(srcdir)/clutter-bind-constraint.h     \
69         $(srcdir)/clutter-binding-pool.h        \
70         $(srcdir)/clutter-bin-layout.h          \
71         $(srcdir)/clutter-blur-effect.h         \
72         $(srcdir)/clutter-box.h                 \
73         $(srcdir)/clutter-box-layout.h          \
74         $(srcdir)/clutter-cairo-texture.h       \
75         $(srcdir)/clutter-child-meta.h          \
76         $(srcdir)/clutter-click-action.h        \
77         $(srcdir)/clutter-clone.h               \
78         $(srcdir)/clutter-color-static.h        \
79         $(srcdir)/clutter-color.h               \
80         $(srcdir)/clutter-colorize-effect.h     \
81         $(srcdir)/clutter-constraint.h          \
82         $(srcdir)/clutter-container.h           \
83         $(srcdir)/clutter-deform-effect.h       \
84         $(srcdir)/clutter-deprecated.h          \
85         $(srcdir)/clutter-desaturate-effect.h   \
86         $(srcdir)/clutter-device-manager.h      \
87         $(srcdir)/clutter-drag-action.h         \
88         $(srcdir)/clutter-drop-action.h         \
89         $(srcdir)/clutter-effect.h              \
90         $(srcdir)/clutter-event.h               \
91         $(srcdir)/clutter-feature.h             \
92         $(srcdir)/clutter-fixed.h               \
93         $(srcdir)/clutter-fixed-layout.h        \
94         $(srcdir)/clutter-flow-layout.h         \
95         $(srcdir)/clutter-frame-source.h        \
96         $(srcdir)/clutter-gesture-action.h              \
97         $(srcdir)/clutter-group.h               \
98         $(srcdir)/clutter-input-device.h        \
99         $(srcdir)/clutter-interval.h            \
100         $(srcdir)/clutter-keysyms.h             \
101         $(srcdir)/clutter-keysyms-compat.h      \
102         $(srcdir)/clutter-layout-manager.h      \
103         $(srcdir)/clutter-layout-meta.h         \
104         $(srcdir)/clutter-list-model.h          \
105         $(srcdir)/clutter-main.h                \
106         $(srcdir)/clutter-media.h               \
107         $(srcdir)/clutter-model.h               \
108         $(srcdir)/clutter-offscreen-effect.h    \
109         $(srcdir)/clutter-page-turn-effect.h    \
110         $(srcdir)/clutter-path-constraint.h     \
111         $(srcdir)/clutter-path.h                \
112         $(srcdir)/clutter-rectangle.h           \
113         $(srcdir)/clutter-score.h               \
114         $(srcdir)/clutter-script.h              \
115         $(srcdir)/clutter-scriptable.h          \
116         $(srcdir)/clutter-settings.h            \
117         $(srcdir)/clutter-shader.h              \
118         $(srcdir)/clutter-shader-effect.h       \
119         $(srcdir)/clutter-shader-types.h        \
120         $(srcdir)/clutter-swipe-action.h        \
121         $(srcdir)/clutter-snap-constraint.h     \
122         $(srcdir)/clutter-stage.h               \
123         $(srcdir)/clutter-stage-manager.h       \
124         $(srcdir)/clutter-stage-window.h        \
125         $(srcdir)/clutter-state.h               \
126         $(srcdir)/clutter-table-layout.h        \
127         $(srcdir)/clutter-texture.h             \
128         $(srcdir)/clutter-text.h                \
129         $(srcdir)/clutter-timeline.h            \
130         $(srcdir)/clutter-timeout-pool.h        \
131         $(srcdir)/clutter-types.h               \
132         $(srcdir)/clutter-units.h               \
133         $(srcdir)/clutter-util.h                \
134         $(NULL)
135
136 source_c = \
137         $(srcdir)/clutter-action.c              \
138         $(srcdir)/clutter-actor-box.c           \
139         $(srcdir)/clutter-actor-meta.c          \
140         $(srcdir)/clutter-actor.c               \
141         $(srcdir)/clutter-align-constraint.c    \
142         $(srcdir)/clutter-alpha.c               \
143         $(srcdir)/clutter-animatable.c          \
144         $(srcdir)/clutter-animation.c           \
145         $(srcdir)/clutter-animator.c            \
146         $(srcdir)/clutter-backend.c             \
147         $(srcdir)/clutter-behaviour.c           \
148         $(srcdir)/clutter-behaviour-depth.c     \
149         $(srcdir)/clutter-behaviour-ellipse.c   \
150         $(srcdir)/clutter-behaviour-opacity.c   \
151         $(srcdir)/clutter-behaviour-path.c      \
152         $(srcdir)/clutter-behaviour-rotate.c    \
153         $(srcdir)/clutter-behaviour-scale.c     \
154         $(srcdir)/clutter-bezier.c              \
155         $(srcdir)/clutter-bind-constraint.c     \
156         $(srcdir)/clutter-binding-pool.c        \
157         $(srcdir)/clutter-bin-layout.c          \
158         $(srcdir)/clutter-blur-effect.c         \
159         $(srcdir)/clutter-box.c                 \
160         $(srcdir)/clutter-box-layout.c          \
161         $(srcdir)/clutter-cairo-texture.c       \
162         $(srcdir)/clutter-child-meta.c          \
163         $(srcdir)/clutter-click-action.c        \
164         $(srcdir)/clutter-clone.c               \
165         $(srcdir)/clutter-color.c               \
166         $(srcdir)/clutter-colorize-effect.c     \
167         $(srcdir)/clutter-constraint.c          \
168         $(srcdir)/clutter-container.c           \
169         $(srcdir)/clutter-deform-effect.c       \
170         $(srcdir)/clutter-desaturate-effect.c   \
171         $(srcdir)/clutter-device-manager.c      \
172         $(srcdir)/clutter-drag-action.c         \
173         $(srcdir)/clutter-drop-action.c         \
174         $(srcdir)/clutter-effect.c              \
175         $(srcdir)/clutter-event.c               \
176         $(srcdir)/clutter-feature.c             \
177         $(srcdir)/clutter-fixed.c               \
178         $(srcdir)/clutter-fixed-layout.c        \
179         $(srcdir)/clutter-flatten-effect.c      \
180         $(srcdir)/clutter-flow-layout.c         \
181         $(srcdir)/clutter-frame-source.c        \
182         $(srcdir)/clutter-gesture-action.c              \
183         $(srcdir)/clutter-group.c               \
184         $(srcdir)/clutter-input-device.c        \
185         $(srcdir)/clutter-interval.c            \
186         $(srcdir)/clutter-keysyms-table.c       \
187         $(srcdir)/clutter-layout-manager.c      \
188         $(srcdir)/clutter-layout-meta.c         \
189         $(srcdir)/clutter-list-model.c          \
190         $(srcdir)/clutter-main.c                \
191         $(srcdir)/clutter-master-clock.c        \
192         $(srcdir)/clutter-media.c               \
193         $(srcdir)/clutter-model.c               \
194         $(srcdir)/clutter-offscreen-effect.c    \
195         $(srcdir)/clutter-page-turn-effect.c    \
196         $(srcdir)/clutter-path-constraint.c     \
197         $(srcdir)/clutter-path.c                \
198         $(srcdir)/clutter-rectangle.c           \
199         $(srcdir)/clutter-score.c               \
200         $(srcdir)/clutter-script.c              \
201         $(srcdir)/clutter-script-parser.c       \
202         $(srcdir)/clutter-scriptable.c          \
203         $(srcdir)/clutter-settings.c            \
204         $(srcdir)/clutter-shader.c              \
205         $(srcdir)/clutter-shader-effect.c       \
206         $(srcdir)/clutter-shader-types.c        \
207         $(srcdir)/clutter-swipe-action.c        \
208         $(srcdir)/clutter-snap-constraint.c     \
209         $(srcdir)/clutter-stage.c               \
210         $(srcdir)/clutter-stage-manager.c       \
211         $(srcdir)/clutter-stage-window.c        \
212         $(srcdir)/clutter-state.c               \
213         $(srcdir)/clutter-table-layout.c        \
214         $(srcdir)/clutter-texture.c             \
215         $(srcdir)/clutter-text.c                \
216         $(srcdir)/clutter-timeline.c            \
217         $(srcdir)/clutter-timeout-pool.c        \
218         $(srcdir)/clutter-units.c               \
219         $(srcdir)/clutter-util.c                \
220         $(srcdir)/clutter-paint-volume.c        \
221         $(NULL)
222
223 # private headers; these should not be distributed or introspected
224 source_h_priv = \
225         $(srcdir)/clutter-actor-meta-private.h          \
226         $(srcdir)/clutter-actor-private.h               \
227         $(srcdir)/clutter-backend-private.h             \
228         $(srcdir)/clutter-bezier.h                      \
229         $(srcdir)/clutter-debug.h                       \
230         $(srcdir)/clutter-device-manager-private.h      \
231         $(srcdir)/clutter-effect-private.h              \
232         $(srcdir)/clutter-event-translator.h            \
233         $(srcdir)/clutter-event-private.h               \
234         $(srcdir)/clutter-flatten-effect.h              \
235         $(srcdir)/clutter-id-pool.h                     \
236         $(srcdir)/clutter-master-clock.h                \
237         $(srcdir)/clutter-model-private.h               \
238         $(srcdir)/clutter-offscreen-effect-private.h    \
239         $(srcdir)/clutter-paint-volume-private.h        \
240         $(srcdir)/clutter-private.h                     \
241         $(srcdir)/clutter-profile.h                     \
242         $(srcdir)/clutter-script-private.h              \
243         $(srcdir)/clutter-stage-manager-private.h       \
244         $(srcdir)/clutter-stage-private.h               \
245         $(srcdir)/clutter-timeout-interval.h            \
246         $(NULL)
247
248 # private source code; these should not be introspected
249 source_c_priv = \
250         $(srcdir)/clutter-event-translator.c    \
251         $(srcdir)/clutter-id-pool.c             \
252         $(srcdir)/clutter-profile.c             \
253         $(srcdir)/clutter-timeout-interval.c    \
254         $(NULL)
255
256 # built sources
257 built_source_c = \
258         clutter-enum-types.c                    \
259         clutter-marshal.c                       \
260         $(NULL)
261
262 # built headers
263 built_source_h = \
264         clutter-enum-types.h                    \
265         clutter-marshal.h                       \
266         $(NULL)
267
268 # config header
269 DISTCLEANFILES += clutter-config.h
270 EXTRA_DIST += clutter-config.h.in
271
272 # version header
273 DISTCLEANFILES += clutter-version.h
274 EXTRA_DIST += clutter-version.h.in
275
276 # key symbol update script
277 EXTRA_DIST += clutter-keysyms-update.pl
278
279 pc_files += clutter-$(CLUTTER_API_VERSION).pc
280
281 # backends source listings
282 #
283 #   backend_source_c := source code
284 #   backend_source_h := installed public headers
285 #   backend_source_c_priv := source that should not be scanned by g-i
286 #   backend_source_h_priv := private headers
287 #   backend_source_built := built sources
288 #
289 backend_source_c =
290 backend_source_h =
291 backend_source_c_priv =
292 backend_source_h_priv =
293 backend_source_built =
294
295 # X11 backend rules
296 x11_source_c = \
297         $(srcdir)/x11/clutter-backend-x11.c             \
298         $(srcdir)/x11/clutter-device-manager-core-x11.c \
299         $(srcdir)/x11/clutter-event-x11.c               \
300         $(srcdir)/x11/clutter-input-device-core-x11.c   \
301         $(srcdir)/x11/clutter-keymap-x11.c              \
302         $(srcdir)/x11/clutter-stage-x11.c               \
303         $(srcdir)/x11/clutter-x11-texture-pixmap.c      \
304         $(NULL)
305
306 x11_source_h = \
307         $(srcdir)/x11/clutter-x11.h                     \
308         $(srcdir)/x11/clutter-x11-texture-pixmap.h      \
309         $(NULL)
310
311 x11_source_h_priv = \
312         $(srcdir)/x11/clutter-backend-x11.h             \
313         $(srcdir)/x11/clutter-device-manager-core-x11.h \
314         $(srcdir)/x11/clutter-input-device-core-x11.h   \
315         $(srcdir)/x11/clutter-keymap-x11.h              \
316         $(srcdir)/x11/clutter-settings-x11.h            \
317         $(srcdir)/x11/clutter-stage-x11.h               \
318         $(NULL)
319
320 x11_source_c_priv = \
321         $(srcdir)/x11/xsettings/xsettings-client.c      \
322         $(srcdir)/x11/xsettings/xsettings-client.h      \
323         $(srcdir)/x11/xsettings/xsettings-common.c      \
324         $(srcdir)/x11/xsettings/xsettings-common.h      \
325         $(NULL)
326
327 if BUILD_XI2
328 x11_source_c += \
329         $(srcdir)/x11/clutter-device-manager-xi2.c      \
330         $(srcdir)/x11/clutter-input-device-xi2.c        \
331         $(NULL)
332
333 x11_source_h_priv += \
334         $(srcdir)/x11/clutter-device-manager-xi2.h      \
335         $(srcdir)/x11/clutter-input-device-xi2.h        \
336         $(NULL)
337 endif # BUILD_XI2
338
339 if SUPPORT_X11
340 backend_source_h += $(x11_source_h)
341 backend_source_c += $(x11_source_c)
342 backend_source_h_priv += $(x11_source_h_priv)
343 backend_source_c_priv += $(x11_source_c_priv)
344
345 # the list of files we want to introspect on X11
346 x11_introspection = $(x11_source_c) $(x11_source_h)
347
348 # pkg-config file for the X11 meta-backend
349 clutter-x11-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
350         $(QUIET_GEN)cp -f $< $(@F)
351
352 pc_files += clutter-x11-$(CLUTTER_API_VERSION).pc
353
354 clutterx11_includedir = $(clutter_includedir)/x11
355 clutterx11_include_HEADERS = $(x11_source_h)
356 endif # SUPPORT_X11
357
358 # Shared cogl backend files
359 cogl_source_h =
360
361 cogl_source_c = \
362         $(srcdir)/cogl/clutter-backend-cogl.c   \
363         $(srcdir)/cogl/clutter-stage-cogl.c     \
364         $(NULL)
365
366 cogl_source_h_priv = \
367         $(srcdir)/cogl/clutter-backend-cogl.h   \
368         $(srcdir)/cogl/clutter-stage-cogl.h     \
369         $(NULL)
370
371 cogl_source_c_priv =
372
373 if SUPPORT_X11
374 # For compatability with the old GLX backend
375 #
376 # Note: there wasn't actually anything GLX specific so we can add
377 # the compatability if clutter supports x11
378 backend_source_c += $(srcdir)/cogl/clutter-glx-texture-pixmap.c
379 glx_source_h = $(srcdir)/cogl/clutter-glx-texture-pixmap.h \
380                $(srcdir)/cogl/clutter-glx.h
381 clutterglx_includedir = $(clutter_includedir)/glx
382 clutterglx_include_HEADERS = $(glx_source_h)
383
384 clutter-glx-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
385         $(QUIET_GEN)cp -f $< $(@F)
386
387 pc_files += clutter-glx-$(CLUTTER_API_VERSION).pc
388 endif
389
390 if SUPPORT_GLX
391 backend_source_h += $(cogl_source_h) $(glx_source_h)
392 backend_source_c += $(cogl_source_c) $(glx_source_c)
393 backend_source_h_priv += $(cogl_source_h_priv)
394 endif # SUPPORT_GLX
395
396 # Windows backend rules
397 win32_source_c = \
398         $(srcdir)/win32/clutter-backend-win32.c         \
399         $(srcdir)/win32/clutter-device-manager-win32.c  \
400         $(srcdir)/win32/clutter-event-win32.c           \
401         $(srcdir)/win32/clutter-stage-win32.c           \
402         $(NULL)
403
404 win32_source_h = \
405         $(srcdir)/win32/clutter-win32.h                 \
406         $(NULL)
407
408 win32_source_h_priv = \
409         $(srcdir)/win32/clutter-backend-win32.h         \
410         $(srcdir)/win32/clutter-device-manager-win32.h  \
411         $(srcdir)/win32/clutter-stage-win32.h           \
412         $(NULL)
413
414 if SUPPORT_WIN32
415 # Ideally this resources stuff would go in win32/ but libtool doesn't
416 # seem to pass on the -Wl argument when linking a convenience library
417 # so we need to do it here as part of linking the dll. libtool also
418 # won't let you link against the .o directly because it wants you to
419 # link against libtool objects for dynamic libraries.
420 .rc.o :
421         mkdir -p win32
422         $(WINDRES) -I$(srcdir)/win32 $< $@
423
424 win32/resources.o : $(srcdir)/win32/invisible-cursor.cur
425
426 win32_resources = win32/resources.o
427 win32_resources_ldflag = -Wl,win32/resources.o
428
429 backend_source_h += $(win32_source_h)
430 backend_source_c += $(win32_source_c)
431 backend_source_h_priv += $(win32_source_h_priv)
432
433 clutterwin_includedir = $(clutter_includedir)/win32
434 clutterwin_include_HEADERS = $(win32_source_h)
435 endif # SUPPORT_WIN32
436
437 EXTRA_DIST += \
438         $(srcdir)/win32/invisible-cursor.cur    \
439         $(srcdir)/win32/resources.rc            \
440         $(NULL)
441
442 # EGL backend rules
443 egl_source_h = \
444         $(srcdir)/cogl/clutter-egl-headers.h    \
445         $(srcdir)/cogl/clutter-egl.h            \
446         $(NULL)
447
448 egl_tslib_c = $(srcdir)/egl/clutter-event-tslib.c
449
450 evdev_c_priv = \
451         $(srcdir)/evdev/clutter-xkb-utils.c             \
452         $(srcdir)/evdev/clutter-device-manager-evdev.c  \
453         $(srcdir)/evdev/clutter-input-device-evdev.c    \
454         $(NULL)
455 evdev_h_priv = \
456         $(srcdir)/evdev/clutter-xkb-utils.h             \
457         $(srcdir)/evdev/clutter-device-manager-evdev.h  \
458         $(srcdir)/evdev/clutter-input-device-evdev.h    \
459         $(NULL)
460
461 cex_h = cogl/clutter-cex100.h
462 BUILT_SOURCES += $(cex_h)
463 EXTRA_DIST += $(srcdir)/$(cex_h).in
464
465 if USE_TSLIB
466 backend_source_c_priv += $(egl_tslib_c)
467 endif # SUPPORT_TSLIB
468
469 if SUPPORT_EVDEV
470 backend_source_c_priv += $(evdev_c_priv)
471 backend_source_h_priv += $(evdev_h_priv)
472 endif # SUPPORT_EVDEV
473
474 if SUPPORT_CEX100
475 backend_source_h += $(cex_h)
476 endif # SUPPORT_CEX100
477
478 if SUPPORT_EGL
479 backend_source_h += $(cogl_source_h) $(egl_source_h)
480 backend_source_c += $(cogl_source_c)
481 backend_source_h_priv += $(cogl_source_h_priv)
482 backend_source_c_priv += $(cogl_source_c_priv)
483
484 clutteregl_includedir = $(clutter_includedir)/egl
485 clutteregl_include_HEADERS = $(egl_source_h)
486 endif # SUPPORT_EGL
487
488 # OSX backend rules
489 osx_source_c = \
490         $(srcdir)/osx/clutter-backend-osx.c     \
491         $(srcdir)/osx/clutter-stage-osx.c       \
492         $(NULL)
493
494 osx_source_h = $(srcdir)/osx/clutter-osx.h
495
496 osx_source_h_priv = \
497         $(srcdir)/osx/clutter-backend-osx.h     \
498         $(srcdir)/osx/clutter-event-loop-osx.h  \
499         $(srcdir)/osx/clutter-stage-osx.h       \
500         $(srcdir)/osx/clutter-device-manager-osx.h \
501         $(NULL)
502
503 osx_source_c_priv = \
504         $(srcdir)/osx/clutter-event-loop-osx.c  \
505         $(srcdir)/osx/clutter-event-osx.c       \
506         $(srcdir)/osx/clutter-device-manager-osx.c \
507         $(NULL)
508
509 if SUPPORT_OSX
510 # we need to tell the compiler that part of our code base is
511 # in Objective C
512 AM_CFLAGS += -xobjective-c
513
514 backend_source_h += $(osx_source_h)
515 backend_source_c += $(osx_source_c)
516 backend_source_h_priv += $(osx_source_h_priv)
517 backend_source_c_priv += $(osx_source_c_priv)
518
519 clutterosx_includedir = $(clutter_includedir)/osx
520 clutterosx_include_HEADERS = $(osx_source_h)
521 endif # SUPPORT_OSX
522
523 # Wayland backend rules
524 if SUPPORT_WAYLAND
525 backend_source_h += \
526         $(srcdir)/wayland/clutter-wayland.h
527
528 backend_source_h_priv += \
529         $(srcdir)/evdev/clutter-xkb-utils.h             \
530         $(srcdir)/wayland/clutter-backend-wayland.h     \
531         $(srcdir)/wayland/clutter-stage-wayland.h
532
533 backend_source_c += \
534         $(srcdir)/evdev/clutter-xkb-utils.c             \
535         $(srcdir)/wayland/clutter-backend-wayland.c     \
536         $(srcdir)/wayland/clutter-stage-wayland.c       \
537         $(srcdir)/wayland/clutter-event-wayland.c       \
538         $(srcdir)/wayland/clutter-input-device-wayland.c
539
540 clutterwayland_includedir = $(clutter_includedir)/wayland
541 clutterwayland_include_HEADERS = $(wayland_source_h)
542 endif # SUPPORT_WAYLAND
543
544 # cally
545 cally_sources_h = \
546         $(srcdir)/cally/cally-actor.h           \
547         $(srcdir)/cally/cally-clone.h           \
548         $(srcdir)/cally/cally-factory.h         \
549         $(srcdir)/cally/cally-group.h           \
550         $(srcdir)/cally/cally.h                 \
551         $(srcdir)/cally/cally-main.h            \
552         $(srcdir)/cally/cally-rectangle.h       \
553         $(srcdir)/cally/cally-root.h            \
554         $(srcdir)/cally/cally-stage.h           \
555         $(srcdir)/cally/cally-text.h            \
556         $(srcdir)/cally/cally-texture.h         \
557         $(srcdir)/cally/cally-util.h            \
558         $(NULL)
559
560 cally_sources_c = \
561         $(srcdir)/cally/cally-actor.c           \
562         $(srcdir)/cally/cally.c                 \
563         $(srcdir)/cally/cally-clone.c           \
564         $(srcdir)/cally/cally-group.c           \
565         $(srcdir)/cally/cally-rectangle.c       \
566         $(srcdir)/cally/cally-root.c            \
567         $(srcdir)/cally/cally-stage.c           \
568         $(srcdir)/cally/cally-text.c            \
569         $(srcdir)/cally/cally-texture.c         \
570         $(srcdir)/cally/cally-util.c            \
571         $(NULL)
572
573 cally_sources_private = \
574         $(srcdir)/cally/cally-actor-private.h   \
575         $(NULL)
576
577 cally_includedir = $(clutter_base_includedir)/cally
578 cally_include_HEADERS = $(cally_sources_h)
579
580 pc_files += cally/cally-$(CLUTTER_API_VERSION).pc
581 EXTRA_DIST += cally/cally.pc.in
582
583 # general build rules:
584 # you should not need to modify anything below this point
585
586 # glib-genmarshal rules
587 glib_marshal_list = clutter-marshal.list
588 glib_marshal_prefix = _clutter_marshal
589 include $(top_srcdir)/build/autotools/Makefile.am.marshal
590
591 # glib-mkenums rules
592 glib_enum_h = clutter-enum-types.h
593 glib_enum_c = clutter-enum-types.c
594 glib_enum_headers = $(source_h) $(backend_source_h)
595 include $(top_srcdir)/build/autotools/Makefile.am.enums
596
597 # backend-specific pkg-config file
598 clutter-$(CLUTTER_WINSYS)-$(CLUTTER_API_VERSION).pc: clutter-$(CLUTTER_API_VERSION).pc
599         $(QUIET_GEN)cp -f $< $(@F)
600
601 pc_files += clutter-$(CLUTTER_WINSYS)-$(CLUTTER_API_VERSION).pc
602
603 pkgconfigdir = $(libdir)/pkgconfig
604 pkgconfig_DATA = $(pc_files)
605 DISTCLEANFILES += $(pc_files)
606
607 clutter_include_HEADERS = $(source_h) $(top_srcdir)/clutter/clutter.h
608 nodist_clutter_include_HEADERS = \
609         $(top_builddir)/clutter/clutter-config.h \
610         $(top_builddir)/clutter/clutter-version.h \
611         $(built_source_h)
612
613 lib_LTLIBRARIES += libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
614
615 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_LIBADD = \
616         $(CLUTTER_LIBS) \
617         $(CLUTTER_PROFILE_LIBS)
618
619 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_DEPENDENCIES = \
620         $(win32_resources)
621
622 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_SOURCES = \
623         $(backend_source_c) \
624         $(backend_source_h) \
625         $(backend_source_c_priv) \
626         $(backend_source_h_priv) \
627         $(source_c) \
628         $(source_h) \
629         $(source_c_priv) \
630         $(source_h_priv) \
631         $(cally_sources_c) \
632         $(cally_sources_h) \
633         $(cally_sources_private) \
634         $(NULL)
635
636 nodist_libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_SOURCES = \
637         $(backend_source_built) \
638         $(built_source_c) \
639         $(built_source_h)
640
641 libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_LDFLAGS = \
642         $(CLUTTER_LINK_FLAGS) \
643         $(CLUTTER_LT_LDFLAGS) \
644         $(GCOV_LDFLAGS) \
645         -export-dynamic \
646         -export-symbols-regex "^(clutter|cally).*" \
647         -rpath $(libdir) \
648         $(win32_resources_ldflag) \
649         $(NULL)
650
651 # gobject-introspection rules
652 -include $(INTROSPECTION_MAKEFILE)
653
654 if HAVE_INTROSPECTION
655 Clutter-@CLUTTER_API_VERSION@.gir: libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la Makefile
656
657 Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter
658 Clutter_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
659 Clutter_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
660 Clutter_@CLUTTER_API_VERSION_AM@_gir_FILES = $(clutter_include_HEADERS) $(nodist_clutter_include_HEADERS) $(source_c) $(built_source_c)
661 Clutter_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED
662 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
663 Clutter_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
664         --warn-all \
665         --c-include='clutter/clutter.h' \
666         --pkg-export=clutter-@CLUTTER_API_VERSION@
667
668 INTROSPECTION_GIRS += Clutter-@CLUTTER_API_VERSION@.gir
669
670 Cally-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
671
672 Cally_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Cally
673 Cally_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
674 Cally_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
675 Cally_@CLUTTER_API_VERSION_AM@_gir_FILES = $(cally_sources_h) $(cally_sources_c)
676 Cally_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED
677 Cally_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
678         --identifier-prefix=Cally \
679         --symbol-prefix=cally \
680         --c-include='cally/cally.h' \
681         --pkg-export=cally-@CLUTTER_API_VERSION@ \
682         --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
683
684 INTROSPECTION_GIRS += Cally-@CLUTTER_API_VERSION@.gir
685
686 if SUPPORT_X11
687 ClutterX11-@CLUTTER_API_VERSION@.gir: Makefile Clutter-@CLUTTER_API_VERSION@.gir
688
689 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \
690         --identifier-prefix=ClutterX11 \
691         --symbol-prefix=clutter_x11 \
692         --c-include='clutter/x11/clutter-x11.h' \
693         --pkg-export=clutter-x11-@CLUTTER_API_VERSION@ \
694         --include-uninstalled=$(top_builddir)/clutter/Clutter-@CLUTTER_API_VERSION@.gir
695 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = xlib-2.0
696 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
697 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_FILES = $(x11_introspection)
698 ClutterX11_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED
699
700 INTROSPECTION_GIRS += ClutterX11-@CLUTTER_API_VERSION@.gir
701 endif # SUPPORT_X11
702
703 # INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
704 # install anything - we need to install inside our prefix.
705 girdir = $(datadir)/gir-1.0
706 gir_DATA = $(INTROSPECTION_GIRS)
707
708 typelibdir = $(libdir)/girepository-1.0
709 typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
710
711 CLEANFILES += $(gir_DATA) $(typelib_DATA)
712 endif # HAVE_INTROSPECTION
713
714 # GCov rules
715 gcov_sources = $(source_c) $(backend_source_c)
716 include $(top_srcdir)/build/autotools/Makefile.am.gcov