Hi Savio, Thank you for your update.
However (because there must always be a "however" in a mail), I have some issues: - Building: - cmake fails on "get_filename_component unknown component DIRECTORY". I need to change to "set(EOLIAN_LIBDIR /opt/e17/lib)" to make it work. - Building colourable fails on "/bin/sh: 1: Syntax error: Bad fd number". I need to make VERBOSE=1 and then execute the line to make it work well. Is there another option? - The build takes a lot of time imo. Is there a good reason why? /[ 16%] [ 50%] [ 50%] [ 66%] Building CXX object src/lib/CMakeFiles/ecxx-generator.dir/eo_class_detail_generator.cc.o// //Building CXX object src/lib/CMakeFiles/ecxx-generator.dir/eo_class_generator.cc.o// //Building CXX object src/lib/CMakeFiles/ecxx-generator.dir/eo_class_event_generator.cc.o// //Building CXX object src/lib/CMakeFiles/ecxx-generator.dir/arguments_generator.cc.o// //[ 83%] Building CXX object src/lib/CMakeFiles/ecxx-generator.dir/eo_class_operations_generator.cc.o// //[100%] Building CXX object src/lib/CMakeFiles/ecxx-generator.dir/eo_version_generator.cc.o// //Linking CXX static library libecxx-generator.a// //[100%] Built target ecxx-generator// // //real 0m56.008s// //user 2m30.616s// //sys 0m6.168s// / - generated .hh file: - bad arguments names: why don't you use Eolian to retrieve the parameter names? - in extension_inheritance, why for example colour_get is taking int* instead of returning int? Thank you for your support JackDanielZ, alias Daniel the 3rd On 02/06/2014 01:18 PM, Tom Hacohen wrote: > On 05/02/14 14:04, Savio Sena wrote: >> Hello everyone, >> >> Me and Felipe Almeida have been working on the C++ bindings for EFL >> for a couple of months or so. We finally managed to have something >> usable. We would highly appreciate feedbacks, reviews and critics: >> >> https://github.com/expertisesolutions/ecxx >> >> Ecxx is integrated with Eolian -- ie, it reads classes descriptions >> from '.eo' files through it -- and can generate C++ bindings for Eo-1 >> and Eo-2. >> >> Some examples that use Eolian as parser and C code generator: >> >> https://github.com/expertisesolutions/ecxx/tree/master/src/examples/eolian >> >> [Please notice cpp_inheritance_01.cc in special. it illustrates a cool >> feature. :-P] >> >> To compile run './build.sh eo1 ${PREFIX}' and check its corresponding >> build/ directory for the generated files. >> >> Here's the Eo-2 example. Uses Eolian only as parser. The Eo class is >> declared/defined as usual .c/.h model: >> >> https://github.com/expertisesolutions/ecxx/tree/master/src/examples/eo2 >> >> To compile it run './build.sh ${PREFIX}'. (default=eo2) >> >> This ${PREFIX} is both your CMAKE_INSTALLATION_PREFIX (similar to >> autoconf's --prefix) but is also used as base to PKG_CONFIG_PATH. >> It's assumed you have Eolian installed in this prefix. You will also >> need cmake (>=2.8), not necessarily in this prefix. >> >> The README.txt in the project root shows more compilation options and >> usage examples. >> > I'm not a C++ guy, so I just skimmed through everything, and looked at > the examples. > > I'm really happy with those, they look really good. I'm very glad to see > you've integrated your work with Eolian. > > I have a couple of questions: > 1. Have you tried with more complex Eo files that represent complex Eo > inheritance (like Evas/Elm)? I'm sure the Eolian guys have some complex > examples. > 2. Have you taken pre-cautions into making sure generated C++ API/ABI is > solid? I know C++ can be funny with ABI, and you have to assume people > are going to create classes inheriting from your API, they can not break > every time you re-generate API, and also, they can't break when we > change something in C (that doesn't break API/ABI), like adding a new > class, or whatever. > > -- > Tom. > > > ------------------------------------------------------------------------------ > Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel