Bug 502388 - Review Request: mingw32-enchant - MinGW Windows Enchanting Spell Checking Library
Summary: Review Request: mingw32-enchant - MinGW Windows Enchanting Spell Checking Lib...
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Kalev Lember
QA Contact: Fedora Extras Quality Assurance
Depends On: 502387
Blocks: 499992
TreeView+ depends on / blocked
Reported: 2009-05-24 16:36 UTC by Erik van Pienbroek
Modified: 2009-08-12 20:54 UTC (History)
4 users (show)

Fixed In Version: 1.5.0-2.fc11
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2009-08-12 20:54:28 UTC
kalevlember: fedora-review+
kevin: fedora-cvs+

Attachments (Terms of Use)

Description Erik van Pienbroek 2009-05-24 16:36:41 UTC
Spec URL: http://www.ftd4linux.nl/contrib/mingw32-enchant.spec
SRPM URL: http://www.ftd4linux.nl/contrib/mingw32-enchant-1.4.2-6.fc11.src.rpm
A library that wraps other spell checking backends.

This is the MinGW build of enchant

Koji scratch build: none yet because mingw32-hunspell isn't in Fedora yet

Approved MinGW packaging guidelines are here:

Comment 1 Kalev Lember 2009-08-08 09:28:27 UTC
Now that mingw32-hunspell is in Fedora, we can go on with this review. Can you update mingw32-enchant to 1.5.0 before we go on?

Comment 2 Erik van Pienbroek 2009-08-08 15:24:13 UTC
Here you go:

Spec URL: http://www.ftd4linux.nl/contrib/mingw32-enchant.spec
SRPM URL: http://www.ftd4linux.nl/contrib/mingw32-enchant-1.5.0-1.fc12.src.rpm

Koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1591579

* Sat Aug  8 2009 Erik van Pienbroek <epienbro@fedoraproject.org> - 1.5.0-1
- Update to version 1.5.0
- Drop upstreamed patch
- Don't use 'make %%{?_smp_mflags}' as this causes a compile failure in Koji

Comment 3 Kalev Lember 2009-08-08 21:51:34 UTC
Taking for review.

Approved packaging guidelines for MinGW:

rpmlint output:
$ rpmlint mingw32-enchant-1.5.0-1.fc12.noarch.rpm
mingw32-enchant.noarch: E: arch-independent-package-contains-binary-or-object /usr/i686-pc-mingw32/sys-root/mingw/lib/enchant/libenchant_myspell.a
1 packages and 0 specfiles checked; 1 errors, 0 warnings.

$ rpmlint mingw32-enchant-static-1.5.0-1.fc12.noarch.rpm
mingw32-enchant-static.noarch: E: arch-independent-package-contains-binary-or-object /usr/i686-pc-mingw32/sys-root/mingw/lib/libenchant.a
mingw32-enchant-static.noarch: W: no-documentation
1 packages and 0 specfiles checked; 1 errors, 1 warnings.

$ rpmlint mingw32-enchant-1.5.0-1.fc12.src.rpm
mingw32-enchant.src: W: strange-permission compile-resources 0775
1 packages and 0 specfiles checked; 0 errors, 1 warnings.

$ rpmlint mingw32-enchant.spec
0 packages and 1 specfiles checked; 0 errors, 0 warnings.

Comment 4 Kalev Lember 2009-08-08 22:01:58 UTC
Fedora review mingw32-enchant-1.5.0-1.fc12.src.rpm 2009-08-09

+ OK
! needs attention

! rpmlint output:
mingw32-enchant.noarch: E: arch-independent-package-contains-binary-or-object /usr/i686-pc-mingw32/sys-root/mingw/lib/enchant/libenchant_myspell.a
   => This is a static lib which needs to be placed in a -static subpackage or removed.

mingw32-enchant-static.noarch: E: arch-independent-package-contains-binary-or-object /usr/i686-pc-mingw32/sys-root/mingw/lib/libenchant.a
mingw32-enchant-static.noarch: W: no-documentation
   => Those errors / warnings are harmless and can be ignored for a mingw32 package.

mingw32-enchant.src: W: strange-permission compile-resources 0775
   => Should probably be 0755.

+ Package is named according to Fedora MinGW packaging guidelines

+ Specfile name matches the package base name

! Package does not follow the Fedora MinGW packaging guidelines
The %files section must list DLLs separately, which also includes the DLLs in %{_mingw32_libdir}/enchant/

+ The stated license (LGPLv2+) is a Fedora approved license

+ The stated license is the same as the one for the corresponding
  Fedora package

+ The package contains the license file (COPYING.LIB)

+ Spec file is written in American English

+ Spec file is legible

+ Upstream sources match sources in the srpm
7dfaed14e142b4a0004b770c9568ed02  enchant-1.5.0.tar.gz
7dfaed14e142b4a0004b770c9568ed02  SRPM/enchant-1.5.0.tar.gz

+ Package builds in mock (Fedora Rawhide i386)

n/a ExcludeArch bugs filed

! BuildRequires: automake is probably not needed and can be removed
  Besides that, BuildRequires look sane.

n/a %find_lang instead of %{_datadir}/locale/*

n/a binary RPM with shared library files must call ldconfig in %post and %postun

+ Does not use Prefix: /usr

+ Package owns all directories it creates

+ No duplicate files in %files

+ %files has %defattr

! %clean contains rm -r $RPM_BUILD_ROOT, but according to packaging guidelines it should be "rm -rf"

+ Consistent use of macros

+ Package must contain code or permissible content

n/a Large documentation files should go in -doc subpackage

+ Files marked %doc should not affect package

n/a Header files should be in -devel
    Fedora MinGW guidelines allow headers in main package

! Static libraries should be in -static
%{_mingw32_libdir}/enchant/libenchant_myspell.a needs to be placed either in a -static subpackage or removed.

! Packages containing pkgconfig (.pc) files need 'Requires: pkgconfig'

n/a libfoo.so must go in -devel

n/a -devel must require the fully versioned base

n/a Packages should not contain libtool .la files
    Fedora MinGW guidelines allow .la files

n/a Packages containing GUI apps must include %{name}.desktop file

+ Packages must not own files or directories owned by other packages

+ %install begins with rm -rf $RPM_BUILD_ROOT

+ Filenames must be valid UTF-8

! As per MinGW packaging guidelines, the mingw32- package should track native
  Fedora package as close as possible and include all the same patches.
Consider including three additional patches that the native package has:
Patch0: enchant-1.5.0-abi12160.searchdirs.patch
Patch1: enchant-1.5.0-abi12173.leaks.patch
Patch2: enchant-1.5.0-abi12174.fixbadmatch.patch

! A comment in the spec says that there's a file named "compile-resource"
  missing from the tarball. Have you filed an upstream bug report for the
  missing file?

! All patches should have an upstream bug link or comment

Comment 5 Erik van Pienbroek 2009-08-08 23:27:35 UTC
Thanks for the review!

Spec URL: http://www.ftd4linux.nl/contrib/mingw32-enchant.spec
SRPM URL: http://www.ftd4linux.nl/contrib/mingw32-enchant-1.5.0-2.fc12.src.rpm

Koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1592303

* Sun Aug  9 2009 Erik van Pienbroek <epienbro@fedoraproject.org> - 1.5.0-2
- Dropped BR: autoconf libtool
- Added BR: m4
- Use 'rm -rf $RPM_BUILDROOT' in the %%clean phase
- Fixed a 'strange-permission' rpmlint warning
- Moved the file %%{_mingw32_libdir}/enchant/libenchant_myspell.a to
  the -static subpackage
- Use a more verbose %%files list
- Added a Requires: pkgconfig to the main package
- Added patches from the native enchant package
- Dropped another patch which isn't necessary anymore

All the patches which are applied in this package are already upstreamed

Comment 6 Erik van Pienbroek 2009-08-08 23:30:08 UTC
Forgot to mention this: the missing file is also already known and solved upstream

Comment 7 Kalev Lember 2009-08-09 08:45:31 UTC
Looks good.


Comment 8 Erik van Pienbroek 2009-08-09 08:53:44 UTC
Thanks for the approval!

New Package CVS Request
Package Name: mingw32-enchant
Short Description: MinGW Windows Enchanting Spell Checking Library
Owners: epienbro
Branches: F-11

Comment 9 Kevin Fenzi 2009-08-10 05:37:34 UTC
cvs done.

Comment 10 Fedora Update System 2009-08-11 16:44:31 UTC
mingw32-enchant-1.5.0-2.fc11 has been submitted as an update for Fedora 11.

Comment 11 Fedora Update System 2009-08-12 20:54:23 UTC
mingw32-enchant-1.5.0-2.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.