[Bug 188180] Review Request: qt4: Qt GUI toolkit

bugzilla at redhat.com bugzilla at redhat.com
Thu May 11 13:58:40 UTC 2006


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: Review Request: qt4: Qt GUI toolkit


https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=188180





------- Additional Comments From laurent.rineau__fc_extra at normalesup.org  2006-05-11 09:58 EST -------
I am not yet in group 'fedorabugs', but I can start a review. It is my first 
review, so I hope it is what is expected.

Here is my review:

** MUST item, fix rpmlint warnings and errors:

W: qt4 strange-permission qt4.sh 0755
W: qt4 strange-permission qt4.csh 0755

Could be ignored: 0755 is the permission used for all other files 
in /etc/profile.d

W: qt4 hardcoded-prefix-tag %{qtdir}

Do not use Prefix tag unless you motivate this choice. IMHO, qt4 cannot be 
relocated easily. You should remove this tag.

E: qt4 configure-without-libdir-spec

You can ignore this one: Qt configure is not GNU/configure

W: qt4 non-conffile-in-etc /etc/ld.so.conf.d/qt4-x86_64.conf

Whereas the qt package in FC do not mark /etc/ld.conf.d/qt-*.conf as config 
file, I think that files in /etc/ld.conf.d/ should be tagged as 
%config(noreplace). If a user wants to modify those files, we should assume 
that he knows what he does.

W: qt4 one-line-command-in-%post /sbin/ldconfig
W: qt4 one-line-command-in-%postun /sbin/ldconfig

May be ignored. No easy to fix. Maybe you could use:

%if "%{?ld_so_conf_d}" != "1"
%post
echo "%{qtdir}/lib" >> /etc/ld.so.conf
/sbin/ldconfig

%postun
if [ $1 -eq 0 ]; then
  grep -v "^%{qtdir}/lib" /etc/ld.so.conf > /etc/ld.so.conf.new 2>/dev/null
  mv -f /etc/ld.so.conf.new /etc/ld.so.conf
fi
/sbin/ldconfig 
%else
%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig
%endif

but I am not sure that it is a better choice.

E: qt4-designer devel-dependency qt4-devel

You can ignore this one.

W: qt4-devel summary-ended-with-dot Development files and documentation for 
the Qt GUI toolkit.

Easy to fix.

E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtNetwork.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtSvg.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtTest.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/Qt3Support.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtSql.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtGui.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtXml.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtCore.pc
E: qt4-devel invalid-directory-reference /usr/lib64/pkgconfig/QtOpenGL.pc

It seems that qmake adds -L%{_buildir}/qt-x11-opensource-src-4.1.2/lib in 
pkg-config files. It should should be sed off.

E: qt4-devel 
arch-dependent-file-in-usr-share /usr/share/doc/qt4-devel-4.1.2/affine/affine
(repeted 123 times)

Please remove compiled demos and examples from the package.

W: qt4-devel conffile-without-noreplace-flag /etc/profile.d/qt4.csh
W: qt4-devel conffile-without-noreplace-flag /etc/profile.d/qt4.sh

Please use %config(noreplace) instead of %config alone. See par 'Configuration 
Files' in http://fedoraproject.org/wiki/Packaging/Guidelines

E: qt4-devel executable-marked-as-config-file /etc/profile.d/qt4.csh
E: qt4-devel script-without-shellbang /etc/profile.d/qt4.csh
E: qt4-devel executable-marked-as-config-file /etc/profile.d/qt4.sh
E: qt4-devel script-without-shellbang /etc/profile.d/qt4.sh

Could be ignored, IMHO.

E: qt4-devel 
script-without-shellbang /usr/lib64/qt4/mkspecs/macx-xcode/Info.plist.app
E: qt4-devel 
script-without-shellbang /usr/lib64/qt4/mkspecs/macx-pbuilder/Info.plist.app
E: qt4-devel 
script-without-shellbang /usr/lib64/qt4/mkspecs/macx-xcode/qmake.conf
E: qt4-devel 
script-without-shellbang /usr/lib64/qt4/mkspecs/macx-pbuilder/qmake.conf

Nobody cares, IMHO.

W: qt4-devel 
wrong-file-end-of-line-encoding /usr/share/doc/qt4-devel-4.1.2/tools/codecs/encodedfiles/iso-8859-15.txt
W: qt4-devel 
wrong-file-end-of-line-encoding /usr/share/doc/qt4-devel-4.1.2/tools/codecs/encodedfiles/iso-8859-1.txt

Please ignore that warning: it seems to be intended.

W: qt4-devel 
doc-file-dependency /usr/share/doc/qt4-devel-4.1.2/painting/svgviewer/svgviewer 
libQtSvg.so.4()(64bit)
(repeted several times, for different compiled examples/demos)

Same as above.

W: qt4-MySQL summary-ended-with-dot MySQL drivers for Qt's SQL classes.
W: qt4-ODBC summary-ended-with-dot ODBC drivers for Qt's SQL classes.
W: qt4-PostgreSQL summary-ended-with-dot PostgreSQL drivers for Qt's SQL 
classes.
W: qt4-SQLite summary-ended-with-dot SQLite drivers for Qt's SQL classes.

Should be fixed.

W: qt4-MySQL no-documentation
W: qt4-config no-documentation
W: qt4-designer no-documentation
W: qt4-ODBC no-documentation
W: qt4-PostgreSQL no-documentation
W: qt4-SQLite no-documentation

I do not see what documentation could be included, here.

(End of rpmlint stuff.)

** OK: naming follows the Package Naming Guidelines.

Actually, the section "Multiple packages with the same base name" of 
http://fedoraproject.org/wiki/Packaging/NamingGuidelines does not cover the 
case of a package named "qt4" that is more recent than the package named "qt", 
but it seems the right choice.

** MUST: the package seems to conform to the  Packaging Guidelines, except for 
the items pointed out by rpmlint above, and the following item:
  - I found two static libraries but they seem to be exception required by the 
upstream build system: tools/assistant/lib/lib.pro and 
tools/designer/src/uitools/uitools.pro both contain "CONFIG += staticlib". It 
seems ok.
  - The desktop file refers to the mime type x-designer. Actually, the file 
%{_datadir}/mimelnk/application/x-designer.desktop is owned by kdelibs. Maybe 
this is acceptable, but I must admit that I do not know. FC qt package suffers 
from the same issue.
  - The desktop file must be installed by desktop-file-install. See 
http://fedoraproject.org/wiki/Packaging/Guidelines#desktop
  - Should not %{qtdir}/etc be owned by the package qt4? Actually, I do not 
understand the redhat_artwork stuff. Can you explain?
  - The /etc/ld.so.conf.d stuff is not really clear. /etc/ld.so.conf.d is 
requires by FC qt on FC-4 and FC-5. And I doubt that qt4 could be accepted for 
previous versions of FC. Perhaps you should simplify your spec file by 
assuming that /etc/ld.so.conf.d/ is required.
  - Your spec file use both %{buildroot} and $RPM_BUILD_ROOT. According to 
http://fedoraproject.org/wiki/Packaging/Guidelines#UsingBuildRootOptFlags you 
should avoid to mixe the two forms.
  - What is the %{name} == "qt" test for?
  - Why these two lines?
      # remove broken links
      rm -f %{buildroot}%{qtdir}/mkspecs/default/linux-g++*

** OK: license is GPL/QPL, matches the upstream license, and the text of the 
license(s) is in %doc.

** OK: the tarball md5sum matches the one in 
ftp://ftp.trolltech.com/qt/source/md5sums.txt

** OK: the sources builds at least on x86_64, under FC-5.

** MUST: BuildRequires:
  - BuildRequires: perl|sed|tar are optional, according to 
http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions
  - missing build requirements: libXcursor-devel and libXi-devel

** MUST: remove duplicate files in %files: if %{_lib}=="lib", I think that 
%{qtdir}/lib is declared twice in the %files section:
      %dir %{qtdir}/lib/
      %{qtdir}/%{_lib}

** MUST: doc subpackage

I think that the documentation should go in a -devel-docs subpackage.


-- 
Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.




More information about the Fedora-package-review mailing list