1
0
Fork 0
mutter-performance-source/clutter/tests/interactive/Makefile.am
Jonas Ådahl 4ebc55f2b3 Make libmutter and friends parallel installable
In order to minimize the amount of breakage, while at the same time
making it easier to make backward incompatible changes needed to
continue turning libmutter into a capable Wayland compositor, make the
libmutter and friends (libmutter-clutter, libmutter-cogl*) parallel
installable by adding a version number to the name. This changes
various filenames, for example what previously was libmutter.so is now
libmutter-0.so (assuming the version for now is 0), and
libmutter-clutter-1.0.so is now libmutter-clutter-0.so. The pkg-config
filenames and GObject introspection has been renamed to reflect this as
well.

This enables a downstream compositor rely on a specific version of the
libmutter API, while gracefully handling API/ABI changes by having to
update to the new version at their own pace.

https://bugzilla.gnome.org/show_bug.cgi?id=777317
2017-02-14 11:16:45 +08:00

148 lines
3.6 KiB
Makefile

UNIT_TESTS = \
test-texture-slicing.c \
test-texture-async.c \
test-texture-material.c \
test-events.c \
test-scale.c \
test-actors.c \
test-shader-effects.c \
test-script.c \
test-grab.c \
test-cogl-shader-arbfp.c \
test-cogl-shader-glsl.c \
test-animator.c \
test-state.c \
test-state-animator.c \
test-fbo.c \
test-multistage.c \
test-cogl-tex-tile.c \
test-cogl-tex-convert.c \
test-cogl-tex-foreign.c \
test-cogl-offscreen.c \
test-cogl-tex-polygon.c \
test-cogl-multitexture.c \
test-stage-read-pixels.c \
test-paint-wrapper.c \
test-texture-quality.c \
test-layout.c \
test-animation.c \
test-easing.c \
test-binding-pool.c \
test-text.c \
test-text-field.c \
test-cairo-clock.c \
test-cairo-flowers.c \
test-cogl-vertex-buffer.c \
test-stage-sizing.c \
test-scrolling.c \
test-swipe-action.c \
test-cogl-point-sprites.c \
test-table-layout.c \
test-path-constraint.c \
test-state-script.c \
test-devices.c \
test-content.c \
test-keyframe-transition.c \
test-bind-constraint.c \
test-touch-events.c \
test-rotate-zoom.c
if X11_TESTS
UNIT_TESTS += test-pixmap.c
endif
if PIXBUF_TESTS
UNIT_TESTS += \
test-image.c
endif
SHEXT = $(EXEEXT)
# For convenience, this provides a way to easily run individual unit tests:
wrappers: stamp-test-interactive
@true
GIT_IGNORE_EXTRA = \
stamp-test-interactive \
stamp-test-unit-names \
test-unit-names.h \
$(UNIT_TESTS:.c=$(SHEXT))
stamp-test-interactive: Makefile
@wrapper=$(abs_builddir)/wrapper.sh ; \
chmod +x $$wrapper && \
for i in $(UNIT_TESTS); \
do \
test_bin=$${i%*.c} ; \
echo " GEN $$test_bin" ; \
( echo "#!/bin/sh" ; \
echo "$$wrapper $$test_bin \$$@" \
) > $$test_bin$(SHEXT) ; \
chmod +x $$test_bin$(SHEXT) ; \
done \
&& echo timestamp > $(@F)
test-unit-names.h: stamp-test-unit-names
@true
stamp-test-unit-names: Makefile
@( echo "/* ** This file is autogenerated. Do not edit. ** */" ; \
echo "" ; \
echo "const char *test_unit_names[] = {" ) > test-unit-names.h ; \
for i in $(UNIT_TESTS); \
do \
test_bin=$${i%*.c} ; \
echo " \"$$test_bin\"," >> test-unit-names.h ; \
done \
&& echo "};" >> test-unit-names.h \
&& echo timestamp > $(@F)
clean-wrappers:
@for i in $(UNIT_TESTS); \
do \
test_bin=$${i%*.c} ; \
echo " RM $$test_bin"; \
rm -f $$test_bin$(SHEXT); \
done \
&& rm -f stamp-test-unit-names \
&& rm -f stamp-test-interactive
.PHONY: wrappers clean-wrappers
common_ldadd = \
$(top_builddir)/clutter/libmutter-clutter-@LIBMUTTER_API_VERSION@.la \
$(top_builddir)/../cogl/cogl/libmutter-cogl-@LIBMUTTER_API_VERSION@.la
check_PROGRAMS = test-interactive
check_SCRIPTS = wrappers
test_interactive_SOURCES = test-main.c $(UNIT_TESTS)
nodist_test_interactive_SOURCES = test-unit-names.h
test_interactive_CFLAGS = $(CLUTTER_CFLAGS) $(GDK_PIXBUF_CFLAGS)
test_interactive_CPPFLAGS = \
-DTESTS_DATADIR=\""$(abs_srcdir)"\" \
-DG_DISABLE_SINGLE_INCLUDES \
-DGLIB_DISABLE_DEPRECATION_WARNINGS \
-DCOGL_DISABLE_DEPRECATION_WARNINGS \
-DCLUTTER_DISABLE_DEPRECATION_WARNINGS \
-I$(top_srcdir)/../cogl \
-I$(top_builddir)/../cogl \
-I$(top_builddir)/../cogl/cogl \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_srcdir)/clutter \
-I$(top_builddir)/clutter
test_interactive_LDFLAGS = -export-dynamic
test_interactive_LDADD = $(CLUTTER_LIBS) $(GDK_PIXBUF_LIBS) $(common_ldadd) $(LIBM)
EXTRA_DIST = \
wrapper.sh.in \
test-script.json \
test-script-signals.json \
redhand.png
DISTCLEANFILES = wrapper.sh .gitignore test-unit-names.h
BUILT_SOURCES = test-unit-names.h
clean-local: clean-wrappers