Bug 614653

Summary: Review Request: libXcm - X Color Management Library
Product: [Fedora] Fedora Reporter: Nicolas Chauvet (kwizart) <kwizart>
Component: Package ReviewAssignee: Kalev Lember <kalevlember>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, jglisse, kalevlember, notting
Target Milestone: ---Flags: kalevlember: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-07-23 07:26:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Nicolas Chauvet (kwizart) 2010-07-14 22:14:24 UTC
Spec URL: http://kwizart.fedorapeople.org/review/libXcm.spec
SRPM URL: http://kwizart.fedorapeople.org/review/libXcm-0.2.6-1.fc13.src.rpm
Description: X Color Management Library

Comment 1 Nicolas Chauvet (kwizart) 2010-07-14 22:19:43 UTC
rpmlint on installed package:

# rpmlint libXcm
libXcm.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libXcm.so.0.2.6 /usr/lib64/libXfixes.so.3
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
[root@liet ~]# rpmlint libXcm-devel
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

koji scratch build:

Comment 2 Jérôme Glisse 2010-07-15 18:35:23 UTC
I am not an approved reviewer but spec looks good beside two uneeded dependency:
graphviz & libGL-devel

Comment 3 Jérôme Glisse 2010-07-15 19:27:48 UTC
Additional comment on spec:
Maybe it's good to add :
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig

* Naming is ok
* spec file correctly named
* Meets packaging guidelines
* Meets Licensing Guidelines MIT
* Does not install a desktop file, but should not (no program)
* Does install manual pages

Comment 4 Kalev Lember 2010-07-16 13:55:56 UTC
Taking for review.

(In reply to comment #3)
> Maybe it's good to add :
> Requires(post): /sbin/ldconfig
> Requires(postun): /sbin/ldconfig

No, this is not needed. rpm will automatically add deps on executables specified with "%post -p" or "%postun -p".

Comment 5 Kalev Lember 2010-07-16 14:36:45 UTC
You have added doxygen and graphviz as BuildRequires to build docs, but the generated docs don't appear in the final rpms. Why?

> %exclude %{_mandir}/man3/Xcm.3x.gz
Please add a comment to the spec file why this file is removed.

> %description
> The library allows to attach color regions to windows for color management.
Take a look at the included README file which has a slightly more elaborate description, perhaps you can use something from that.

The installed /usr/include/X11/Xcm.h includes <X11/Xlib.h> and <X11/Xatom.h>, which means that the -devel package needs to depend on the packages which provide the headers: libX11-devel and xorg-x11-proto-devel.

> %{_includedir}/*
This glob also makes the package own /usr/include/X11/ directory, but it looks like that the convention so far has been to have xorg-x11-proto-devel own the dir and the rest of the libX*-devel packages just depend on xorg-x11-proto-devel. I would not suggest to depend on xorg-x11-proto-devel solely for /usr/include/X11 directory ownership, but since this package already gets pulled in to solve header deps, it's better for libXcm-devel to not own this dir.

So, in summary, I'd suggest to add libX11-devel and xorg-x11-proto-devel to -devel Requires, and use %{_includedir}/X11/Xcm.h instead of the glob above.

Please address the issues mentioned here and I'll evaluate the package for final approval.

Comment 6 Nicolas Chauvet (kwizart) 2010-07-16 15:08:04 UTC
Spec URL: http://kwizart.fedorapeople.org/review/libXcm.spec
SRPM URL: http://kwizart.fedorapeople.org/review/libXcm-0.2.6-2.fc13.src.rpm
Description: X Color Management Library

Thx for the reviews.

Comment 7 Kalev Lember 2010-07-16 15:39:49 UTC
Fedora review libXcm-0.2.6-2.fc13.src.rpm 2010-07-16

+ OK
! needs attention

rpmlint output:
$ rpmlint libXcm \
          libXcm-devel \
          libXcm-0.2.6-2.fc13.src.rpm \
libXcm.i686: W: spelling-error %description -l en_US colour -> color, co lour, co-lour
libXcm.i686: W: unused-direct-shlib-dependency /usr/lib/libXcm.so.0.2.6 /usr/lib/libXfixes.so.3
libXcm.src: W: spelling-error %description -l en_US colour -> color, co lour, co-lour
4 packages and 0 specfiles checked; 0 errors, 3 warnings.

If you want to, you can change colour -> color (US spelling) before importing the package, but otherwise the warnings are harmless and can be ignored.

+ The package is named according to the Package Naming Guidelines.
+ Spec file name matches the base package name
+ The package follows the Packaging Guidelines
+ The package is licensed with a Fedora approved license and meets the Licensing Guidelines.
+ The license field in the spec file matches the actual license
+ The package contains license file (COPYING)
+ Spec file is written in American English
+ Spec file is legible
+ Upstream sources match sources in the srpm. md5sum:
  96c1ee0c4f7f95dc448a0eb69b3929ae  libXcm-0.2.6.tar.gz
  96c1ee0c4f7f95dc448a0eb69b3929ae  Download/libXcm-0.2.6.tar.gz
+ The package builds in koji
n/a ExcludeArch bugs filed
+ BuildRequires look sane
n/a The spec file MUST handle locales properly
+ ldconfig is properly called in %post and %postun
+ Package does not bundle copies of system libraries
n/a Does not use Prefix: /usr
+ Package owns all directories it creates
+ No duplicate files in %files
+ Permissions are properly set and %files has %defattr
+ Consistent use of macros
+ The package must contain code, or permissable content.
n/a Large documentation files should go in -doc subpackage
+ Files marked %doc don't affect the package
+ Header files are in -devel
n/a Static libraries should be in -static
+ Library files that end in .so are in -devel package
+ -devel requires the fully versioned base
+ Package doesn't contain any libtool .la files
n/a Packages containing GUI apps must include %{name}.desktop file
+ Directory ownership sane
+ Filenames are valid UTF-8

> Requires:       xorg-x11-xtrans-devel
! Looks like you copy-pasted the wrong package name. Please change it to Requires: xorg-x11-proto-devel as it's the *proto* package that contains X11/Xatom.h, not *xtrans*.

I trust that you fix this before importing the package. Besides that, the package looks good.


Comment 8 Nicolas Chauvet (kwizart) 2010-07-16 15:51:25 UTC
Thx, fixed locally.

New Package CVS Request
Package Name: libXcm
Short Description: X Color Management Library
Owners: kwizart
Branches: devel F-13 F-12 EL-6

Comment 9 Kevin Fenzi 2010-07-16 17:41:52 UTC
CVS done (by process-cvs-requests.py).