packaging: disable ivi-shell for wearable profile
[platform/upstream/weston.git] / Makefile.am
index 343adc6..b08932d 100644 (file)
@@ -1,3 +1,5 @@
+ACLOCAL_AMFLAGS = -I m4
+
 bin_PROGRAMS =
 noinst_PROGRAMS =
 libexec_PROGRAMS =
@@ -6,9 +8,9 @@ module_LTLIBRARIES =
 noinst_LTLIBRARIES =
 BUILT_SOURCES =
 
-DISTCHECK_CONFIGURE_FLAGS = --disable-setuid-install
+AM_DISTCHECK_CONFIGURE_FLAGS = --disable-setuid-install
 
-EXTRA_DIST = weston.ini.in
+EXTRA_DIST = weston.ini.in ivi-shell/weston.ini.in
 
 weston.ini : $(srcdir)/weston.ini.in
        $(AM_V_GEN)$(SED) \
@@ -17,7 +19,25 @@ weston.ini : $(srcdir)/weston.ini.in
                -e 's|@libexecdir[@]|$(libexecdir)|g' \
                $< > $@
 
-all-local : weston.ini
+ivi-shell/weston.ini : $(srcdir)/ivi-shell/weston.ini.in
+       $(AM_V_GEN)$(SED) \
+               -e 's|@bindir[@]|$(bindir)|g' \
+               -e 's|@abs_top_builddir[@]|$(abs_top_builddir)|g' \
+               -e 's|@abs_top_srcdir[@]|$(abs_top_srcdir)|g' \
+               -e 's|@libexecdir[@]|$(libexecdir)|g' \
+               -e 's|@plugin_prefix[@]||g' \
+               $< > $@
+
+tests/weston-ivi.ini : $(srcdir)/ivi-shell/weston.ini.in
+       $(AM_V_GEN)$(SED) \
+               -e 's|@bindir[@]|$(bindir)|g' \
+               -e 's|@abs_top_builddir[@]|$(abs_top_builddir)|g' \
+               -e 's|@abs_top_srcdir[@]|$(abs_top_srcdir)|g' \
+               -e 's|@libexecdir[@]|$(libexecdir)|g' \
+               -e 's|@plugin_prefix[@]|$(abs_top_builddir)/.libs/|g' \
+               $< > $@
+
+all-local : weston.ini ivi-shell/weston.ini
 
 AM_CFLAGS = $(GCC_CFLAGS)
 
@@ -33,7 +53,11 @@ AM_CPPFLAGS =                                        \
        -DLIBEXECDIR='"$(libexecdir)"'          \
        -DBINDIR='"$(bindir)"'
 
-CLEANFILES = weston.ini $(BUILT_SOURCES)
+CLEANFILES = weston.ini                                \
+       ivi-shell/weston.ini                    \
+       tests/weston-ivi.ini                    \
+       internal-screenshot-00.png              \
+       $(BUILT_SOURCES)
 
 bin_PROGRAMS += weston
 
@@ -59,9 +83,13 @@ weston_SOURCES =                                     \
        src/noop-renderer.c                             \
        src/pixman-renderer.c                           \
        src/pixman-renderer.h                           \
+       src/timeline.c                                  \
+       src/timeline.h                                  \
+       src/timeline-object.h                           \
        shared/matrix.c                                 \
        shared/matrix.h                                 \
        shared/zalloc.h                                 \
+       shared/platform.h                               \
        src/weston-egl-ext.h
 
 nodist_weston_SOURCES =                                        \
@@ -75,6 +103,8 @@ nodist_weston_SOURCES =                                      \
        protocol/input-method-server-protocol.h         \
        protocol/workspaces-protocol.c                  \
        protocol/workspaces-server-protocol.h           \
+       protocol/presentation_timing-protocol.c         \
+       protocol/presentation_timing-server-protocol.h  \
        protocol/scaler-protocol.c                      \
        protocol/scaler-server-protocol.h
 
@@ -132,8 +162,15 @@ weston_launch_LDADD = $(PAM_LIBS) $(SYSTEMD_LOGIN_LIBS) $(LIBDRM_LIBS)
 
 if ENABLE_SETUID_INSTALL
 install-exec-hook:
-       chown root $(DESTDIR)$(bindir)/weston-launch
-       chmod u+s $(DESTDIR)$(bindir)/weston-launch
+       can_suid_files=no; \
+       chown root $(DESTDIR)$(bindir)/weston-launch \
+               && chmod u+s $(DESTDIR)$(bindir)/weston-launch \
+               && can_suid_files=yes;\
+       if test $$can_suid_files = no; then \
+               echo 'Error: unable to unable to change ownership/setuid on weston-launch.'; \
+               echo 'To skip this step, re-run ./configure using --disable-setuid-install'; \
+               false; \
+       fi
 endif
 
 endif # BUILD_WESTON_LAUNCH
@@ -141,13 +178,19 @@ endif # BUILD_WESTON_LAUNCH
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = src/weston.pc
 
+wayland_sessiondir = $(datadir)/wayland-sessions
+wayland_session_DATA = src/weston.desktop
+dist_wayland_session_DATA = $(wayland_session_DATA)
+
 westonincludedir = $(includedir)/weston
 westoninclude_HEADERS =                                \
        src/version.h                           \
        src/compositor.h                        \
+       src/timeline-object.h                   \
        shared/matrix.h                         \
        shared/config-parser.h                  \
-       shared/zalloc.h
+       shared/zalloc.h                         \
+       shared/platform.h
 
 if ENABLE_EGL
 module_LTLIBRARIES += gl-renderer.la
@@ -179,25 +222,12 @@ x11_backend_la_CFLAGS =                           \
 x11_backend_la_SOURCES = src/compositor-x11.c
 endif
 
-INPUT_BACKEND_SOURCES = src/udev-input.h
-
-if ENABLE_LIBINPUT_BACKEND
 INPUT_BACKEND_LIBS = $(LIBINPUT_BACKEND_LIBS)
-INPUT_BACKEND_SOURCES +=                       \
+INPUT_BACKEND_SOURCES =                                \
        src/libinput-seat.c                     \
        src/libinput-seat.h                     \
        src/libinput-device.c                   \
        src/libinput-device.h
-else
-INPUT_BACKEND_SOURCES +=                       \
-       src/filter.c                            \
-       src/filter.h                            \
-       src/udev-seat.c                         \
-       src/udev-seat.h                         \
-       src/evdev.c                             \
-       src/evdev.h                             \
-       src/evdev-touchpad.c
-endif
 
 if ENABLE_DRM_COMPOSITOR
 module_LTLIBRARIES += drm-backend.la
@@ -361,6 +391,11 @@ libexec_PROGRAMS +=                                \
        weston-keyboard                         \
        weston-simple-im
 
+if ENABLE_IVI_SHELL
+libexec_PROGRAMS +=                            \
+       weston-ivi-shell-user-interface
+endif
+
 demo_clients =                                 \
        weston-flower                           \
        weston-image                            \
@@ -386,7 +421,9 @@ endif
 if BUILD_SIMPLE_CLIENTS
 demo_clients +=                                        \
        weston-simple-shm                       \
+       weston-simple-damage                    \
        weston-simple-touch                     \
+       weston-presentation-shm                 \
        weston-multi-resource
 
 weston_simple_shm_SOURCES = clients/simple-shm.c
@@ -394,17 +431,37 @@ nodist_weston_simple_shm_SOURCES =                \
        protocol/xdg-shell-protocol.c           \
        protocol/xdg-shell-client-protocol.h    \
        protocol/fullscreen-shell-protocol.c    \
-       protocol/fullscreen-shell-client-protocol.h
+       protocol/fullscreen-shell-client-protocol.h     \
+       protocol/ivi-application-protocol.c             \
+       protocol/ivi-application-client-protocol.h
 weston_simple_shm_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
 weston_simple_shm_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la
 
+weston_simple_damage_SOURCES = clients/simple-damage.c
+nodist_weston_simple_damage_SOURCES =          \
+       protocol/scaler-protocol.c              \
+       protocol/scaler-client-protocol.h       \
+       protocol/xdg-shell-protocol.c           \
+       protocol/xdg-shell-client-protocol.h    \
+       protocol/fullscreen-shell-protocol.c    \
+       protocol/fullscreen-shell-client-protocol.h
+weston_simple_damage_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
+weston_simple_damage_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la
+
 weston_simple_touch_SOURCES = clients/simple-touch.c
 weston_simple_touch_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
 weston_simple_touch_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la
 
+weston_presentation_shm_SOURCES = clients/presentation-shm.c
+nodist_weston_presentation_shm_SOURCES =               \
+       protocol/presentation_timing-protocol.c         \
+       protocol/presentation_timing-client-protocol.h
+weston_presentation_shm_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
+weston_presentation_shm_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lm
+
 weston_multi_resource_SOURCES = clients/multi-resource.c
 weston_multi_resource_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
-weston_multi_resource_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lm
+weston_multi_resource_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lrt -lm
 endif
 
 if BUILD_SIMPLE_EGL_CLIENTS
@@ -412,7 +469,9 @@ demo_clients += weston-simple-egl
 weston_simple_egl_SOURCES = clients/simple-egl.c
 nodist_weston_simple_egl_SOURCES =             \
        protocol/xdg-shell-protocol.c           \
-       protocol/xdg-shell-client-protocol.h
+       protocol/xdg-shell-client-protocol.h            \
+       protocol/ivi-application-protocol.c             \
+       protocol/ivi-application-client-protocol.h
 weston_simple_egl_CFLAGS = $(AM_CFLAGS) $(SIMPLE_EGL_CLIENT_CFLAGS)
 weston_simple_egl_LDADD = $(SIMPLE_EGL_CLIENT_LIBS) -lm
 endif
@@ -430,8 +489,12 @@ nodist_libtoytoolkit_la_SOURCES =                  \
        protocol/scaler-client-protocol.h               \
        protocol/workspaces-protocol.c                  \
        protocol/workspaces-client-protocol.h           \
+       protocol/presentation_timing-protocol.c         \
+       protocol/presentation_timing-client-protocol.h  \
        protocol/xdg-shell-protocol.c                   \
-       protocol/xdg-shell-client-protocol.h
+       protocol/xdg-shell-client-protocol.h            \
+       protocol/ivi-application-protocol.c             \
+       protocol/ivi-application-client-protocol.h
 
 BUILT_SOURCES += $(nodist_libtoytoolkit_la_SOURCES)
 
@@ -462,7 +525,10 @@ weston_image_SOURCES = clients/image.c
 weston_image_LDADD = libtoytoolkit.la
 weston_image_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 
-weston_cliptest_SOURCES = clients/cliptest.c
+weston_cliptest_SOURCES =                              \
+       clients/cliptest.c                              \
+       src/vertex-clipping.c                           \
+       src/vertex-clipping.h
 weston_cliptest_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 weston_cliptest_LDADD = libtoytoolkit.la
 
@@ -560,6 +626,9 @@ weston_simple_im_LDADD = $(CLIENT_LIBS)
 weston_simple_im_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 
 weston_info_SOURCES = clients/weston-info.c
+nodist_weston_info_SOURCES =                           \
+       protocol/presentation_timing-protocol.c         \
+       protocol/presentation_timing-client-protocol.h
 weston_info_LDADD = $(WESTON_INFO_LIBS) libshared.la
 weston_info_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 
@@ -570,6 +639,17 @@ nodist_weston_desktop_shell_SOURCES =                      \
 weston_desktop_shell_LDADD = libtoytoolkit.la
 weston_desktop_shell_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 
+if ENABLE_IVI_SHELL
+weston_ivi_shell_user_interface_SOURCES = clients/ivi-shell-user-interface.c
+nodist_weston_ivi_shell_user_interface_SOURCES =                       \
+       protocol/ivi-hmi-controller-client-protocol.h                   \
+       protocol/ivi-hmi-controller-protocol.c                          \
+       protocol/ivi-application-client-protocol.h                      \
+        protocol/ivi-application-protocol.c
+weston_ivi_shell_user_interface_LDADD = libtoytoolkit.la
+weston_ivi_shell_user_interface_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
+endif
+
 if BUILD_FULL_GL_CLIENTS
 demo_clients += weston-gears
 weston_gears_SOURCES = clients/gears.c
@@ -616,8 +696,11 @@ BUILT_SOURCES +=                                   \
        protocol/fullscreen-shell-protocol.c            \
        protocol/fullscreen-shell-client-protocol.h     \
        protocol/xdg-shell-protocol.c                   \
-       protocol/xdg-shell-client-protocol.h
-
+       protocol/xdg-shell-client-protocol.h            \
+       protocol/ivi-hmi-controller-protocol.c          \
+       protocol/ivi-hmi-controller-client-protocol.h   \
+       protocol/ivi-application-protocol.c             \
+       protocol/ivi-application-client-protocol.h
 
 westondatadir = $(datadir)/weston
 dist_westondata_DATA =                         \
@@ -631,6 +714,22 @@ dist_westondata_DATA =                             \
        data/sign_maximize.png                  \
        data/sign_minimize.png
 
+if ENABLE_IVI_SHELL
+dist_westondata_DATA +=                                \
+       data/background.png                     \
+       data/tiling.png                         \
+       data/fullscreen.png                     \
+       data/panel.png                          \
+       data/random.png                         \
+       data/sidebyside.png                     \
+       data/home.png                           \
+       data/icon_ivi_clickdot.png              \
+       data/icon_ivi_flower.png                \
+       data/icon_ivi_simple-egl.png            \
+       data/icon_ivi_simple-shm.png            \
+       data/icon_ivi_smoke.png
+endif
+
 
 if BUILD_WCAP_TOOLS
 bin_PROGRAMS += wcap-decode
@@ -700,6 +799,46 @@ nodist_fullscreen_shell_la_SOURCES =                       \
 BUILT_SOURCES += $(nodist_fullscreen_shell_la_SOURCES)
 endif
 
+if ENABLE_IVI_SHELL
+
+module_LTLIBRARIES +=                          \
+       $(ivi_shell)                            \
+       $(hmi_controller)
+
+ivi_shell = ivi-shell.la
+ivi_shell_la_LDFLAGS = -module -avoid-version
+ivi_shell_la_LIBADD = $(COMPOSITOR_LIBS) libshared.la
+ivi_shell_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
+ivi_shell_la_SOURCES =                         \
+       ivi-shell/ivi-layout-export.h           \
+       ivi-shell/ivi-layout-private.h          \
+       ivi-shell/ivi-layout.c                  \
+       ivi-shell/ivi-layout-transition.c       \
+       ivi-shell/ivi-shell.h                   \
+       ivi-shell/ivi-shell.c                   \
+       ivi-shell/input-panel-ivi.c
+nodist_ivi_shell_la_SOURCES =                  \
+       protocol/ivi-application-protocol.c             \
+       protocol/ivi-application-server-protocol.h
+
+BUILT_SOURCES += $(nodist_ivi_shell_la_SOURCES)
+
+hmi_controller = hmi-controller.la
+hmi_controller_la_LDFLAGS = -module -avoid-version
+hmi_controller_la_LIBADD = $(COMPOSITOR_LIBS) libshared.la
+hmi_controller_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
+hmi_controller_la_SOURCES =                            \
+       ivi-shell/ivi-layout-export.h                   \
+       ivi-shell/hmi-controller.c
+nodist_hmi_controller_la_SOURCES =                     \
+       protocol/ivi-hmi-controller-protocol.c          \
+       protocol/ivi-hmi-controller-server-protocol.h
+
+BUILT_SOURCES += $(nodist_hmi_controller_la_SOURCES)
+
+endif
+
+
 if ENABLE_SCREEN_SHARING
 
 module_LTLIBRARIES += screen-share.la
@@ -769,6 +908,10 @@ libshared_la_SOURCES =                             \
        shared/config-parser.c                  \
        shared/option-parser.c                  \
        shared/config-parser.h                  \
+       shared/file-util.c                      \
+       shared/file-util.h                      \
+       shared/str-util.c                       \
+       shared/str-util.h                       \
        shared/os-compatibility.c               \
        shared/os-compatibility.h
 
@@ -801,10 +944,14 @@ libshared_cairo_la_SOURCES =                      \
 # tests subdirectory
 #
 
-TESTS = $(shared_tests) $(module_tests) $(weston_tests)
+TESTS = $(internal_tests) $(shared_tests) $(module_tests) $(weston_tests) $(ivi_tests)
+
+internal_tests =                               \
+       internal-screenshot.weston
 
 shared_tests =                                 \
        config-parser.test                      \
+       strutil.test                            \
        vertex-clip.test
 
 module_tests =                                 \
@@ -817,11 +964,18 @@ weston_tests =                                    \
        event.weston                            \
        button.weston                           \
        text.weston                             \
-       subsurface.weston
+       presentation.weston                     \
+       roles.weston                            \
+       subsurface.weston                       \
+       devices.weston
+
+ivi_tests =
 
+$(ivi_tests) : $(builddir)/tests/weston-ivi.ini
 
 AM_TESTS_ENVIRONMENT = \
-       abs_builddir='$(abs_builddir)'; export abs_builddir;
+       abs_builddir='$(abs_builddir)'; export abs_builddir; \
+       abs_top_srcdir='$(abs_top_srcdir)'; export abs_top_srcdir;
 
 TEST_EXTENSIONS = .la .weston
 LA_LOG_COMPILER = $(srcdir)/tests/weston-tests-env
@@ -841,8 +995,10 @@ noinst_LTLIBRARIES +=                      \
 
 noinst_PROGRAMS +=                     \
        $(setbacklight)                 \
+       $(internal_tests)               \
        $(shared_tests)                 \
        $(weston_tests)                 \
+       $(ivi_tests)                    \
        matrix-test
 
 test_module_ldflags = \
@@ -861,8 +1017,8 @@ weston_test_la_LDFLAGS = $(test_module_ldflags)
 weston_test_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
 weston_test_la_SOURCES = tests/weston-test.c
 nodist_weston_test_la_SOURCES =                        \
-       protocol/wayland-test-protocol.c        \
-       protocol/wayland-test-server-protocol.h
+       protocol/weston-test-protocol.c \
+       protocol/weston-test-server-protocol.h
 
 if ENABLE_EGL
 weston_test_la_CFLAGS += $(EGL_TESTS_CFLAGS)
@@ -877,6 +1033,9 @@ libtest_runner_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
 config_parser_test_SOURCES = tests/config-parser-test.c
 config_parser_test_LDADD = libshared.la libtest-runner.la $(COMPOSITOR_LIBS)
 
+strutil_test_SOURCES = tests/strutil-test.c
+strutil_test_LDADD = libshared.la libtest-runner.la $(COMPOSITOR_LIBS)
+
 vertex_clip_test_SOURCES =                     \
        tests/vertex-clip-test.c                \
        src/vertex-clipping.c                   \
@@ -887,11 +1046,25 @@ libtest_client_la_SOURCES =                      \
        tests/weston-test-client-helper.c       \
        tests/weston-test-client-helper.h
 nodist_libtest_client_la_SOURCES =             \
-       protocol/wayland-test-protocol.c        \
-       protocol/wayland-test-client-protocol.h
+       protocol/weston-test-protocol.c \
+       protocol/weston-test-client-protocol.h
 libtest_client_la_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
 libtest_client_la_LIBADD = $(TEST_CLIENT_LIBS) libshared.la libtest-runner.la
 
+
+#
+# Internal tests - tests functionality of the testsuite itself
+#
+
+internal_screenshot_weston_SOURCES = tests/internal-screenshot-test.c
+internal_screenshot_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS) $(CAIRO_CFLAGS)
+internal_screenshot_weston_LDADD = libtest-client.la  $(CAIRO_LIBS)
+
+
+#
+# Weston Tests
+#
+
 bad_buffer_weston_SOURCES = tests/bad-buffer-test.c
 bad_buffer_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
 bad_buffer_weston_LDADD = libtest-client.la
@@ -908,6 +1081,10 @@ button_weston_SOURCES = tests/button-test.c
 button_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
 button_weston_LDADD = libtest-client.la
 
+devices_weston_SOURCES = tests/devices-test.c
+devices_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
+devices_weston_LDADD = libtest-client.la
+
 text_weston_SOURCES = tests/text-test.c
 nodist_text_weston_SOURCES =                   \
        protocol/text-protocol.c                \
@@ -919,6 +1096,17 @@ subsurface_weston_SOURCES = tests/subsurface-test.c
 subsurface_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
 subsurface_weston_LDADD = libtest-client.la
 
+presentation_weston_SOURCES = tests/presentation-test.c
+nodist_presentation_weston_SOURCES =           \
+       protocol/presentation_timing-protocol.c \
+       protocol/presentation_timing-client-protocol.h
+presentation_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
+presentation_weston_LDADD = libtest-client.la
+
+roles_weston_SOURCES = tests/roles-test.c
+roles_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
+roles_weston_LDADD = libtest-client.la
+
 if ENABLE_EGL
 weston_tests += buffer-count.weston
 buffer_count_weston_SOURCES = tests/buffer-count-test.c
@@ -940,22 +1128,71 @@ matrix_test_SOURCES =                            \
 matrix_test_CPPFLAGS = -DUNIT_TEST
 matrix_test_LDADD = -lm -lrt
 
+if ENABLE_IVI_SHELL
+module_tests +=                                \
+       ivi-layout-internal-test.la             \
+       ivi-layout-test.la
+
+ivi_layout_internal_test_la_LIBADD = $(COMPOSITOR_LIBS)
+ivi_layout_internal_test_la_LDFLAGS = $(test_module_ldflags)
+ivi_layout_internal_test_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
+ivi_layout_internal_test_la_SOURCES =                  \
+       tests/ivi_layout-internal-test.c
+
+ivi_layout_test_la_LIBADD = $(COMPOSITOR_LIBS)
+ivi_layout_test_la_LDFLAGS = $(test_module_ldflags)
+ivi_layout_test_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
+ivi_layout_test_la_SOURCES =                   \
+       tests/ivi_layout-test-plugin.c          \
+       tests/ivi-test.h
+nodist_ivi_layout_test_la_SOURCES =            \
+       protocol/weston-test-protocol.c         \
+       protocol/weston-test-server-protocol.h
+
+ivi_tests +=                                   \
+       ivi-shell-app.weston
+
+ivi_shell_app_weston_SOURCES = tests/ivi-shell-app-test.c
+nodist_ivi_shell_app_weston_SOURCES =          \
+       protocol/ivi-application-protocol.c     \
+       protocol/ivi-application-client-protocol.h
+ivi_shell_app_weston_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
+ivi_shell_app_weston_LDADD = libtest-client.la
+
+noinst_PROGRAMS += ivi-layout.ivi
+
+ivi_layout_ivi_SOURCES =                       \
+       tests/ivi_layout-test.c                 \
+       tests/ivi-test.h
+nodist_ivi_layout_ivi_SOURCES =                \
+       protocol/ivi-application-protocol.c     \
+       protocol/ivi-application-client-protocol.h
+ivi_layout_ivi_CFLAGS = $(AM_CFLAGS) $(TEST_CLIENT_CFLAGS)
+ivi_layout_ivi_LDADD = libtest-client.la
+endif
+
 if BUILD_SETBACKLIGHT
 noinst_PROGRAMS += setbacklight
-setbacklight_SOURCES =                         \
-       tests/setbacklight.c                    \
-       src/libbacklight.c                      \
+setbacklight_SOURCES =                 \
+       tests/setbacklight.c            \
+       shared/str-util.c               \
+       shared/str-util.h               \
+       src/libbacklight.c              \
        src/libbacklight.h
 setbacklight_CFLAGS = $(AM_CFLAGS) $(SETBACKLIGHT_CFLAGS)
 setbacklight_LDADD = $(SETBACKLIGHT_LIBS)
 endif
 
-EXTRA_DIST += tests/weston-tests-env
+EXTRA_DIST +=                                                  \
+       tests/weston-tests-env                                  \
+       tests/internal-screenshot.ini                           \
+       tests/reference/internal-screenshot-bad-00.png          \
+       tests/reference/internal-screenshot-good-00.png
 
 BUILT_SOURCES +=                               \
-       protocol/wayland-test-protocol.c        \
-       protocol/wayland-test-server-protocol.h \
-       protocol/wayland-test-client-protocol.h \
+       protocol/weston-test-protocol.c \
+       protocol/weston-test-server-protocol.h  \
+       protocol/weston-test-client-protocol.h  \
        protocol/text-protocol.c                \
        protocol/text-client-protocol.h
 
@@ -966,10 +1203,30 @@ EXTRA_DIST +=                                    \
        protocol/input-method.xml               \
        protocol/workspaces.xml                 \
        protocol/text-cursor-position.xml       \
-       protocol/wayland-test.xml               \
+       protocol/weston-test.xml                \
        protocol/xdg-shell.xml                  \
        protocol/fullscreen-shell.xml           \
-       protocol/scaler.xml
+       protocol/presentation_timing.xml        \
+       protocol/scaler.xml                     \
+       protocol/ivi-application.xml            \
+       protocol/ivi-hmi-controller.xml
+
+#
+# manual test modules in tests subdirectory
+#
+
+noinst_LTLIBRARIES +=                          \
+       surface-screenshot.la
+
+surface_screenshot_la_LIBADD = $(COMPOSITOR_LIBS) libshared.la
+surface_screenshot_la_LDFLAGS = $(test_module_ldflags)
+surface_screenshot_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
+surface_screenshot_la_SOURCES = tests/surface-screenshot.c
+
+
+#
+# Documentation
+#
 
 man_MANS = weston.1 weston.ini.5