Commit Graph

128 Commits

Author SHA1 Message Date
Jean-Philippe Andre 2497480330 makefile: Fix make dist (with filters) 2017-04-14 13:57:04 +09:00
Derek Foreman 6210bab777 build: Add our wayland protocols to the dist
Oops, without these in the distribution tarball you can't
build wayland support.
2017-02-14 17:02:28 -06:00
Derek Foreman 553751cb40 build: Add rules to auto-generate wayland headers from protocol xml
We've been checking in protocol headers and implementations that
wayland-scanner generates.  We should just generate them from the upstream
xml files.
2017-01-18 13:04:47 -06:00
Derek Foreman 76066f2d9f build: Disable automake compatibility warnings
We require GNU make, so stop complaining when autoconf does things
that require GNU make.
2017-01-18 13:04:47 -06:00
Andrii Kroitor fd646e79e3 fix install on clean system
After 98fe627ca4 Ecore_Con depends on eldbus.
So we need eldbus to be installed before Ecore_Con.
2016-11-10 14:06:04 +02:00
Felipe Magno de Almeida 4cd2bd8a66 js: Fix Makefile location and linking of efl.node and tests 2016-10-25 15:43:19 -02:00
Stefan Schmidt fffe6dc7b8 build: clean generated js and lua files manually to avoid problems with CLEANFILES
We hit another argument too long error with CLEANFILES. Moving the generated
files for js and lua into separated variables and cleaning them manually fixes
the issue.
2016-06-21 17:07:13 +02:00
Benjamin Jacobs a7b012ae05 Eeze build ordering.
Summary: Fixes a libtool relinking issue due to the wrong build ordering.

Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4042
2016-06-14 18:15:49 +09:00
Stefan Schmidt 93eadd76d6 build: split EXTRA_DIST files in src/ off from DISTFILES and handle separately
This is again to avoid the "Argument list too long" error we are hitting more and
more now. Given we just merged elementary, emotion generic players, evas generic
loaders and elm_code it is not surprising we are hitting it again.

This time the number of files being hold in DISTFILES has just grown to big so a
make dist was no longer possible. If one looks at what the DISTFILES variable
from automake holds you can image it grows a lot with all the source files plus
generated files we have in tree now.

DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)

To cut off a big chunk but still keep all the other automagic in place for
SOURCE files I went and renamed the EXTRA_DIST in src/ to EXTRA_DIST2 and handle
the files in a dist-hook now.

Another thing to note here is that this also only happens as we have the one big
Makefile with includes. If we go back to per directory Makefiles this problem
should vanish as well. In any case we need a solution for 1.18 now and this is
what I have to offer. If you have a cleaner solution in mind feel welcome to
test it out and if everything we need keeps working (make, make examples,
make check, make benchmark, make dist and make distcheck) go ahead.
2016-06-10 13:04:18 +02:00
Larry Jr 1ba06bb642 eio: Add mime_type property in Eio_Model 2016-06-05 22:08:06 -03:00
Stefan Schmidt 0cea935d47 build: fix distcheck by removing files manually
These files are not getting cleaned up as they are not integrated into the rest
of our build system. These are the extra makefiles to build build only eina, eo,
etc.

The trick with -C clean does not work here for me and this is the only way I
found to get a distcheck going through. Which is kinda important given we want to
do the first alpha tarballs for 1.18 next Monday.
2016-06-01 17:51:57 +02:00
Chris Michael a0d3b955bf ecore-drm2: Add start of Ecore_Drm2 library
This new library is going to replace the existing Ecore_Drm. This will
refactor a lot of the code, bring improvements over the existing API,
and provide additional support for missing features.

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Felipe Magno de Almeida e3c8b280c6 c++: Reorganized C++ binding generation
Moved all generation to a single Makefile_Cxx.am file instead of
throughout the whole project. And fixed C++ generation on Elementary
after elm merge.
2016-05-23 15:05:50 -03:00
Cedric Bail 06eedd9421 autotools: fix make clean 2016-05-16 09:22:19 -07: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
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
Stefan Schmidt 0a03e63350 build: keep our CLEANFILES tidy to avoid argument list too long during clean
We have been putting the generated eo files and BUILT_SOURCES into CLEANFILES
several times. So far this have not been a real problem but with the elm merge
and more and more eo files showing up this did explode recently.

During make distcheck a lot of files kept being around and make complained about
them. It took some digging to find the arguments list to long error. If you want
details on this great limitation have a look here:
http://www.linuxjournal.com/article/6060

In our case we have been lucky enough that we just appened many files over and
over again. Not doing that solves the issue for now. My testing showed no
problems but if I missed something let me know.

Fixes T3386
2016-03-31 16:29:32 +02:00
Cedric BAIL 5155c2d156 elementary: add back C++ generated binding. 2016-03-28 16:16:15 -07:00
Andrii Kroitor 2ae6307c72 elementary: fix clean installation
Summary:
elocation should be included before elementary otherwise 'make install'
will fail on clean instalation

Test Plan: make uninstall && make install

Reviewers: raster, tasn, stefan_schmidt, cedric

Reviewed By: cedric

Subscribers: reutskiy.v.v, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-28 11:23:23 -07:00
Cedric Bail 0f5c30f4f2 elementary: add tests back in. 2016-03-24 11:23:11 -07:00
Cedric Bail 1db421c33e elementary: enable compilation of binary. 2016-03-24 11:23:10 -07:00
Cedric BAIL b0df722819 elementary: initial compilation of the library only. 2016-03-24 11:23:10 -07:00
Tom Hacohen dbdb5b8a33 Examples: Remove eo examples.
Those were always bad, inaccurate and outdated, and are not really needed
because you should be using Eolian, and not Eo directly.
2016-03-03 09:58:08 +00:00
Srivardhan Hebbar 46fd6307b2 emile: Added example program for base64 encoding and decoding.
Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3554
2016-01-14 11:28:40 +09:00
Felipe Magno de Almeida a3db1dddd3 efl-js: JavaScript Eolian binding
To configure efl sources with bindings to use in nodejs add ––with-js=nodejs in configure flags to generate node files

$ configure --with-js=nodejs

and compile normally with:

$ make
$ make install

To use, you have to require efl:

efl = require('efl')

The bindings is divided in two parts: generated and manually
written. The generation uses the Eolian library for parsing Eo files
and generate C++ code that is compiled against V8 interpreter library
to create a efl.node file that can be required in a node.js instance.

@feature
2015-12-23 23:59:40 -02:00
Chris Michael 61a2c70732 ecore-wl2: Add Makefile for building Ecore_Wl2 library
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
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
Daniel Kolesa 97443242c2 autotools: provide smaller EOLIAN_FLAGS for customization 2015-06-01 17:35:39 +01:00
Daniel Kolesa ce65929422 autotools: remove EOLIAN_FLAGS
We don't need to specify each dir separately as Eolian
has been searching recursively for quite a while.
2015-06-01 17:28:45 +01:00
Stefan Schmidt 3d8c0794b8 build: Fix benchmark and exmaples dep on all target as well.
Same as the check-build target I fixed in my previous commit these two need
the all dependency to compile everything needed before being run.
2015-05-11 12:45:44 +02:00
Stefan Schmidt 42e535b086 build: Add correct dependency for check-build target.
We need to build everythign else before. Without this dep running check-build
as first target from a fresh build will fail due to wrong dependency handling
(like no eolian run over the eo files, etc)

Inspired by D2489 from Kabeer Khan.
2015-05-11 12:34:54 +02:00
Stefan Schmidt 2bd6c423d7 build: Pass on makeflags and use proper @$(MAKE)
Going with the build in automake stuff allows us to run this target also in
parallel. Before we got the warning that the jobserver was missing and it
would only run as -j1. Thanks to Tom for spotting and Flameeyes for the blog
post:
https://blog.flameeyes.eu/2010/10/tell-tale-signs-that-your-makefile-is-broken#gsc.tab=0
2015-05-08 15:12:46 +02:00
kabeer khan d00c89de11 autotools: enable make check-build which builds only test suites
Summary: Signed-off-by: kabeer khan <kabeer.khan@samsung.com>

Reviewers: tasn, cedric, stefan_schmidt

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2480
2015-05-08 14:19:48 +02:00
Stefan Schmidt a14f97a06e build: Make sure the ecore_drm Makefile gets included after its dependencies
This problem have been observed by Scimmia22 on the Arch builds as well as on
the jenkins wayland build job. While compiling works fine the relinking during
make install fails with ecore-drm linking does not find eeze or eldbus as its
deps. This only shows on systems with no efl installed, a build from scratch.

As far as I can see we have all dependencies set correctly in configure as
well as in the Makefile which are working fine even in highly parallel builds.
It was a bit surprising here to me that the include order is still important
with our correct dependencies. Autotools wisdom is welcome here to either
explain to me why this is needed or what the correct fix would be.

The includes all moved before Ecore_Evas because that would use ecore_drm if
enabled.

Fixes T2281
2015-04-13 11:39:00 +02:00
Felipe Magno de Almeida 7928609a29 efl: move emodel to be an efl interfaces. 2015-04-05 16:23:38 +02:00
Larry Jr 05eecf5c8f emodel: Created Emodel and Eio_Model. 2015-04-05 15:19:45 +02:00
Cedric BAIL 1be99f87c7 ector: reorder compilation to first do Ector then Evas. 2015-04-03 16:22:24 +02:00
Cedric BAIL b843394912 autotools: add ector in the list of Eolian file provider. 2015-04-03 16:14:59 +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
Cedric BAIL cf52036667 Revert "Add --disable-gui."
This reverts commit 3ed4f74590.
2015-03-17 09:58:17 +01:00
Stefan Schmidt dd6f81ea15 build: Ensure we have $(DESTDIR)$(libdir) during parallel install
While install-exec-hook gets normally executed after install and
thus we would have this we need to ensure it here when we want to
be safe regarding parallel install.
2015-02-25 16:43:35 +01:00
Larry Jr 2b12114777 allow C++ user create new classes inheriting from Eolian generated Classes 2015-01-05 15:52:27 -02:00
Stefan Schmidt a80b88c0ea elocation: Add example for using the elocation API
Basic example to show API usage.
2014-11-11 11:03:23 +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
Daniel Kolesa f33101ea8c elua/autotools: generate .eo.lua files out of all eo files at build time
Also change the generator a bit so that it doesn't rely on lib name information
and fix the runtime to properly source lua files within tree.
2014-10-06 13:28:09 +01:00
Felipe Magno de Almeida 30fa700599 [cxx] Fixed distclean when the C++ binding is enabled
The C++ examples were being added twice. So the make distclean was tried after the Makefile was already removed.

Removes the EXAMPLES_SUBDIRS redundancy for the C++ examples.
2014-09-30 12:47:20 -03:00
Cedric BAIL 48ee3ed15f autotools: extra dist subdirs must be filled with all directory.
It is important to remember to also include the one we don't build.
2014-09-09 12:27:51 +02:00
Tom Hacohen 218e76fd30 Ecore con: Start migration to eo. 2014-08-22 17:00:49 +01:00