summaryrefslogtreecommitdiff
path: root/src/Makefile_Eina_Cxx.am (follow)
AgeCommit message (Collapse)Author
2016-02-16Test rework #11: Eina_CxxVincent Torri
2016-01-18eina_cxx: make sure simple.eo lands in the tarball in all casesStefan Schmidt
This would fail if you have not enabled tests and run distcheck.
2016-01-11eina-cxx: Remove Eo classes defined manuallyFelipe Magno de Almeida
Use Eolian to generate the Eo classes for the tests. This should fix T2940. @fix
2015-12-23efl-js: JavaScript Eolian bindingFelipe Magno de Almeida
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-05-07Revert "autotools: enable make check per individual modules."Stefan Schmidt
This reverts commit 35119e7bfdc7c13c2041293f3d0b2ebe1fb7c313. Reverted to bring make check back in a working state. Also the way we want to handle a more modular testing needs discussion.
2015-05-07autotools: enable make check per individual modules.kabeer khan
Currently make check runs tests of whole EFL.Enabled running of tests of individual modules by make check-<modulename> Signed-off-by: kabeer khan <kabeer.khan@samsung.com> Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-04-14eo_cxx: Fix signal_connection disconnect crashVitor Sousa
Fixed crash when disconnecting event inside of its own event callback. Instead of deleting the callback object immediately during disconnection (which causes the callback to be freed), the deletion is now scheduled for later (using ecore_main_loop_thread_safe_call_async). Updated some Makefiles to proper include ecore now that it is used in all event wrappers. Added a unit test to verify crashes under these circumstances.
2015-04-14eina_cxx: Add eina::string_view class (non owning reference to string)Vitor Sousa
Add an implementation of string_view to Eina C++. It is a non owning reference to a string that allows lightweight argument passing of both C++ std::string and C strings (const char*) on interfaces.
2015-01-05cxx: General C++ Eo wrapper generation improvementVitor Sousa
Using a new architecture in the generated files that simplify multiple inheritance and allows the use of interface types as parameters. No longer using a hand-crafted C++ header for eo_base.eo. This file was added to the generation process. Updated all files that are dependent in the hand-crafted eo_base C++ header. Now there is a class that contains the essentials functions of the former eo::base wrapper and that is used to create (through inheritance) the "concrete" classes for all Eo generated wrappers. No longer binding any function or property that are protected, private or legacy for now. eolian_type_instance is now a struct with general information for the whole type. Added the new header file namespace_generator.hh to hold namespace generation grammars. Separated declaration and definition of Eo wrappers methods. Referring for most objects by its full name (starting at the global namespace ::) in the generated files. Created additional helper grammars to avoid code replication. Removed a TODO comment referring to a doubt about inheritance of constructor methods. Added a TODO comment regarding memory allocation for callbacks in static member functions.
2014-10-24eina_cxx: Include newly added header to unbreak make distcheckStefan Schmidt
2014-07-18eina-cxx: eldbus-cxx: eo-cxx: Fixed test includes and header installationFelipe Magno de Almeida
2014-07-18eina-cxx: Added interop containers.Savio Sena
2014-07-03eldbus-cxx: Implementation of eldbus C++ APIFelipe Magno de Almeida
Summary: Applications can: void method_callback(void* data, const Eldbus_Service_Interface* iface, const Eldbus_Message* message); struct { ... } data_struct; Eldbus_Method methods[] = { "method1", ELDBUS_ARGS("b", "bool"), ELDBUS_ARGS("b", "bool"), ELDBUS_METHOD_FLAG_HAS_DATA , (Eldbus_Method_Cb)&method_callback, &data_struct }; And method_callback will be called with data parameter pointing to data_struct global object. Also, Eldbus-cxx supports registering an interface passing a lambda or function object as method. For example: edb::service_interface iface = edb::service_interface_register (c, path, interface , es::method("SendStringAndBool" , [expected_string, expected_bool] (std::string const& n, bool b , bool* out) { std::cout << "Running SendStringAndBool" << std::endl; ck_assert(n == expected_string); ck_assert(b == expected_bool); *out = b; return n; } , es::ins<std::string, bool>("string", "bool") , es::outs<std::string, bool>("string", "bool") ) ); When a request for "SendStringAndBool" with the proper signature is called, executes the lambda and replies with the return value and its bool* out parameter value. Reviewers: cedric, woohyun, raster CC: savio, cedric Differential Revision: https://phab.enlightenment.org/D1052
2014-07-02autotools: Fixed 'make examples' and 'make examples-install'Savio Sena
It was broken in set-ups with ($(builddir) != $(srcdir)) && ($(builddir) != $(srcdir)/build)
2014-06-02Dont install c++ headers of bindings when --disable-c++11 is used.Guillaume Friloux
2014-05-04eolian-cxx: fix make distcheck and automake files for Eolian C++Felipe Magno de Almeida
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-03eina-cxx: add eina_integer_sequence, eina_optional and their tests.Felipe Magno de Almeida
Summary: eina::optional mimics C++14 std::optional behavior and semantics. Reviewers: felipealmeida, cedric, smohanty, woohyun, raster CC: cedric Differential Revision: https://phab.enlightenment.org/D815 Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-03-11eina-cxx: Fixes compilation errors and warnings in clangFelipe Magno de Almeida
Summary: @fix compilation errors with defining variable and type on the same statement on clang without a default-constructor. Also removed warnings with inconsistent uses of struct/class for forward declaration and unused parameters. Reviewers: cedric, stefan_schmidt CC: savio, cedric Differential Revision: https://phab.enlightenment.org/D622
2014-03-10eina-cxx: Added eina_log support for C++, using IOStreams syntaxFelipe Magno de Almeida
Summary: Added eina_log support for C++ using the following macros: For logging into a domain: EINA_CXX_DOM_LOG EINA_CXX_DOM_LOG_CRIT EINA_CXX_DOM_LOG_ERR EINA_CXX_DOM_LOG_INFO EINA_CXX_DOM_LOG_DBG EINA_CXX_DOM_LOG_WARN And for logging into the default domain: EINA_CXX_LOG EINA_CXX_LOG_CRIT EINA_CXX_LOG_ERR EINA_CXX_LOG_INFO EINA_CXX_LOG_DBG EINA_CXX_LOG_WARN The usage is simple as can be seen in the tests: efl::eina::log_domain domain("error_domain_name"); domain.set_level(efl::eina::log_level::critical); EINA_CXX_DOM_LOG_CRIT(domain, "something went wrong with the following error: " << error); @feature Reviewers: cedric CC: raster, savio, cedric, sanjeev Differential Revision: https://phab.enlightenment.org/D605
2014-03-07eina-cxx: renamed efl::eina::eina_value to efl::eina::valueFelipe Magno de Almeida
Reviewers: cedric CC: savio, cedric Differential Revision: https://phab.enlightenment.org/D606 Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2014-02-26eina_cxx: move Eina_CXX to a bindings subdirectory.Cedric Bail
We do expect to integrate more bindings support in EFL to make them first class citizen and make sure they get proper attention during the development cycle. It so make sense to give them a proper subdirectory.
2014-02-26eina_cxx: make sure it can build out of the source tree.Cedric Bail
2014-02-25eina: add a C++ bindings to Eina @feature.Felipe Magno de Almeida
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>