mirror of
https://github.com/brl/mutter.git
synced 2024-11-30 03:50:47 -05:00
158 lines
5.3 KiB
Makefile
158 lines
5.3 KiB
Makefile
include $(top_srcdir)/build/autotools/Makefile.am.silent
|
|
|
|
UNIT_TESTS =
|
|
|
|
if OS_WIN32
|
|
SHEXT =
|
|
else
|
|
SHEXT = $(EXEEXT)
|
|
endif
|
|
|
|
# For convenience, this provides a way to easily run individual unit tests:
|
|
wrappers: stamp-test-interactive
|
|
@true
|
|
|
|
stamp-test-interactive: Makefile
|
|
@wrapper=$(abs_builddir)/wrapper.sh ; \
|
|
chmod +x $$wrapper && \
|
|
( echo "/stamp-test-interactive" ; \
|
|
echo "/stamp-test-unit-names" ; \
|
|
echo "/test-interactive" ; \
|
|
echo "/test-unit-names.h" ; \
|
|
echo "*.o" ; \
|
|
echo ".gitignore" ) > .gitignore ; \
|
|
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) ; \
|
|
echo "/$$test_bin$(SHEXT)" >> .gitignore ; \
|
|
done \
|
|
&& echo timestamp > $(@F)
|
|
|
|
$(top_builddir)/build/win32/test-interactive-clutter.bat: Makefile test-interactive$(EXEEXT)
|
|
@echo " GEN test-interactive-clutter.bat" ; \
|
|
for i in $(UNIT_TESTS); \
|
|
do \
|
|
case $$i in \
|
|
test-pixmap.c|test-devices.c) ;; \
|
|
*.c) test_bin=$${i%*.c} \
|
|
;; \
|
|
esac; \
|
|
( echo "test-interactive-clutter $$test_bin" ) > $$test_bin-clutter.bat ; \
|
|
( echo "test-interactive-clutter $$test_bin" ) >> test-interactive-clutter.bat ; \
|
|
done \
|
|
&& mv -f *.bat $(top_builddir)/build/win32/
|
|
|
|
$(top_builddir)/build/win32/test-unit-names.h: test-unit-names.h
|
|
@echo " CP "; cp test-unit-names.h $(top_builddir)/build/win32/
|
|
|
|
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 $(top_builddir)/build/win32/*.bat \
|
|
&& rm -f stamp-test-unit-names \
|
|
&& rm -f stamp-test-interactive
|
|
|
|
.PHONY: wrappers clean-wrappers
|
|
|
|
INCLUDES = \
|
|
-I$(top_srcdir) \
|
|
-I$(top_builddir) \
|
|
-I$(top_srcdir)/clutter \
|
|
-I$(top_builddir)/clutter
|
|
|
|
common_ldadd = $(top_builddir)/clutter/libclutter-@CLUTTER_API_VERSION@.la
|
|
|
|
noinst_PROGRAMS = test-interactive
|
|
|
|
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_top_srcdir)/tests/data"\" \
|
|
-DG_DISABLE_SINGLE_INCLUDES \
|
|
-DGLIB_DISABLE_DEPRECATION_WARNINGS \
|
|
-DCLUTTER_DISABLE_DEPRECATION_WARNINGS
|
|
test_interactive_LDFLAGS = -export-dynamic
|
|
test_interactive_LDADD = $(CLUTTER_LIBS) $(GDK_PIXBUF_LIBS) $(common_ldadd) -lm
|
|
|
|
EXTRA_DIST = \
|
|
wrapper.sh.in \
|
|
$(top_builddir)/build/win32/test-unit-names.h
|
|
|
|
DISTCLEANFILES = wrapper.sh .gitignore test-unit-names.h
|
|
|
|
BUILT_SOURCES = test-unit-names.h wrappers
|
|
|
|
dist-hook: $(top_builddir)/build/win32/vs9/test-interactive-clutter.vcproj $(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj $(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj.filters
|
|
|
|
$(top_builddir)/build/win32/vs9/test-interactive-clutter.vcproj: $(top_srcdir)/build/win32/vs9/test-interactive-clutter.vcprojin
|
|
for F in $(test_interactive_SOURCES); do \
|
|
case $$F in \
|
|
test-pixmap.c|test-devices.c) ;; \
|
|
*.c) echo ' <File RelativePath="..\..\..\tests\interactive\'$$F'" />' \
|
|
;; \
|
|
esac; \
|
|
done > testinteractive.sourcefiles
|
|
$(CPP) -P - <$(top_srcdir)/build/win32/vs9/test-interactive-clutter.vcprojin >$@
|
|
rm -f testinteractive.sourcefiles
|
|
|
|
$(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj: $(top_srcdir)/build/win32/vs10/test-interactive-clutter.vcxprojin
|
|
for F in $(test_interactive_SOURCES); do \
|
|
case $$F in \
|
|
test-pixmap.c|test-devices.c) ;; \
|
|
*.c) echo ' <ClCompile Include="..\..\..\tests\interactive\'$$F'" />' \
|
|
;; \
|
|
esac; \
|
|
done > testinteractive.vs10.sourcefiles
|
|
$(CPP) -P - <$(top_srcdir)/build/win32/vs10/test-interactive-clutter.vcxprojin >$@
|
|
rm -f testinteractive.vs10.sourcefiles
|
|
|
|
$(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj.filters: $(top_srcdir)/build/win32/vs10/test-interactive-clutter.vcxproj.filtersin
|
|
for F in $(test_interactive_SOURCES); do \
|
|
case $$F in \
|
|
test-pixmap.c|test-devices.c) ;; \
|
|
*.c) echo ' <ClCompile Include="..\..\..\tests\interactive\'$$F'"><Filter>Sources</Filter></ClCompile>' \
|
|
;; \
|
|
esac; \
|
|
done > testinteractive.vs10.sourcefiles.filters
|
|
$(CPP) -P - <$(top_srcdir)/build/win32/vs10/test-interactive-clutter.vcxproj.filtersin >$@
|
|
rm -f testinteractive.vs10.sourcefiles.filters
|
|
|
|
# Let the VS9/VS10 Project files be cleared out before they are re-expanded...
|
|
DISTCLEANFILES += \
|
|
$(top_builddir)/build/win32/test-unit-names.h \
|
|
$(top_builddir)/build/win32/vs9/test-interactive-clutter.vcproj \
|
|
$(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj \
|
|
$(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj.filters
|
|
|
|
EXTRA_DIST += \
|
|
$(top_builddir)/build/win32/vs9/test-interactive-clutter.vcproj \
|
|
$(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj \
|
|
$(top_builddir)/build/win32/vs10/test-interactive-clutter.vcxproj.filters
|
|
|
|
clean-local: clean-wrappers
|