Bug 851677 (mingw-dbus-glib)

Summary: Review Request: mingw-dbus-glib - MinGW build of GLib bindings for D-Bus
Product: [Fedora] Fedora Reporter: greg.hellings
Component: Package ReviewAssignee: Erik van Pienbroek <erik-fedora>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: rawhideCC: erik-fedora, fedora-mingw, greg.hellings, notting, package-review
Target Milestone: ---Flags: erik-fedora: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-05 02:58:38 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:
Bug Depends On: 454410    
Bug Blocks: 851683    

Description greg.hellings 2012-08-24 16:52:54 UTC
Spec URL: http://dl.thehellings.com/mingw32/dbus-glib/mingw-dbus-glib.spec
SRPM URL: http://dl.thehellings.com/mingw32/dbus-glib/mingw-dbus-glib-0.100-1.fc17.src.rpm
Description: D-Bus is a message bus system, a simple way for applications to talk to
one another. D-Bus supplies both a system daemon and a
per-user-login-session daemon. Also, the message bus is built on top of
a general one-to-one message passing framework, which can be used by
any two apps to communicate directly (without going through the message
bus daemon).

Fedora Account System Username:greghellings

Also, I have built this and other dependent packages over on the OBS against Fedora 17. This package is at https://build.opensuse.org/package/show?package=mingw-dbus-glib&project=home%3Agreg_hellings%3Afedora-mingw

Comment 1 greg.hellings 2012-11-20 21:08:22 UTC
I have updated the spec file to build a cleaner version of the library according to the package guidelines. Spec file is still in the same place. SRPM is now

http://dl.thehellings.com/mingw32/dbus-glib/mingw-dbus-glib-0.100-2.fc17.src.rpm

Comment 2 Erik van Pienbroek 2013-01-26 17:04:23 UTC
Taking for review

Regarding your comment about the license: I think it should be good enough to use the same license tag as used by the native dbus-glib package (thus AFL and GPLv2+).

Please don't use the %{summary} tags. Each subpackage has a different goal (win32/win64 and shared/static) so each subpackage should have its own summary.

Why are you using config.cache files? They should only be used when absolutely necessary. It might be necessary to patch the configure.in file. Patching is more preferred here as the change can then be proposed for inclusion upstream and other users can benefit from it as well without having to use hacks.

Comment 3 greg.hellings 2013-01-26 17:56:21 UTC
Changed license field

This package wasn't using %{summary} tags that I could see, but I also wasn't following the MinGW styles for them. I've updated that.

I removed the config.cache fields and modified configure.ac with a patch and configure script argument. The check that was failing has been removed in dbus-glib's current git head, so the next release should obviate the need for this patch.

New URLs:
http://dl.thehellings.com/mingw32/dbus-glib/mingw-dbus-glib.spec
http://dl.thehellings.com/mingw32/dbus-glib/mingw-dbus-glib-0.100-2.fc18.src.rpm

Comment 4 greg.hellings 2013-01-26 18:19:51 UTC
Oops, I build that second -2 off of my original, buggy spec file instead of continuing off the earlier -2. I've replaced it with the proper -3

http://dl.thehellings.com/mingw32/dbus-glib/mingw-dbus-glib-0.100-3.fc18.src.rpm

Comment 5 Erik van Pienbroek 2013-01-26 20:21:54 UTC
The latest .src.rpm fails to build in rawhide due to more strict behaviour of automake: http://kojipkgs.fedoraproject.org//work/tasks/4827/4904827/build.log
It should be resolvable by replacing your autoreconf call with 'autoreconf --install --force'

Please also add a comment which explains the patch does and where you got it. If you got it from the upstream source repository then please also mention the git/svn/... revision number.

Comment 6 Erik van Pienbroek 2013-01-26 20:23:08 UTC
BTW, is the summary used in this review ticket correct? It should match the summary as mentioned in the spec file: MinGW build of GLib bindings for D-Bus

Comment 7 greg.hellings 2013-01-26 21:57:16 UTC
Added patch comment - the issue is present in git by removal of the autofoo check.

Added the extra arguments to autoreconf

I had updated the Summary field to match the native packages, so I'm updating the ticket to match.

http://dl.thehellings.com/mingw32/dbus-glib/mingw-dbus-glib-0.100-4.fc18.src.rpm

Comment 8 Erik van Pienbroek 2013-01-27 00:09:40 UTC
$ rpmlint mingw-dbus-glib.spec 
0 packages and 1 specfiles checked; 0 errors, 0 warnings.

$ rpmlint mingw-dbus-glib-0.100-4.fc18.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

$ rpmlint mingw32-dbus-glib-0.100-4.fc18.noarch.rpm mingw32-dbus-glib-static-0.100-4.fc18.noarch.rpm mingw64-dbus-glib-0.100-4.fc18.noarch.rpm mingw64-dbus-glib-static-0.100-4.fc18.noarch.rpm
mingw32-dbus-glib-static.noarch: W: no-documentation
mingw64-dbus-glib-static.noarch: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 2 warnings.

$ rpm --query --requires mingw32-dbus-glib
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
mingw32-crt
mingw32-filesystem >= 83
mingw32(kernel32.dll)
mingw32(libdbus-1-3.dll)
mingw32(libdbus-glib-1-2.dll)
mingw32(libexpat-1.dll)
mingw32(libgcc_s_sjlj-1.dll)
mingw32(libgio-2.0-0.dll)
mingw32(libglib-2.0-0.dll)
mingw32(libgobject-2.0-0.dll)
mingw32(msvcrt.dll)
rpmlib(PayloadIsXz) <= 5.2-1

$ rpm --query --requires mingw32-dbus-glib-static
mingw32-dbus-glib = 0.100-4.fc18
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadIsXz) <= 5.2-1

$ rpm --query --requires mingw64-dbus-glib
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
mingw64-crt
mingw64-filesystem >= 83
mingw64(kernel32.dll)
mingw64(libdbus-1-3.dll)
mingw64(libdbus-glib-1-2.dll)
mingw64(libexpat-1.dll)
mingw64(libgio-2.0-0.dll)
mingw64(libglib-2.0-0.dll)
mingw64(libgobject-2.0-0.dll)
mingw64(msvcrt.dll)
rpmlib(PayloadIsXz) <= 5.2-1

$ rpm --query --requires mingw64-dbus-glib-static
mingw64-dbus-glib = 0.100-4.fc18
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadIsXz) <= 5.2-1


$ rpm --query --provides mingw32-dbus-glib
mingw32-dbus-glib = 0.100-4.fc18
mingw32(libdbus-glib-1-2.dll)

$ rpm --query --provides mingw32-dbus-glib-static
mingw32-dbus-glib-static = 0.100-4.fc18

$ rpm --query --provides mingw64-dbus-glib
mingw64-dbus-glib = 0.100-4.fc18
mingw64(libdbus-glib-1-2.dll)

$ rpm --query --provides mingw64-dbus-glib-static
mingw64-dbus-glib-static = 0.100-4.fc18


$ wget --quiet http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.100.tar.gz -O - | md5sum
d33959a9c0c6a158f5ac6d640316e89e  -
$ md5sum dbus-glib-0.100.tar.gz 
d33959a9c0c6a158f5ac6d640316e89e  dbus-glib-0.100.tar.gz


+ OK
! Needs to be looked into
/ Not applicable

[+] Compliant with generic Fedora Packaging Guidelines
[+] Source package name is prefixed with 'mingw-'
[+] Spec file starts with %{?mingw_package_header}
[+] BuildRequires: mingw32-filesystem >= 95 is in the .spec file
[+] BuildRequires: mingw64-filesystem >= 95 is in the .spec file
[+] Spec file contains %package sections for both mingw32 and mingw64 packages
[+] Binary mingw32 and mingw64 packages are noarch
[+] Spec file contains %{?mingw_debug_package} after the %description section
[+] Uses one of the macros %mingw_configure, %mingw_cmake, or %mingw_cmake_kde4
    to configure the package
[+] Uses the macro %mingw_make to build the package
[+] Uses the macro %mingw_make to install the package
[/] If package contains translations, the %mingw_find_lang macro must be used
[+] No binary package named mingw-$pkgname is generated
[!] Libtool .la files are not bundled
[+] .def files are not bundled
[+] Man pages which duplicate native package are not bundled
[+] Info files which duplicate native package are not bundled
[+] Provides of the binary mingw32 and mingw64 packages are equal
[!] Requires of the binary mingw32 and mingw64 packages are equal


The rpmlint warnings for the -static subpackages are harmless and can be ignored

The mingw32 package seems to depend on libgcc_s_sjlj-1.dll while the mingw64
package doesn't. This may be caused by the fact that I'm already using
mingw-gcc 4.8 here (which uses SEH exceptions instead of SjLj exceptions
for the win64 target by default). We can investigate this later, but
it isn't a show-stopper for now

=====================================================
 The package mingw-dbus-glib is APPROVED by epienbro
=====================================================

Comment 9 greg.hellings 2013-01-27 17:23:38 UTC
Thanks!

New Package SCM Request
=======================
Package Name:  mingw-dbus-glib
Short Description: MinGW build of GLib bindings for D-Bus
Owners: greghellings
Branches: f17 f18
InitialCC:

Comment 10 Gwyn Ciesla 2013-01-27 21:32:09 UTC
Git done (by process-git-requests).

Comment 11 Fedora Update System 2013-01-28 00:51:13 UTC
mingw-dbus-glib-0.100-4.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/mingw-dbus-glib-0.100-4.fc17

Comment 12 Fedora Update System 2013-01-28 00:52:09 UTC
mingw-dbus-glib-0.100-4.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/mingw-dbus-glib-0.100-4.fc18

Comment 13 Fedora Update System 2013-01-28 14:54:40 UTC
mingw-dbus-glib-0.100-4.fc17 has been pushed to the Fedora 17 testing repository.

Comment 14 Fedora Update System 2013-02-05 02:58:41 UTC
mingw-dbus-glib-0.100-4.fc18 has been pushed to the Fedora 18 stable repository.

Comment 15 Fedora Update System 2013-02-05 03:00:26 UTC
mingw-dbus-glib-0.100-4.fc17 has been pushed to the Fedora 17 stable repository.