Am Thu, 14 Feb 2013 09:03:44 +0900 schrieb Cedric BAIL:

> Yop,
> 
> On Thu, Feb 14, 2013 at 7:41 AM, Andreas Volz <li...@brachttal.net>
> wrote:
> > I just found out that now all modules (I checked Evas/Ecore_Evas) in
> > EFL are linked static into the libs.
> 
> Not all, only the core one that every one will use. This basically
> mean buffer engine.

Ok, good idea. This is a difference to 1.7.5 for buffer. Was just wondering 
about it...

> > Is it possible to configure EFL trunk in a way to compile modules as
> > shared objects? Or is static the only supported way?
> 
> Yes, it is.

CXXFLAGS="-O0 -ggdb -Wall" CFLAGS="-O0 -ggdb -Wall" ./configure 
--with-tests=none --with-x11=none --disable-image-loader-gif 
--disable-image-loader-tiff --disable-audio --disable-pulseaudio 
--disable-physics --disable-v4l2 --disable-gstreamer --disable-curl 
--with-glib=no --disable-fribidi --disable-fontconfig --with-crypto=none 
--with-opengl=es

...
  Image Loaders.: bmp=static eet=static generic=static -gif ico=static 
jpeg=static pmaps=static png=static psd=static -svg tga=static -tiff 
wbmp=static -webp xpm=static

So, this is expected to be static, correct? 

> > I ask this because of some reasons:
> >
> > The module loader code is still present. So I assume it should be
> > possible to configure. I ported the module loader to Android, but
> > now from out of the box it wasn't needed to run the linked modules.
> >
> > So good so far, but...
> >
> > I created a new ecore_evas engine (copy&paste from other one). And
> > now I get a module and not linked static for this. No idea where to
> > configure this. Any hints? How ever, this is minor important as I
> > have the module loader...
> 
> Ecore_Evas module don't use the static/shared infra. They are either
> designed to be shared or static (buffer and ews are the static one).
> Evas at the opposite does support static/shared for all engine. Look
> into efl/src/lib/evas/file/evas_module.c for how this is done.
> 
> > Second there're lot of stuff compiled static that I don't need (e.g.
> > various file formats). With module design I could just not copy it
> > into my application and that's it. Now I couldn't even disable it.
> > Is this really needed? It just increases code size on embedded
> > devices.
> 
> Well, the one that are included does count for around 100KB. The
> result in increased size of code isn't that big for most embedded
> devices I know of and I am pretty sure I had my share of highly
> constrained hardware :-) So it was decided that the benefit outweigh
> the cost, that's why it is here now.

Ok, if it's that less than ok. Didn't measure it.

> > Yes, yes, who cares on Android, but I hate waste of memory and
> > flash... :-)
> 
> I have been hunting true memory waste in the past month and I can tell
> you, if they were close to this 100KB I would be happy. Evas callbacks
> alone can account for around 400K in most elementary test. Same goes
> with edje signal callback. And those are wasting memory at run time,
> not just flash (if you don't walk over the code, it will stay in
> flash). So for the memory issue, better focus on what actually count
> ;-)

Sure. Thanks for your answer.

Andreas

-- 
Technical Blog <http://andreasvolz.wordpress.com/>

------------------------------------------------------------------------------
The Go Parallel Website, sponsored by Intel - in partnership with Geeknet, 
is your hub for all things parallel software development, from weekly thought 
leadership blogs to news, videos, case studies, tutorials, tech docs, 
whitepapers, evaluation guides, and opinion stories. Check out the most 
recent posts - join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to