[zeromq-dev] RPM packaging for 0MQ

David Robinson zxvdr.au at gmail.com
Wed May 19 01:48:05 CEST 2010

On Wed, May 19, 2010 at 12:26 AM, Martin Lucina <mato at kotelna.sk> wrote:
> Hi Mikko,
> mkoppanen at php.net said:
>> Hello,
>> the attached patches for RPM packaging (tested on CentOS 5) for zeromq
>> library are submitted under MIT license. In case the attachments get
>> lost they are available here as well:
>> http://valokuva.org/~mikko/0001-Import-redhat-packaging.patch
>> http://valokuva.org/~mikko/0002-dist-hook-for-copying-zeromq.spec-to-top-level.patch
>> rpmlint output:
>> 0 packages and 1 specfiles checked; 0 errors, 0 warnings.
>> Comments?
> Looks good. A couple of things before I commit this:
> 1) Can we use the same description texts as we already have for the Debian
> packages? You can find these in debian/control in Git. I'd take the first
> line as the Summary: field in the RPM spec, and the rest of the text as the
> %description.
> 2) We don't want to package the the perf tests right now. Instead, the utils
> package should contain the devices binaries and their documentation.
> 3) I'm not sure about RPM conventions, but for Debian we have:
> libzmq0 : Shared library only plus general documentation (applications
> would depend on this)
> libzmq-dev : Development libraries, headers plus all API man pages
> libzmq-dbg : Debugging symbols for development libraries
> zeromq-bin : Devices and their man pages
> AFAICS these correspond to zeromq, zeromq-devel and zeromq-utils on RPM systems,
> right? (There being no equivalent to -dbg)

Couple of things...

1) debugging symbols go in a -debuginfo subpackage
2) iirc you don't usually specify gcc, make etc as BuildRequires
because any decent build system will automatically include them since
practically everything needs them (you'll notice that most packages
don't specify them even thou they're build by them).
3) libraries should probably be split out into a (-lib) subpackage
(and have the main package require it), that way other packages can
just require the -lib package if they don't need the binaries.
4) I recommend sending the spec file to the distros to review. Someone
has already started packaging for Fedora [1] but the process stalled.
Perhaps you could pick up where they left off (or if you're not
interested in this I'll try and get the ball rolling again)? Once the
package is in Fedora you could potentially get it in EPEL too. The
package review process is rather thorough and the reviewers will be
able to spot most mistakes.

fwiw, the existing spec file is here:


[1] https://bugzilla.redhat.com/show_bug.cgi?id=459874

More information about the zeromq-dev mailing list