toplevel build in master

tridge at tridge at
Thu Feb 3 17:29:21 MST 2011

Hi All,

As part of our efforts to get ready for a Samba 4.0 release, I'd like
to propose that we move to having a single top level build for both
Samba3 and Samba4 binaries. The idea is what for 4.0, a single build
in the root of our source tree will build both the Samba3 style
binaries (eg. bin/nmbd and bin/smbd) as well as the binaries needed
for the Samba4 AD functionality (eg. bin/samba).

As a first step towards this goal, Andrew and I have put together a
set of patches that allows Samba4 to be built in the top level
directory. The patches are in my toplevel-wip branch in

These initial patches do the following:

 - add a top level wscript, configure and Makefile, allowing for a top
   level build. These are based on the source4/ equivalents, but will
   later incorporate building of s3 binaries as well, taking advantage
   of the work done on the s3 waf build

 - changes to allow 'make test' to run from the top level
   directory. This runs the s4 test suite, and will need to be
   extended to run the s3 tests when we are able to build the s3
   binaries from the top level (either that or we have two test
   targets, one for each).

I'd like to propose that we put these patches in now, and then follow
up with these steps:

 1) once the build farm, autobuild, s4 docs and openchange are changed
    to build from the top directory (maybe a few days?) we remove the
    source4/wscript and related files, so that we don't need to
    maintain the source4 build separately

 2) after that, start on building bin/nmbd, bin/smbd and bin/winbindd
    in the top level build. The existing source3/ build systems (both
    waf and autoconf) will continue to be maintained while this is
    going one.

    Note that this step won't aim to integrate the file server code
    from s3 with samba4, it will just allow the binaries to be built
    and function as they do currently with the s3 waf build.

In making these initial changes I propose that we try to keep the code
changes to a minimum. I think that getting this top level build
working to the stage where all development can happen with a single
build system is a a worthwhile step towards the Samba4 release.

Cheers, Tridge

More information about the samba-technical mailing list