On Tue, Aug 26, 2008 at 7:46 AM, Rex Dieter <rdieter@xxxxxxxxxxxx> 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/ -- Fedora-packaging mailing list Fedora-packaging@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-packaging