[PATCH] Warn when macro options evaporate silently

Alexey Tourbin alexey.tourbin at gmail.com
Mon Jan 21 23:36:13 UTC 2013


On Tue, Jan 22, 2013 at 3:20 AM, Alexey Tourbin
<alexey.tourbin at gmail.com> wrote:
> In the %name form, when the name is invalid or when the macro does
> not exist, a silent fall-back is provisioned to as-is substitution.
> On the contrary, the %-o form has %?name semantics, that is, implies
> an existent test.  Hence at the top level, i.e. in specfile sections,
> options always evaporate silently.  Given the ambiguity of the %-o form,
> this deserves a warning.
>
> For example, the following line found in FC18 xfce4-taskmanager.spec:
> - Add patch to fix 0%-CPU bug
> gets actually expanded to:
> - Add patch to fix 0PU bug
> This will now produce the warning:
> warning: %-CPU parsed as %{-C}PU

Here is the full list of FC18 packages which trigger this new warning.

cvs.spec
(raw:)
    -D_FILE_OFFSET_BITS=64 %-D_LARGEFILE64_SOURCE" \
(expanded:)
    -D_FILE_OFFSET_BITS=64 _LARGEFILE64_SOURCE" \
warning: %-D_LARGEFILE64_SOURCE" parsed as %{-D}_LARGEFILE64_SOURCE"

mingw-pango.spec
- Remove use of wine in %-post.
- Remove use of wine in ost.
warning: %-post. parsed as %{-p}ost.

ocaml-curl.spec
- Use %-doc to handle docs in the devel package.
- Use oc to handle docs in the devel package.
warning: %-doc parsed as %{-d}oc

xfce4-taskmanager.spec
- Add patch to fix 0%-CPU bug (rebased version of Enrico Tröger's patch)
- Add patch to fix 0PU bug (rebased version of Enrico Tröger's patch)
warning: %-CPU parsed as %{-C}PU


More information about the Rpm-list mailing list