On 08/05/2016 02:07 PM, Jean-Philippe André wrote:

>> All the above also apply to a conversion to cmake. Pretty sure it will
>> not help that much. If you want to speed up things, speed up make !
>>
> 
> Well, yes and no. Let's consider incremental builds only for now, because
> full build will always take time... so many files to compile.
> 
> In an ideal world, a .so file timestamp update should not trigger another
> .so file relink.
> A change in a function inside Evas (no symbols changed) should not trigger
> any rebuild outside libevas.so.
> What happens instead is that all libs depending on evas are relinked, the
> elm theme is rebuilt, and all widgets previews are relinked as well. Not a
> single file was recompiled (except the edj ones). Which means the relink
> happens, even when the symbols table has not changed.

From my experience with cmake it seemed that it managed this much
better, ie internal evas changes wouldn't trigger rebuilds of other
parts. Our main cmake project was a bunch of static libs (each with its
own subproject file), that were all linked together into either an
executable and it seemed to handle that in a sane way, ie changing a c
file in eina would not trigger a complete rebuild of everything but if
you picked the wrong public header and changed that it probably would.

Unfortunately I don't know if i have time to do the port or enough
autofoo knowladge to be able to do it but maybe i'll give it a shot.

> 
> A change inside Eina is conceptually a bit trickier as eolian_gen depends
> on it and everything else depends on eolian_gen's output.
> 
> So, if by saying "let's speed up make" you mean optimize the dependency
> resolutions, yes. While that's done by make, the rules are generated by
> autofoo. Basically if the timestamp comparison was based on only the
> symbols table and not the actual so file, we would have much faster
> incremental builds already.
> 
> But I know I'm just dreaming here... :)
> 

-- 

Simon Lees (Simotek)                            http://simotek.net

Emergency Update Team                           keybase.io/simotek
SUSE Linux                            Adeliade Australia, UTC+9:30
GPG Fingerprint: 5B87 DB9D 88DC F606 E489 CEC5 0922 C246 02F0 014B

Attachment: signature.asc
Description: OpenPGP digital signature

------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to