Problems with the %{?_isa} macro in dependencies

Jussi Lehtola jussilehtola at
Sun Sep 25 16:49:27 UTC 2011

On Sun, 25 Sep 2011 18:55:42 +0300
Ville-Pekka Vainio <vpvainio at> wrote:
> First case:
> The arch-specific libvoikko spell checking package requires the
> Finnish morphology, which is in the arch-specific malaga-suomi-voikko
> package. I did the following change (the versioned dependency was
> unnecessary): -Requires:       malaga-suomi-voikko >= 1.4
> +Requires:       malaga-suomi-voikko%{?_isa}

Libraries are multilib'd. malaga-suomi-voikko only contains data
files (in arch specific directories), thus it isn't multilib'd => the
32-bit data package isn't available on x86_64 and you get the
dependency problem.

> Second case:
> I'm renaming the package to libreoffice-voikko.
> Review request: <>,
> spec: <>.
> The Provides and Obsoletes are as follows:
> Provides: = %{version}-%{release}
> Obsoletes: < 3.1.2-6
> This works, but if I change the Obsoletes to
> Obsoletes:{?_isa} < 3.1.2-6
> then the package does not obsolete any more,
> which results in file conflicts.

The obsolete doesn't work, since then you're not obsoleting the
package, instead you're obsoleting what the package provides:
$ rpm -q
$ rpm -q --provides = 3.1.2-3.fc15 = 3.1.2-3.fc15
Jussi Lehtola
Fedora Project Contributor
jussilehtola at

More information about the devel mailing list