Commit Graph

751 Commits

Author SHA1 Message Date
Carsten Haitzler 1eba9d9de0 ecore-con - simplify down to a single libc resolver
Summary:
this removes the cares/ares based resolver and the compiled-in dns.c
resolver, modified the getaddrinfo based resolver to use threads not
forking (almost halving its size) and now makes that the only resolver
we have. getaddrinfo handles ipv6 and ipv4 (according to docs). this
simplifies code paths, drops code size of the efl tree by about 11k
lines of code, makes it easier to test and more robust to future
changes with ip resolving as it now just relies on libc. we won't have
coverity complaints on dns.c imported code anymore to fix and don't
have tokeep up with bugfixes/security from the upstream imported code.
this means we use a single resolver on all platforms (windows, mac,
linux) as opposed to before where cares was used for windows, and
dns.c on linux/mac. oh and the forking original was broken since our
move to eo too. so it couldnt even compile if enabled, letalone work.

so fix bug with missing /etc/resolv.conf that dns.c couldn't cope
with, fix testability, fix maintainability and reduce efl codebase size.

this fixes T3668

@fix
@improve

Subscribers: cedric, seoz, jpeg

Maniphest Tasks: T3668

Differential Revision: https://phab.enlightenment.org/D3971
2016-05-24 09:20:49 +09:00
Chris Michael 3940ff7f8b efl: Define if systemd version >= 209
Elput conditionally requires this to choose proper codepath wrt systemd-logind

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-18 16:42:59 -04:00
Felipe Magno de Almeida 5d5c04fd66 js fixes 2016-05-18 17:52:47 +02:00
Mike Blumenkrantz 4328425392 build: more non-cocoa fixes
ref 1f03bba199
2016-05-16 12:02:16 -04:00
Mike Blumenkrantz 83b9a7e31b fix non-cocoa configure/build
ref 1f03bba199
2016-05-16 11:47:04 -04:00
Jean Guyomarc'h 1f03bba199 autotools: enable gl_cocoa on OS X by default
Before this commit, X11 (via Xquartz) was the default engine to be
enabled on OS X.
Since the Cocoa backend became quite stable and considering applications
running within the Xquartz windowing environment are arguably ugly,
the Cocoa backend will now be enabled by default and X11 will be
selected only if explicitely requested.
2016-05-16 16:10:13 +02:00
Cedric Bail fbf7948d26 ecore: move ecore before evas so that all dependencies are build in correct order. 2016-05-15 08:58:49 -07:00
Cedric Bail dd649ab639 autotools: make Windows and MacOS X not require the long flags.
This is been done to enable a bigger community on those platform. We
do hope that Gentoo will not abuse it.
2016-05-15 06:44:49 -07:00
Cedric Bail 1a001d38d4 evas: make ecore a dependency.
As packager will need to update their package anyway with 1.18 it is a
good time to finally make evas depends on ecore. This should enable
refactoring and simplifying a lot of complex code in EFL. This really
should have been done like that from the beginning.
2016-05-15 03:45:54 -07:00
Chris Michael 8a47b7a4ec efl: Make building Ecore_Wayland optional
This patch makes building Ecore_Wayland library disabled by default
but provides an option to enable it (if needed).

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-06 15:51:56 -04:00
Mike Blumenkrantz 9d5caf00b6 wayland: implement session recovery
add support for reconnecting wayland applications if the compositor dies

disconnect -> destroy gl ctx + image textures -> block rendering ->
reconnect -> create gl ctx -> create image textures -> unblock rendering ->
sprinkle special seasoning on top -> just like ma used to make

 #SamsungFeatures

@feature
2016-05-05 10:49:31 -04:00
Carsten Haitzler 6aec9d4b68 Revert "tiff: disable by default as it is full of CVE with apparently no chance to get them fixed."
This reverts commit b8860c88f5.

i wouldn't call this full of CVE's:

http://www.cvedetails.com/product/3881/Libtiff-Libtiff.html?vendor_id=2224

i do notice various CVE's on libtiff's mailing list have had patches
committed. the CVE db doesn't track if the CVE has been fixed by
upstream (in an easy to find way) and in which version or on what date so
the CVE db simply is all CVE's since the dawn of time that were ever filed.
2016-05-02 08:02:09 +09:00
Cedric Bail b8860c88f5 tiff: disable by default as it is full of CVE with apparently no chance to get them fixed.
This can still be manually turned on if you need it.
2016-04-29 18:56:51 -07:00
Chris Michael af30057999 efl: Add uuid as a dependency for Ecore_Wl2
Since session recovery is now included in Ecore_Wl2 library, we should
add a dependency on the uuid library. Thanks to aerodynamik for
reporting.

Fixes T3505

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-25 08:02:23 -04:00
Derek Foreman f59c52520d build: Bump wayland version dependency
Anything that needed wayland now needs wayland 1.10.0
2016-04-19 15:11:09 -04:00
Cedric BAIL 70cc3677ae elementary: make it possible to build the library alone. 2016-04-14 16:22:23 -07:00
Cedric BAIL 968dcaae34 eio: make it possible to build the library alone. 2016-04-14 16:18:19 -07:00
Cedric BAIL 847fb931c2 ector: make it possible to build the library alone. 2016-04-14 16:07:32 -07:00
Cedric BAIL 192a966e60 ecore: make it possible to build the library alone. 2016-04-14 16:07:32 -07:00
Cedric BAIL 561b14f0c7 edje: make it possible to build the library alone. 2016-04-14 16:07:32 -07:00
Cedric BAIL 055b98a1d4 efl: make it possible to build the library alone. 2016-04-14 16:07:32 -07:00
Cedric BAIL f4441e5a21 eo: make it possible to build the library alone. 2016-04-14 16:07:32 -07:00
Cedric BAIL 3ccfd987ec eet: make it possible to build the library alone. 2016-04-14 15:52:50 -07:00
Cedric BAIL 66bc74bbe6 emile: make it possible to build the library alone. 2016-04-14 15:52:50 -07:00
Cedric BAIL 41f68ac0d3 eina: make it possible to build the library alone. 2016-04-14 15:52:50 -07:00
Cedric BAIL 4c92120457 evil: make it possible to build the library alone.
So I have been battling with autotools on this for a full week now,
and what we want is basically impossible. A.k.a. one file definition
and possibility to do a full build or just a partial build of efl.
Even moving to just partial build require to land a massive patch that
change everything in our build system and this is just not a road I
want to take.

For reference, if one day automake allow the use of any kind of variable
(autoconf AC_SUBST expansion or $()) in the _SOURCES parameter, it will
be possible to fix. Alternatively if they allow to build subdirectory
before they do BUILT_SOURCE, it would make it possible to incrementaly
move to only partial build. In the mean time, a less problematic solution
is to duplicate source code.
2016-04-14 15:52:50 -07:00
Chris Michael 4ea507c2ca elput: Add missing optional feature check for systemd
As elput can potentially use systemd-logind for various input device
functions, we should add this as an optional dependency in the
configure checks.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13 15:44:13 -04:00
Chris Michael f8964fcf2e elput: Initial checkin of elput library
The elput library is an efl abstraction for the libinput library which
can be used by various other subsystems (ecore_fb, ecore_drm, etc) to
handle interfacing with libinput without having to duplicate the code
in each subsystem.

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13 14:16:17 -04:00
Cedric BAIL 1c48b76da8 elementary: restore examples build. 2016-04-08 16:01:07 -07:00
Jean-Philippe Andre edcdb94a30 Makefile: Add efl as internal dependency for ecore
This commit broke the build:
 - 7c8b2da286

Each and every single library including ecore now must
also include efl as well (for Efl.h).
2016-04-05 20:19:04 +09:00
Jean Guyomarc'h 3f6b62515b autotools: on OSX warn about prefix being /usr
With Apple's SIP, nobody is allowed to modify the system
(excepted /usr/local). If SIP is enabled, the installation
will just fail.
2016-04-02 22:25:11 +02:00
Mike Frysinger 833d87d4ef minor spelling fixes 2016-04-02 16:19:52 -04:00
Cedric BAIL 8330c20868 elementary: install elementary cxx pkgconfig file.
T3397
2016-04-01 13:55:11 -07:00
Cedric BAIL 196455c7a3 elementary: add config back in. 2016-03-30 14:15:15 -07:00
Daniel Kolesa 18c208c7f9 elua: add several file/dir utils used by doc gen
This will be expanded into a proper util lib later.
2016-03-29 13:23:58 +01:00
Cedric BAIL b6a81b6e7b elementary: start bringing back documentation support.
I didn't know preview generation was so slow and done completely serialy.
There is potential improvement here. Still need to kind of merge the
documentation into something readable.
2016-03-28 16:56:31 -07:00
Jean-Philippe Andre 0d41ad0c83 Emile: Move colorspaces to Efl.Gfx
A small hack to the toolchain allows us to generate enums with eolian
for use by Eet and Emile (internal or otherwise non-eo libraries).

Thanks to how BUILT_SOURCES works, the eo.h files required by Emile
will be generated before they are used.

This adds a partial dependency on eo for eet and emile:
 - package dependency
 - include dependency

There is no library link dependency.
2016-03-28 16:40:01 +09:00
Carsten Haitzler 453329916e efl: fix build when drm and fb are enabled .. and more
after elm merge build broke with things like this enabled. this fixes
that.

i'd like to bring up one issue here. ecore_drm is not a good
abstractionlayer. it requires libdrm and other headers from system and
it should have abstracted things so the system libdrm is hidden/not
needed for build (or even perhaps at runtime and this could be rolled
into ecore_drm). this is how ecore_x is... and ecore_fb etc.
2016-03-25 10:53:38 +09:00
Cedric BAIL c2c99ca742 elementary: add forgotten cmake and pkgconfig files. 2016-03-24 15:43:24 -07:00
Cedric BAIL ab4bfcf250 elementary: when building with backends, we apparently need to link with them to.
This make elementary break the modularity of the underlying layer. I haven't looked
at what is going on here, but basically if you have a wayland, a drm, whatever backend
turned on. You need elementary to be link against that ecore_* directly. This means
we are lacking in abstraction in Ecore_Evas and are dlopening to much library at
startup. This needs to be improved in the future.

I am guessing this is related to maybe DnD and C&P.
2016-03-24 14:31:58 -07:00
Mike Blumenkrantz 3b9f53317d BUILD: USE WL2 FOR ELM BUILD 2016-03-24 17:19:13 -04:00
Cedric BAIL b0df722819 elementary: initial compilation of the library only. 2016-03-24 11:23:10 -07:00
Cedric BAIL 91367f2c11 elementary: merge configure logic. 2016-03-23 16:00:47 -07:00
Nicolas Aguirre 290fc88e3f evas: add eglfs evas module.
EGL Fullscreen is a module intended to support many proprietary GL driver that come
with custom API to create framebuffer/window. This one is starting by covering Android
with libhybris/hwcomposer. Later on, it should be able to support easily the Raspberry Pi
driver.

At this moment this does not work properly. Activate it at your own risk ! Do not report
bug if you don't know what you are doing :-) A backend for Ecore_Evas will come later on
along with a patch for Ecore_FB to use libinput. Finally a few patch should hopefully
enable this backend to work and compile more easily (relying on proper header detection
and dlopen/dlsym for access to proprietary function).

You can read more about the goal of this patch by reading our wiki at :
https://phab.enlightenment.org/w/boot2efl/

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-18 10:17:49 -07:00
Stefan Schmidt bb0d161d8f Revert "eina: reintroduce additional support for eina sub directory compilation."
This reverts commit 1affc60d00.

This reverts one of three parts of the try to get sub directory
compilation back into eina. It breaks our distcheck though and I
talked to Cedric about it and he prefers to revert these as we might
need to go another route to bring this functionality back. Details
will come to the mailing list.
2016-03-08 00:18:08 +01:00
Stefan Schmidt 2ae2790604 build: do not use DEBUG when running with coverage
Do not force this on everybody who runs with tests=coverage. It makes stdout
impossible to follow as well as overruns the tests log file. If one wants to
run with -DDEBUG it can be set from your own CFLAGS.
2016-03-07 14:39:16 +01:00
Stefan Schmidt 5181a4d0ef build: fix linking with coverage enabled after osx fix
After aca6fc8c36 there have been problems when
linking when having coverage enabled.
AC_SEARCH_LIBS was used wrongly here. You need function name first and lib to
link against as second argument. The symbol name also has wto leading
underscores for me.
/usr/lib/gcc/x86_64-pc-linux-gnu/5.3.0/../../../../x86_64-pc-linux-gnu/bin/ld generated: undefined
reference to `__gcov_init'
2016-03-07 14:36:27 +01:00
Cedric Bail 1affc60d00 eina: reintroduce additional support for eina sub directory compilation.
This is still experimental and quite hacky. Let me know if you face issue.
It should just work with make -C src/lib/eina normally...
2016-03-03 15:10:59 -08:00
Tom Hacohen 800e760b7e Eo examples: remove another reference to the eo examples.
Thanks to _ami_ for reporting.
2016-03-03 11:50:44 +00:00
Jean Guyomarc'h aca6fc8c36 autotools: fix code coverage on OSX
OSX uses clang as a default compiler instead of gcc.
Gcov does not exist for clang, but clang has an alternative which
requires additional compilier and linker flags.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:42 -08:00