| Summary: | gloox-devel should require gnutls-devel and libidn-devel | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Jan Včelák <jv+fedora> |
| Component: | gloox | Assignee: | Pavel Alexeev <pahan> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 20 | CC: | i, pahan |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2014-05-09 11:23:39 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
Rather, since both libidn-devel and gnutls-devel contain a pkgconfig file, the gloox.pc file should "Requires: gnutls libidn" for sane pkgconfig inter-dependencies and corresponding automatic RPM dependencies. I didn't know that rpmbuild understands requirements in pkgconfig. Nice. Anyway, I forgot about libgcrypt-devel, which is missing as well. Oh, and libgloox already is linked dynamically with those two libs, so relinking isn't necessary: http://koji.fedoraproject.org/koji/rpminfo?rpmID=4295220 Mission objective would be to examine whether headers from libidn-devel and gnutls-devel are include by gloox-devel headers (it doesn't seem so), and then no dependency on those two -devel packages would be needed. Further, there's a gloox-config script that contains a hardcoded /usr/lib for x86_64, which is a bug. And it relinks with the same libs (even three times -lresolv), too. Some polishing would be interesting. Also upstream. Occasionally such "Libs:" are specified incorrectly and should be moved to "Libs.private:" instead. Hello. Thanks for the bugreport. Is that gloox-config script used anywhere to have worth fix it? Well, you could ask upstream about whether they are aware of any users of that script. It's quite common to simply query pkg-config in such a script and retrieve the needed values (such as --libdir). RPM may have problems somewhile, so is it better to add hard dependencies in -devel sub or do what? Which problems in RPM do you refer to? gloox-1.0.9-2.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/gloox-1.0.9-2.fc20 If you had used %{?_isa} in those deps, that would have been more strict.
Requires: gnutls-devel%{?_isa}, libidn-devel%{?_isa}?
Yes. Ok, let it be. Thanks. But where it is described? Rawhide build: http://koji.fedoraproject.org/koji/taskinfo?taskID=6593687 gloox-1.0.9-3.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/gloox-1.0.9-3.fc20 > But where it is described? https://fedoraproject.org/wiki/Packaging:Guidelines#Requires_2 Thanks. gloox-1.0.9-3.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report. |
Bug summary tells it all. Gloox package config contains linker flags for GnuTLS library and IDN library, but corresponding -devel packages are not specified as requirements. % cat /usr/lib64/pkgconfig/gloox.pc prefix=/usr exec_prefix=/usr libdir=/usr/lib64 includedir=/usr/include Name: gloox Description: A high-level XMPP/Jabber library for C++ Version: 1.0.3 Libs: -L${libdir} -lgloox -lresolv -lresolv -lresolv -lidn -lgnutls -lgcrypt -lz Cflags: -I${includedir} -pthread % rpm -q gloox-devel --requires /bin/sh /usr/bin/pkg-config gloox = 1:1.0.3-1.fc20 libgloox.so.8()(64bit) pkgconfig rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1