Bug 591365
Summary: | Review Request: libexplain - Library functions to explain system call errors | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Eric Smith <spacewar> |
Component: | Package Review | Assignee: | Martin Gieseking <martin.gieseking> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | fedora-package-review, martin.gieseking, notting |
Target Milestone: | --- | Flags: | martin.gieseking:
fedora-review+
gwync: fedora-cvs+ |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | libexplain-0.52.D002-1.el6 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2011-01-17 20:54:34 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: |
Description
Eric Smith
2010-05-12 02:53:09 UTC
Hi Eric, some quick comments: - unlike your comment in the spec file, the regular SF download URL works, so you should change Source0 to https://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz - The intended license seems to be LGPLv3+. However the sources in libexplain/iocontrol refer to GPL3+. That would result in GPL3+. You should ask upstream if this is intentional or a mistake. In the latter case the comment headers should be fixed. - the package fails to build in mock and koji: http://koji.fedoraproject.org/koji/taskinfo?taskID=2229164 This is because there are some includes missing, e.g. in libexplain/buffer/ifreq_data/hwtstamp_config.c: #include <libexplain/parse_bits.h> in libexplain/iocontrol/siocshwtstamp.c: #include <libexplain/path_is_efault.h> I didn't try to find all. There are some more includes missing. (In reply to comment #1) > https://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz Sorry, no need for https. http should do it too. I still find that I cannot download using the standard SF URL. If you are able to get that to work, please give me the EXACT URL you use. In particular, for the latest version, which is 0.34.D001. I'll check with the author about the LGPLv3+ vs. GPLv3+ issue. It built fine for me with mock on F12 x86_64 before I uploaded it. I've since upgraded to 0.34.D001, which builds fine on F12 i386 and x86_64 with mock, and for f12-dist with koji. It looks like something much have changed in the headers for F13 since that problem didn't occur with F12. I'll see if I can find more of the missing includes, and report the problem upstream. Thanks! Eric (In reply to comment #3) > I still find that I cannot download using the standard SF URL. If you are able > to get that to work, please give me the EXACT URL you use. In particular, for > the latest version, which is 0.34.D001. I was able to download the previous releases using the standard SF URL. However, the tarball of the latest release 0.34.D001 was directly uploaded to the SF project webspace. Thus, it's not reachable through the files section [1]. Maybe you should ask upstream to upload the tarball with the SF file manager. This would also update the "Download Now!" button on the project page [2]. The previous release 0.32.D001 can still be downloaded with http://downloads.sourceforge.net/libexplain/libexplain-0.32.D001.tar.gz > It looks like something much have changed in the > headers for F13 since that problem didn't occur with F12. I'll see if I can > find more of the missing includes, and report the problem upstream. OK, thanks for the info. I hope the changes are not too drastic, and the issues can be sorted easily. [1] http://sourceforge.net/projects/libexplain/files/ [2] http://sourceforge.net/projects/libexplain/ Peter Miller (upstream author) has addressed the Fedora 13 build issue, and has also changed his build system to upload to the SourceForge file manager. Spec URL: http://fedorapeople.org/~brouhaha/libexplain/libexplain.spec SRPM URL: http://fedorapeople.org/~brouhaha/libexplain/libexplain-0.38.D001-1.fc13.src.rpm Koji scratch build for Fedora 13: http://koji.fedoraproject.org/koji/taskinfo?taskID=2453528 Here are some (minor) comments: - Package "explain" doesn't need to require the base package. libexplain is picked up automatically as a dependency. - The %{optflags} are not required in "make install" - The manpages are licensed under GPLv3+. Thus, the -devel package should get the License tag: LGPLv3+ and GPLv3+ - There's an issue in explain_output.3 reported by rpmlint: libexplain-devel.i686: W: manual-page-warning /usr/share/man/man3/explain_output.3.gz 25: warning: `XX' not defined You can fix it with the following patch: --- a/man/man3/explain_output.3 +++ b/man/man3/explain_output.3 @@ -19,10 +19,10 @@ .ds n) explain_output .TH explain_output 3 .SH NAME +explain_output \- output error messages .if require_index \{ -explain_output \- output error messages +.XX "explain_output(3)" "output error messages" .\} -.XX "explain_output(3)" "output error messages" .SH SYNOPSIS .ft CW #include <libexplain/output.h> The 'XX" macro problem has been fixed upstream. I've addressed Martin's other comments in the updated spec. Spec URL: http://fedorapeople.org/~brouhaha/libexplain/libexplain.spec SRPM URL: http://fedorapeople.org/~brouhaha/libexplain/libexplain-0.40.D001-1.fc14.src.rpm Koji scratch build for Fedora 14: http://koji.fedoraproject.org/koji/taskinfo?taskID=2697280 The package looks fine now. Since some files are licensed under GPLv3+, I recommend to ask upstream to add the GPLv3 license text to a future release. Currently, only the LGPLv3 license text is present in the tarball. $ rpmlint /var/lib/mock/fedora-14-x86_64/result/*.rpm explain.x86_64: W: spelling-error %description -l en_US strace -> trace, traces, strafe libexplain.src: W: spelling-error %description -l en_US strerror -> str error, str-error, stressor libexplain.x86_64: W: spelling-error %description -l en_US strerror -> str error, str-error, stressor 5 packages and 0 specfiles checked; 0 errors, 3 warnings. The above spelling errors are false positive and can be ignored. --------------------------------- key: [+] OK [.] OK, not applicable [X] needs work --------------------------------- [+] MUST: The package must be named according to the Package Naming Guidelines. [+] MUST: The spec file name must match the base package %{name}. [+] MUST: The package must meet the Packaging Guidelines. [+] MUST: The package must be licensed with a Fedora approved license. [+] MUST: The License field in the package spec file must match the actual license. [+] MUST: The file containing the text of the license(s) for the package must be included in %doc. [+] MUST: The spec file must be written in American English. [+] MUST: The spec file for the package MUST be legible. [+] MUST: The sources used to build the package must match the upstream source. $ md5sum libexplain-0.40.D001.tar.gz* 7530e6f5886ffee062f89ff283884ea0 libexplain-0.40.D001.tar.gz 7530e6f5886ffee062f89ff283884ea0 libexplain-0.40.D001.tar.gz.1 [+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture. koji scratch build (f15): http://koji.fedoraproject.org/koji/taskinfo?taskID=2701054 [.] MUST: If the package does not successfully compile, build or work on an architecture, ... [+] MUST: All build dependencies must be listed in BuildRequires. [.] MUST: The spec file MUST handle locales properly. This is done by using the %find_lang macro. Using %{_datadir}/locale/* is strictly forbidden. [+] MUST: Packages storing shared library files (not just symlinks) must call ldconfig in %post and %postun. [+] MUST: Packages must NOT bundle copies of system libraries. [.] MUST: If the package is designed to be relocatable, ... [+] MUST: A package must own all directories that it creates. [+] MUST: A Fedora package must not list a file more than once in %files. [+] MUST: Permissions on files must be set properly. [+] MUST: Each package must consistently use macros. [+] MUST: The package must contain code, or permissable content. [.] MUST: Large documentation files must go in a -doc subpackage. [+] MUST: Files in %doc must not affect the runtime of the application. [+] MUST: Header files must be in a -devel package. [.] MUST: Static libraries must be in a -static package. [+] MUST: .so (without suffix) must go in a -devel package. [+] MUST: devel packages must require the base package using a fully versioned dependency [+] MUST: Packages must NOT contain any .la libtool archives [.] MUST: Packages containing GUI applications must include a %{name}.desktop file [+] MUST: Packages must not own files or directories already owned by other packages. [+] MUST: All filenames in rpm packages must be valid UTF-8. [X] SHOULD: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. - The GPLv3 license text is missing in the tarball. I recommend to ask upstream to add it. [+] SHOULD: The reviewer should test that the package builds in mock. [+] SHOULD: The package should compile and build into binary rpms on all supported architectures. [+] SHOULD: The reviewer should test that the package functions as described. [+] SHOULD: If scriptlets are used, those scriptlets must be sane. [+] SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg. [.] SHOULD: If the package has file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin ... [+] SHOULD: your package should contain man pages for binaries/scripts. ---------------- Package APPROVED ---------------- New Package SCM Request ======================= Package Name: libexplain Short Description: Library functions to explain system call errors Owners: brouhaha Branches: f14 Git done (by process-git-requests). libexplain-0.40.D001-1.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/libexplain-0.40.D001-1.fc14 libexplain-0.40.D001-1.fc14 has been pushed to the Fedora 14 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update libexplain'. You can provide feedback for this update here: https://admin.fedoraproject.org/updates/libexplain-0.40.D001-1.fc14 libexplain-0.40.D001-1.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report. Package Change Request ====================== Package Name: libexplain New Branches: el6 Owners: brouhaha Git done (by process-git-requests). libexplain-0.52.D002-1.el6 has been submitted as an update for Fedora EPEL 6. https://admin.fedoraproject.org/updates/libexplain-0.52.D002-1.el6 libexplain-0.52.D002-1.el6 has been pushed to the Fedora EPEL 6 stable repository. |