ivi-shell: add IVI layout APIs
[profile/ivi/weston-ivi-shell.git] / Makefile.am
1 ACLOCAL_AMFLAGS = -I m4
2
3 bin_PROGRAMS =
4 noinst_PROGRAMS =
5 libexec_PROGRAMS =
6 moduledir = $(libdir)/weston
7 module_LTLIBRARIES =
8 noinst_LTLIBRARIES =
9 BUILT_SOURCES =
10
11 # Do not run xwayland test while it is known broken.
12 AM_DISTCHECK_CONFIGURE_FLAGS = --disable-setuid-install --disable-xwayland-test
13
14 EXTRA_DIST = weston.ini.in
15
16 weston.ini : $(srcdir)/weston.ini.in
17         $(AM_V_GEN)$(SED) \
18                 -e 's|@bindir[@]|$(bindir)|g' \
19                 -e 's|@abs_top_builddir[@]|$(abs_top_builddir)|g' \
20                 -e 's|@libexecdir[@]|$(libexecdir)|g' \
21                 $< > $@
22
23 all-local : weston.ini
24
25 AM_CFLAGS = $(GCC_CFLAGS)
26
27 AM_CPPFLAGS =                                   \
28         -I$(top_srcdir)/src                     \
29         -I$(top_builddir)/src                   \
30         -I$(top_builddir)/clients               \
31         -I$(top_builddir)/tests                 \
32         -I$(top_srcdir)/shared                  \
33         -I$(top_builddir)/protocol              \
34         -DDATADIR='"$(datadir)"'                \
35         -DMODULEDIR='"$(moduledir)"'            \
36         -DLIBEXECDIR='"$(libexecdir)"'          \
37         -DBINDIR='"$(bindir)"'
38
39 CLEANFILES = weston.ini $(BUILT_SOURCES)
40
41 bin_PROGRAMS += weston
42
43 weston_LDFLAGS = -export-dynamic
44 weston_CPPFLAGS = $(AM_CPPFLAGS) -DIN_WESTON
45 weston_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS) $(LIBUNWIND_CFLAGS)
46 weston_LDADD = $(COMPOSITOR_LIBS) $(LIBUNWIND_LIBS) \
47         $(DLOPEN_LIBS) -lm libshared.la
48
49 weston_SOURCES =                                        \
50         src/git-version.h                               \
51         src/log.c                                       \
52         src/compositor.c                                \
53         src/compositor.h                                \
54         src/input.c                                     \
55         src/data-device.c                               \
56         src/screenshooter.c                             \
57         src/clipboard.c                                 \
58         src/zoom.c                                      \
59         src/text-backend.c                              \
60         src/bindings.c                                  \
61         src/animation.c                                 \
62         src/noop-renderer.c                             \
63         src/pixman-renderer.c                           \
64         src/pixman-renderer.h                           \
65         shared/matrix.c                                 \
66         shared/matrix.h                                 \
67         shared/zalloc.h                                 \
68         src/weston-egl-ext.h
69
70 nodist_weston_SOURCES =                                 \
71         protocol/screenshooter-protocol.c               \
72         protocol/screenshooter-server-protocol.h        \
73         protocol/text-cursor-position-protocol.c        \
74         protocol/text-cursor-position-server-protocol.h \
75         protocol/text-protocol.c                        \
76         protocol/text-server-protocol.h                 \
77         protocol/input-method-protocol.c                \
78         protocol/input-method-server-protocol.h         \
79         protocol/workspaces-protocol.c                  \
80         protocol/workspaces-server-protocol.h           \
81         protocol/scaler-protocol.c                      \
82         protocol/scaler-server-protocol.h
83
84 BUILT_SOURCES += $(nodist_weston_SOURCES)
85
86 # Track this dependency explicitly instead of using BUILT_SOURCES.  We
87 # add BUILT_SOURCES to CLEANFILES, but we want to keep git-version.h
88 # in case we're building from tarballs.
89
90 src/compositor.c : $(top_builddir)/src/git-version.h
91
92 noinst_LTLIBRARIES +=                           \
93         libsession-helper.la
94
95 libsession_helper_la_SOURCES =                  \
96         src/weston-launch.h                     \
97         src/launcher-util.c                     \
98         src/launcher-util.h
99 libsession_helper_la_CFLAGS = $(GCC_CFLAGS) $(LIBDRM_CFLAGS) $(PIXMAN_CFLAGS) $(COMPOSITOR_CFLAGS)
100 libsession_helper_la_LIBADD = $(LIBDRM_LIBS)
101
102 if ENABLE_DBUS
103 if HAVE_SYSTEMD_LOGIN
104 libsession_helper_la_SOURCES +=                 \
105         src/dbus.h                              \
106         src/dbus.c                              \
107         src/logind-util.h                       \
108         src/logind-util.c
109 libsession_helper_la_CFLAGS += $(SYSTEMD_LOGIN_CFLAGS) $(DBUS_CFLAGS)
110 libsession_helper_la_LIBADD += $(SYSTEMD_LOGIN_LIBS) $(DBUS_LIBS)
111 endif
112 endif
113
114 if HAVE_GIT_REPO
115 src/git-version.h : $(top_srcdir)/.git/logs/HEAD
116         $(AM_V_GEN)echo "#define BUILD_ID \"$(shell git --git-dir=$(top_srcdir)/.git describe --always --dirty) $(shell git --git-dir=$(top_srcdir)/.git log -1 --format='%s (%ci)')\"" > $@
117 else
118 src/git-version.h :
119         $(AM_V_GEN)echo "#define BUILD_ID \"unknown (not built from git or tarball)\"" > $@
120
121 endif
122
123 .FORCE :
124
125 if BUILD_WESTON_LAUNCH
126 bin_PROGRAMS += weston-launch
127 weston_launch_SOURCES = src/weston-launch.c src/weston-launch.h
128 weston_launch_CPPFLAGS = -DBINDIR='"$(bindir)"'
129 weston_launch_CFLAGS=                           \
130         $(GCC_CFLAGS)                           \
131         $(PAM_CFLAGS)                           \
132         $(SYSTEMD_LOGIN_CFLAGS)                 \
133         $(LIBDRM_CFLAGS)
134 weston_launch_LDADD = $(PAM_LIBS) $(SYSTEMD_LOGIN_LIBS) $(LIBDRM_LIBS)
135
136 if ENABLE_SETUID_INSTALL
137 install-exec-hook:
138         chown root $(DESTDIR)$(bindir)/weston-launch
139         chmod u+s $(DESTDIR)$(bindir)/weston-launch
140 endif
141
142 endif # BUILD_WESTON_LAUNCH
143
144 pkgconfigdir = $(libdir)/pkgconfig
145 pkgconfig_DATA = src/weston.pc
146
147 westonincludedir = $(includedir)/weston
148 westoninclude_HEADERS =                         \
149         src/version.h                           \
150         src/compositor.h                        \
151         shared/matrix.h                         \
152         shared/config-parser.h                  \
153         shared/zalloc.h
154
155 if ENABLE_EGL
156 module_LTLIBRARIES += gl-renderer.la
157 gl_renderer_la_LDFLAGS = -module -avoid-version
158 gl_renderer_la_LIBADD = $(COMPOSITOR_LIBS) $(EGL_LIBS)
159 gl_renderer_la_CFLAGS =                         \
160         $(COMPOSITOR_CFLAGS)                    \
161         $(EGL_CFLAGS)                           \
162         $(GCC_CFLAGS)
163 gl_renderer_la_SOURCES =                        \
164         src/gl-renderer.h                       \
165         src/gl-renderer.c                       \
166         src/vertex-clipping.c                   \
167         src/vertex-clipping.h
168 endif
169
170 if ENABLE_X11_COMPOSITOR
171 module_LTLIBRARIES += x11-backend.la
172 x11_backend_la_LDFLAGS = -module -avoid-version
173 x11_backend_la_LIBADD = $(COMPOSITOR_LIBS) $(X11_COMPOSITOR_LIBS) \
174         libshared-cairo.la
175 x11_backend_la_CFLAGS =                         \
176         $(COMPOSITOR_CFLAGS)                    \
177         $(EGL_CFLAGS)                           \
178         $(PIXMAN_CFLAGS)                        \
179         $(CAIRO_CFLAGS)                         \
180         $(X11_COMPOSITOR_CFLAGS)                \
181         $(GCC_CFLAGS)
182 x11_backend_la_SOURCES = src/compositor-x11.c
183 endif
184
185 INPUT_BACKEND_SOURCES = src/udev-input.h
186
187 if ENABLE_LIBINPUT_BACKEND
188 INPUT_BACKEND_LIBS = $(LIBINPUT_BACKEND_LIBS)
189 INPUT_BACKEND_SOURCES +=                        \
190         src/libinput-seat.c                     \
191         src/libinput-seat.h                     \
192         src/libinput-device.c                   \
193         src/libinput-device.h
194 else
195 INPUT_BACKEND_SOURCES +=                        \
196         src/filter.c                            \
197         src/filter.h                            \
198         src/udev-seat.c                         \
199         src/udev-seat.h                         \
200         src/evdev.c                             \
201         src/evdev.h                             \
202         src/evdev-touchpad.c
203 endif
204
205 if ENABLE_DRM_COMPOSITOR
206 module_LTLIBRARIES += drm-backend.la
207 drm_backend_la_LDFLAGS = -module -avoid-version
208 drm_backend_la_LIBADD =                         \
209         $(COMPOSITOR_LIBS)                      \
210         $(DRM_COMPOSITOR_LIBS)                  \
211         $(INPUT_BACKEND_LIBS)                   \
212         libshared.la -lrt                       \
213         libsession-helper.la
214 drm_backend_la_CFLAGS =                         \
215         $(COMPOSITOR_CFLAGS)                    \
216         $(EGL_CFLAGS)                           \
217         $(DRM_COMPOSITOR_CFLAGS)                \
218         $(GCC_CFLAGS)
219 drm_backend_la_SOURCES =                        \
220         src/compositor-drm.c                    \
221         $(INPUT_BACKEND_SOURCES)                \
222         src/libbacklight.c                      \
223         src/libbacklight.h
224
225 if ENABLE_VAAPI_RECORDER
226 drm_backend_la_SOURCES += src/vaapi-recorder.c src/vaapi-recorder.h
227 drm_backend_la_LIBADD += $(LIBVA_LIBS)
228 drm_backend_la_CFLAGS += $(LIBVA_CFLAGS)
229 endif
230 endif
231
232 if ENABLE_WAYLAND_COMPOSITOR
233 module_LTLIBRARIES += wayland-backend.la
234 wayland_backend_la_LDFLAGS = -module -avoid-version
235 wayland_backend_la_LIBADD =                     \
236         $(COMPOSITOR_LIBS)                      \
237         $(WAYLAND_COMPOSITOR_LIBS)              \
238         libshared-cairo.la
239 wayland_backend_la_CFLAGS =                     \
240         $(COMPOSITOR_CFLAGS)                    \
241         $(EGL_CFLAGS)                           \
242         $(PIXMAN_CFLAGS)                        \
243         $(CAIRO_CFLAGS)                         \
244         $(WAYLAND_COMPOSITOR_CFLAGS)            \
245         $(GCC_CFLAGS)
246 wayland_backend_la_SOURCES = src/compositor-wayland.c
247 nodist_wayland_backend_la_SOURCES =                     \
248         protocol/fullscreen-shell-protocol.c            \
249         protocol/fullscreen-shell-client-protocol.h
250 endif
251
252 if ENABLE_RPI_COMPOSITOR
253 if INSTALL_RPI_COMPOSITOR
254 module_LTLIBRARIES += rpi-backend.la
255 else
256 noinst_LTLIBRARIES += rpi-backend.la
257 endif
258
259 rpi_backend_la_LDFLAGS = -module -avoid-version
260 rpi_backend_la_LIBADD = $(COMPOSITOR_LIBS)      \
261         $(RPI_COMPOSITOR_LIBS)                  \
262         $(RPI_BCM_HOST_LIBS)                    \
263         $(INPUT_BACKEND_LIBS)                   \
264         libsession-helper.la                    \
265         libshared.la
266 rpi_backend_la_CFLAGS =                         \
267         $(GCC_CFLAGS)                           \
268         $(COMPOSITOR_CFLAGS)                    \
269         $(RPI_COMPOSITOR_CFLAGS)                \
270         $(RPI_BCM_HOST_CFLAGS)
271 rpi_backend_la_SOURCES =                        \
272         src/compositor-rpi.c                    \
273         src/rpi-renderer.c                      \
274         src/rpi-renderer.h                      \
275         src/rpi-bcm-stubs.h                     \
276         $(INPUT_BACKEND_SOURCES)
277
278 if ENABLE_EGL
279 rpi_backend_la_LIBADD += $(EGL_LIBS)
280 rpi_backend_la_CFLAGS += $(EGL_CFLAGS)
281 endif
282
283 endif
284
285 if ENABLE_HEADLESS_COMPOSITOR
286 module_LTLIBRARIES += headless-backend.la
287 headless_backend_la_LDFLAGS = -module -avoid-version
288 headless_backend_la_LIBADD = $(COMPOSITOR_LIBS) libshared.la
289 headless_backend_la_CFLAGS = $(COMPOSITOR_CFLAGS) $(GCC_CFLAGS)
290 headless_backend_la_SOURCES = src/compositor-headless.c
291 endif
292
293 if ENABLE_FBDEV_COMPOSITOR
294 module_LTLIBRARIES += fbdev-backend.la
295 fbdev_backend_la_LDFLAGS = -module -avoid-version
296 fbdev_backend_la_LIBADD =                       \
297         $(COMPOSITOR_LIBS)                      \
298         $(FBDEV_COMPOSITOR_LIBS)                \
299         $(INPUT_BACKEND_LIBS)                   \
300         libsession-helper.la                    \
301         libshared.la
302 fbdev_backend_la_CFLAGS =                       \
303         $(COMPOSITOR_CFLAGS)                    \
304         $(EGL_CFLAGS)                           \
305         $(FBDEV_COMPOSITOR_CFLAGS)              \
306         $(PIXMAN_CFLAGS)                        \
307         $(GCC_CFLAGS)
308 fbdev_backend_la_SOURCES =                      \
309         src/compositor-fbdev.c                  \
310         $(INPUT_BACKEND_SOURCES)
311 endif
312
313 if ENABLE_RDP_COMPOSITOR
314 module_LTLIBRARIES += rdp-backend.la
315 rdp_backend_la_LDFLAGS = -module -avoid-version
316 rdp_backend_la_LIBADD = $(COMPOSITOR_LIBS) \
317         $(RDP_COMPOSITOR_LIBS) \
318         libshared.la
319 rdp_backend_la_CFLAGS =                         \
320         $(COMPOSITOR_CFLAGS)                    \
321         $(RDP_COMPOSITOR_CFLAGS)                \
322         $(GCC_CFLAGS)
323 rdp_backend_la_SOURCES = src/compositor-rdp.c
324 endif
325
326 if HAVE_LCMS
327 module_LTLIBRARIES += cms-static.la
328 cms_static_la_LDFLAGS = -module -avoid-version
329 cms_static_la_LIBADD = $(COMPOSITOR_LIBS) $(LCMS_LIBS) libshared.la
330 cms_static_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS) $(LCMS_CFLAGS)
331 cms_static_la_SOURCES =                         \
332         src/cms-static.c                                \
333         src/cms-helper.c                                \
334         src/cms-helper.h
335 if ENABLE_COLORD
336 module_LTLIBRARIES += cms-colord.la
337 cms_colord_la_LDFLAGS = -module -avoid-version
338 cms_colord_la_LIBADD = $(COMPOSITOR_LIBS) $(COLORD_LIBS)
339 cms_colord_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS) $(COLORD_CFLAGS)
340 cms_colord_la_SOURCES =                         \
341         src/cms-colord.c                        \
342         src/cms-helper.c                        \
343         src/cms-helper.h
344 endif
345 endif
346
347 noinst_PROGRAMS += spring-tool
348 spring_tool_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
349 spring_tool_LDADD = $(COMPOSITOR_LIBS) -lm
350 spring_tool_SOURCES =                           \
351         src/spring-tool.c                       \
352         src/animation.c                         \
353         shared/matrix.c                         \
354         shared/matrix.h                         \
355         src/compositor.h
356
357 if BUILD_CLIENTS
358
359 bin_PROGRAMS += weston-terminal weston-info
360
361 libexec_PROGRAMS +=                             \
362         weston-desktop-shell                    \
363         weston-screenshooter                    \
364         weston-keyboard                         \
365         weston-simple-im
366
367 demo_clients =                                  \
368         weston-flower                           \
369         weston-image                            \
370         weston-cliptest                         \
371         weston-dnd                              \
372         weston-smoke                            \
373         weston-resizor                          \
374         weston-eventdemo                        \
375         weston-clickdot                         \
376         weston-transformed                      \
377         weston-fullscreen                       \
378         weston-stacking                         \
379         weston-calibrator                       \
380         weston-scaler
381
382 if INSTALL_DEMO_CLIENTS
383 bin_PROGRAMS += $(demo_clients)
384 else
385 noinst_PROGRAMS += $(demo_clients)
386 endif
387
388
389 if BUILD_SIMPLE_CLIENTS
390 demo_clients +=                                 \
391         weston-simple-shm                       \
392         weston-simple-damage                    \
393         weston-simple-touch                     \
394         weston-multi-resource
395
396 weston_simple_shm_SOURCES = clients/simple-shm.c
397 nodist_weston_simple_shm_SOURCES =              \
398         protocol/xdg-shell-protocol.c           \
399         protocol/xdg-shell-client-protocol.h    \
400         protocol/fullscreen-shell-protocol.c    \
401         protocol/fullscreen-shell-client-protocol.h
402 weston_simple_shm_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
403 weston_simple_shm_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la
404
405 weston_simple_damage_SOURCES = clients/simple-damage.c
406 nodist_weston_simple_damage_SOURCES =           \
407         protocol/scaler-protocol.c              \
408         protocol/scaler-client-protocol.h       \
409         protocol/xdg-shell-protocol.c           \
410         protocol/xdg-shell-client-protocol.h    \
411         protocol/fullscreen-shell-protocol.c    \
412         protocol/fullscreen-shell-client-protocol.h
413 weston_simple_damage_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
414 weston_simple_damage_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la
415
416 weston_simple_touch_SOURCES = clients/simple-touch.c
417 weston_simple_touch_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
418 weston_simple_touch_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la
419
420 weston_multi_resource_SOURCES = clients/multi-resource.c
421 weston_multi_resource_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
422 weston_multi_resource_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lm
423 endif
424
425 if BUILD_SIMPLE_EGL_CLIENTS
426 demo_clients += weston-simple-egl
427 weston_simple_egl_SOURCES = clients/simple-egl.c
428 nodist_weston_simple_egl_SOURCES =              \
429         protocol/xdg-shell-protocol.c           \
430         protocol/xdg-shell-client-protocol.h
431 weston_simple_egl_CFLAGS = $(AM_CFLAGS) $(SIMPLE_EGL_CLIENT_CFLAGS)
432 weston_simple_egl_LDADD = $(SIMPLE_EGL_CLIENT_LIBS) -lm
433 endif
434
435 noinst_LTLIBRARIES += libtoytoolkit.la
436
437 libtoytoolkit_la_SOURCES =                              \
438         clients/window.c                                \
439         clients/window.h
440
441 nodist_libtoytoolkit_la_SOURCES =                       \
442         protocol/text-cursor-position-protocol.c        \
443         protocol/text-cursor-position-client-protocol.h \
444         protocol/scaler-protocol.c                      \
445         protocol/scaler-client-protocol.h               \
446         protocol/workspaces-protocol.c                  \
447         protocol/workspaces-client-protocol.h           \
448         protocol/xdg-shell-protocol.c                   \
449         protocol/xdg-shell-client-protocol.h            \
450         protocol/ivi-application-protocol.c             \
451         protocol/ivi-application-client-protocol.h
452
453 BUILT_SOURCES += $(nodist_libtoytoolkit_la_SOURCES)
454
455
456 libtoytoolkit_la_LIBADD =                       \
457         $(CLIENT_LIBS)                          \
458         $(CAIRO_EGL_LIBS)                       \
459         libshared-cairo.la -lrt -lm
460 libtoytoolkit_la_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS) $(CAIRO_EGL_CFLAGS)
461
462 weston_flower_SOURCES = clients/flower.c
463 weston_flower_LDADD = libtoytoolkit.la
464 weston_flower_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
465
466 weston_screenshooter_SOURCES =                          \
467         clients/screenshot.c
468 nodist_weston_screenshooter_SOURCES =                   \
469         protocol/screenshooter-protocol.c               \
470         protocol/screenshooter-client-protocol.h
471 weston_screenshooter_LDADD = $(CLIENT_LIBS) libshared.la
472 weston_screenshooter_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
473
474 weston_terminal_SOURCES = clients/terminal.c
475 weston_terminal_LDADD = libtoytoolkit.la -lutil
476 weston_terminal_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
477
478 weston_image_SOURCES = clients/image.c
479 weston_image_LDADD = libtoytoolkit.la
480 weston_image_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
481
482 weston_cliptest_SOURCES =                               \
483         clients/cliptest.c                              \
484         src/vertex-clipping.c                           \
485         src/vertex-clipping.h
486 weston_cliptest_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
487 weston_cliptest_LDADD = libtoytoolkit.la
488
489 weston_dnd_SOURCES = clients/dnd.c
490 weston_dnd_LDADD = libtoytoolkit.la
491 weston_dnd_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
492
493 weston_smoke_SOURCES = clients/smoke.c
494 weston_smoke_LDADD = libtoytoolkit.la
495 weston_smoke_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
496
497 weston_resizor_SOURCES = clients/resizor.c
498 weston_resizor_LDADD = libtoytoolkit.la
499 weston_resizor_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
500
501 weston_scaler_SOURCES = clients/scaler.c
502 weston_scaler_LDADD = libtoytoolkit.la
503 weston_scaler_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
504
505 if HAVE_CAIRO_GLESV2
506 demo_clients += weston-nested weston-nested-client
507
508 weston_nested_SOURCES = clients/nested.c
509 weston_nested_LDADD = libtoytoolkit.la $(SERVER_LIBS)
510 weston_nested_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
511
512 weston_nested_client_SOURCES = clients/nested-client.c
513 weston_nested_client_LDADD = $(SIMPLE_EGL_CLIENT_LIBS) -lm
514 weston_nested_client_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
515 endif
516
517 weston_eventdemo_SOURCES = clients/eventdemo.c
518 weston_eventdemo_LDADD = libtoytoolkit.la
519 weston_eventdemo_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
520
521 weston_clickdot_SOURCES = clients/clickdot.c
522 weston_clickdot_LDADD = libtoytoolkit.la
523 weston_clickdot_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
524
525 weston_transformed_SOURCES = clients/transformed.c
526 weston_transformed_LDADD = libtoytoolkit.la
527 weston_transformed_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
528
529 weston_fullscreen_SOURCES = clients/fullscreen.c
530 nodist_weston_fullscreen_SOURCES =                      \
531         protocol/fullscreen-shell-protocol.c            \
532         protocol/fullscreen-shell-client-protocol.h
533 weston_fullscreen_LDADD = libtoytoolkit.la
534 weston_fullscreen_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
535
536 weston_stacking_SOURCES = clients/stacking.c
537 weston_stacking_LDADD = libtoytoolkit.la
538 weston_stacking_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
539
540 weston_calibrator_SOURCES = clients/calibrator.c        \
541         shared/matrix.c                                 \
542         shared/matrix.h
543 weston_calibrator_LDADD = libtoytoolkit.la
544 weston_calibrator_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
545
546 if BUILD_SUBSURFACES_CLIENT
547 demo_clients += weston-subsurfaces
548 weston_subsurfaces_SOURCES = clients/subsurfaces.c
549 weston_subsurfaces_CFLAGS =                     \
550         $(AM_CFLAGS)                            \
551         $(SIMPLE_EGL_CLIENT_CFLAGS)             \
552         $(CLIENT_CFLAGS)
553 weston_subsurfaces_LDADD = libtoytoolkit.la $(SIMPLE_EGL_CLIENT_LIBS) -lm
554 endif
555
556 if HAVE_PANGO
557 demo_clients += weston-editor
558 weston_editor_SOURCES = clients/editor.c
559 nodist_weston_editor_SOURCES =                  \
560         protocol/text-protocol.c                \
561         protocol/text-client-protocol.h
562 weston_editor_LDADD = libtoytoolkit.la $(PANGO_LIBS)
563 weston_editor_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS) $(PANGO_CFLAGS)
564 endif
565
566 weston_keyboard_SOURCES = clients/keyboard.c
567 nodist_weston_keyboard_SOURCES =                        \
568         protocol/desktop-shell-client-protocol.h        \
569         protocol/desktop-shell-protocol.c               \
570         protocol/input-method-protocol.c                \
571         protocol/input-method-client-protocol.h
572 weston_keyboard_LDADD = libtoytoolkit.la
573 weston_keyboard_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
574
575 weston_simple_im_SOURCES = clients/weston-simple-im.c
576 nodist_weston_simple_im_SOURCES =               \
577         protocol/input-method-protocol.c        \
578         protocol/input-method-client-protocol.h
579 weston_simple_im_LDADD = $(CLIENT_LIBS)
580 weston_simple_im_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
581
582 weston_info_SOURCES = clients/weston-info.c
583 weston_info_LDADD = $(WESTON_INFO_LIBS) libshared.la
584 weston_info_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
585
586 weston_desktop_shell_SOURCES = clients/desktop-shell.c
587 nodist_weston_desktop_shell_SOURCES =                   \
588         protocol/desktop-shell-client-protocol.h        \
589         protocol/desktop-shell-protocol.c
590 weston_desktop_shell_LDADD = libtoytoolkit.la
591 weston_desktop_shell_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
592
593 if BUILD_FULL_GL_CLIENTS
594 demo_clients += weston-gears
595 weston_gears_SOURCES = clients/gears.c
596 weston_gears_LDADD = libtoytoolkit.la
597 weston_gears_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
598
599 if HAVE_GLU
600 libexec_PROGRAMS += weston-screensaver
601 weston_screensaver_SOURCES =                            \
602         clients/wscreensaver.c                          \
603         clients/wscreensaver.h                          \
604         clients/wscreensaver-glue.c                     \
605         clients/wscreensaver-glue.h                     \
606         clients/glmatrix.c                              \
607         clients/matrix3.xpm
608 nodist_weston_screensaver_SOURCES =                     \
609         protocol/desktop-shell-client-protocol.h        \
610         protocol/desktop-shell-protocol.c
611
612 weston_screensaver_LDADD = libtoytoolkit.la $(GLU_LIBS)
613 weston_screensaver_CFLAGS = $(AM_CFLAGS) $(GLU_CFLAGS) $(CLIENT_CFLAGS)
614
615 endif
616
617 endif
618
619 endif
620
621 BUILT_SOURCES +=                                        \
622         protocol/screenshooter-protocol.c               \
623         protocol/screenshooter-client-protocol.h        \
624         protocol/text-cursor-position-client-protocol.h \
625         protocol/text-cursor-position-protocol.c        \
626         protocol/text-protocol.c                        \
627         protocol/text-client-protocol.h                 \
628         protocol/input-method-protocol.c                \
629         protocol/input-method-client-protocol.h         \
630         protocol/desktop-shell-client-protocol.h        \
631         protocol/desktop-shell-protocol.c               \
632         protocol/scaler-client-protocol.h               \
633         protocol/scaler-protocol.c                      \
634         protocol/workspaces-client-protocol.h           \
635         protocol/workspaces-protocol.c                  \
636         protocol/fullscreen-shell-protocol.c            \
637         protocol/fullscreen-shell-client-protocol.h     \
638         protocol/xdg-shell-protocol.c                   \
639         protocol/xdg-shell-client-protocol.h
640
641
642 westondatadir = $(datadir)/weston
643 dist_westondata_DATA =                          \
644         data/wayland.svg                        \
645         data/wayland.png                        \
646         data/pattern.png                        \
647         data/terminal.png                       \
648         data/border.png                         \
649         data/icon_window.png                    \
650         data/sign_close.png                     \
651         data/sign_maximize.png                  \
652         data/sign_minimize.png
653
654
655 if BUILD_WCAP_TOOLS
656 bin_PROGRAMS += wcap-decode
657
658 wcap_decode_SOURCES =                           \
659         wcap/main.c                             \
660         wcap/wcap-decode.c                      \
661         wcap/wcap-decode.h
662
663 wcap_decode_CFLAGS = $(GCC_CFLAGS) $(WCAP_CFLAGS)
664 wcap_decode_LDADD = $(WCAP_LIBS)
665 endif
666
667
668 if ENABLE_DESKTOP_SHELL
669
670 module_LTLIBRARIES += desktop-shell.la
671
672 desktop_shell_la_CPPFLAGS =                     \
673         -I$(top_builddir)/protocol              \
674         -I$(top_srcdir)/shared                  \
675         -I$(top_srcdir)/src                     \
676         -I$(top_builddir)/src                   \
677         -I$(top_builddir)/desktop-shell         \
678         -DDATADIR='"$(datadir)"'                \
679         -DMODULEDIR='"$(moduledir)"'            \
680         -DLIBEXECDIR='"$(libexecdir)"'          \
681         -DIN_WESTON
682
683 desktop_shell_la_LDFLAGS = -module -avoid-version
684 desktop_shell_la_LIBADD = $(COMPOSITOR_LIBS) libshared.la
685 desktop_shell_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
686 desktop_shell_la_SOURCES =                              \
687         desktop-shell/shell.h                           \
688         desktop-shell/shell.c                           \
689         desktop-shell/exposay.c                         \
690         desktop-shell/input-panel.c
691 nodist_desktop_shell_la_SOURCES =                       \
692         protocol/desktop-shell-protocol.c               \
693         protocol/desktop-shell-server-protocol.h        \
694         protocol/xdg-shell-protocol.c                   \
695         protocol/xdg-shell-server-protocol.h
696
697 BUILT_SOURCES += $(nodist_desktop_shell_la_SOURCES)
698 endif
699
700 if ENABLE_FULLSCREEN_SHELL
701
702 module_LTLIBRARIES += fullscreen-shell.la
703
704 fullscreen_shell_la_CPPFLAGS =                  \
705         -I$(top_builddir)/protocol              \
706         -I$(top_srcdir)/shared                  \
707         -I$(top_srcdir)/src                     \
708         -I$(top_builddir)/src                   \
709         -DIN_WESTON
710
711 fullscreen_shell_la_LDFLAGS = -module -avoid-version
712 fullscreen_shell_la_LIBADD = $(COMPOSITOR_LIBS)
713 fullscreen_shell_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
714 fullscreen_shell_la_SOURCES =                   \
715         fullscreen-shell/fullscreen-shell.c
716 nodist_fullscreen_shell_la_SOURCES =                    \
717         protocol/fullscreen-shell-protocol.c            \
718         protocol/fullscreen-shell-server-protocol.h
719
720 BUILT_SOURCES += $(nodist_fullscreen_shell_la_SOURCES)
721 endif
722
723 if ENABLE_IVI_SHELL
724
725 module_LTLIBRARIES +=                           \
726         $(ivi_layout)
727
728 ivi_layout = ivi-layout.la
729 ivi_layout_la_LDFLAGS = -module -avoid-version
730 ivi_layout_la_LIBADD = $(COMPOSITOR_LIBS) libshared.la
731 ivi_layout_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
732 ivi_layout_la_SOURCES =                         \
733         ivi-shell/ivi-layout-export.h           \
734         ivi-shell/ivi-layout-private.h          \
735         ivi-shell/ivi-layout.c                  \
736         ivi-shell/ivi-layout-transition.c
737
738 endif
739
740
741 if ENABLE_SCREEN_SHARING
742
743 module_LTLIBRARIES += screen-share.la
744
745 screen_share_la_CPPFLAGS = $(AM_CPPFLAGS) -DBINDIR='"$(bindir)"'
746 screen_share_la_LDFLAGS = -module -avoid-version
747 screen_share_la_LIBADD =                        \
748         $(COMPOSITOR_LIBS)                      \
749         $(SCREEN_SHARE_LIBS)                    \
750         libshared-cairo.la
751 screen_share_la_CFLAGS =                        \
752         $(COMPOSITOR_CFLAGS)                    \
753         $(SCREEN_SHARE_CFLAGS)                  \
754         $(GCC_CFLAGS)
755 screen_share_la_SOURCES =                       \
756         src/screen-share.c
757 nodist_screen_share_la_SOURCES =                        \
758         protocol/fullscreen-shell-protocol.c            \
759         protocol/fullscreen-shell-client-protocol.h
760
761 endif
762
763 if ENABLE_XWAYLAND
764
765 module_LTLIBRARIES += xwayland.la
766
767 xwayland_la_CPPFLAGS =                          \
768         -I$(top_builddir)/protocol              \
769         -I$(top_srcdir)/shared                  \
770         -I$(top_srcdir)/src                     \
771         -I$(top_builddir)/src                   \
772         -I$(top_builddir)/xwayland              \
773         -DDATADIR='"$(datadir)"'                \
774         -DMODULEDIR='"$(moduledir)"'            \
775         -DLIBEXECDIR='"$(libexecdir)"'          \
776         -DXSERVER_PATH='"@XSERVER_PATH@"'
777
778 xwayland_la_LDFLAGS = -module -avoid-version
779 xwayland_la_LIBADD =                    \
780         $(XWAYLAND_LIBS)                \
781         $(top_builddir)/libshared-cairo.la
782 xwayland_la_CFLAGS =                            \
783         $(GCC_CFLAGS)                           \
784         $(COMPOSITOR_CFLAGS)                    \
785         $(PIXMAN_CFLAGS)                        \
786         $(CAIRO_CFLAGS)
787 xwayland_la_SOURCES =                           \
788         xwayland/xwayland.h                     \
789         xwayland/window-manager.c               \
790         xwayland/selection.c                    \
791         xwayland/dnd.c                          \
792         xwayland/launcher.c                     \
793         xwayland/hash.c                         \
794         xwayland/hash.h
795 endif
796
797
798 #
799 # Shared utilities
800 #
801
802 noinst_LTLIBRARIES += libshared.la libshared-cairo.la
803
804 libshared_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
805
806 libshared_la_SOURCES =                          \
807         shared/config-parser.c                  \
808         shared/option-parser.c                  \
809         shared/config-parser.h                  \
810         shared/str-util.c                       \
811         shared/str-util.h                       \
812         shared/os-compatibility.c               \
813         shared/os-compatibility.h
814
815 libshared_cairo_la_CFLAGS =                     \
816         -DDATADIR='"$(datadir)"'                \
817         $(GCC_CFLAGS)                           \
818         $(COMPOSITOR_CFLAGS)                    \
819         $(PIXMAN_CFLAGS)                        \
820         $(CAIRO_CFLAGS)                         \
821         $(PNG_CFLAGS)                           \
822         $(WEBP_CFLAGS)
823
824 libshared_cairo_la_LIBADD =                     \
825         $(PIXMAN_LIBS)                          \
826         $(CAIRO_LIBS)                           \
827         $(PNG_LIBS)                             \
828         $(WEBP_LIBS)                            \
829         $(JPEG_LIBS)
830
831 libshared_cairo_la_SOURCES =                    \
832         $(libshared_la_SOURCES)                 \
833         shared/image-loader.c                   \
834         shared/image-loader.h                   \
835         shared/cairo-util.c                     \
836         shared/frame.c                          \
837         shared/cairo-util.h
838
839
840 #
841 # tests subdirectory
842 #
843
844 TESTS = $(shared_tests) $(module_tests) $(weston_tests)
845
846 shared_tests =                                  \
847         config-parser.test                      \
848         strutil.test                            \
849         vertex-clip.test
850
851 module_tests =                                  \
852         surface-test.la                         \
853         surface-global-test.la
854
855 weston_tests =                                  \
856         bad_buffer.weston                       \
857         keyboard.weston                         \
858         event.weston                            \
859         button.weston                           \
860         text.weston                             \
861         subsurface.weston
862
863
864 AM_TESTS_ENVIRONMENT = \
865         abs_builddir='$(abs_builddir)'; export abs_builddir;
866
867 TEST_EXTENSIONS = .la .weston
868 LA_LOG_COMPILER = $(srcdir)/tests/weston-tests-env
869 WESTON_LOG_COMPILER = $(srcdir)/tests/weston-tests-env
870
871 clean-local:
872         -rm -rf logs
873
874 # To remove when automake 1.11 support is dropped
875 export abs_builddir
876
877 noinst_LTLIBRARIES +=                   \
878         weston-test.la                  \
879         $(module_tests)                 \
880         libtest-runner.la               \
881         libtest-client.la
882
883 noinst_PROGRAMS +=                      \
884         $(setbacklight)                 \
885         $(shared_tests)                 \
886         $(weston_tests)                 \
887         matrix-test
888
889 test_module_ldflags = \
890         -module -avoid-version -rpath $(libdir) $(COMPOSITOR_LIBS)
891
892 surface_global_test_la_SOURCES = tests/surface-global-test.c
893 surface_global_test_la_LDFLAGS = $(test_module_ldflags)
894 surface_global_test_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
895
896 surface_test_la_SOURCES = tests/surface-test.c
897 surface_test_la_LDFLAGS = $(test_module_ldflags)
898 surface_test_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
899
900 weston_test_la_LIBADD = $(COMPOSITOR_LIBS) libshared.la
901 weston_test_la_LDFLAGS = $(test_module_ldflags)
902 weston_test_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
903 weston_test_la_SOURCES = tests/weston-test.c
904 nodist_weston_test_la_SOURCES =                 \
905         protocol/wayland-test-protocol.c        \
906         protocol/wayland-test-server-protocol.h
907
908 if ENABLE_EGL
909 weston_test_la_CFLAGS += $(EGL_TESTS_CFLAGS)
910 weston_test_la_LDFLAGS += $(EGL_TESTS_LIBS)
911 endif
912
913 libtest_runner_la_SOURCES =                     \
914         tests/weston-test-runner.c              \
915         tests/weston-test-runner.h
916 libtest_runner_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
917
918 config_parser_test_SOURCES = tests/config-parser-test.c
919 config_parser_test_LDADD = libshared.la libtest-runner.la $(COMPOSITOR_LIBS)
920
921 strutil_test_SOURCES = tests/strutil-test.c
922 strutil_test_LDADD = libshared.la libtest-runner.la $(COMPOSITOR_LIBS)
923
924 vertex_clip_test_SOURCES =                      \
925         tests/vertex-clip-test.c                \
926         src/vertex-clipping.c                   \
927         src/vertex-clipping.h
928 vertex_clip_test_LDADD = libtest-runner.la -lm -lrt
929
930 libtest_client_la_SOURCES =                     \
931         tests/weston-test-client-helper.c       \
932         tests/weston-test-client-helper.h
933 nodist_libtest_client_la_SOURCES =              \
934         protocol/wayland-test-protocol.c        \
935         protocol/wayland-test-client-protocol.h
936 libtest_client_la_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
937 libtest_client_la_LIBADD = $(TEST_CLIENT_LIBS) libshared.la libtest-runner.la
938
939 bad_buffer_weston_SOURCES = tests/bad-buffer-test.c
940 bad_buffer_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
941 bad_buffer_weston_LDADD = libtest-client.la
942
943 keyboard_weston_SOURCES = tests/keyboard-test.c
944 keyboard_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
945 keyboard_weston_LDADD = libtest-client.la
946
947 event_weston_SOURCES = tests/event-test.c
948 event_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
949 event_weston_LDADD = libtest-client.la
950
951 button_weston_SOURCES = tests/button-test.c
952 button_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
953 button_weston_LDADD = libtest-client.la
954
955 text_weston_SOURCES = tests/text-test.c
956 nodist_text_weston_SOURCES =                    \
957         protocol/text-protocol.c                \
958         protocol/text-client-protocol.h
959 text_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
960 text_weston_LDADD = libtest-client.la
961
962 subsurface_weston_SOURCES = tests/subsurface-test.c
963 subsurface_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
964 subsurface_weston_LDADD = libtest-client.la
965
966 if ENABLE_EGL
967 weston_tests += buffer-count.weston
968 buffer_count_weston_SOURCES = tests/buffer-count-test.c
969 buffer_count_weston_CFLAGS = $(GCC_CFLAGS) $(EGL_TESTS_CFLAGS)
970 buffer_count_weston_LDADD = libtest-client.la $(EGL_TESTS_LIBS)
971 endif
972
973 if ENABLE_XWAYLAND_TEST
974 weston_tests += xwayland-test.weston
975 xwayland_test_weston_SOURCES = tests/xwayland-test.c
976 xwayland_test_weston_CFLAGS = $(GCC_CFLAGS) $(XWAYLAND_TEST_CFLAGS)
977 xwayland_test_weston_LDADD = libtest-client.la $(XWAYLAND_TEST_LIBS)
978 endif
979
980 matrix_test_SOURCES =                           \
981         tests/matrix-test.c                     \
982         shared/matrix.c                         \
983         shared/matrix.h
984 matrix_test_CPPFLAGS = -DUNIT_TEST
985 matrix_test_LDADD = -lm -lrt
986
987 if BUILD_SETBACKLIGHT
988 noinst_PROGRAMS += setbacklight
989 setbacklight_SOURCES =                  \
990         tests/setbacklight.c            \
991         shared/str-util.c               \
992         shared/str-util.h               \
993         src/libbacklight.c              \
994         src/libbacklight.h
995 setbacklight_CFLAGS = $(AM_CFLAGS) $(SETBACKLIGHT_CFLAGS)
996 setbacklight_LDADD = $(SETBACKLIGHT_LIBS)
997 endif
998
999 EXTRA_DIST += tests/weston-tests-env
1000
1001 BUILT_SOURCES +=                                \
1002         protocol/wayland-test-protocol.c        \
1003         protocol/wayland-test-server-protocol.h \
1004         protocol/wayland-test-client-protocol.h \
1005         protocol/text-protocol.c                \
1006         protocol/text-client-protocol.h
1007
1008 EXTRA_DIST +=                                   \
1009         protocol/desktop-shell.xml              \
1010         protocol/screenshooter.xml              \
1011         protocol/text.xml                       \
1012         protocol/input-method.xml               \
1013         protocol/workspaces.xml                 \
1014         protocol/text-cursor-position.xml       \
1015         protocol/wayland-test.xml               \
1016         protocol/xdg-shell.xml                  \
1017         protocol/fullscreen-shell.xml           \
1018         protocol/scaler.xml                     \
1019         protocol/ivi-application.xml
1020
1021 man_MANS = weston.1 weston.ini.5
1022
1023 if ENABLE_DRM_COMPOSITOR
1024 man_MANS += weston-drm.7
1025 endif
1026
1027 MAN_SUBSTS =                                                            \
1028         -e 's|__weston_native_backend__|$(WESTON_NATIVE_BACKEND)|g'     \
1029         -e 's|__weston_modules_dir__|$(pkglibdir)|g'                    \
1030         -e 's|__weston_shell_client__|$(WESTON_SHELL_CLIENT)|g'         \
1031         -e 's|__version__|$(PACKAGE_VERSION)|g'
1032
1033 SUFFIXES = .1 .5 .7 .man
1034
1035 %.1 %.5 %.7 : man/%.man
1036         $(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
1037
1038 EXTRA_DIST +=                                   \
1039         man/weston.man                          \
1040         man/weston-drm.man                      \
1041         man/weston.ini.man
1042
1043 CLEANFILES += $(man_MANS)
1044
1045
1046 protocol/%-protocol.c : $(top_srcdir)/protocol/%.xml
1047         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) code < $< > $@
1048
1049 protocol/%-server-protocol.h : $(top_srcdir)/protocol/%.xml
1050         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) server-header < $< > $@
1051
1052 protocol/%-client-protocol.h : $(top_srcdir)/protocol/%.xml
1053         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) client-header < $< > $@