F11 RPM does not substitute %{PATCH0} anymore

Panu Matilainen pmatilai at laiskiainen.org
Thu Oct 29 12:43:23 UTC 2009

On Sun, 25 Oct 2009, Jos Vos wrote:

> Hi,
> When updating some of my special purpose RPMs for F11 (RPM 4.7.1) I found
> out that a macro like %{PATCH0} does not work anymore to specify the
> pathname of patch #0.  %{SOURCE0} etc. still seems to work.
> Is this a bug or a feature?

It's documented in http://rpm.org/wiki/Releases/4.6.0:

Stricter spec syntax checking
* Multiple definitions of same patch- and source numbers are no longer
* %patch is no longer equal to %patch0

Always number your patches and %{PATCH0} works as expected (and is 
backwards compatible), ie use

"Patch0: fixstuff.patch" instead of "Patch: fixstuff.patch"

> I can easily specify my patch file, that I for some reason want to apply
> manually in the %prep section, to be a "Source" file i.s.o. a "Patch"
> file, but I just do not see why this has been changed.

The intent was to clear up various mixups caused by the Patch == Patch0 
behavior and to do the same for Source too, but we had to revert the 
source part as it had issues with %setup. So while the idea was to make 
things more consistent, it ended up adding another special case while 
removing one :-/

 	- Panu -

More information about the Rpm-list mailing list