c2422db91ea07bbd889fb2688dbc6c189e05b3ae
[platform/upstream/efl.git] / Makefile.am
1 ACLOCAL_AMFLAGS = -I m4
2 AM_MAKEFLAGS = --no-print-directory
3 AM_DISTCHECK_CONFIGURE_FLAGS = \
4 --with-tests=regular
5
6 SUBDIRS = src data config doc
7
8 if HAVE_PO
9
10 SUBDIRS += po
11
12 endif
13
14 MAINTAINERCLEANFILES = \
15 Makefile.in \
16 aclocal.m4 \
17 compile \
18 config.cache-env \
19 config.guess \
20 config.h.in \
21 config.h.in~ \
22 config.sub \
23 configure \
24 depcomp \
25 install-sh \
26 ltmain.sh \
27 missing \
28 m4/libtool.m4 \
29 m4/lt~obsolete.m4 \
30 m4/ltoptions.m4 \
31 m4/ltsugar.m4 \
32 m4/ltversion.m4
33
34 EXTRA_DIST =  \
35 m4/pkg_var.m4 \
36 m4/ac_path_generic.m4 \
37 m4/ecore_check_c_extension.m4 \
38 m4/ecore_check_module.m4 \
39 m4/efl_attribute.m4 \
40 m4/efl_check_funcs.m4 \
41 m4/efl_compiler.m4 \
42 m4/efl_doxygen.m4 \
43 m4/efl_path_max.m4 \
44 m4/efl_threads.m4 \
45 m4/eina_check.m4 \
46 m4/eina_config.m4 \
47 m4/eio_check_options.m4 \
48 m4/evas_check_engine.m4 \
49 m4/evas_check_loader.m4 \
50 m4/evil_windows.m4 \
51 m4/libgcrypt.m4 \
52 m4/gcc_check_builtin.m4
53
54 EXTRA_DIST += \
55 README \
56 AUTHORS \
57 COPYING \
58 COMPLIANCE \
59 licenses/COPYING.LGPL \
60 licenses/COPYING.GPL \
61 licenses/COPYING.BSD \
62 licenses/COPYING.SMALL \
63 licenses/COPYING.FTL \
64 licenses/COPYING.NGINX-MIT \
65 old/ChangeLog.ecore \
66 old/ChangeLog.edje \
67 old/ChangeLog.eet \
68 old/ChangeLog.eeze \
69 old/ChangeLog.efreet \
70 old/ChangeLog.eina \
71 old/ChangeLog.eio \
72 old/ChangeLog.embryo \
73 old/ChangeLog.emotion \
74 old/ChangeLog.escape \
75 old/ChangeLog.ethumb \
76 old/ChangeLog.evas \
77 old/ChangeLog.evil \
78 old/ChangeLog.evil.0 \
79 old/NEWS.ecore \
80 old/NEWS.edje \
81 old/NEWS.eet \
82 old/NEWS.eeze \
83 old/NEWS.efreet \
84 old/NEWS.eina \
85 old/NEWS.eio \
86 old/NEWS.embryo \
87 old/NEWS.emotion \
88 old/NEWS.escape \
89 old/NEWS.ethumb \
90 old/NEWS.evas \
91 old/NEWS.evil \
92 old/README.ecore \
93 old/README.eldbus \
94 old/README.edje \
95 old/README.eet \
96 old/README.eeze \
97 old/README.efreet \
98 old/README.eina \
99 old/README.eio \
100 old/README.embryo \
101 old/README.emotion \
102 old/README.ephysics \
103 old/README.escape \
104 old/README.ethumb \
105 old/README.evas \
106 old/README.evil \
107 spec/efl.spec \
108 pkgbuild/PKGBUILD \
109 pkgbuild/efl.install
110
111 if HAVE_FREEBSD
112 pkgconfigdir = $(libdir)data/pkgconfig
113 else
114 pkgconfigdir = $(libdir)/pkgconfig
115 endif
116
117 pkgconfig_DATA =
118
119 if HAVE_WINDOWS
120 pkgconfig_DATA += pc/evil.pc
121 endif
122
123 if HAVE_PS3
124 pkgconfig_DATA += pc/escape.pc
125 endif
126
127 pkgconfig_DATA += \
128 pc/eina.pc \
129 pc/eo.pc \
130 pc/eolian.pc \
131 pc/efl.pc \
132 pc/emile.pc \
133 pc/eet.pc \
134 pc/evas.pc \
135 pc/ecore.pc \
136 pc/ecore-con.pc \
137 pc/ecore-ipc.pc \
138 pc/ecore-file.pc \
139 pc/ecore-input.pc \
140 pc/ecore-input-evas.pc \
141 pc/ecore-imf.pc \
142 pc/ecore-imf-evas.pc \
143 pc/ecore-evas.pc \
144 pc/ecore-avahi.pc \
145 pc/ector.pc \
146 pc/embryo.pc \
147 pc/eio.pc \
148 pc/eldbus.pc \
149 pc/efreet.pc \
150 pc/efreet-mime.pc \
151 pc/efreet-trash.pc \
152 pc/edje.pc \
153 pc/emotion.pc \
154 pc/ethumb.pc \
155 pc/ethumb_client.pc \
156 pc/elocation.pc \
157 pc/elementary.pc
158
159 if HAVE_CXX11
160 pkgconfig_DATA += \
161 pc/eina-cxx.pc \
162 pc/evas-cxx.pc \
163 pc/ecore-cxx.pc \
164 pc/efl-cxx.pc \
165 pc/eolian-cxx.pc \
166 pc/edje-cxx.pc \
167 pc/eet-cxx.pc \
168 pc/eo-cxx.pc \
169 pc/eio-cxx.pc \
170 pc/elementary-cxx.pc
171 endif
172
173 if HAVE_ELUA
174 pkgconfig_DATA += pc/elua.pc
175 endif
176
177 if HAVE_JS
178 pkgconfig_DATA += \
179 pc/eolian-js.pc \
180 pc/efl-js.pc \
181 pc/eo-js.pc \
182 pc/eina-js.pc
183 endif
184
185 if BUILD_ENGINE_SOFTWARE_X11
186 pkgconfig_DATA += pc/evas-software-x11.pc
187 endif
188
189 if BUILD_ENGINE_FB
190 pkgconfig_DATA += pc/evas-fb.pc
191 endif
192
193 if BUILD_ENGINE_EGLFS
194 pkgconfig_DATA += pc/evas-eglfs.pc
195 endif
196
197 if BUILD_ENGINE_BUFFER
198 pkgconfig_DATA += pc/evas-software-buffer.pc
199 endif
200
201 if BUILD_ENGINE_GL_X11
202 pkgconfig_DATA += pc/evas-opengl-x11.pc
203 endif
204
205 if BUILD_ENGINE_GL_SDL
206 pkgconfig_DATA += pc/evas-opengl-sdl.pc
207 endif
208
209 if BUILD_ENGINE_GL_COCOA
210 pkgconfig_DATA += pc/evas-opengl-cocoa.pc
211 endif
212
213 if BUILD_ENGINE_SOFTWARE_GDI
214 pkgconfig_DATA += pc/evas-software-gdi.pc
215 endif
216
217 if BUILD_ENGINE_SOFTWARE_DDRAW
218 pkgconfig_DATA += pc/evas-software-ddraw.pc
219 endif
220
221 if BUILD_ENGINE_PSL1GHT
222 pkgconfig_DATA += pc/evas-psl1ght.pc
223 endif
224
225 if BUILD_ENGINE_WAYLAND_SHM
226 pkgconfig_DATA += pc/evas-wayland-shm.pc
227 endif
228
229 if BUILD_ENGINE_WAYLAND_EGL
230 pkgconfig_DATA += pc/evas-wayland-egl.pc
231 endif
232
233 if BUILD_ENGINE_DRM
234 pkgconfig_DATA += pc/evas-drm.pc
235 endif
236
237 if HAVE_ECORE_COCOA
238 pkgconfig_DATA += pc/ecore-cocoa.pc
239 endif
240
241 if HAVE_ECORE_FB
242 pkgconfig_DATA += pc/ecore-fb.pc
243 endif
244
245 if HAVE_ECORE_DRM
246 pkgconfig_DATA += pc/ecore-drm.pc
247 endif
248
249 if HAVE_PS3
250 pkgconfig_DATA += pc/ecore-psl1ght.pc
251 endif
252
253 if HAVE_ECORE_SDL
254 pkgconfig_DATA += pc/ecore-sdl.pc
255 endif
256
257 if HAVE_ECORE_WAYLAND
258 pkgconfig_DATA += pc/ecore-wayland.pc
259 endif
260
261 if HAVE_ECORE_WL2
262 pkgconfig_DATA += pc/ecore-wl2.pc
263 endif
264
265 if HAVE_WIN32
266 pkgconfig_DATA += pc/ecore-win32.pc
267 endif
268
269 if HAVE_ECORE_X
270 pkgconfig_DATA += pc/ecore-x.pc
271 endif
272
273 if HAVE_EEZE
274 pkgconfig_DATA += pc/eeze.pc
275 endif
276
277 if HAVE_EPHYSICS
278 pkgconfig_DATA += pc/ephysics.pc
279 endif
280
281 if HAVE_ECORE_AUDIO
282 pkgconfig_DATA += pc/ecore-audio.pc pc/ecore-audio-cxx.pc
283 endif
284
285 if HAVE_ECORE_BUFFER
286 pkgconfig_DATA += pc/ecore-buffer.pc
287 endif
288
289 # Cmake configs:
290 efl_cmakeconfigdir = $(libdir)/cmake/Efl/
291 efl_cmakeconfig_DATA = \
292 cmakeconfig/EflConfig.cmake \
293 cmakeconfig/EflConfigVersion.cmake
294
295 eina_cmakeconfigdir = $(libdir)/cmake/Eina/
296 eina_cmakeconfig_DATA = \
297 cmakeconfig/EinaConfig.cmake \
298 cmakeconfig/EinaConfigVersion.cmake
299
300 eio_cmakeconfigdir = $(libdir)/cmake/Eio/
301 eio_cmakeconfig_DATA = \
302 cmakeconfig/EioConfig.cmake \
303 cmakeconfig/EioConfigVersion.cmake
304
305 eeze_cmakeconfigdir = $(libdir)/cmake/Eeze/
306 eeze_cmakeconfig_DATA = \
307 cmakeconfig/EezeConfig.cmake \
308 cmakeconfig/EezeConfigVersion.cmake
309
310 eo_cmakeconfigdir = $(libdir)/cmake/Eo/
311 eo_cmakeconfig_DATA = \
312 cmakeconfig/EoConfig.cmake \
313 cmakeconfig/EoConfigVersion.cmake
314
315 eolian_cmakeconfigdir = $(libdir)/cmake/Eolian/
316 eolian_cmakeconfig_DATA = \
317 cmakeconfig/EolianConfig.cmake \
318 cmakeconfig/EolianConfigVersion.cmake \
319 cmakeconfig/EolianHelper.cmake
320
321 eolian_cxx_cmakeconfigdir = $(libdir)/cmake/EolianCxx/
322 eolian_cxx_cmakeconfig_DATA = \
323 cmakeconfig/EolianCxxConfig.cmake \
324 cmakeconfig/EolianCxxConfigVersion.cmake
325
326 eina_cxx_cmakeconfigdir = $(libdir)/cmake/EinaCxx/
327 eina_cxx_cmakeconfig_DATA = \
328 cmakeconfig/EinaCxxConfig.cmake \
329 cmakeconfig/EinaCxxConfigVersion.cmake
330
331 eo_cxx_cmakeconfigdir = $(libdir)/cmake/EoCxx/
332 eo_cxx_cmakeconfig_DATA = \
333 cmakeconfig/EoCxxConfig.cmake \
334 cmakeconfig/EoCxxConfigVersion.cmake
335
336 ecore_cxx_cmakeconfigdir = $(libdir)/cmake/EcoreCxx/
337 ecore_cxx_cmakeconfig_DATA = \
338 cmakeconfig/EcoreCxxConfig.cmake \
339 cmakeconfig/EcoreCxxConfigVersion.cmake
340
341 evas_cxx_cmakeconfigdir = $(libdir)/cmake/EvasCxx/
342 evas_cxx_cmakeconfig_DATA = \
343 cmakeconfig/EvasCxxConfig.cmake \
344 cmakeconfig/EvasCxxConfigVersion.cmake
345
346 eet_cxx_cmakeconfigdir = $(libdir)/cmake/EetCxx/
347 eet_cxx_cmakeconfig_DATA = \
348 cmakeconfig/EetCxxConfig.cmake \
349 cmakeconfig/EetCxxConfigVersion.cmake
350
351 eet_cmakeconfigdir = $(libdir)/cmake/Eet/
352 eet_cmakeconfig_DATA = \
353 cmakeconfig/EetConfig.cmake \
354 cmakeconfig/EetConfigVersion.cmake
355
356 evas_cmakeconfigdir =  $(libdir)/cmake/Evas/
357 evas_cmakeconfig_DATA = \
358 cmakeconfig/EvasConfig.cmake \
359 cmakeconfig/EvasConfigVersion.cmake
360
361 ecore_cmakeconfigdir =  $(libdir)/cmake/Ecore/
362 ecore_cmakeconfig_DATA = \
363 cmakeconfig/EcoreConfig.cmake \
364 cmakeconfig/EcoreConfigVersion.cmake
365
366 edje_cmakeconfigdir =  $(libdir)/cmake/Edje/
367 edje_cmakeconfig_DATA = \
368 cmakeconfig/EdjeConfig.cmake \
369 cmakeconfig/EdjeConfigVersion.cmake
370
371 eldbus_cmakeconfigdir = $(libdir)/cmake/Eldbus/
372 eldbus_cmakeconfig_DATA = \
373 cmakeconfig/EldbusConfig.cmake \
374 cmakeconfig/EldbusConfigVersion.cmake
375
376 efreet_cmakeconfigdir =  $(libdir)/cmake/Efreet/
377 efreet_cmakeconfig_DATA = \
378 cmakeconfig/EfreetConfig.cmake \
379 cmakeconfig/EfreetConfigVersion.cmake
380
381 ethumb_cmakeconfigdir =  $(libdir)/cmake/Ethumb/
382 ethumb_cmakeconfig_DATA = \
383 cmakeconfig/EthumbConfig.cmake \
384 cmakeconfig/EthumbConfigVersion.cmake
385
386 ethumbclient_cmakeconfigdir =  $(libdir)/cmake/EthumbClient/
387 ethumbclient_cmakeconfig_DATA = \
388 cmakeconfig/EthumbClientConfig.cmake \
389 cmakeconfig/EthumbClientConfigVersion.cmake
390
391 cmakeconfigdir = $(libdir)/cmake/Elementary
392 cmakeconfig_DATA = \
393 cmakeconfig/ElementaryConfig.cmake \
394 cmakeconfig/ElementaryConfigVersion.cmake
395
396 emotion_cmakeconfigdir =  $(libdir)/cmake/Emotion/
397 emotion_cmakeconfig_DATA = \
398 cmakeconfig/EmotionConfig.cmake \
399 cmakeconfig/EmotionConfigVersion.cmake
400
401 elua_cmakeconfigdir = $(libdir)/cmake/Elua
402 elua_cmakeconfig_DATA = \
403 cmakeconfig/EluaConfig.cmake \
404 cmakeconfig/EluaConfigVersion.cmake
405
406 emile_cmakeconfigdir = $(libdir)/cmake/Emile
407 emile_cmakeconfig_DATA = \
408 cmakeconfig/EmileConfig.cmake \
409 cmakeconfig/EmileConfigVersion.cmake
410
411 # D-Bus services:
412
413 servicedir = @dbusservicedir@
414 service_DATA = \
415 dbus-services/org.enlightenment.Ethumb.service
416
417 if HAVE_SYSTEMD_USER_SESSION
418 systemdunitsdir = @USER_SESSION_DIR@
419 systemdunits_DATA = \
420 systemd-services/ethumb.service
421 endif
422 EXTRA_DIST += $(systemdunits_DATA)
423
424
425 .PHONY: doc benchmark examples install-examples
426
427 # Documentation
428
429 doc:
430         @echo "entering doc/"
431         $(MAKE) $(AM_MAKEFLAGS) -C doc doc
432
433 # Unit tests
434
435 if EFL_ENABLE_COVERAGE
436
437 lcov-reset:
438         @rm -rf $(top_builddir)/coverage
439         @find $(top_builddir) -name "*.gcda" -delete
440         @lcov --zerocounters --directory $(top_builddir)
441
442 lcov-baseline:
443         $(MKDIR_P) $(top_builddir)/coverage
444         lcov --capture --initial --compat-libtool --no-external --output-file $(top_builddir)/coverage/coverage-baseline.info --directory $(top_builddir) --config-file .lcov-config --rc lcov_branch_coverage=1
445
446 lcov-report:
447         lcov --capture --compat-libtool --no-external --output-file $(top_builddir)/coverage/coverage-check.info --directory $(top_builddir) --config-file .lcov-config --rc lcov_branch_coverage=1
448         lcov --no-external --compat-libtool --add-tracefile $(top_builddir)/coverage/coverage-baseline.info --add-tracefile $(top_builddir)/coverage/coverage-check.info --output-file $(top_builddir)/coverage/coverage.info --config-file .lcov-config --rc lcov_branch_coverage=1
449         lcov --no-external --compat-libtool --remove $(top_builddir)/coverage/coverage.info '*.h' --output-file $(top_builddir)/coverage/coverage.cleaned.info --config-file .lcov-config --rc lcov_branch_coverage=1
450         lcov --no-external --compat-libtool --remove $(top_builddir)/coverage/coverage.cleaned.info '*/tests/*' --output-file $(top_builddir)/coverage/coverage.cleaned2.info --config-file .lcov-config --rc lcov_branch_coverage=1
451         lcov --no-external --compat-libtool --remove $(top_builddir)/coverage/coverage.cleaned2.info '*NONE*' --output-file $(top_builddir)/coverage/coverage.cleaned3.info --config-file .lcov-config --rc lcov_branch_coverage=1
452         lcov --no-external --compat-libtool --remove $(top_builddir)/coverage/coverage.cleaned3.info '*/doc/*' --output-file $(top_builddir)/coverage/coverage.cleaned4.info --config-file .lcov-config --rc lcov_branch_coverage=1
453         lcov --no-external --compat-libtool --remove $(top_builddir)/coverage/coverage.cleaned4.info '*usr/include*' --output-file $(top_builddir)/coverage/coverage.cleaned5.info --config-file .lcov-config --rc lcov_branch_coverage=1
454         genhtml --config-file .lcov-config --legend -t "$(PACKAGE_STRING)" -o $(top_builddir)/coverage/html $(top_builddir)/coverage/coverage.cleaned5.info
455         @echo "Coverage Report at $(top_builddir)/coverage/html"
456
457 endif
458
459 if EFL_ENABLE_TESTS
460
461 lcov-check:
462 if EFL_ENABLE_COVERAGE
463         @$(MAKE) $(AM_MAKEFLAGS) lcov-reset
464         @$(MAKE) $(AM_MAKEFLAGS) lcov-baseline
465 endif
466         @$(MAKE) $(AM_MAKEFLAGS) check
467 if EFL_ENABLE_COVERAGE
468         @$(MAKE) $(AM_MAKEFLAGS) lcov-report
469 endif
470
471 check-build:
472         @$(MAKE) $(AM_MAKEFLAGS) -C src check-build
473 endif
474
475 # benchmark
476
477 benchmark:
478         @$(MAKE) $(AM_MAKEFLAGS) -C src benchmark
479         $(MKDIR_P) benchmark
480         @cd benchmark && ../src/benchmarks/eo/eo_bench$(EXEEXT) `date +%F_%s`
481
482 # examples
483
484 examples:
485         @$(MAKE) $(AM_MAKEFLAGS) -C src examples
486
487 install-examples:
488         @$(MAKE) $(AM_MAKEFLAGS) -C src install-examples
489
490 pkgbuild::
491         @echo "making arch packages"
492         makepkg -f -p $(top_builddir)/pkgbuild/PKGBUILD
493
494 # cleaning
495
496 clean-local:
497         rm -rf benchmark coverage