Commit Graph

29 Commits

Author SHA1 Message Date
Cedric BAIL 5d30e35e03 gitignore: don't track generated files. 2014-09-30 16:25:46 +02:00
Savio Sena 1eb8967dee eolian-cxx: Update examples syntax and fix implementation accordingly. 2014-09-12 16:12:04 -03:00
Savio Sena becdaf89c8 autotools: Renamed EOS variable in the Makefiles uniquely.
EOS in Makefile_Efl.am becomes EFL_EOS.
EOS in examples/eolian_cxx/Makefile.am becomes ECXX_EXAMPLE_EOS.
2014-09-12 16:07:34 -03:00
Savio Sena 2192ecee3f examples: Fix include file name in Eolian-CXX examples..
ecore_poll.eo.hh -> ecore_poller.eo.hh
2014-09-12 15:28:23 -03:00
Savio Sena 007a4934cc autotools: Add -I$(srcdir)/lib/efl/ to the examples.
This fixes 'make examples'.
2014-09-12 15:28:23 -03:00
Daniel Kolesa 46715c3574 eolian: move efl eo files over to the new ctor syntax 2014-09-01 15:53:35 +01:00
Daniel Kolesa 77d148cec9 eo: migrate constructors sections to constructing methods 2014-08-27 15:43:47 +01:00
Daniel Kolesa 459638c2b9 eolian: more consistent syntax
"legacy foo" is now "legacy: foo" and "return foo" is now "return: foo".
2014-08-21 09:26:03 +01:00
Savio Sena 07c6cadee3 eolian-cxx: Renamed event_*_callback_{add,call} to callback_*_{add,call}. 2014-08-13 10:17:53 -03:00
Cedric BAIL b91012f62c autotools: try to simplify our Makefile.am to reduce warnings. 2014-08-12 11:19:57 +02:00
Savio Sena e0dc04fe04 eolian-cxx: Removed a warning from the example. 2014-07-24 19:52:23 -03:00
Savio Sena 2214ae92a2 autotools: Fixed 'make dist' for Eolian-Cxx
Added .eo to EXTRA_DIST and *_stub.h to example's source lists.
2014-07-24 19:52:23 -03:00
Savio Sena 3e43bb57d8 eolian-cxx: Added example of Eo implementation in C++.
Instead of implementing Eo functions in C we do it in C++ simply.
2014-07-24 19:52:23 -03:00
Savio Sena f6c32ddffc eolian-cxx: Removes more warnings. 2014-07-21 21:32:22 -03:00
Felipe Magno de Almeida b1c9ca5c24 eolian-cxx: Fixed exapmle with support for complex types
Automatic conversion of Evas_Object* to evas::object wrapper broke the
example. Fixed it by using the new feature :).
2014-07-18 19:00:37 -03:00
Savio Sena f60394c1af eolian-cxx: Updated the examples according to the new syntax. 2014-07-18 18:57:13 -03:00
Savio Sena 88f1293527 eolian-cxx: Added examples.
Added complex types, callbacks and events examples.
2014-07-18 18:57:09 -03:00
Felipe Magno de Almeida 15ab5f02e2 eolian-cxx: Fixed example eo file
The coulourable.eo file got outdated when Eolian syntax changed, it is
now updated and fixed.
2014-07-18 12:28:59 -03:00
Felipe Magno de Almeida 5e5b00bc90 eolian-cxx: Disabled temporarily the inheritance feature
This feature is buggy when using multi-level namespaces. I disabled it
temporarily and will fix it ASAP and re-enable it.
2014-07-18 12:28:03 -03:00
Daniel Kolesa c05493b480 eolian-cxx: Added namespaces and more (see below)
Implemented namespaces
Added eolian_wrappers.hh with C++ code wrapping Eolain API
Changed eolian_cxx program options. Now they're eolian_gen's
Added functions to safe_str.hh (safe_lower, safe_upper, normalize_spaces, path_base)
Added a mocked version of type_lookup.hh in advance. The full
version will come as soon as complex-types are added.

Made apply again by Daniel Kolesa, original implementation by Savio Sena.
2014-06-30 19:35:06 +01:00
Tom Hacohen c19948c2cf Eo (base class): Fix .eo file to have proper namespacing for the class naem. 2014-06-30 17:47:06 +01:00
Savio Sena bdd5cf5219 Eolian-Cxx: Corrected the syntax of the .eo examples and added missing includes.
Summary: Just updating the .eo's to match the new syntax.

Reviewers: cedric, q66, tasn, JackDanielZ

Reviewed By: q66

CC: felipealmeida, smohanty, woohyun, cedric

Differential Revision: https://phab.enlightenment.org/D1067
2014-06-19 23:54:36 +01:00
Savio Sena a9babe8053 eolian-cxx: remove annoying compilation warnings and messages
Summary:
- remove an automake warning caused by a variable redefinition
- remove unnecessary verbosity during debug compilation

Reviewers: cedric, smohanty

CC: felipealmeida, cedric

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

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-05-10 10:15:37 +02:00
Savio Sena c08990a081 examples: fix eolian_cxx Makefile.am to work with --with-eolian-cxx.
Summary:
Includes Makefile_Eolian*_Helper.am and -- since
_EOLIAN_GEN_DEP and _EOLIAN_CXX_DEP can't be resolved from
src/examples -- redefine the generation rules locally.

Reviewers: cedric, stefan, stefan_schmidt

CC: felipealmeida, cedric

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

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-05-09 15:35:51 +02:00
Savio Sena 95f5c11703 eolian_cxx: fix install-examples and (post-install) compilation.
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>
2014-05-07 23:40:46 +02:00
Felipe Magno de Almeida f6cf7cf35e eolian_cxx: fix compilation of examples out-of-tree
Summary: Changed erroneous top_builddir for include paths for eolian_gen tool.

Reviewers: cedric, stefan_schmidt, stefan

CC: cedric

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

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-05-07 23:37:47 +02:00
Stefan Schmidt a28b48644b examples: Fix install for eolian_cxx examples
Remove reference to non existing Makefile.example to let the install
succeed.

Fixes T1226
2014-05-06 09:56:46 +02:00
Savio Sena 2fdc88b33a eolian-cxx: Fixed the generation .eo.h path.
Summary: This patch fixes T1225

Reviewers: uartie

CC: uartie, wayland-efl, felipealmeida, cedric, smohanty, raster, stefan_schmidt, stefan, woohyun

Maniphest Tasks: T1225

Differential Revision: https://phab.enlightenment.org/D821
2014-05-05 13:09:28 -07: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