Add unit tests + coverage support to evas, for Tasn.
[framework/uifw/evas.git] / Makefile.am
1 ACLOCAL_AMFLAGS = -I m4
2
3 SUBDIRS = src doc
4
5 MAINTAINERCLEANFILES = \
6 Makefile.in \
7 aclocal.m4 \
8 config.guess \
9 config.h.in \
10 config.h.in~ \
11 config.sub \
12 configure \
13 depcomp \
14 install-sh \
15 ltmain.sh \
16 missing \
17 $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz \
18 $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.bz2 \
19 $(PACKAGE_TARNAME)-$(PACKAGE_VERSION)-doc.tar.bz2 \
20 m4/libtool.m4 \
21 m4/lt~obsolete.m4 \
22 m4/ltoptions.m4 \
23 m4/ltsugar.m4 \
24 m4/ltversion.m4
25
26 bin_SCRIPTS =
27
28 EXTRA_DIST = \
29 AUTHORS \
30 COPYING \
31 autogen.sh \
32 README.in \
33 README \
34 evas.pc.in \
35 evas-directfb.pc.in \
36 evas-fb.pc.in \
37 evas-opengl-x11.pc.in \
38 evas-opengl-sdl.pc.in \
39 evas-software-buffer.pc.in \
40 evas-software-x11.pc.in \
41 evas-software-16-x11.pc.in \
42 evas-software-8-x11.pc.in \
43 evas-software-gdi.pc.in \
44 evas-software-ddraw.pc.in \
45 evas-software-16-ddraw.pc.in \
46 evas-direct3d.pc.in \
47 evas-software-16-wince.pc.in \
48 evas-software-sdl.pc.in \
49 evas.spec.in \
50 evas.spec \
51 m4/ac_attribute.m4 \
52 m4/efl_coverage.m4 \
53 m4/efl_doxygen.m4 \
54 m4/efl_fnmatch.m4 \
55 m4/efl_path_max.m4 \
56 m4/efl_pthread.m4 \
57 m4/efl_tests.m4 \
58 m4/evas_check_engine.m4 \
59 m4/evas_check_loader.m4 \
60 m4/evas_converter.m4 \
61 m4/evas_dither.m4 \
62 m4/evas_scaler.m4
63
64 pkgconfigdir = $(libdir)/pkgconfig
65 pkgconfig_DATA = evas.pc
66
67 if BUILD_ENGINE_SOFTWARE_X11
68 pkgconfig_DATA += evas-software-x11.pc
69 endif
70
71 if BUILD_ENGINE_SOFTWARE_16_X11
72 pkgconfig_DATA += evas-software-16-x11.pc
73 endif
74
75 if BUILD_ENGINE_SOFTWARE_8_X11
76 pkgconfig_DATA += evas-software-8-x11.pc
77 endif
78
79 if BUILD_ENGINE_DIRECTFB
80 pkgconfig_DATA += evas-directfb.pc
81 endif
82
83 if BUILD_ENGINE_FB
84 pkgconfig_DATA += evas-fb.pc
85 endif
86
87 if BUILD_ENGINE_BUFFER
88 pkgconfig_DATA += evas-software-buffer.pc
89 endif
90
91 if BUILD_ENGINE_GL_X11
92 pkgconfig_DATA += evas-opengl-x11.pc
93 endif
94
95 if BUILD_ENGINE_GL_SDL
96 pkgconfig_DATA += evas-opengl-sdl.pc
97 endif
98
99 if BUILD_ENGINE_SOFTWARE_GDI
100 pkgconfig_DATA += evas-software-gdi.pc
101 endif
102
103 if BUILD_ENGINE_SOFTWARE_DDRAW
104 pkgconfig_DATA += evas-software-ddraw.pc
105 endif
106
107 if BUILD_ENGINE_SOFTWARE_16_DDRAW
108 pkgconfig_DATA += evas-software-16-ddraw.pc
109 endif
110
111 if BUILD_ENGINE_DIRECT3D
112 pkgconfig_DATA += evas-direct3d.pc
113 endif
114
115 if BUILD_ENGINE_SOFTWARE_16_WINCE
116 pkgconfig_DATA += evas-software-16-wince.pc
117 endif
118
119 if BUILD_ENGINE_SOFTWARE_SDL
120 pkgconfig_DATA += evas-software-sdl.pc
121 endif
122
123 .PHONY: doc coverage
124
125 doc:
126         @echo "entering doc/"
127         $(MAKE) -C doc doc
128
129 # Unit tests
130
131 if EFL_ENABLE_TESTS
132
133 check-local:
134         @./src/tests/evas_suite
135
136 else
137
138 check-local:
139         @echo "reconfigure with --enable-tests"
140
141 endif
142
143 # Coverage report
144
145 if EFL_ENABLE_COVERAGE
146 lcov-reset:
147         @rm -rf coverage
148         @find . -name "*.gcda" -exec rm {} \;
149         @lcov --directory . --zerocounters
150
151 lcov-report:
152         @mkdir coverage
153         @lcov --compat-libtool --directory $(top_srcdir)/src --capture --output-file coverage/coverage.info
154         @lcov -l coverage/coverage.info |grep "\\.h"  |cut -d " " -f 2 > coverage/remove
155         @lcov -r coverage/coverage.info `cat coverage/remove` > coverage/coverage.cleaned.info
156         @rm coverage/remove
157         @mv coverage/coverage.cleaned.info coverage/coverage.info
158         @genhtml -t "$(PACKAGE_STRING)" -o coverage coverage/coverage.info
159
160 coverage:
161         @make lcov-reset
162         @make check
163         @make lcov-report
164 else
165 lcov-reset:
166         @echo "reconfigure with --enable-coverage"
167
168 lcov-report:
169         @echo "reconfigure with --enable-coverage"
170
171 coverage:
172         @echo "reconfigure with --enable-tests --enable-coverage"
173 endif
174
175 maintainer-clean-local:
176         rm -rf coverage