RPM spec files and waf

simo idra at samba.org
Wed Apr 14 05:58:29 MDT 2010

On Wed, 2010-04-14 at 13:44 +1000, tridge at samba.org wrote:

> Note that it does currently prefer system libs if they are available
> and have the right version. When you set --bundled-libraries=NONE you
> are asking for the configure to fail if you don't have the right
> system libs. That is more the sort of thing a packager wants, rather
> than someone who is trying ldb after downloading from ldb.samba.org.

Most people I know do not have issues with fetching dependencies, and
they can find out about --bundled-libraries if the build fails, but
defaults are always debatable I guess.

>  > >  - I also had to add --minimum-library-version=talloc:2.0.1 as a hack
>  > >    for tevent, as I didn't have root on the box I was testing on, so I
>  > >    couldn't install the required 2.0.2 version of talloc.
>  > 
>  > Why didn't you just set Requires: libtalloc-devel >= 2.0.1 ?
> The 'Requires' line in rpm is not passed down to the waf build. The
> --minimum-library-version configure option changes the default minimum
> system library version that ./configure will accept. The two have to
> be done separately.

Let me understand one thing, with --minimum-library-version specifier
you are overriding the minimum version needed ? That looks a bit
awful :)

> In practice we should never be using --minimum-library-version, as it
> can lead to broken builds. For example, using
> --minimum-library-version=talloc:2.0.1 would allow a system talloc
> library to be used which has a serious bug that we have fixed in
> 2.0.2. I only added it for this example as I didn't have root on the
> box, and I wanted to test the RPM build.

Yes we should always let configure fail if it doesn't find what it
needes. The BuildRequires line is needed for builders so they know which
packages to install in chroots before starting the build.

>  > Also, we should probably require python too and any module that waf
>  > depends on, or mock builds (builds done with a minimal chroot generated
>  > from the Requires) may fail.
> good point. I'm not quite sure what the right incantations for that
> are in the spec file. Can you add that and test it with a mock build?

Ok, as soon as I get some time, this is just a minor thing on of the
packages maintainers (I and others) will have to fix for Fedora anyway.


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

More information about the samba-technical mailing list