It has been discussed on the ML (thread: "[RFC] rename efl_self") and
IRC, and has been decided we should rename it to this in order to avoid
confusion with the already established meaning of self which is very
similar to what we were using it for, but didn't have complete overlap.
Kudos to Marcel Hollerbach for initiating the discussion and
fighting for it until he convinced a significant mass. :)
This commit breaks API, and depending on compiler potentially ABI.
@feature
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
This patch will detect how many more times ecore_init was called
during initialization and use that as a threshold to do a clean shutdown.
It is a necessary evil as we do have ecore module that will initialize
eldbus that will then reinit ecore_init from within ecore_init and without
a chance for the application to act on it.
I also reenable a test to make sure we will catch earlier this kind of issue.
This patch is necessary to work around the fact that if you have some
ecore system module installed, they will be initialized and may use another
library like eldbus that will call ecore_init again. So ecore_init will be
different from 1, but still be a success.
My patch does introduce a work around a problem in that situation. Calling
ecore_shutdown wont work at this stage, as we do have module that did initialize
ecore also. And the only way to make ecore_shutdown happen is to unload those
module and that wont happen as they where initialized from inside ecore... lala !
Yes, we never shutdown ecore properly when we have ecore module that use
something like eldbus.