PROPOSAL: Use Cmake as the build system for Samba
tridge at samba.org
tridge at samba.org
Wed Feb 17 15:53:43 MST 2010
> I didn't consider building cmake ourselves, I did instead consider
> deploying an already built binary. Would there be any problem with
> that ?
I doubt that would work. Even static binaries don't work on all
systems, as they can have library dependencies (yes, static bins
depend on libs, as I discovered recently with mtools, and the iconv
dependencies on Linux).
So building a working cmake binary for all the weird systems in the
build farm, plus future systems, would be very difficult.
Much easier to build it ourselves on the build machines (when cmake is
not installed already).
We wouldn't build it each time - we'd just build it once and leave it
installed, much like we do for the s4 smbtorture for s3.
> I haven't done a comparison with SCons but the independence of cmake
> from external interpreted languages is a feature I highly appreciate.
> With python I see a problem, we already do not support anything less
> than 2.4 and soon python 3.0 will start to appear upstream. 2.4 and 3.0
> are not really compatible, so I think that adopting a build system that
> depends on python might give us trouble on some platforms in time.
We are already tied into python in a big way in Samba4, and that is
likely to increase over time. Depending on python for building adds no
additional problems that I can see, at least for s4.
For Samba3, depending on python adds a bit of pain, but I don't see it
as being more of a pain than depending on cmake. Python has become a
basic dependency of modern Unix systems. cmake hasn't :-)
The python-3 argument doesn't seem right to me. People already
commonly have 3 versions of python installed on their systems, and I
can't imagine any distro will drop python-2.x until all packages that
depend on it (including Samba) are migrated.
More information about the samba-technical