Commit Graph

81 Commits

Author SHA1 Message Date
Seunghun Lee 8b62177561 ecore-buffer: Add ecore_buffer library to EFL.
Summary:
Ecore_Buffer is abstraction of graphic buffer.
it supports backend of shm, x11_dri2 and x11_dri3 for now,
and this library also provides method to share buffers between processes.
Ecore_Buffer_Provider and Ecore_Buffer_Consumer is for this, sharing buffer.
provider draws something in to Ecore_Buffer, and consumer receives and displays it.
the binary, bq_mgr is a connection maker for buffer provider and consumer.
it can be included Enlightenment as a deamon later.

@feature

Test Plan:
1. Configure with --enable-ecore-buffer and --enable-always-build-examples to build examples.
2. Run bq_mgr, it connects consumer and provider.
3. Run ecore_buffer_provider_example and ecore_buffer_consumer_example

Reviewers: lsj119, gwanglim, cedric, zmike, jpeg, raster, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2197
2015-06-22 10:31:42 -04:00
Cedric BAIL cae31f824a pkg-config: fix portability issue on Windows.
@fix T2458
2015-06-01 17:20:40 +02:00
Felipe Magno de Almeida cb6f13eb6f efl.model: Remove unused emodel-cxx.pc.in and emodel.pc.in 2015-05-04 19:04:31 -03:00
Romain Naour fbc51e0432 pkg-config: prefix eolian_flags with sysrootdir when crosscompiling
Otherwise, the elementary build is brocken while crosscompiling since
"pkg-config --variable=eolian_flags eo evas edje ecore efl" return paths
to the host's include directories (/usr/share/eolian/include).

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-04-28 11:37:11 +02:00
Larry Jr 05eecf5c8f emodel: Created Emodel and Eio_Model. 2015-04-05 15:19:45 +02:00
Cedric BAIL 5e75d607c6 ector: initial introduction.
Idea for this library is to become a retained mode drawing library that use
Eo/Eolian for its API and take a lot of the good design from Enesim by
Jorge Zapata and Jose Gonzalez (http://enesim.org/).
2015-04-03 16:14:56 +02:00
Cedric BAIL 0b04186a7f emile: initial introduction of Emile.
The intent of Emile is to be the common layer for serialisation, compression
and ciphering. It will expose the library we currently use internally to an
easier use from the outside (like gcrypt and lz4). It should improve portability.
Instead of pushing JSON, XML and what's not to Eina, I do think that they will
fit better in Emile.

As for the naming of Emile, you will need to be French and say :
"Un quoi ?" "Un serializer !"

Regarding why it is put there in the stack. Right now there is two users of
compression (eet and terminology), two users of cipher library (eet and ecore_con)
and a few handful of user for serialization (eina, eet, efreet, ecore_con, ...).
So the choice was quite simple, it needed to be below Eet. Now it could have been
on top of Eo or integrated into Eina.

One of the use case I am thinking of, is to compress Eo object when a canvas get
hidden/minized. For that it require Eo to use that library and it can't be a higher
level object. And with current implementation of Eo it is perfectly possible to
implement such idea. So not at Eo level.

As for Eina, I am starting to think it is getting to much things in its namespace.
I do believe that infact Eina_Simple_XML and Eina_File should after all have landed
in their own library. That's why I am putting the current logic in a new library.
It is going to expand, I want it to provide an few SAX like parser for JSON,
Eet_Data and protobuf with also an API like Eet_Data to directly feed those value
into a C structure without using a DOM at all. It would also be the right place
to experiment and benchmark for a new Eet_Data format that could be more efficient
to use.

So at the end, and due to how I see things going and being used, I do think it
is better of in its own library.
2015-03-17 09:58:17 +01:00
Daniel Kolesa b000950288 elua: add pc file into gitignore 2014-12-08 16:13:02 +00:00
Daniel Kolesa 4db40cea63 elua: add pkg-config for the elua library 2014-12-08 15:59:45 +00:00
Stefan Schmidt f1badf1c39 pc: Ignore newly generated elocation.pc file 2014-11-11 11:08:58 +01:00
Stefan Schmidt a2d2cdaf9f elocation: Add elocation libraray to EFL.
Elocation is meant as a convenience library to ease application developers
the usage of geo information in their apps. Adding a geo tag to a picture or
translating an address to a GPS position and show it on a map widget are just
some of the use cases.

In the beginning elocation will rely on the GeoClue1 DBus service. Supporting
the new GeoClue2 DBus service is planned and worked on. GeoClue offers
providers for various techniques to get hold off the current position. Ranging
from GeoIP over wifi and GSM cell location to GPS.

This has been developed a while ago and was living in my private dev space.
It is about time to move this into EFL and bring it forward.

The detection of the GeoClue service is being handled on runtime and no new
dependency is added due to this library.

@feature
2014-11-11 11:02:08 +01:00
Savio Sena 4d2b4a8a65 pkg-config: Make Eina++ require and use Eo.
Currently bindings/eina-cxx/{eina_clone_allocators.hh, eina_list.hh,
eina_array.hh} include Eo.h, so it's actually already a dependency. This
patch just reflects it in eina-cxx.pc.
2014-09-24 13:02:29 -03:00
Jean Guyomarc'h d8edcfea3e gitignores: ignore efl-cxx.pc
Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1439
2014-09-16 11:45:27 +02:00
Savio Sena e947632ffb autotools: Fix Eo++ Eolian++ and Evas++ pkg-config files. 2014-09-12 15:28:23 -03:00
Savio Sena e60d1ea186 autotools: Add efl-cxx.pc.in. 2014-09-12 15:28:11 -03:00
Stefan Schmidt 626dccd906 pc: Remove ecore-wince.pc file from ignore as we removed wince support 2014-09-11 15:39:43 +02:00
Wonguk Jeong d1dce7ca08 .gitignore: add efl.pc 2014-08-21 16:56:06 +02:00
Tom Hacohen b0b533fcb1 Efl: Create libefl.
Create libefl.so and the interal package for dependencies.
2014-08-21 11:02:10 +01:00
Felipe Magno de Almeida c915df4f40 evas-cxx: Added canvas sub-directory to include paths for evas and evas-cxx
These subdirectories are needed because the generated wrappers include them directly.
2014-07-18 18:57:13 -03:00
Vincent Torri 9631585f24 efl: remove Windows CE support 2014-07-13 15:17:17 +02:00
Savio Sena c987f367d5 autotools: define @datarootdir@ explicitly to avoid config.status warnings.
Summary:
This patch removes warnings like this:

config.status: WARNING:  '/home/savio/src/efl/pc/eo.pc.in' seems to ignore the --datarootdir setting

Reviewers: cedric, JackDanielZ, smohanty

CC: felipealmeida, cedric

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

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-05-10 10:17:21 +02:00
Savio Sena 8676b03fc0 eolian: fix pkg-config eoincludedir variable to point to @datadir@ instead of @datarootdir@.
Summary: .eo files are installed at $(datadir)/eolian/include/ actually. The set-up fails when configure --datadir is different from --datarootdir.

Reviewers: cedric, JackDanielZ

CC: felipealmeida, cedric

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

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-05-09 12:47:33 +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
Savio Sena 46b6e8a563 eolian_cxx: initial version of the EFL C++ Bindings Generator.
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>
2014-05-03 00:56:32 +02:00
Felipe Magno de Almeida ab3eb4b2d3 eet-cxx: add implementation for eet C++.
Usage example:

  struct type
  {
    int foo;
    float bar;
  };

  type t0;

  auto descriptor = make_descriptor("type", &type::ofo, &type::bar);

  eet_data_write(file, descriptor.native_handle(), "type", &t0, false);

  std::unique_ptr<type> p = read_by_ptr(file, "type", descriptor);
  type t = read(file, "type", descriptor);

@feature

Reviewers: cedric, smohanty

Reviewed By: cedric

CC: savio, cedric

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

Signed-off-by: Cedric BAIL <cedric.bail@free.fr>
2014-04-01 22:00:13 +09:00
Tom Hacohen d52faf7d31 Eolian: Set eolian_flags in .pc files and ship .eo files. 2014-03-13 09:55:29 +00:00
Chris Michael bcf703323e ecore-drm: Add ecore-drm.pc to gitignore
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-06 14:47:14 +00:00
Chris Michael cf7cdd9a3b ecore-drm: Add package config file
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-06 10:57:26 +00:00
Tom Hacohen 8cc58ed7cb Eolian: Fixed pc file to correctly generate.
First of all, it's now correctly generated, unlike before.
Second of all, it now lists eoincludedir, the directory for all
of the .eo include files.
2014-03-03 14:09:57 +02:00
Daniel Zaoui a8661af73e Eolian: update .gitignore 2014-03-03 14:09:55 +02:00
Daniel Zaoui 5dea8ee0a8 Eolian: first import.
Imported by Tom, from the eolian repo which was written by:
Daniel Zaoui <daniel.zaoui@samsung.com>
Yakov Goldberg <yakov.g@samsung.com>
Yossi Kantor <yossi.kantor@samsung.com>
Savio Sena <savio@expertisesolutions.com.br>
Jérémy Zurcher <jeremy@asynk.ch>

Signed-off-by: Tom Hacohen <tom@stosb.com>
2014-03-03 14:09:53 +02: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 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
Cedric BAIL 0a1cc79a91 Ecore_Avahi: initial commit.
TODO:
- Add tests, how ?
- Integrate with Eo, needed ?
2013-12-17 19:37:05 +09:00
Carsten Haitzler b07c0a76ce alpha1 release autofoo/build tree work to pass distcheck and actually work 2013-11-04 18:33:35 +09:00
Cedric Bail 8f97de91a3 evil: let's try if we only use that macro. 2013-10-31 16:05:38 +09:00
Vincent Torri 6e043dfb44 evil: remove libgen and the GNU *printf code (both in mingw-w64).
This should reduce the code size of evil and reduce maintainance as
mingw does now take care of it.

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
2013-10-31 14:33:00 +09:00
Gustavo Sverzut Barbieri c0c5736a4e ecore: add system modules, implement 'systemd'.
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.
2013-08-09 14:28:02 -03:00
Eduardo Lima (Etrunko) d3292a7ae9 Split .gitignore into multiple files
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
2013-06-11 18:18:50 -03:00
Chris Michael ad08f15b79 Add pc file for evas drm engine.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-05-14 10:49:14 +01:00
Daniel Zaoui 80e04b2842 Evas: Split Evas headers
Now, Evas.h includes three new files:
- Evas_Eo.h: Eo API functions (functions defines, enums, base id).
- Evas_Legacy.h: contains the API functions related to objects
- Evas_Common.h: common data (structs, enums...) +
functions not related to objects.

This phase is needed for the EFL 1.8 release to disable Eo APIs if we
consider it is not enough mature to be used by applications.
2013-04-25 03:40:45 +03:00
Carsten Haitzler daac3fb794 add a global Efl_Config.h for everyone.
* ned to replicate changes in other .pc.in files
* need to replicate changes in other E*.h installed header files
2013-04-24 23:43:33 +09:00
Lucas De Marchi 4e3804041f Rename edbus->eldbus
git grep -l edbus2 | while read f; do sed -i 's/edbus2/eldbus/g' "$f"; done
find . -name '*edbus2*' -exec rename edbus2 eldbus {} \;

git grep -l "EDBUS" | while read f; do sed -i 's/EDBUS/ELDBUS/g' "$f"; done
git grep -l "EDBus" | while read f; do sed -i 's/EDBus/Eldbus/g' "$f"; done
git grep -l "edbus (v2)" | while read f; do sed -i 's/edbus (v2)/eldbus/g' "$f"; done
git grep -l "Edbus" | while read f; do sed -i 's/Edbus/Eldbus/g' "$f"; done
git grep -l "edbus" | while read f; do sed -i 's/edbus/eldbus/g' "$f"; done

find . -name '*edbus*' -exec rename edbus eldbus {} \;
find . -name '*EDBus*' -exec rename EDBus Eldbus {} \;
2013-04-23 12:36:29 -03:00
Jan Arne Petersen 9d8ff8a933 Add modules and module_arch variables to ecore_imf.pc
ecore_imf.pc should contain modules and module_arch variables (like
edje.pc, emotion.pc and ethumb.pc).

Patch by: Jan Arne Petersen <jpetersen@openismus.com>



SVN revision: 83327
2013-01-25 12:34:10 +00:00
Gustavo Sverzut Barbieri fbb4e88925 whenever doing external modules and similar, use .pc module_arch.
SVN revision: 82977
2013-01-18 13:51:34 +00:00
Boris Faure ac4df627f7 efl: export vmin/vmic in edje.pc
It is used to know where to install external modules.

SVN revision: 82974
2013-01-18 13:01:36 +00:00
Gustavo Sverzut Barbieri 88f2d26608 don't mix private and public libraries dependencies.
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
2013-01-17 18:55:32 +00:00
Gustavo Sverzut Barbieri cf1699fe22 each module install headers in their own directory.
SVN revision: 82895
2013-01-16 19:28:30 +00:00
Eduardo de Barros Lima 56d2e1fb4e Properly fix the pc files for ecore-imf and ecore-imf-evas
LESSON LEARNED: Don't commit stuff when you are almost falling asleep on the
keyboard


SVN revision: 82848
2013-01-16 01:18:58 +00:00