Bug 497589

Summary: Qt 4.5.1-3 not backportable to RHEL 4 and 5
Product: [Fedora] Fedora Reporter: Tuan Hoang <tqhoang>
Component: qtAssignee: Than Ngo <than>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: kevin, rdieter, than, ybellavance
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
URL: http://koji.fedoraproject.org/koji/buildinfo?buildID=99514
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-04-25 00:04:29 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Patch adds fixes and missing conditionals for Phonon, GtkStyle and gtk-update-icon-cache. none

Description Tuan Hoang 2009-04-24 21:21:27 UTC
Created attachment 341251 [details]
Patch adds fixes and missing conditionals for Phonon, GtkStyle and gtk-update-icon-cache.

Description of problem:
Rawhide qt.spec is not compatible when EPEL (or individual users like me) backport to RHEL 4 or 5.

Version-Release number of selected component (if applicable):
Version	4.5.1-3

How reproducible:
Every time

Steps to Reproduce:
RHEL4:  rpmbuild -ba --clean --define "dist .rhel4" --define "rhel 4" qt.spec
RHEL5:  rpmbuild -ba --clean --define "dist .rhel5" --define "rhel 5" qt.spec
  
Actual results:
RHEL4:  Build fails because of missing Phonon, GtkStyle, gtk-update-icon-cache
RHEL5:  Build fails because of missing Phonon.

Expected results:
RHEL4:  Build backported packages without Phonon and GtkStyle support.
RHEL5:  Build backported packages with Phonon and Phonon-backend.

Additional info:
Attached is a patch against the current Rawhide build 4.5.1-3 that adds fixes and missing conditionals for Phonon, GtkStyle and gtk-update-icon-cache.

Comment 1 Kevin Kofler 2009-04-24 22:20:41 UTC
qt4 cannot go into EPEL 5 because it is part of RHEL 5, nor into EPEL 4 because that'd break upgrade paths to RHEL 5.

For missing Phonon, why not just backport the standalone phonon package as well? In particular, with Qt's copy of Phonon, you don't get the xine-lib backend which is the recommended default. At most, your change is useful for bootstrapping.

This change:
> -gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
> +[ -x /usr/bin/gtk-update-icon-cache ] && gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
makes no sense, the 2> /dev/null ||: is there also to treat the case where the executable is missing, your [ -x /usr/bin/gtk-update-icon-cache ] && is redundant.

The only change which could possibly make sense is the QGtkStyle change. But can't you build it against evolution28-gtk2 or otherwise backport a newer GTK+?

Comment 2 Kevin Kofler 2009-04-24 22:27:25 UTC
To be clear: There's no Qt 4.5 or even 4.4 in EL5, you get an ancient Qt 4.2.1. But because of this ancient version being offered, a newer version cannot be imported into EL5 nor EL4, except possibly with a qt45 hack similar to the evolution28-* packages.

I checked the versions: evolution28-gtk2 in EL4 is exactly the same version as the gtk2 in EL5, so if QGtkStyle builds on EL5, you should be able to get it to build against evolution28-gtk2 in EL4. You may have to patch some search paths. (It won't be the only non-Evolution app using the libs, they're also used by the current firefox in EL4.)

Comment 3 Kevin Kofler 2009-04-25 00:04:29 UTC
And one more thing: specfiles are not required to be buildable on anything other than the Fedora release the branch is for. In KDE SIG, we choose to support multiple releases with the same specfile for most of our packages to ease maintenance. But there is nothing which says that a specfile in Fedora has to be buildable on any EL release. So I'm afraid I'll have to close this as NOTABUG.

Comment 4 Tuan Hoang 2009-04-25 15:45:11 UTC
Thanks for the tips and corrections.  I will check out evolution28-gtk2 and see if I can build against that.

I realize that Fedora has no guarantees for cross-building under any RHEL, but could you at least consider my fixes to the configure script (patch lines 386-397) and also the proper 'phonon_backend' wrappers?

It would just make my life a little easier since I'm trying to maintain a suite of my company's applications (require Qt 4.4+) across RHEL 4, 5, and Fedora 10.

Comment 5 Rex Dieter 2009-04-25 17:30:30 UTC
Nod, it has always been at least my intention to make a best effort that our qt4 packages buildable on rhel 5 (4 is harder, but we can always try).  I'll take a look into this shortly, and make adjustments where possible.

Comment 6 yan bellavance 2010-04-22 22:09:55 UTC
hum, I have rhel 5 with qt4.6 running just fine.  The only thing I needed to do is provide my own fontconfig lib because the one provided by rhel has a bug and needs to be updated by 1 sub-sub-version number