getting rid of mkproto.sh from Samba3

simo idra at samba.org
Mon Jun 4 03:39:32 GMT 2007


On Sun, 2007-06-03 at 20:29 -0500, Gerald (Jerry) Carter wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Simo,
> 
> > On Sun, 2007-06-03 at 14:31 -0700, James Peach wrote:
> >> Hi all,
> >>
> >> Is there any interest in moving Samba3 from generated prototypes to  
> >> static headers. ie. getting rid of mkproto.sh and "make headers"? I'd  
> >> like to start doing a bit of work in this area, but I don't want to  
> >> upset anyone if there's a lot of love out there for generated  
> >> prototypes ...
> > 
> > If that means you can come out with another method to 
> > avoid changing .h files by hand, then you are welcome.
> > Otherwise I think it would just be a step back I really 
> > don't see the need for.
> 
> mkproto.sh promotes lazing programming, leads to bad interfaces
> and to monolithic code.
> 
> We should all suffer the pain of change *.h and *.c when
> change an interface.

You say it right here, "when change an interface".
What would be nice, is to have something like in samba4, where you can
mark an interface as public or private, and have a much better
dependency driven set of auto-generated proto headers.

Changing a private interface pose no problem, the real problem is with
public interfaces, well I'd agree to keep manually changing public
interfaces eventually, as that would make you immediately (hopefully :)
understand you are changing a public facing interface non just an
internal function.

But for most of the internal code, having to change headers by hand is
just an annoying slowdown imo.

> I strongly agree with James on this one
> since it was already on my list of things to work on.

I agree we have a problem with bad internal dependencies, and that we
could have a better way to build and manage them so that modularization
is easier. But I think that going back to just manually built headers is
not necessarily the best way to go.

I agree with Tridge that the Samba4 build system shows we can achieve a
better system that address all concerns.

Simo.

-- 
Simo Sorce
Samba Team GPL Compliance Officer
email: idra at samba.org
http://samba.org



More information about the samba-technical mailing list