Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Fedora Packaging (http://www.linux-archive.org/fedora-packaging/)
-   -   Conditional comparision doesn't work (http://www.linux-archive.org/fedora-packaging/512073-conditional-comparision-doesnt-work.html)

Christoph Wickert 04-09-2011 05:01 PM

Conditional comparision doesn't work
 
I have a spec with

%global panelversion 4.8.3
or
%global panelversion %(rpm -q --qf='%{VERSION}' xfce4-panel)

As expected this returns "4.8.3" and

Requires: xfce4-panel >= %{panelversion}

works fine. However

%if 0%{?panelversion} >= 4.7
%patch3 -p1
%endif

does not but returns:

Error: xfce4-cellmodem-plugin.spec:54: parseExpressionBoolean returns -1

Do I miss something obvious?

Regards,
Christoph

--
packaging mailing list
packaging@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging

Michael Schwendt 04-09-2011 05:14 PM

Conditional comparision doesn't work
 
On Sat, 09 Apr 2011 19:01:20 +0200, Christoph wrote:

> I have a spec with
>
> %global panelversion 4.8.3
> or
> %global panelversion %(rpm -q --qf='%{VERSION}' xfce4-panel)
>
> As expected this returns "4.8.3" and
>
> Requires: xfce4-panel >= %{panelversion}
>
> works fine. However
>
> %if 0%{?panelversion} >= 4.7
> %patch3 -p1
> %endif
>
> does not but returns:
>
> Error: xfce4-cellmodem-plugin.spec:54: parseExpressionBoolean returns -1
>
> Do I miss something obvious?

Neither 04.8.3 nor 4.7 can be converted into an integer as expected by
the >= comparison. For values like that, you would need to use string
comparison.
--
packaging mailing list
packaging@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging

Christoph Wickert 04-09-2011 05:34 PM

Conditional comparision doesn't work
 
Am Samstag, den 09.04.2011, 19:14 +0200 schrieb Michael Schwendt:
> On Sat, 09 Apr 2011 19:01:20 +0200, Christoph wrote:
>
> > I have a spec with
> >
> > %global panelversion 4.8.3
> > or
> > %global panelversion %(rpm -q --qf='%{VERSION}' xfce4-panel)
> >
> > As expected this returns "4.8.3" and
> >
> > Requires: xfce4-panel >= %{panelversion}
> >
> > works fine. However
> >
> > %if 0%{?panelversion} >= 4.7
> > %patch3 -p1
> > %endif
> >
> > does not but returns:
> >
> > Error: xfce4-cellmodem-plugin.spec:54: parseExpressionBoolean returns -1
> >
> > Do I miss something obvious?
>
> Neither 04.8.3 nor 4.7 can be converted into an integer as expected by
> the >= comparison. For values like that, you would need to use string
> comparison.

What would that look like in a spec?

Regards,
Christoph

--
packaging mailing list
packaging@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging


All times are GMT. The time now is 07:15 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.