Commit Graph

171 Commits

Author SHA1 Message Date
Andrey Gursky 0102cf663e Fix build if openjpeg-2 is installed
libopenjp2.so on Debian belongs actually to openjpeg-2.1, while
libopenjpeg.so belongs to openjpeg-1.5.

The function opj_set_default_decoder_parameters exists in both versions.
Thus another unique to openjpeg-1.5 function must be chosen to check,
whether libopenjp2 is a right one.

Fixes https://phab.enlightenment.org/T3064
2016-01-18 10:11:30 +01:00
Vincent Torri 47ed848a87 Evil: integrate the dlfcn code into Evil
This will remove some incompatibilities with other packages,
especially for win-builds
2015-12-29 22:13:58 +09:00
Thomas Guillem afe6f5c3a1 emotion: add libvlc module
Summary:
Everything is implemented except visualization, mouse events and some
EMOTION_EVENT. Video can output RGBA, YUY2, YV12 or I420.

About the video sink: this emotion module use libvlc callbacks:
libvlc_video_set_format_callbacks and libvlc_video_set_callbacks. It may be
temporary. Indeed, an other solution is to add an Evas module inside vlc. But
this vlc module would need to link with emotion in order to use
_emotion_frame_new and _emotion_frame_resize private functions. I didn't
succeed to output a frame without these private functions: see
15daff4d3f

List of /* FIXME */:

 - Visualization not implemented since there is no API (for now) in libvlc.

 - Mouse events not implemented since there is no API (for now) in libvlc.

 - Some EMOTION_EVENT are not handled.

 - SIGSEGV in evas_gl_common_texture_nv12_update with
   EVAS_COLORSPACE_YCBCR420NV12601_PL colorspace.

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3071

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-09-21 23:19:20 +02:00
Daniel Kolesa 8f62e4f7ce eina_thread: non-linux fixes following latest changes 2015-09-11 13:50:03 +01:00
Carsten Haitzler 5625aac4d4 eina thread - add wrapper for setting thread name and fix affinity
added support to set thread names for debugging. this wraps the gnu
extension to set a thread name of up to 15 chars (16 inc nul byte).
eina_thread_name_set() is the new api.
@feature

in the process i found the autofoo wasnt enabling cpu affinity support
at all in reality, so i had to fix that at the same time.
2015-09-09 12:45:47 +09:00
Mike Frysinger f33a46ce17 use SDL2 everywhere
Some files were still including SDL-1 headers even though we only link
against SDL2 libs.

URL: https://bugs.gentoo.org/551882
Reported-by: Barnaby <badbit@me.com>
Reported-by: Romain Naour <romain.naour@openwide.fr>
2015-08-07 12:01:44 -04:00
Daniel Kolesa 0d44b94248 autotools: more cross platform dlfuncs/shm_open checks 2015-08-05 12:40:28 +01:00
Chris Michael cf1bd7e1ba evas_check_engine: Remove tests for specific version of EGL
Summary: As per cedric, remove tests for egl specific version(s) when
building wayland engines.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-08-04 11:38:21 -04:00
Nicolas Aguirre d990a7b12a Revert "Adds support of the eglfs module in the autotools config"
This reverts commit 3b2074aa71.
2015-08-03 14:34:57 +02:00
Florent Revest 3b2074aa71 Adds support of the eglfs module in the autotools config 2015-08-03 14:16:35 +02:00
Chris Michael 64d11ec806 efl: Move test for gl library to evas-gl-drm engine checks and Fix T2167
Summary: Since we won't need gl library unless we are building
evas-gl-drm engine, move the checks for with_opengl config option to
the gl_drm engine checking macro. Also, since gl_drm is ONLY supported
if we have --with-opengl=es configure option, let's error out with a
message if someone passes anything Other than with_opengl=es.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-22 09:20:30 -04:00
Jean-Philippe ANDRE f30c0ea399 Build: Fix horribly slow compilation times
Cedric, our dear b0rker, introduced changes in the CFLAGS
generation when merging Emile. While the changes seem to make sense
at first sight (add the -I flags for the lib our new package depends on),
they were actually a terribly bad workaround.

The number of CFLAGS args would grow exponentially, slowing down libtool
a lot, which is known to be slow when it has a lot of arguments.
2015-03-25 11:56:44 -07:00
Cedric BAIL 8cac4ce5e7 evas: use Emile to decode TGV. 2015-03-17 09:58:18 +01:00
Adrien Nader 2cb0c1cadc eina: remove Windows specific thread implementation and rely on posix compliant library instead. 2015-02-11 16:38:10 +01:00
Vincent Torri 546d87c8b5 autotools: remove some Windows CE bits.
We actually do not support Windows CE and don't plan to. Let's remove that
from our configure.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-24 12:33:27 +01:00
Mun, Gwan-gyeong d1b8d52e0e evas/gl_drm: add native surface for wayland_egl_client.
Reviewers: zmike, devilhorns, cedric, gwanglim

Reviewed By: cedric, gwanglim

Subscribers: jpeg, torori, cedric

Differential Revision: https://phab.enlightenment.org/D1507
2014-12-04 17:59:30 +09:00
Gwanglim Lee 00382bb6a6 gl-drm: Fix missing link to gbm for ecore_evas_drm and clean up build script
@fix

Summary:
This fixes following build script problems for ecore_evas_drm engine module.

1. Missing link to gbm for ecore_evas_drm if '--enable-gl-drm' option is given.
ecore_evas_drm engine is using gbm function if it builds with that config option.
To be more exact, ecore_evas_gl_drm_new_internal function needs gbm.
Thus we need to add gbm library linking '-lgbm' to ecore_evas_drm engine module
if '--enable-gl-drm' option is given. I've added this build script to
m4/ecore_check_module.m4 file.

2. Wrong gbm dependency check code in configure.ac
EFL_OPTIONAL_INTERNAL_DEPEND_PKG m4 macro function is designed for checking
dependency of efl internal libraries. Thus we should remove gbm pkg name when
configuring ecore_evas_drm engine module. It would be better to move dependency
check for gbm to m4/ecore_check_module.m4 file. And one more thing want_drm
value has to be changed to want_gl_drm in ECORE_EVAS_MODULE([gl-drm]...).

3. BUILD_ECORE_EVAS_OPENGL_DRM macro is always defined in configure.ac.
This kind of macro, BUILD_EFL_MODULE_NAME, has to be defined only if given module
is enabled. But this macro value was just defined with no test.
And it is even useless, we can use BUILD_ECORE_EVAS_GL_DRM macro which is defined
by ECORE_EVAS_MODULE([gl-drm], [${want_gl_drm}],...) function.
So I've removed that from configure.ac.

Test Plan:
1. Configure with --enable-gl-drm:
  $ ./autogen.sh --enable-drm --enable-gl-drm
2. Build:
  $ make && make install
3. Check module.so of ecore_evas_drm engine whether it has a library dependency with gbm:
  $ readelf -a $EFL_GIT/src/modules/ecore_evas/engines/drm/.libs/module.so | grep NEEDED

Reviewers: raster, stefan_schmidt, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1379
2014-08-28 13:37:28 -04:00
Cedric BAIL 49af128d5c autotools: actually put the macro at the right place. 2014-08-27 23:22:57 +02:00
Jean Guyomarc'h b50813f6e5 autotools: provide BSD-echo compatibility (fix c++ bindings)
Summary: The '-e' option does not exist in BSD-echo, nevertheless it behaves by default like the "echo -e" of the GNU-echo.

Reviewers: raster, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1376

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-08-27 22:31:20 +02:00
Jean Guyomarc'h f449f0ddb6 eina: port Eina_Spinlock for OSX
Summary: Support of Spinlocks in Eina (Eina_Spinlock) for OSX, which does not implement them in pthread.
@feature

Reviewers: raster, raoulh, naguirre, cedric, stefan_schmidt

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1151

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-08-21 12:04:53 +02:00
Mun, Gwan-gyeong f5b8109397 evas: add evas gl-drm engine
Summary: This is the first step to introduce a gl-drm backend.

Test Plan: "ecore evas" create with ecore_evas_gl_drm_new(). It creates "ecore evas" with gl_drm evas backend.
@feature

Reviewers: raster, Hermet, cedric, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1187

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-08-21 12:04:53 +02:00
Manuel Bachmann 1b6616cb3a autotools: do not link with libGL if we have "wayland-egl" without "gl"
If we have "wayland-egl" and choose to use another engine than "gl"
("glesv2" with "--with-opengl=es" e.g.), then we are in a case where
linking with libGL is not necessary. This is especially useful on a
pure Wayland system.

Signed-off-by: Manuel Bachmann <manuel.bachmann@open.eurogiciel.org>
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-19 08:22:50 -04:00
Mun Gwan-gyeong ac4074c4fa evas-wayland-egl: Fix segmentation fault on dynamic loaded gl related functions.
Summary:
@fix
Segfault in wayland_egl engine is casused by illegal library linking.
Fix this by linking to GLESv2 and EGL libraries.

Test Plan: N/A

Reviewers: devilhorns, raster, cedric, Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1332
2014-08-15 09:24:20 -04:00
Felipe Magno de Almeida 97cf6d0efb eina-cxx: Added test for inheriting constructors in the C++11 compiler
This adds the inheriting constructor feature test to the m4 macros to
avoid compilation of the C++11 binding in constructors without this
features, where they would unavoidably fail compilation. This
eliminates GCC 4.7.x since inheriting constructors were available only
from GCC 4.8 and forward.
2014-08-07 11:32:49 +02:00
Gwanglim Lee c4a1d26832 build/drm: Fix broken build from scratch and add missing library dependency for evas_drm engine
Summary:
This patch fixes following two problems:

1. libevas.so library has a dependency with ecore_drm if '--enable-drm' configure
option is given. This problem is due to 'EFL_INTERNAL_DEPEND_PKG([EVAS], [ecore-drm])'
in m4/evas_check_engine.m4 file. A dependency with ecore_drm should be moved to evas
drm engine not libevas.so. And also this macro makes an error while installation of evas.
 $ make uninstall; ./configure --enable-drm; make && make install

2. missing ecore_drm dependency for evas drm engine.
USE_ECORE_DRM_LIBS macro should be used for building evas drm engine with ecore_drm
library. ECORE_DRM_LIBS macro doesn't have 'libecore_drm.la'. It is used for building
ecore_drm library.
@fix

Fixes T1473

Test Plan:
1. Remove EFL libraries in installation path: $ make uninstall
2. Configure with --enable-drm: $ ./autogen.sh --enable-drm
3. $ make && make install
4. Check module.so of evas drm engine whether it has a library dependency with ecore_drm
  $ readelf -a $EFL_GIT/src/modules/evas/engines/drm/.libs/module.so | grep NEEDED
  $ readelf -a $INSTALL_PATH/lib/evas/modules/engines/drm/v-1.11/module.so | grep NEEDED

Reviewers: stefan_schmidt, devilhorns, raster

Subscribers: cedric, torori

Differential Revision: https://phab.enlightenment.org/D1271
2014-08-05 15:29:56 +02:00
MinJeong Kim 43c9e896a7 build/drm: Fix missing ecore-drm for evas_drm engine
Summary:
With removing of pkgconfig checking on EVAS_CHECK_ENGINE for drm,
evas_drm engine need to setup libs including internal ecore-drm.
But, the evas_drm engine have missed ecore-drm libs because it have been
done after finishing setup library of evas.

This revision moves setup dependendency for ecore-drm into proper place.

Test Plan:
1. Build EFL with --enable-drm
2. ELM_ENGINE=drm E_WL_FORCE=wayland_shm enlightement_start

Reviewers: gwanglim, devilhorns, stefan_schmidt

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1249
2014-08-01 14:25:52 +02:00
Cedric BAIL 3c179cdb87 evas: move to SDL2 and use GL_Generic infrastructure. 2014-07-25 20:24:29 +02:00
Tom Hacohen 6030b9de79 Configure.ac: Free up the "efl" name for usage.
At the moment we use the fake "efl" library as a dependency for
everything and use it as a way to have global cflags and lib deps. This
is bad as we'd like to have a "real" libefl.

I changed EFL to EFLALL as the new name. Easy to change to something
else if anyone finds this name lacking. It's internal.
2014-07-21 16:53:14 +01:00
Stefan Schmidt 6d08b96bd3 build/drm: Allow building from scratch by not using pkgconfig for internal libs
Using pkgconfig for internal libs turns out to be not a really good idea. It
works fine if you already have an efl install with the needed ecore-drm.pc
file but it will fail if you build from scratch.

We already have a m4 macro for these internal dependencies. Make use of it
for the evas drm engine depending on ecore-drm.

Fixes T1432
2014-07-18 15:32:52 +02:00
Stefan Schmidt b9da47eccf m4/evas_check_engine: Link evas drm engine to ecore-drm instead libdrm
We now longer use libdrm directly in the evas drm engine thus we switch
linking to ecore-drm.
2014-07-16 08:53:36 +02:00
Vincent Torri 9631585f24 efl: remove Windows CE support 2014-07-13 15:17:17 +02:00
Jean-Philippe Andre c424153867 Evas: Add DDS image file loader
@feature: Add a Micrsoft DirectDraw Surface file loader
2014-07-03 11:37:48 +09:00
Raoul Hecky 81f7d660c4 ecore_cocoa: Add missing opengl framework 2014-06-18 11:34:07 +02:00
Daniel Kolesa 9ac00be76b m4: fix macro, Makevars.in: quotes 2014-06-16 10:07:16 +01:00
Daniel Kolesa 9a4deeafe2 m4: EFL_WITH_BIN_SUFFIX, make use of it in configure.ac 2014-06-12 15:20:18 +01:00
Cedric Bail faf8f51ff6 autotools: add our own macro that disable anything not really C++11. 2014-05-04 13:55:37 +02:00
Felipe Magno de Almeida 8149823897 eolian-cxx: fix make distcheck and automake files for Eolian C++
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>
2014-05-04 12:21:30 +02:00
Cedric BAIL 961ecab040 evas: add a tgv loader.
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.
2014-04-01 22:00:13 +09:00
Gustavo Sverzut Barbieri c52da37d0b link dbus and systemd services, allows systemd activation.
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.
2014-03-10 00:09:12 -03:00
Chris Michael cec005996d evas-drm: Fix requirements when building for drm hw accel
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-06 09:26:03 +00:00
Chris Michael 807f944696 Evas: Fix build issue when building without drm
@bugfix: Fix issue of building efl without drm or drm hw accel options

By default drm & drm hw acceleration is off as an option. This caused
a problem when passing no options to autogen due to a missing define.
This commit fixes that mess by only defining HAVE_DRM_HW_ACCEL If we
actually have the deps for it, rather than using an AM_CONDITIONAL as
it did previously.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-02-28 14:46:44 +00:00
Chris Michael 5fe4a20cf7 evas-drm: Add support for checking what GL library to use for drm hardware acceleration
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-02-28 13:11:47 +00:00
Chris Michael 97e6ea75de evas-drm: Fix up some m4 formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-02-28 13:09:32 +00:00
Chris Michael b2ad8e401b evas-drm: Check for drm hw accel support in the drm engine
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-02-28 13:09:08 +00:00
Felipe Magno de Almeida f279225a63 eina: add a C++ bindings to Eina @feature.
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>
2014-02-25 18:05:01 -03:00
Cedric Bail 868202349a autotools: add supported for deprecated option. 2014-02-21 22:13:00 +09:00
Cedric BAIL 12a0cc8342 autotools: make specifying binary look the same as Elementary. 2014-02-21 17:55:47 +09:00
Cedric BAIL ec18feddd7 Revert "autotools: try improving thread detection."
This reverts commit 14c6378fc4.

So either we get to fix T880 or T986. I do think the problem is more tricky than
that, so I am for the moment going to get T880 broken rather than T986 as I think
the later will show up in more case for our user base. Will try to find a proper
solution for everyone before the next release.
2014-02-19 11:02:33 +09:00
Cedric BAIL 14c6378fc4 autotools: try improving thread detection.
As already stated before reliably detecting CC, LIBS and CFLAGS parameters for
use with threads is still a pain in 2014. With this patch I am trying to solve
T880 and use ax_pthread.m4. Note that I do not trust this macro more than the
previous one, so if there is any build issue on any system regarding thread, I
may just rollback to the previous code. Still I hope it is an improvement and
that our build system detect thread more reliably.
2014-02-18 12:24:19 +09:00
Daniel Kolesa bd7bcad640 evas: reverted 9d9ea2e 2014-02-12 13:27:01 +00:00