Reverts 21da4a5454.
It is needed to generate Makevars in-tree even when building out-of-tree because of
how Autotools work. However, distcheck doesn't properly remove the Makevars file in
the generated distdir and makes po/ read only, preventing the build system from
generating an up-to-date version of Makevars. This commit adds the required hooks
needed to fix this behavior.
If you did do a make clean, then you couldn't do a make afterward. Reason
was that po/Makevars is generated by configure and not Makefile. So it can
only be cleaned with make distclean and not make clean.
This reverts commit 842e8e9fa0.
Scratching my head over this for a long time now. It sneaked in when
jenkins nightly builds which generates coverage reports was broken
due to newer gettext error handling. After that was fixed the build
kept being broken but now in coverage generation.
Finnaly found this change. Why was it done? Did you actually test it?
Coverage generation worked fine on my local system as well as on
jenkins when I worked on this. If it is broken for you we might need
to have another look, but not by breaking jenkins.
Summary:
Added HAVE_CXX11 guards to Makefile*.am files for C++ binding to avoid
compilation errors for examples when C++11 isn't supported. This also
disable installation of all EFL CXX pkgconfig files.
Reviewers: cedric, stefan, stefan_schmidt
CC: cedric, savio
Differential Revision: https://phab.enlightenment.org/D831
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
Summary:
Fixed distcheck for Eolian C++. Made the generated files as
nodist so it doesn't get picked up for generation way too
early.
Reviewers: cedric, seoz
CC: cedric
Maniphest Tasks: T1220
Differential Revision: https://phab.enlightenment.org/D820
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
Summary:
This patch adds 'eolian_cxx' -- a C++ bindings generator --
to the EFL tree. Eolian Cxx uses Eolian API to read .eo files and generate
.eo.hh. It relies/depends on Eo Cxx and Eina Cxx (both non-generated
bindings).
src/bin/eolian_cxx: The eolian_cxx program.
src/lib/eolian_cxx: A header-only library that implements the C++ code
generation that binds the .eo classes.
=Examples=
src/examples/eolian_cxx/eolian_cxx_simple_01.cc: The simplest example,
it just uses some "dummy" generated C++ classes.
src/examples/eolian_cxx/eolian_cxx_inherit_01.cc: Illustrates how
pure C++ classes inherit from .eo generated classes.
src/examples/evas/evas_cxx_rectangle.cc: More realistic example using
the generated bindings Evas Cxx. Still a bit shallow because we don't
have full fledged .eo descriptions yet, but will be improved.
=Important=
The generated code is not supported and not a stable API/ABI. It is
here to gather people interest and get review before we set things in
stone for release 1.11.
@feature
Reviewers: cedric, smohanty, raster, stefan_schmidt
CC: felipealmeida, JackDanielZ, cedric, stefan
Differential Revision: https://phab.enlightenment.org/D805
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
Mixing up the new eolian test with its generated eo_lexer code and a new
version of lcov like 1.10. It works fine with lcov 1.6.
The problem is that this combination somhow triggers a wrong file path
with filename NONE. It was only triggered when adding the eolian test
suite so its a combination here.
For now we use this bandaid to remove the broken files. Need to find a
way to report this to lcov upstream.
If the dbus service contains SystemdService entry and the dbus-daemon
is started with --systemd-activation, then requests for services on
the user session bus will be handled by systemd, creating cgroups and
being handled as native systemd services of Type=dbus.
The goal of this library is to make the life of C++ developers easier
when having to manipulate Eina datatype by providing a layer to abstract
those data type in C++. Check examples for now. Documentation will come
soon, but we are pushing that rather sooner to get feedback on those bindings.
As you will notice, this library is just composed of headers. There is no .so
and we do think it is better this way. Reducing ABI and API stability issue for
applications developers who are the primary target of this binding.
Also please note that you will need to have C++11 to use this binding.
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
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
This should make it easier for applications to use efl with cmake.
It seems to work with my tests. It's ugly and redundant but it's the first
step. Not all the components are supported at the moment.
SVN revision: 83637
Seems AC_PATH_GENERIC() wasn't present somewhere, then I'm adding the
AM_PATH_LIBGCRYPT() provided by libcrypt (I need to include it in m4/
otherwise it will fail for people doing ./autogen.sh without libgcrypt
installed).
It works on my machine, but `libgcrypt-config --libs` output is just
"-lgcrypt -lgpg-error", including no -L.
SVN revision: 82939
Some engines are disabled by default, yet they should be checked
before the release. I'd say everything should be tested by make
distcheck, but these are very common:
- xine
- sdl
- harfbuzz
Maybe add wayland, gesture and xinput22 (X) to the list?
SVN revision: 82898
Instead of just making our own "check-local" and calling the binaries
ourselves, just append them into "TESTS" variable. Then they run after
all check_PROGRAMS are compiled.
The reasons for changing are:
1) If we change the test and call "make check" the test is not
compiled again -- and the only way to compile it is to "make clean".
2) There's no need to reinvent the wheel here.
With a recent version of Automake, the test output is redirected to log
files. This is good but unexpected for whom was used to the previous
way. So, be warned.
SVN revision: 82841
automake will already print a message so we can keep track where we
are.
this should help people that click terminology and accidentally clicks
the directory opening the file manager.
SVN revision: 82688
This one was a painful bitch. The edbus2 port was quite broken, mainly
leaking eina_stringshare and also not adding the '\0' to the strings
that are represented as bytearray (paths cannot be utf8 to avoid
translations).
Emotion plugin was also quite bogus and the video thumbnail as edje
(animated) is not working yet due bug in Edje_Edit api -- someone
needs to investigate this, seems strange.
Emotion plugin also had a bug that it was deleting the object from
inside object callback.
Now it seems to work. Please report if it does not.
SVN revision: 82675
this one was quite a huge work, but hopefully it's correct.
NOTES:
* removed vlc generic module, it should go into a separate package.
* gstreamer is enabled by default (see --disable-gstreamer)
* xine is disabled by default (see --enable-gstreamer)
* generic is always built statically if supported
* gstreamer and xine can't be configured as static (just lacks command line options, build system supports it)
* v4l2 is enabled by default on linux if eeze is built (see --disable-v4l2)
* emotion_test moved to src/tests/emotion and depends on EFL_ENABLE_TESTS (--with-tests), but is still installed if enabled.
TODO (need your help!):
* fix warnings with gstreamer and xine engine
* call engine shutdown functions if building as static
* remove direct usage of PACKAGE_*_DIR and use eina_prefix
* add eina_prefix checkme file as evas and others
* add support for $EFL_RUN_IN_TREE
* create separate package for emotion_generic_modules
* check docs hierarchy (doxygen is segv'in here)
SVN revision: 82501