On Tue, Aug 26, 2008 at 7:46 AM, Rex Dieter <rdieter(a)math.unl.edu> wrote:
Michel Salim wrote:
>
> At the risk of asking the obvious, why does this fail:
>
> %define nunitver %(gacutil -l nunit.core | tail -n 2 | grep nunit.core
> | cut -d "=" -f 2 | cut -
> d "," -f 1)
>
> Requires: mono(nunit.core) = %{nunitver}
I'll venture because our buildsys needs to (re)generate the srpm, and at
that time, no BR's are installed and gacutil isn't available => failure.
To protect against that, do something like:
%define nunitver %(gacutil -l nunit.core 2>& /dev/null | ...)
%if "x%{?nunitver}" != "x"
Requires: mono(nunit.core) = %{nunitver}
%endif
Axel: It fails by being empty.
Tom, Rex: as Rex said, it is because BRs are not installed when the
SRPM is regenerated (perhaps we need a different directive, like
PreBuildRequires: ? Hmm)
So in this case, nunitver will *always* be empty, so I'm not sure how
the test will help. Manually coding in the value will work; now
whenever nunit ABI changes, instead of just bumping up release number
and rebuilding, I'll have to also update the requirement. Doable.
Thanks,
--
Michel Salim
http://hircus.jaiku.com/