pcp
[Top] [All Lists]

Re: kmchart rpmbuild fails with opensuse 11

To: Nathan Scott <nscott@xxxxxxxxxx>
Subject: Re: kmchart rpmbuild fails with opensuse 11
From: Mark Goodwin <markgw@xxxxxxx>
Date: Wed, 03 Sep 2008 10:20:57 +1000
Cc: "Nelson, Doug" <doug.nelson@xxxxxxxxx>, pcp@xxxxxxxxxxx
In-reply-to: <1220396598.4714.24.camel@verge.scott.net.au>
Organization: SGI Engineering
References: <48BDB82E.5090901@intel.com> <1220396598.4714.24.camel@verge.scott.net.au>
Reply-to: markgw@xxxxxxx
Sender: pcp-bounce@xxxxxxxxxxx
User-agent: Thunderbird 2.0.0.16 (Windows/20080708)


Nathan Scott wrote:
On Tue, 2008-09-02 at 15:03 -0700, Nelson, Doug wrote:
 # rpm -qa | grep "qt4"
libqt4-qt3support-4.4.0-12.2
libqt4-devel-4.4.0-12.2
libqt4-x11-4.4.0-12.2
libpoppler-qt4-3-0.8.2-1.3
libqt4-4.4.0-12.2
libqt4-sql-4.4.0-12.2

Is there an easy fix for this?

the distros normally agree on a common "provides" item for this type of thing, but clearly haven't in this case. e.g. OpenSuSE ship libqt4-dev which should explicitly "Provides: qt4-devel"

Hmmm, not sure on the best approach - kmchart/build/rpm/kmchart.spec.in
has:
Requires: pcp >= 2.0
Requires: qt4 >= 4.2
Requires: qt4-doc >= 4.2
BuildRequires: pcp >= 2.0
BuildRequires: qt4-devel >= 4.2

which is correct for the Redhat-based distros. What we need is some
way to make each of those qt4 dependencies either-or checks (either
qt4 or libqt4...) but rpm doesn't seem to allow that.

Something like the following probably works (well, SLES sets %_vendor but I'm not sure about OpenSuSE). Alternatively, use %_vendor to define another macro for the base package name (i.e. libqt4 or qt4) :

Requires: pcp >= 2.0
BuildRequires: pcp >= 2.0
%if %_vendor == "suse"
Requires: libqt4 >= 4.2
Requires: libqt4-doc >= 4.2
BuildRequires: libqt-doc >= 4.2
BuildRequires: libqt4-devel >= 4.2
%else
Requires: qt4 >= 4.2
Requires: qt4-doc >= 4.2
BuildRequires: qt-doc >= 4.2
BuildRequires: qt4-devel >= 4.2
%endif

Cheers
-- Mark



<Prev in Thread] Current Thread [Next in Thread>