proposal: merge waf build of s4 to master
Volker Lendecke
Volker.Lendecke at SerNet.DE
Wed Apr 7 04:48:51 MDT 2010
On Wed, Apr 07, 2010 at 08:41:14PM +1000, tridge at samba.org wrote:
> The benefit to the end user, apart from the ones I posted previously,
> are that the project benefits because the developers are able to get
> on with the job of developing better than they can now. Having a
> better build system saves us from wasting time with broken builds and
> broken dependencies. That helps end users as they end up with a better
> product.
The dependencies in Samba3 are not so complicated that they
can not be dealt with within a autoconf based system.
> > This is a problem of missing discipline in APIs. The talloc
> > ABI has been broken recently for (IMHO) no good reason
> > and/or benefit for our end users.
>
> The benefit was that we produced better debugging for a very common
> talloc programming error. That improved debugging has led to quite a
> few bug fixes since it went it. That means we now have better code
> than we had previously. Surely that is a worthwhile gain?
Sure, but the long discussions with samjam just taught
everyone that talloc_reference is just a bad idea. The real
fix is to just not use that call.
> > If we arbitrarily change APIs and ABIs just at will then yes, sure,
> > these kinds of problems will arise.
>
> arbitrarily? You're saying I just picked the change on a whim?
>
> I made the change as it was the single most common cause of
> programming errors with the talloc API. It was causing very subtle and
> hard to track down bugs that I had personally spent many days trying
> to find. I know that other Samba developers had similarly hit problems
> debugging that type of error, and were getting very frustrated. It
> also caused subtle crashes for our users.
>
> That whole class of bugs now becomes very easy to find and fix as we
> get really good debug information that tells us not only where the bug
> surfaces, but also the line of code where the original call was that
> caused the problem. All of that at essentially zero run time cost. I
> think it was a bargain!
Well, just don't use talloc_reference.
> Related to this, the problems it has caused with building against
> talloc on some system is precisely because our build system is broken,
> and it is one of the things the waf based build fixes! The old build
> system hardcodes in the use of -Ilib/talloc, because doing anything
> else with the old build system is too hard. That means we use the
> in-tree talloc.h with the system talloc library. That causes breakage.
What blocks us from fixing those problems within the current
autoconf based system?
> It doesn't have to be, but a single build system means it is far more
> likely that a change in one branch will cause build breakage in
> another branch.
If we had well-defined components, they would be built
within their own build system once for both Samba3 and
Samba4.
Volker
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20100407/d55efc96/attachment.pgp>
More information about the samba-technical
mailing list