will be used to handle i18n for lua files in EFL (because only gettext 0.18.3+ supports Lua) and it'll be usable standalone too, it will also be able of handling more things than lua support in xgettext does (e.g. concatenated string literals will be considered one string)
Elua is a LuaJIT based runtime for the EFL meant to provide facilities for rapid application development. The name is temporary. The EFL bindings will be generated with Eolian. @feature
This allows people to disable the building of anything GUI related.
In my case, it is used for servers.
I encourage anyone that think they can do a better patch to improve it,
as i dislike having to add all those AM_CONDITIONAL().
Maybe the macros should be improved.
Summary:
Vanish with these:
src/Makefile_Eolian_Helper.am:15: warning: '%'-style pattern rules are a GNU make extension
src/Makefile.am:36: 'src/Makefile_Eolian.am' included from here
src/Makefile_Eolian.am:42: 'src/Makefile_Eolian_Helper.am' included from here
src/Makefile_Eolian_Helper.am:18: warning: '%'-style pattern rules are a GNU make extension
src/Makefile.am:36: 'src/Makefile_Eolian.am' included from here
src/Makefile_Eolian.am:42: 'src/Makefile_Eolian_Helper.am' included from here
src/Makefile_Eolian_Helper.am:21: warning: '%'-style pattern rules are a GNU make extension
Reviewers: tasn, cedric
CC: JackDanielZ, smohanty, felipealmeida, raster, cedric
Differential Revision: https://phab.enlightenment.org/D894
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
Summary:
EFL_PTHREAD_CFLAGS are needed for tests and users that use
efl::eina::thread's and EFL_PTHREAD_LIBS to eina_cxx, eo and evas examples.
Reviewers: cedric, stefan, stefan_schmidt
CC: cedric, savio
Differential Revision: https://phab.enlightenment.org/D832
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
Summary:
This patch fixes T1226 by adding a Makefile.examples to
examples/eolian_cxx. It also fixes a bug in bin/eolian_cxx: the
include paths were not being correctly generated for directories
outside EFL tree.
Reviewers: cedric, smohanty, stefan_schmidt, stefan
CC: uartie, wayland-efl, felipealmeida, raster, woohyun, cedric
Maniphest Tasks: T1226
Differential Revision: https://phab.enlightenment.org/D824
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>
We only support the Wayland EGL engine build with OpenGL ES but not full
OpenGL. Reflect this in our configure to avoid compile errors after a
successful configure run. Fixes T1202
@fix
Since Lua is already a dependency for Edje, I believe it is safe
to add it as a dependency for Evas as well.
This will be used to replace the (bad) scripting language used for
the Evas filters (text effects).
Enable 3D features using --enable-evas-3d=yes when configuring.
APIs are exposed through Evas_3D.h.
Currently, evas-3d is being supported only on gl_x11 engine.
Conflicts:
src/lib/evas/Evas_Eo.h
Due to the amount of generated debug messages from eolion generation
we end up with 3.8GB log files for elm builds when efl was build with
coverage enabled. Temporary disable this until eolion is fixed and
we can turn it on again.
Added eet into internal dependencies for ecore_evas_connect, ethumb, ethumb_client
I got below errors for ecore_evas_connect, ethumb, ethumb_client
lib/evas/.libs/libevas.so: undefined reference to `eet_data_image_colorspace_get'
lib/evas/.libs/libevas.so: undefined reference to `eet_data_image_read_to_cspace_surface_cipher'
collect2: error: ld returned 1 exit status
The autogenerated check macro by autotools lead to a huge number of file
being added on the command line of a script, when the only things it does
is to test for the definition of those strings.
Hoping this is going to fix the problem. If that doesn't we will need to write
our own CHECK macro here.
The TGV file format is specifically created for Evas. It is designed to allow
region decompression and parallele decompression with a fast path for GPU that
do handle ETC1 compression. Plan for adding other compression method will come
later.
To build SDL with OpenGL ES we need a SDL version which ships these headers
which only starts with SDL 2.x. So we only allow it for full OpenGL right
now until someone wants to port our code over to SDL 2.x
Fixes T856
@fix
configure: fix prerequisite header issue
Summary:
in some platforms like openBSD <sys/socket.h> must be included before
net/if.h
the canonical way to ensure that with autotools is by providing that
fourth directive.
evas: use MAP_ANON instead of MAP_ANONYMOUS
Stupid unpredictable standards (or not so standard).
MAP_ANON exists and is defined almost anywhere unlike MAP_ANONYMOUS
Let's use that for portability's sake (they are practically identical
anyway)
Reviewers: raster, cedric
Reviewed By: cedric
CC: cedric
Differential Revision: https://phab.enlightenment.org/D616
Signed-off-by: Cedric BAIL <cedric.bail@free.fr>
@feature: Add xkbcommon as a dependency for ecore_drm so we can
process input keys
In order for keyboard input to work for ecore_evas_drm, we will need
to translate keypress events into meaningful key names, so require
xkbcommon to deal with the translation.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Some people (I'm one of them) will do user-local builds of EFL and
don't want to install services in /usr, or provide links, rather
choosing to install in ~/.local/share/dbus-1. Then figure out this
case and do not show an alert when the setup is ready.
As we mention $XDG_DATA_DIRS in our alert, we should not do the alert
when the user follows its recommendation. This is now checked.
And handle systemd services if they are used.
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.
Added edje into internal dependencies for ethumb_client.
I got below error.
/usr/elocal/lib/libedje.so.1: undefined reference to `evas_object_line_class_get'
collect2: error: ld returned 1 exit status
make[4]: *** [bin/ethumb_client/ethumbd] Error 1
make[4]: *** Waiting for unfinished jobs....
@bugfix: Drm is optional, so ecore-evas should not internally depend
on it unless ecore-drm is found.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Instead of relying on ${prefix}/share to be the default for ${datadir} or
${dbusservicedir} use the actual paths where the files will be placed.
Somewhat tricky because of autoconfs desire to keep prefix changeable but
continuously evaluating the variables until they don't change work.
Reviewers: raster, englebass
Reviewed By: raster
CC: cedric, stefan_schmidt
Differential Revision: https://phab.enlightenment.org/D581
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>
now that we don't load modules from user dirs anymore - just system,
we can nuke os/arch from module dir and just keep version. since abi
for a module should be stable for a 1.X release series, we dont need
micro, just 1.9 (or 1.10 etc.). this makes thnigs a bit cleaner and
simpler for emotion_generic_players
It is to fix possible build break of ethumb
I got below message.
lib/edje/.libs/libedje.so: undefined reference to `ecore_imf_context_retrieve_selection_callback_set'
collect2: error: ld returned 1 exit status
make[4]: *** [bin/ethumb/ethumb] Error 1
apparently I read the commit order wrong and this fix went in for 1.4.0, not 1.3.2, which means anyone who has 1.3.2 has been having lots of fun crashes for the past 24 hours
this was a fixme which was likely written sometime before July 2010 when the bug was fixed, just prior to the 1.3.1 release. I think it's probably okay to require that release since it's been 3+ years.
ac_cv_prog_cc_c99 being empty just means there is no need to add
any flags for the compiler to be C99-capable.
"no" means the compiler isn't C99-capable.
The check is actually unnecessary as EFL demands a C99-capable
compiler these days but if that every changes ...
Reviewers: zmike
CC: cedric
Differential Revision: https://phab.enlightenment.org/D443
Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
Some commits to port emotion to GStreamer 1.0 and implement some missing features,
clean up code a bit and fix some bugs on the way.
This works as good as the 0.10 code for me now with the emotion examples,
just the Samsung hardware specific code is commented out. This should be
ported by someone who has such hardware, and also in a clean way now that
GStreamer since 1.0 has features to handle all this properly.
There's still a lot of potential to clean things up and fix many bugs, and also
to implement zerocopy rendering. But those are for later if there's actual
interest in this at all.
Commits:
- Update configure checks and ecore example to GStreamer 1.0
- Initial port of emotion to GStreamer 1.0
- Samsung specific code commented out, should be ported by someone
with the hardware.
- Return GST_FLOW_FLUSHING when the sink is unlocked
- Remove unused GSignal from the sink
- Use GstVideoInfo to store the format details inside the sink
- Add support for pixel-aspect-ratio
- Store video format information in GstVideoInfo for the different video streams
- Use GstAudioInfo to store the audio format information
- Remove some unused defines
- Header cleanup
- Implement initial support for GstNavigation interface
- Implement setting of audio/video channel
Reviewers: cedric
CC: cedric
Differential Revision: https://phab.enlightenment.org/D387
Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
This reverts commit d93c4b2307.
Auto is not an option, and does not mean it'll be automatically
detected.
What auto means is that unless explicitly enabled/disabled it'll check
according to the build profile and will enable it automatically if using
the dev profile.
string identifying the build (vendor, maintainer, etc). It defines
EFL_BUILD_ID with default to "none". It can be used by applications
or for bug reports by including Efl_Config.h
Differential Revision: https://phab.enlightenment.org/D288
We need the wayland-scanner program to auto-generate the
subsurface protocol source files from subsurface.xml
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
this makes curl support a pure runtime-only thing. libcurl is loaded by
eina_module (dlopen/dlsym) when curl is actually first needed (when a
url connection/object is created). this means that ecore-con has no
link or compile dependencies on curl, only runtime, AND this saves
memory (due to curl inits using apparently a chunk of private pages).
so this saves memory and moves the dependency to runtime (though still
consider libcurl a dependency of efl - but like a binary executed,
it's at runtime).
So current order is :
- __builtin_bswap*() for compiler that provide it
- _byteswap_*() for MSVC
- bswap_*() for older Linux and some BSD
- own C code when everything else fall appart.
The reason for this order is that the builtin will always generate
the best assembly possible. On my system bswap_*() are not changing
in all version to the best solution as they are almost equivalent to
the C macro.
This add finally support for JPEG 2000, but be aware that libopenjpeg
is very badly managed. There is currently only version 1.5.x that does
provide the right files, is usable by a third party and portable. You
can seriously forget any other version.
Ecore_Evas_Drm will rely on Eeze for drm device discovery, so we need
to check for eeze requirements before ecore_evas.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Allow ecore-wayland to be configured and compiled with xkbcommon 0.3.0.
Ecore-wayland does not use any of the new APIs in 0.3.1 nor is it exposed
to the bug that was fixed in 0.3.1.
Most distros don't include xkbcommon > 0.3.0 yet. Thus, if 0.3.1 is
required right now, then everyone is forced to build xkbcommon, too,
which contributes to dependency *madness*. Of course, anyone is still
welcome to build and link to xkbcommon 0.3.1 at will.
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
Reviewers: devilhorns, antognolli
Reviewed By: devilhorns
Differential Revision: https://phab.enlightenment.org/D203
Ecore will now load "system modules" on ecore_init(). The "systemd"
module will use DBus to monitor localed, hostnamed and timedated and
add system events related to those changes.
configure command:
./configure --disable-ecore-con --disable-curl --with-glib=no --with-crypto=none
EFL_CRYPTO_DEPEND macro appends the crypto libraries to the ECORE_CON dependency list.
In case the ECORE_CON dependency list and the build_crypto are both empty
the resulting list will only contain " ", resulting in an error
configure: error: Package requirements ( ) were not met:
Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
Recent clang breaks with linking errors:
lib/eina/.libs/libeina.so: undefined reference to `shm_open'
so fix.
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
Add an input method module supporting the Wayland input method protocol.
In v2:
- Missing call to ecore_wl_shutdown() in im_module_shutdown()
- Access the already stored 'wayland globals' with ecore_wl_globals_get()
- Fixed compilation by adding -I(top_srcdir)/src/efl to CFLAGS
- EFL formatting fixes
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
Summary: This feature replaces Eo pointers with ids to prevent bad usage
or reuse of these pointers. It doesn't change API.
The mechanism uses tables storing the real pointers to the objects.
See the src/lib/eo/eo_ptr_indirection.c file for more details on the
mechanism.
Now instead of having ifdefs in the .c files we just don't compile the
ones we don't need. Much cleaner.
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
* Use Eina_Hash instead of Eina_List to remember what memory did change.
* Turn off Eina_Cow use of Eina_Magic when doing a release as it is only
used internaly and we should not make any mistake there.
NOTE: if you start your process with Systemd it will automatically use
Journald API. You will need to overide the default logging function to
change that behavior.
in a move which is sure to make me hugely unpopular once again, I'm blacklisting a huge number of gnutls versions which I can't compile because at least some of them are 100% broken and will not work. the rage forecast is looking to see some hot winds blowing in from the debian/ubuntu quagmires, though users from more modern regions are not likely to notice any changes
- Pass EVIL_CFLAGS to C++ compiled files (needed for -DEF_EVIL_BUILD)
- Some warning flags should not be passed to C++ compiler, so put them in another variable
Be careful, systemd socket activation require you to always order
server socket creation in the same order as defined in the unit file.
This means ecore_con_server_add should always been in the same order
for those of them using systemd socket activation.
Support for older system that don't come with libmount or have
an older libmount. This is a backport from Eeze 1.7 tree. There
is no code change there.
That work clearly was possible thanks to Leandro. If you want more information
go to his blog : http://tia.mat.br/posts/async_io_with_coroutines/ .
The main difference with his implementation is more portable and not thread safe.
It does not have a custom swapcontext (would make sense as we don't need to save
the sigcontext) so it will be less fast. If people are ready to contribute asm
patch for that purpose I will be happy to apply them.
As for portability this code should work on all architecture we already support
thanks to a nice hack with setjmp/longjmp borowed from libcoroutine. We do use
Fiber for Windows support, but as 1.8 is completely borken in that regard, this
is theorical work only.
Thinks left to do :
- Eoify the API
- Documentation
- More tests
- Add support for coroutine in fd handler
- Add coroutine support to ecore_thread api
- Write some example
Signal are not a portable way to detect memory mapped file corruption.
So let's disable it for system without signal and later find a way to
detect it on other system.
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 autoconf is stupid and cannot agree on a single variable to
store stuff, if you give ./configure CXX=bla it will change
everything.
Relax the test and just use CXX, if it's set, believe it's usable.
SVN revision: 83008
strange that nobody except hdante noticed this before, but it was
missing linkage with -lrt in libemotion (due generic being static) and
ecore_evas/extn.
SVN revision: 83007
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
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
eeze is just used on linux, where libmount exists and then we
shouldn't make this an option so we can rely on eeze's mount being
there.
(the code keeps the #ifdef's for a while, in case we need to revert that later)
SVN revision: 82901
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 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
This patch was brought to you by:
sed -i'' 's/svnversion/LC_ALL=C svnversion/' configure.ac
Anybody who has the entire trunk and branches around is welcome to apply an analogue patches to it.
SVN revision: 82822
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 improves the tests on freebsd, which doesn't have clearenv() (
though this commit was untested on such environement). clearenv was
rejected from POSIX so we better aim to stop its usage. However since
tests use setenv() this may lead to leaks, but it's better a leak than a
failing test.
On Linux all tests that were passing continue to pass.
SVN revision: 82779
it was reported that AC_CHECK_FUNCS() couldn't work on netbsd because
dirfd is a macro and it would not properly evaluate int that
traditional test.
SVN revision: 82736
- they have no 'all' rule, keep out of SUBDIRS
- they depend on 'all-am', the non-recursive target that builds everything.
- they do not need a directory on its own to declare nothing.x
SVN revision: 82689
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
buffer is lightweight and dependency for many engines, merge it back
into core.
extn is a module on its own, and it's the only one linking to
ecore_ipc, no need to add that to ecore_evas.
minor cosmetic changes to configure to make output consistent.
SVN revision: 82648
* strings.h: is very useful, very old and very standard. The only place
that checks for that is simple_xml_parser and I have no idea why
SVN revision: 82576
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
* Split out ecore_imf_xim to do its own check
* Fixed problem with xcb's makekeys, no rule for
$(top_builddir)/src/utils/ecore/makekeys$(EXEEXT) exists so make
used an implicit rule (ignoring any cflags of course)
* Fixed gl_x11 engine to build with either Xlib or XCB (xcb flags were
missing)
* Added EFL_FIND_X and replace any used of AC_PATH_X{,TRA}. First
looks for Xorg pkg-config files then if those arn't found it falls
back to old AC_PATH_X. Also generalized common header and lib
checks. Could probably use some polishing (the AC_CACHE_VAL cruft
especially) but this is what I have time for tonight.
Now X11 should be found on non-standard locations by means of xmkmf,
--x-includes/--x-libraries and also pkg-config.
SVN revision: 82475
Weirdly enough raster turned PROGRAM cache on to fix a bug saying that
the other path was not tested, but from IN-EFL/edje/configure.ac CALC
cache was enabled and PROGRAM was disabled.
I kept the PROGRAM on and enabled CALC. Added fixed point as well.
Cedric, Raster: should we keep PROGRAM and CALC cache options if the
other path is not tested? Can't we assume they are always on? How much
memory these cache add? Can't this be reduced?
SVN revision: 82410
Tests are disabled by default, but they should be mandatory for
distcheck. So should be examples, we should have them to at least
compile.
As there is no way to force "make distcheck" to run "make examples",
I've created --enable-always-build-examples to make examples regular
noinst_PROGRAMS, being always compiled. distcheck will use that
option.
SVN revision: 82276
this is still in progress, mostly the multisense stuff is pending.
it seems that when we merge ecore_audio in edje the libremix and
similar are gone, at least from Edje, and will be in ecore_audio
itself (or pulseaudio).
Changes:
* __UNUSED__ to EINA_UNUSED
* binaries (epp, embryo_cc, edje_cc) now consider EFL_RUN_IN_TREE and
will assume the binaries are still not installed, running from
build tree location (needs more testing, maybe doesn't work with
srcdir != builddir, still doesn't solve cross compile builds)
SVN revision: 82139
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
va_list may be typedef'ed not only to array and pointer but also to a
plain struct. It could be made to work this way, but it's a lot simpler
a safer to not depend on it. To deal with the array corner case we copy
the va_list from the function arguments to the stack and call the "real"
function passing it.
SVN revision: 82017
As reported by Doug Newgard it was causing problems and seems this is
the reason. No idea why it works for me in the same
distro/autoconf/automake.
SVN revision: 81959
- fchmod() was isolated by HAVE_CHMOD, which was always present
before... then fchmod() is also present as no errors were reported
since its introduction.
- fchmod() is POSIX for a while now.
- lstat() is POSIX for a while now.
- setxattr is supported by EFL_CHECK_FUNCS() as is used by eina.
- splice() check added to EFL_CHECK_FUNCS()
SVN revision: 81938
some functions were being checked but their IFDEF not being handled,
others (getpwnam and getgrnam) were isolated in a code that is now
Windows, then no need to check them as well as these are POSIX.
SVN revision: 81934
okay, remove that print as it will always print sections removed from
PIC leftovers, etc.
keep the --gc-sections, it's useful to shrink binaries. Developers
willing to delete dead code can --print-gc-sections themselves.
SVN revision: 81920
seems that automake will parse LDFLAGS for -module and if it's not
present it will complain about name not starting with 'lib'.
seems my last try was without NOCONFIGURE=1 and autogen continued to
the old ./configure, that printed lots of messages and the error went
unnoticed
SVN revision: 81917
- 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
* -fvisibility=hidden will hide symbols not marked with EAPI in the
final binary (so/executable).
* -ffunction-sections and -fdata-sections will split those into
independent elf sections, then we can -Wl,--gc-sections for those
that are unused. During development --Wl,--print-gc-sections will
warn us of functions that are left unused and were collected.
SVN revision: 81906
note: dns.c were already emitting warnings regarding shadow, so I
removed the flag to quiet override-init. It will a bit louder, but
then we remember it would be better to rewrite this dns in proper EFL.
SVN revision: 81905
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
in some cases libtool would build 2 versions, pic for shared and
no-pic for static. Make sure we just build one as pic is good enough.
NOTE: this is only used on supported platforms.
SVN revision: 81902
weird enough to build with memcheck.h you just need valgrind's CFLAGS,
not its libraries as they are not supposed to be used like that,
throwing many bgPlain_ errors (vgPlain_tl_pre_clo_init,
vgPlain_free...) from libcoregrind-x86-linux.a
SVN revision: 81901
From Autobook: http://www.sourceware.org/autobook/autobook/autobook_85.html
libtool will build executables suitable for copying into their
respective installation destinations, obviating the need for
relinking them on those hosts which would have required
it. Whenever libtool links an executable which uses shared
libraries, it also creates a wrapper script which ensures that the
environment is correct for loading the correct libraries, See
section 10.5 Executing Uninstalled Binaries. On those hosts which
require it, the wrapper script will also relink the executable in
the build tree if you attempt to run it from there before
installation.
Sometimes this behaviour is not what you want, particularly if you
are developing the package and not installing between test
compilations. By passing `--disable-fast-install', the default
behaviour is reversed; executables will be built so that they can
be run from the build tree without relinking, but during
installation they may be relinked.
The user may still override this default, depending on platform
support, by specifying --enable-fast-install to configure.
NOTE: In my measurements it made no difference in install time either.
SVN revision: 81900
Most systems will never ever need the static builds of EFL, and it
doubles the compilation time (4m36s x 2m48s on my laptop). Then
disable it by default.
The user may still override this default by specifying --enable-static
to configure.
SVN revision: 81898
- moved up, closer to wayland, so it's before ecore_evas (which is
large and still messy)
- pulseaudio and sndfile checks are strict
- pulseaudio is enabled by default
- sndfile is mandatory
SVN revision: 81812
what the hell pass_through has to do with enabling a default mempool I
have no idea, so make it closer to the config.h variable name.
SVN revision: 81802
It's better than nothing, I don't know what the proper fix is.
FRIBIDI_CFLAGS just doesn't exist. Doesn't that macro we use call
PKG_CHECK_MODULES?
SVN revision: 81385
Disabled by default, enable with --enable-audio
ALSA support is disabled as it is not there yet. Pulseaudio should work
though.
Support for .ogg and .wav is there as well (.mp3 is not)
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
SVN revision: 81000
instead of -DHAVE_ECORE_X_XCB in the pc, which is a super-hack, add a
proper compile-time generated ecore_x_version.h that is included by
Ecore_X.h
This file contains HAVE_ECORE_X_XLIB or HAVE_ECORE_X_XCB defined and
will also define ECORE_X_VERSION_MAJOR and ECORE_X_VERSION_MINOR as
per other EFL (Ecore), also defining the runtime version in
Ecore_X_Version.
SVN revision: 80524
Many changes in this commit, but overall it should work. If not let me
know.
* ECORE_CHECK_X_EXTENSION() will now fail if Xlib extension is not found.
* remove usage of ECORE_EVAS_CHECK_MODULE(), using the simplified
ECORE_EVAS_MODULE()
* EVAS_CHECK_ENGINE() will not declare an option anymore.
* fixed --with-x11 and --with-opengl regarding defaults.
* fixed typo in EVAS_STATIC_BUILD_SOFTWARE_X11 -> XLIB conditional
* simplified Xi2 and Xgestures support under --enable-gesture. Let me
know if these should be checked separately.
* remove every other X extension option, they are all forced by
now. If no major showstopper appears with this we may remove all
the #ifdef in the code!
If there is something broken, let me know.
Next on the list for the weekend is to finish the option checks for
SDL, Wayland-EGL, Cocoa and similar.
SVN revision: 80505