[Fedora-packaging] error on DistTag wiki page?

John Dennis jdennis at redhat.com
Thu Sep 27 00:29:43 UTC 2007


I think there might be an error on the following wiki page

http://fedoraproject.org/wiki/Packaging/DistTag

There are examples there like this:

# If on Fedora 8, Requires: foo
%{?fc8: Requires: foo}

But if fc8 is defined you get an rpm error stating
Unknown tag:  Requires: foo

After much fooling around I think I tracked the problem down to the fact 
RPM won't tolerate any white space in front of the "Requires:", I 
finally recalled that RPM will choke if it sees indentation in certain 
places in the spec file. The net effect of the macro on the wiki was 
that "Requires:" was indented by 1 space.

It seems like it has to be:

%{?fc8:Requires: foo}

I will update the wiki but I thought I would sanity check my conclusion 
first.

IMHO RPM's parsing is way too fragile, it took me a while before it 
occurred to me it was the space character causing the error. The error 
message wasn't very helpful either, did anybody else notice there were 
two spaces between the "Unknown tag:" and the "Requires" in the error 
message implying the tag was " Requires" and not "Requires"?

John




More information about the Fedora-packaging mailing list