[PROPOSAL] To retire autoconf for 4.1

Matthieu Patou mat at samba.org
Wed May 22 11:21:35 MDT 2013


On 05/22/2013 09:22 AM, Jeremy Allison wrote:
> On Tue, May 21, 2013 at 04:07:48PM +0200, Volker Lendecke wrote:
>> On Tue, May 21, 2013 at 06:59:04AM -0700, Matthieu Patou wrote:
>>>> That does save linking of all non-involved libs and
>>>> binaries, but it will still compile everything first. At
>>>> least it did, when I last tried.
>>> Have you tried the gold linker ? Micheal suggested me at XP and I
>>> must confess that it makes things way more faster when linking.
>>> For the moment wafbuild is only able to use the system linker but it
>>> should be very hard to teach him how to use another linker for the
>>> one who don't want to use it by default (the gold linker)
>> Yes, I did try. But it did not work for me, so I did not
>> pursue it further.
> Yeah, me too and it broke the build. I keep meaning to
> log a bug with Ian the developer (he works here) but
> haven't gotten to that yet.
How could it break the build for you and not for me ?
>
> I agree, being able to just compile one .o file corresponding
> to a .c file I just changed is one of the things I wish I
> could do easily with waf. Not a show-stopper for me though
> as waf does have other benefits.
The thing is that if you changed a .c then yes the associated .o needs 
to be rebuild but also the .so or the binary and also all the libs that 
link with it.
I understand that basically the autoconf build was not so great at 
getting dependencies so you were getting fewer rebuilds because it 
thoughts that the file didn't need to be rebuild (but it was wrong) so 
we kind of trade speed for correctness.

As I pointed on IRC, we should reduce the number of groups so that 
linking can kick up while some stuff are still compiling (if possible) 
and potentially not do the symbol checks if we have specified --targets= 
on the command line so that we don't force to rebuild every thing that 
depends on this change.

This should make the speed of waf build --targets=smbtorture much faster 
when you change something in talloc.c or whatsoever.

Matthieu.

-- 
Matthieu Patou
Samba Team
http://samba.org



More information about the samba-technical mailing list