PROPOSAL: Use Cmake as the build system for Samba

simo idra at
Thu Feb 18 08:09:48 MST 2010

On Thu, 2010-02-18 at 15:49 +0100, Jelmer Vernooij wrote:
> Hi Simo,
> On Thu, 2010-02-18 at 08:39 -0500, simo wrote:
> > On Thu, 2010-02-18 at 17:44 +1100, tridge at wrote:
> > > I had an interesting discussion with Brad Hards today, who has some
> > > experience with the conversion of KDE to cmake.
> > > 
> > > Brad's overall impression of cmake is very positive. It has worked
> > > very well for KDE.
> > > 
> > > The interesting thing is that the problem I raised with cmake versions
> > > and fixes has happened with KDE, but for KDE it isn't a major
> > > problem. For Samba I think it might be a much bigger problem.
> > > 
> > > Every now and again KDE switches version of cmake. Everyone who
> > > develops KDE then needs to build and install the new version of
> > > cmake. For KDE, that means just the developers, as end-users building
> > > their own version of KDE is extremely unusual (unless its via a system
> > > like the one in Gentoo). It is also basically unheard of for someone
> > > to try and build the current version of KDE for something like RHEL3.
> > > 
> > > For Samba it's quite different. It isn't just the Samba developers who
> > > build and install Samba, it's also anyone who wants Samba on their
> > > system and their OS doesn't have the latest version. That means many
> > > of our end users will have to build and install the right version of
> > > cmake, and when we switch versions then they will also have to
> > > switch. It gets even harder when people have ancient Linux or Unix
> > > versions. Yes, cmake may build on Irix, but does it build on all the
> > > older versions of Irix? What about old versions of RHEL or SLES?
> > 
> > Well for sure anything based on a modern version of python will never
> > let you build Samba on old versions of RHEL.
> > 
> > RHEL3 has python 2.2
> > RHEL4 has python 2.3
> > 
> > Certainly rebuilding the whole of python is never going to fly. And at
> > the same time I am certain we are not going to have the time or
> > resources to keep something python-based to build on anything older than
> > a few years. And I am not even considering modules ...
> Why is building python from source "not going to fly" ? It's just a
> matter of: 
> wget
> cd Python-2.6.4
> ./configure && make && make install
> There are no prerequisites other than libc.

Maybe "not going to fly" is a bit harsh, the point is that it is no
difference from the point of view of old/new version of stuff.

If there is a perceived issue with "versions" of CMake, exactly the same
would hold true with anything python based or autoconf based etc..

There is always some system that is old enough or bad enough that the
unfortunate user that have to build a new version of samba on it will
have some issue. Some times it will be the build system some other a
missing or old ldap or kerberos library, or some other feature.

It doesn't look to me as a huge issue, just one of the facts of life
with obsolete systems.


Simo Sorce
Samba Team GPL Compliance Officer <simo at>
Principal Software Engineer at Red Hat, Inc. <simo at>

More information about the samba-technical mailing list