The rpms should be built not directly from the spec file (although
it is possible) but more conveniently using the makerpms.sh script:
It takes care of making a source tarball and building the rpms for
x86_64 and i386, the latter also producing the winbind-32bit
compatibility packages for x86_64.

The makerpms.sh script must be invoked from out of a git checkout
(since git archive is used to produce the tarball for rpmbuild).

To eliminate the need of building the docs from the sources
(which is time consuming and has vast build dependencies),
you need a samba release docs tarball called docs.tar.bz2 and point
the DOCS_TARBALL environment variable to it before calling makerpms.sh.
Alternatively, if the DOCS_TARBALL variable is not set, but if a
docs.tar.bz2 exists inside the rpm SOURCES directory
(/usr/src/redhat/SORUCES/ by default), that will be used.

To produce an appropriate docs tarball, you can for instance pack the
docs dir from a samba release tarball using the command
"tar cjf docs.tar.bz2 docs".
Note: The docs tarball needs the docs/ prefix.