Request for Review: hula

Michael Schwendt bugs.michael at gmx.net
Tue Apr 26 19:45:41 UTC 2005


On Tue, 26 Apr 2005 14:46:52 -0400, Ed Hill wrote:

> Hi Michael,
> 
> Just out of curiosity, is there a policy in place for instances where
> you'd like to change the way that, say, something is handled in a
> Makefile.am (that is, change wrt the upstream)?

No policy.

Though, as with most patches, you should try to get them applied
upstream. ;)

> What I'm trying to get at is this: does Fedora Extras have a policy that
> specifically forbids the use of the auto-tools within spec files?

No.
 
> And if so, does it mean that one should instead supply a new "configure"
> script as a patch?

Patching _existing_ automake/autoconf files is something different.
A different issue.

We've gone through it at least half a dozen times on several lists
before. If you need to patch a Makefile.am/configure.in/acinclude.m4 or
other file, which in turn results in the need to regnerate the auto*
files, there are two ways to achieve it:

[1] Add the necessary BuildRequires (libtool -> automake -> autoconf),
provided that you have compatible versions (or the older compatibility
packages like automake16,...) and run them as necessary in %prep or
%build. Be aware that the added dependency on these tools can break
the src.rpm at an unexpected point of time.

[2] Use the auto* tools to create a complete patch against the source
tarball, which usually will be of around 200 KiB in _compressed_ size
(even if you remove unneeded autom4te.cache files), and apply this patch
inside the spec file. This moves the dependency on libtool/auto* out of
the src.rpm, as you only need the tools when you create the patch. A
drawback of this method is that would need to recreate the patch each time
you do a version upgrade as long as upstream has not merged your
changes. Note that when you run into problems rebuilding the auto* files
for the patch, you could not run the tools inside %prep either, so method
[1] would not work either.

Personally, I prefer [2] as I don't want to regenerate auto* files more
often than necessary, although the size of the patch increases small
src.rpm packages significantly.

-- 
Fedora Core release 3 (Heidelberg) - Linux 2.6.11-1.14_FC3
loadavg: 1.82 2.00 1.69




More information about the fedora-extras-list mailing list