efl/Makefile.am

524 lines
12 KiB
Makefile
Raw Normal View History

ACLOCAL_AMFLAGS = -I m4
AM_MAKEFLAGS = --no-print-directory
AM_DISTCHECK_CONFIGURE_FLAGS = \
--with-tests=regular \
--enable-always-build-examples
2016-03-30 14:14:58 -07:00
SUBDIRS = src data config doc
if HAVE_PO
SUBDIRS += po
endif
MAINTAINERCLEANFILES = \
Makefile.in \
aclocal.m4 \
compile \
config.cache-env \
config.guess \
config.h.in \
config.h.in~ \
config.sub \
configure \
depcomp \
install-sh \
ltmain.sh \
missing \
m4/libtool.m4 \
m4/lt~obsolete.m4 \
m4/ltoptions.m4 \
m4/ltsugar.m4 \
m4/ltversion.m4
EXTRA_DIST = \
m4/pkg_var.m4 \
2012-09-17 09:35:38 -07:00
m4/ac_path_generic.m4 \
m4/ecore_check_c_extension.m4 \
m4/ecore_check_module.m4 \
m4/efl_attribute.m4 \
m4/efl_check_funcs.m4 \
m4/efl_compiler.m4 \
m4/efl_doxygen.m4 \
m4/efl_path_max.m4 \
m4/efl_threads.m4 \
m4/efl_libunwind.m4 \
m4/eina_check.m4 \
m4/eina_config.m4 \
m4/eio_check_options.m4 \
m4/evas_check_engine.m4 \
m4/evas_check_loader.m4 \
m4/evil_windows.m4 \
m4/libgcrypt.m4 \
m4/gcc_check_builtin.m4
2012-09-17 09:35:38 -07:00
EXTRA_DIST += \
2013-03-22 01:40:56 -07:00
README \
AUTHORS \
COPYING \
COMPLIANCE \
licenses/COPYING.LGPL \
licenses/COPYING.GPL \
licenses/COPYING.BSD \
licenses/COPYING.SMALL \
2015-07-31 00:23:33 -07:00
licenses/COPYING.FTL \
licenses/COPYING.NGINX-MIT \
old/ChangeLog.ecore \
old/ChangeLog.edje \
old/ChangeLog.eet \
old/ChangeLog.eeze \
old/ChangeLog.efreet \
old/ChangeLog.eina \
old/ChangeLog.eio \
old/ChangeLog.embryo \
old/ChangeLog.emotion \
old/ChangeLog.escape \
old/ChangeLog.ethumb \
old/ChangeLog.evas \
old/ChangeLog.evil \
old/ChangeLog.evil.0 \
old/NEWS.ecore \
old/NEWS.edje \
old/NEWS.eet \
old/NEWS.eeze \
old/NEWS.efreet \
old/NEWS.eina \
old/NEWS.eio \
old/NEWS.embryo \
old/NEWS.emotion \
old/NEWS.escape \
old/NEWS.ethumb \
old/NEWS.evas \
old/NEWS.evil \
old/README.ecore \
old/README.eldbus \
old/README.edje \
old/README.eet \
old/README.eeze \
old/README.efreet \
old/README.eina \
old/README.eio \
old/README.embryo \
old/README.emotion \
old/README.ephysics \
old/README.escape \
old/README.ethumb \
old/README.evas \
old/README.evil \
spec/efl.spec \
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
pkgbuild/PKGBUILD \
pkgbuild/efl.install
if HAVE_FREEBSD
pkgconfigdir = $(libdir)data/pkgconfig
else
pkgconfigdir = $(libdir)/pkgconfig
endif
pkgconfig_DATA =
if HAVE_WINDOWS
pkgconfig_DATA += pc/evil.pc
endif
if HAVE_PS3
pkgconfig_DATA += pc/escape.pc
endif
pkgconfig_DATA += \
pc/eina.pc \
pc/eo.pc \
2014-03-11 03:03:30 -07:00
pc/eolian.pc \
pc/efl.pc \
emile: initial introduction of Emile. The intent of Emile is to be the common layer for serialisation, compression and ciphering. It will expose the library we currently use internally to an easier use from the outside (like gcrypt and lz4). It should improve portability. Instead of pushing JSON, XML and what's not to Eina, I do think that they will fit better in Emile. As for the naming of Emile, you will need to be French and say : "Un quoi ?" "Un serializer !" Regarding why it is put there in the stack. Right now there is two users of compression (eet and terminology), two users of cipher library (eet and ecore_con) and a few handful of user for serialization (eina, eet, efreet, ecore_con, ...). So the choice was quite simple, it needed to be below Eet. Now it could have been on top of Eo or integrated into Eina. One of the use case I am thinking of, is to compress Eo object when a canvas get hidden/minized. For that it require Eo to use that library and it can't be a higher level object. And with current implementation of Eo it is perfectly possible to implement such idea. So not at Eo level. As for Eina, I am starting to think it is getting to much things in its namespace. I do believe that infact Eina_Simple_XML and Eina_File should after all have landed in their own library. That's why I am putting the current logic in a new library. It is going to expand, I want it to provide an few SAX like parser for JSON, Eet_Data and protobuf with also an API like Eet_Data to directly feed those value into a C structure without using a DOM at all. It would also be the right place to experiment and benchmark for a new Eet_Data format that could be more efficient to use. So at the end, and due to how I see things going and being used, I do think it is better of in its own library.
2015-03-17 00:49:57 -07:00
pc/emile.pc \
pc/eet.pc \
pc/evas.pc \
pc/ecore.pc \
pc/ecore-con.pc \
pc/ecore-ipc.pc \
pc/ecore-file.pc \
pc/ecore-input.pc \
pc/ecore-input-evas.pc \
pc/ecore-imf.pc \
pc/ecore-imf-evas.pc \
pc/ecore-evas.pc \
pc/ecore-avahi.pc \
pc/ector.pc \
pc/embryo.pc \
pc/eio.pc \
pc/eldbus.pc \
pc/efreet.pc \
pc/efreet-mime.pc \
pc/efreet-trash.pc \
pc/edje.pc \
pc/emotion.pc \
pc/ethumb.pc \
pc/ethumb_client.pc \
pc/elocation.pc \
pc/elementary.pc
if HAVE_CXX11
pkgconfig_DATA += \
pc/eina-cxx.pc \
pc/evas-cxx.pc \
pc/ecore-cxx.pc \
pc/efl-cxx.pc \
pc/eolian-cxx.pc \
pc/edje-cxx.pc \
pc/eet-cxx.pc \
2015-04-05 06:19:45 -07:00
pc/eo-cxx.pc \
pc/eio-cxx.pc \
pc/elementary-cxx.pc
endif
if HAVE_ELUA
pkgconfig_DATA += pc/elua.pc
endif
if HAVE_JS
pkgconfig_DATA += \
pc/eolian-js.pc \
pc/efl-js.pc \
pc/eo-js.pc \
pc/eina-js.pc
endif
if BUILD_ENGINE_SOFTWARE_X11
pkgconfig_DATA += pc/evas-software-x11.pc
endif
if BUILD_ENGINE_FB
pkgconfig_DATA += pc/evas-fb.pc
endif
if BUILD_ENGINE_EGLFS
pkgconfig_DATA += pc/evas-eglfs.pc
endif
if BUILD_ENGINE_BUFFER
pkgconfig_DATA += pc/evas-software-buffer.pc
endif
if BUILD_ENGINE_GL_X11
pkgconfig_DATA += pc/evas-opengl-x11.pc
endif
if BUILD_ENGINE_GL_SDL
pkgconfig_DATA += pc/evas-opengl-sdl.pc
endif
if BUILD_ENGINE_GL_COCOA
pkgconfig_DATA += pc/evas-opengl-cocoa.pc
endif
if BUILD_ENGINE_SOFTWARE_GDI
pkgconfig_DATA += pc/evas-software-gdi.pc
endif
if BUILD_ENGINE_SOFTWARE_DDRAW
pkgconfig_DATA += pc/evas-software-ddraw.pc
endif
if BUILD_ENGINE_PSL1GHT
pkgconfig_DATA += pc/evas-psl1ght.pc
endif
if BUILD_ENGINE_WAYLAND_SHM
pkgconfig_DATA += pc/evas-wayland-shm.pc
endif
if BUILD_ENGINE_WAYLAND_EGL
pkgconfig_DATA += pc/evas-wayland-egl.pc
endif
if BUILD_ENGINE_DRM
pkgconfig_DATA += pc/evas-drm.pc
endif
if HAVE_ECORE_COCOA
pkgconfig_DATA += pc/ecore-cocoa.pc
endif
if HAVE_ECORE_FB
pkgconfig_DATA += pc/ecore-fb.pc
endif
if HAVE_ECORE_DRM
pkgconfig_DATA += pc/ecore-drm.pc
endif
if HAVE_PS3
pkgconfig_DATA += pc/ecore-psl1ght.pc
endif
if HAVE_ECORE_SDL
pkgconfig_DATA += pc/ecore-sdl.pc
endif
if HAVE_ECORE_WAYLAND
pkgconfig_DATA += pc/ecore-wayland.pc
endif
if HAVE_ECORE_WL2
pkgconfig_DATA += pc/ecore-wl2.pc
endif
if HAVE_WIN32
pkgconfig_DATA += pc/ecore-win32.pc
endif
if HAVE_ECORE_X
pkgconfig_DATA += pc/ecore-x.pc
endif
if HAVE_EEZE
pkgconfig_DATA += pc/eeze.pc
endif
if HAVE_EPHYSICS
pkgconfig_DATA += pc/ephysics.pc
endif
if HAVE_ECORE_AUDIO
pkgconfig_DATA += pc/ecore-audio.pc pc/ecore-audio-cxx.pc
endif
if HAVE_ECORE_BUFFER
pkgconfig_DATA += pc/ecore-buffer.pc
endif
if HAVE_ELPUT
pkgconfig_DATA += pc/elput.pc
endif
if HAVE_ECORE_DRM2
pkgconfig_DATA += pc/ecore-drm2.pc
endif
# Cmake configs:
2014-09-22 08:08:21 -07:00
efl_cmakeconfigdir = $(libdir)/cmake/Efl/
efl_cmakeconfig_DATA = \
cmakeconfig/EflConfig.cmake \
cmakeconfig/EflConfigVersion.cmake
eina_cmakeconfigdir = $(libdir)/cmake/Eina/
eina_cmakeconfig_DATA = \
cmakeconfig/EinaConfig.cmake \
cmakeconfig/EinaConfigVersion.cmake
eio_cmakeconfigdir = $(libdir)/cmake/Eio/
eio_cmakeconfig_DATA = \
cmakeconfig/EioConfig.cmake \
cmakeconfig/EioConfigVersion.cmake
eeze_cmakeconfigdir = $(libdir)/cmake/Eeze/
eeze_cmakeconfig_DATA = \
cmakeconfig/EezeConfig.cmake \
cmakeconfig/EezeConfigVersion.cmake
eo_cmakeconfigdir = $(libdir)/cmake/Eo/
eo_cmakeconfig_DATA = \
cmakeconfig/EoConfig.cmake \
cmakeconfig/EoConfigVersion.cmake
eolian_cmakeconfigdir = $(libdir)/cmake/Eolian/
eolian_cmakeconfig_DATA = \
cmakeconfig/EolianConfig.cmake \
cmakeconfig/EolianConfigVersion.cmake \
cmakeconfig/EolianHelper.cmake
eolian_cxx_cmakeconfigdir = $(libdir)/cmake/EolianCxx/
eolian_cxx_cmakeconfig_DATA = \
cmakeconfig/EolianCxxConfig.cmake \
cmakeconfig/EolianCxxConfigVersion.cmake
eina_cxx_cmakeconfigdir = $(libdir)/cmake/EinaCxx/
eina_cxx_cmakeconfig_DATA = \
cmakeconfig/EinaCxxConfig.cmake \
cmakeconfig/EinaCxxConfigVersion.cmake
eo_cxx_cmakeconfigdir = $(libdir)/cmake/EoCxx/
eo_cxx_cmakeconfig_DATA = \
cmakeconfig/EoCxxConfig.cmake \
cmakeconfig/EoCxxConfigVersion.cmake
ecore_cxx_cmakeconfigdir = $(libdir)/cmake/EcoreCxx/
ecore_cxx_cmakeconfig_DATA = \
cmakeconfig/EcoreCxxConfig.cmake \
cmakeconfig/EcoreCxxConfigVersion.cmake
evas_cxx_cmakeconfigdir = $(libdir)/cmake/EvasCxx/
evas_cxx_cmakeconfig_DATA = \
cmakeconfig/EvasCxxConfig.cmake \
cmakeconfig/EvasCxxConfigVersion.cmake
eet_cxx_cmakeconfigdir = $(libdir)/cmake/EetCxx/
eet_cxx_cmakeconfig_DATA = \
cmakeconfig/EetCxxConfig.cmake \
cmakeconfig/EetCxxConfigVersion.cmake
eet_cmakeconfigdir = $(libdir)/cmake/Eet/
eet_cmakeconfig_DATA = \
cmakeconfig/EetConfig.cmake \
cmakeconfig/EetConfigVersion.cmake
evas_cmakeconfigdir = $(libdir)/cmake/Evas/
evas_cmakeconfig_DATA = \
cmakeconfig/EvasConfig.cmake \
cmakeconfig/EvasConfigVersion.cmake
ecore_cmakeconfigdir = $(libdir)/cmake/Ecore/
ecore_cmakeconfig_DATA = \
cmakeconfig/EcoreConfig.cmake \
cmakeconfig/EcoreConfigVersion.cmake
edje_cmakeconfigdir = $(libdir)/cmake/Edje/
edje_cmakeconfig_DATA = \
cmakeconfig/EdjeConfig.cmake \
cmakeconfig/EdjeConfigVersion.cmake
eldbus_cmakeconfigdir = $(libdir)/cmake/Eldbus/
eldbus_cmakeconfig_DATA = \
cmakeconfig/EldbusConfig.cmake \
cmakeconfig/EldbusConfigVersion.cmake
efreet_cmakeconfigdir = $(libdir)/cmake/Efreet/
efreet_cmakeconfig_DATA = \
cmakeconfig/EfreetConfig.cmake \
cmakeconfig/EfreetConfigVersion.cmake
ethumb_cmakeconfigdir = $(libdir)/cmake/Ethumb/
ethumb_cmakeconfig_DATA = \
cmakeconfig/EthumbConfig.cmake \
cmakeconfig/EthumbConfigVersion.cmake
ethumbclient_cmakeconfigdir = $(libdir)/cmake/EthumbClient/
ethumbclient_cmakeconfig_DATA = \
cmakeconfig/EthumbClientConfig.cmake \
cmakeconfig/EthumbClientConfigVersion.cmake
cmakeconfigdir = $(libdir)/cmake/Elementary
cmakeconfig_DATA = \
cmakeconfig/ElementaryConfig.cmake \
cmakeconfig/ElementaryConfigVersion.cmake
emotion_cmakeconfigdir = $(libdir)/cmake/Emotion/
emotion_cmakeconfig_DATA = \
cmakeconfig/EmotionConfig.cmake \
cmakeconfig/EmotionConfigVersion.cmake
elua_cmakeconfigdir = $(libdir)/cmake/Elua
elua_cmakeconfig_DATA = \
cmakeconfig/EluaConfig.cmake \
cmakeconfig/EluaConfigVersion.cmake
emile_cmakeconfigdir = $(libdir)/cmake/Emile
emile_cmakeconfig_DATA = \
cmakeconfig/EmileConfig.cmake \
cmakeconfig/EmileConfigVersion.cmake
# D-Bus services:
servicedir = @dbusservicedir@
service_DATA = \
dbus-services/org.enlightenment.Ethumb.service
if HAVE_SYSTEMD_USER_SESSION
systemdunitsdir = @USER_SESSION_DIR@
systemdunits_DATA = \
systemd-services/ethumb.service
endif
EXTRA_DIST += $(systemdunits_DATA)
.PHONY: doc benchmark examples install-examples
# Documentation
doc:
@echo "entering doc/"
$(MAKE) $(AM_MAKEFLAGS) -C doc doc
# Unit tests
if EFL_ENABLE_COVERAGE
lcov-reset:
@rm -rf $(top_builddir)/coverage
@find $(top_builddir) -name "*.gcda" -delete
@lcov --zerocounters --directory $(top_builddir)
lcov-baseline:
$(MKDIR_P) $(top_builddir)/coverage
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
lcov-report:
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
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
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
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
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
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
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
genhtml --config-file .lcov-config --legend -t "$(PACKAGE_STRING)" -o $(top_builddir)/coverage/html $(top_builddir)/coverage/coverage.cleaned5.info
@echo "Coverage Report at $(top_builddir)/coverage/html"
endif
if EFL_ENABLE_TESTS
lcov-check:
if EFL_ENABLE_COVERAGE
@$(MAKE) $(AM_MAKEFLAGS) lcov-reset
@$(MAKE) $(AM_MAKEFLAGS) lcov-baseline
endif
@$(MAKE) $(AM_MAKEFLAGS) check
if EFL_ENABLE_COVERAGE
@$(MAKE) $(AM_MAKEFLAGS) lcov-report
endif
check-build:
@$(MAKE) $(AM_MAKEFLAGS) -C src check-build
endif
# benchmark
benchmark:
@$(MAKE) $(AM_MAKEFLAGS) -C src benchmark
$(MKDIR_P) benchmark
2012-09-25 23:56:52 -07:00
@cd benchmark && ../src/benchmarks/eo/eo_bench$(EXEEXT) `date +%F_%s`
# examples
examples:
@$(MAKE) $(AM_MAKEFLAGS) -C src examples
install-examples:
@$(MAKE) $(AM_MAKEFLAGS) -C src install-examples
pkgbuild::
@echo "making arch packages"
makepkg -f -p $(top_builddir)/pkgbuild/PKGBUILD
# cleaning
clean-local:
rm -rf benchmark coverage
DISTCLEANFILES= \
./src/lib/emile/Makefile \
./src/lib/eo/Makefile \
./src/lib/eet/Makefile \
./src/lib/ecore/Makefile \
./src/lib/efl/Makefile \
./src/lib/eina/Makefile \
./src/lib/eio/Makefile \
./src/lib/elementary/Makefile \
./src/lib/ector/Makefile \
./src/lib/evil/Makefile \
./src/lib/edje/Makefile \
./src/lib/efl/Efl_Config.h \
./src/lib/eina/eina_config.h \
./src/lib/elementary/Elementary.h