sneaky hidden m4 rule to ADD -release to shared lib names IF profile
!= dev profile. come on! why do that? seriously. this snuck in and was
undetected because i recompiled things against efl and thus things
linked against the new releasename libs. this requires an efl 1.8.1.
argh!
Summary:
* efl.m4: add support for xterm-256color and fix display for the bsd echo. Fix autotools issue (present on Ubuntu also, but better handled).
* doc/Makefile.am: bsd echo may not handle -n option in sh
Reviewers: cedric
CC: cedric, seoz
Differential Revision: https://phab.enlightenment.org/D329
Just use the lib/name/libname.la as libtool should be responsible to
emit dependencies to compiler when it evaluates.
This should reduce over-linking, also reducing the compile lines in
our verbose builds ;-)
NOTE: this seems to work on Fedora 18 (which also bitch about DSO), so
hopefully works on Debian and Ubuntu (and elsewhere).
Please revert if breaks builds!
SVN revision: 83105
linker (ld) is that kind of tool that argument order matters, if you
-Wl,--as-needed, it will be worth just for libraries following
it. Then we need to use EFL_LDFLAGS before everything else, otherwise
it end being useless.
SVN revision: 82991
EFL_ADD_FEATURE(PKG, NAME, [VALUE]) will do an amazing work to produce
colored output in a standard way.
if value == yes, it's green and shows "+name"
if value == no, it's red and shows "-name"
else it shows cyan and shows "name=value"
if not provided, will use ${have_name:-${want_name}}
SVN revision: 82976
when I fixed eina's dependency on -lpthread I used all the libraries
eina links to. But we should just do with -lpthread as it's a public
dependency... that was in eina.pc.in and I missed.
Now we have EFL_ADD_PUBLIC_LIBS() that will register for
requirements_public_libs_name and use internally when eina is used.
This should also fix the problem by Arvind with gcrypt.
SVN revision: 82942
some libraries will need to pull more than its own .so, for example
Eina.h includes eina_lock.h that includes eina_inline_lock_posix.x
that will use pthread calls directly from user code.
This was already listed in eina.pc, but not being present in
USE_EINA_LIBS.
SVN revision: 82909
Introduces EFL_VERSION() to make it simpler to define our version. The
last parameter is the release status, defaults to 'dev' for
development purposes and may be set to something else to be a
snapshot. It non-empty will be given to libtool's -release.
As EFL_VERSION() must be done *before* AC_INIT(), we need to create
another macro to do the AC_SUBST() and AC_DEFINE(). This is
EFL_INIT. And no, we can't just call AC_INIT() from inside EFL_INIT().
Last but not least, we had a problem with our libtool version-info. It
was being calculated as MAJOR + MINOR, right now 1 + 7 = 8. But as
soon as we get to MAJOR=2 and MINOR=0, we get into problems. This was
fixed by rewriting as (MAJOR * 100 + MINOR), but this is still
problematic.
According to libtool's manual (info libtool), we shouldn't bind the
version-info with package info, instead doing the 'release'
field. Pretty likely we'll do worse than expected by distros and
binary packages in future :-/
SVN revision: 82891
Instead of -I$(top_srcdir)... -I$(top_builddir)... and then do it for
the .la, use the EFL_ macros to generate the contents to be used in
automake files.
There is a nasty bit that libtool will parse Makefile*.am and will not
get _DEPENDENCIES from _LIBADD and _LDADD if these are in
@REPLACEMENT@. To solve this we must explicitly set _DEPENDENCIES. The
contents of this is almost the same as _LIBADD or _LDADD with the
"_INTERNAL_" replacement name.
I hope the code will be result will be shorter and consistent as there
is less places to change when we add/remove dependencies.
Statistics are quite impressive (diffstat):
{{{
37 files changed, 663 insertions(+), 1599 deletions(-)
}}}
SVN revision: 82785
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
Changes also in this commit:
* fix missing EAPI in symbols used by modules
* removed old libudev and libmount support as agreed by discomfitor/zmike
* replaced __UNUSED__ with EINA_UNUSED
* fixed docs hierarchy
SVN revision: 82100
- remove EFL_LIBS and EFL_CFLAGS, use per-lib values that inherit
from EFL (general)
- add NAME_LDFLAGS and EFL_LDFLAGS for linker flags.
- LDADD (binaries) now use NAME_LDFLAGS instead of NAME_LIBS, as they
link to libname.la and that will pull in the libtool dependencies
SVN revision: 81915
added couple of macros:
- EFL_LIB_START(PKG): setup variables and replacements (AC_SUBST),
prints started checks
- EFL_LIB_END(PKG): prints ended checks
- EFL_LIB_START_OPTIONAL(PKG, TEST): wraps EFL_LIB_START() with a
conditional test. defines AC_DEFINE(HAVE_PKG).
- EFL_LIB_END_OPTIONAL(PKG): wraps EFL_LIB_END() with a conditional
test, defines AM_CONDITIONAL(HAVE_PKG).
SVN revision: 81903
instead of replicating common patterns all around, let's use the
common patterns as m4 macros.
EFL_DEPEND_PKG() will use pkg-config and add the dependency.
EFL_OPTIONAL_DEPEND_PKG() will use the former, but also defines
have_XYZ and does the if statement for you.
SVN revision: 80402