Add a simple client for testing compositor damage handling

This allows for easily testing a compositor's damage tracking in all
currently available configurations including wl_surface.buffer_transform,
wl_surface.buffer_scale, and wl_viewport.  It also includes a
--rotating-damage that flag instructs the client to change the
wl_surface.buffer_transform on every commit.  This tests the compositor for
proper handling of texture uploads even when the transform has changed but
the buffer size hasn't.
diff --git a/Makefile.am b/Makefile.am
index 343adc6..9fc04ee 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -386,6 +386,7 @@
 if BUILD_SIMPLE_CLIENTS
 demo_clients +=					\
 	weston-simple-shm			\
+	weston-simple-damage			\
 	weston-simple-touch			\
 	weston-multi-resource
 
@@ -398,6 +399,17 @@
 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