Spec URL: http://fedorapeople.org/~timn/robotics/fawkes.spec SRPM URL: http://fedorapeople.org/~timn/robotics/fawkes-0.4-2.fc13.src.rpm Description: Fawkes is a component-based software framework for robotic real-time applications for various platforms and domains. It was developed for cognitive robotics real-time applications like soccer and service robotics and supports fast information exchange and efficient combination and coordination of different components to suit the needs of mobile robots operating in uncertain environments. URL: http://www.fawkesrobotics.org Scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=2567389 rpmlint: Produces many warnings and one error, which I'm going to explain now. fawkes.x86_64: E: no-binary The base package is a meta package pulling the required libraries and a useful subset of plugins. I'm not aware of an option to have the base package noarch and sub-packages arch dependent. Therefore the base package is arch dependent and causes this false error. 21x W: no-documentation Many sub-packages involve only packaging a plugin without own documentation. We consider improving this upstream by having a README per plugin. 31x W: no-manual-page-for-binary We are aware of lacking documentation and have started improving on this (cf. http://git.fawkesrobotics.org/fawkes.git/shortlog/refs/heads/timn/man-pages). A patch is included to include work on this branch and until approval we will have more man pages already. 25x W: devel-file-in-non-devel-package This is a false positive. The mentioned libraries are interface files loaded at run-time, not linked libraries. They are not devel files, they are required for normal run-time. They are marked as warning because they do not reside in a path that contains a "plugins" directory, which would be spared by rpmlint. The shared objects are required to support run-time introspection. W: spelling-error %description -l en_US refbox -> ref box, ref-box, reflex refbox is indeed the correct spelling, it is a custom word from RoboCup terminology. It is mentioned in addition to the full word, referee box.
That's a really big spec-file. Ok, I'll review it
One (non-blocker) suggestion - I suspect that the contents of %{_libdir}/%{name} are dlopened, right? Then no need to use versioned soname for them (if they are dlopened and not linked at compile time). Please, consider adding -avoid-version or something similar (depending on your buildsystem) to libtool command line in the next releases of Fawkes. REVIEW: Legend: + = PASSED, - = FAILED, 0 = Not Applicable + rpmlint is NOT silent, but all its messages were explained by submitter (see above). I decided not to post this really huge text here. + The package is named according to the Package Naming Guidelines. + The spec file name matches the base package %{name}, in the format %{name}.spec. + The package meets the Packaging Guidelines. + The package is licensed with a Fedora approved license and meets the Licensing Guidelines. + The License field in the package spec file matches the actual license. + The file, containing the text of the license(s) for the package, is included in %doc. + The spec file is written in American English. + The spec file for the package is legible. + The sources used to build the package, match the upstream source, as provided in the spec URL. sulaco ~/rpmbuild/SOURCES: sha256sum fawkes-0.4.tar.bz2* 8bd9a44c070eec07323846f069be4c3dbdb6c54bb3a9312285ea14614b9ea80d fawkes-0.4.tar.bz2 8bd9a44c070eec07323846f069be4c3dbdb6c54bb3a9312285ea14614b9ea80d fawkes-0.4.tar.bz2.1 sulaco ~/rpmbuild/SOURCES: + The package successfully compiles and builds into binary rpms on at least one primary architecture. See koji link above. + All build dependencies are listed in BuildRequires. There are several unneeded BuildRequires listed (from default build root set) but listing them explicitly is not a blocker and might help other distribution's maintainers to adapt this spec-file easily. 0 No need to handle locales. + The package stores shared library files in some of the dynamic linker's default paths, and it calls ldconfig in %post and %postun. + The package does NOT bundle copies of system libraries. 0 The package is not designed to be relocatable. - The package MUST own all directories that it creates. Please, add %dir %{_datadir}/fawkes to fawkes-core %files section. + The package does not list a file more than once in the spec file's %files listings. + Permissions on files are set properly. + The package has a %clean section, which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). + The package consistently uses macros. + The package contains code, or permissible content. + Anything, the package includes as %doc, does not affect the runtime of the application. + Header files are stored in a -devel package. 0 No static libraries. 0 No pkgconfig(.pc) files. + The library file(s) that end in .so (without suffix) is(are) stored in a -devel package. + The -devel package requires the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release} + The package does NOT contain any .la libtool archives. - The package includes a %{name}.desktop files, and this files should be validated with with desktop-file-validate in the %install section. + The package does not own files or directories already owned by other packages. + At the beginning of %install, the package runs rm -rf %{buildroot} (or $RPM_BUILD_ROOT). + All filenames in rpm packages are valid UTF-8. So here is a summary: * Add %dir %{_datadir}/fawkes to fawkes-core %files section. * Validate installed *.desktop files with desktop-file-validate in the %install section.
I have updated the spec file. The changes are: - Make fawkes-core own /usr/share/fawkes - Run desktop-file-validate on .desktop files - consistent macro usage - Update man-page patch to latest version - Add patch for timn/desktop-files branch fixing desktop files - Use uncolored targets for better Koji readability - Build all and gui targets in one to have only one tree traversal The new SRPM is at http://fedorapeople.org/~timn/robotics/fawkes-0.4-3.fc13.src.rpm (spec has been updated in place).
Ok, good. I don't see any other issues, so this package is APPROVED
Thank you for your thorough review!
New Package SCM Request ======================= Package Name: fawkes Short Description: Robot Software Framework Owners: timn Branches: f13 f14 el5 el6 InitialCC:
The bug summary says "Fawkes", the SCM request says "fawkes". Please correct the one which does not match your wishes and re-raise the fedora-cvs flag. Thanks.
Git done (by process-git-requests).
fawkes-0.4-3.fc13 has been submitted as an update for Fedora 13. https://admin.fedoraproject.org/updates/fawkes-0.4-3.fc13
fawkes-0.4-3.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/fawkes-0.4-3.fc14
fawkes-0.4-5.fc13 has been submitted as an update for Fedora 13. https://admin.fedoraproject.org/updates/fawkes-0.4-5.fc13
fawkes-0.4-5.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/fawkes-0.4-5.fc14
fawkes-0.4-5.el5 has been submitted as an update for Fedora EPEL 5. https://admin.fedoraproject.org/updates/fawkes-0.4-5.el5
fawkes-0.4-5.fc13 has been pushed to the Fedora 13 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 fawkes'. You can provide feedback for this update here: https://admin.fedoraproject.org/updates/fawkes-0.4-5.fc13
fawkes-0.4-5.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report.
fawkes-0.4-5.fc13 has been pushed to the Fedora 13 stable repository. If problems still persist, please make note of it in this bug report.
fawkes-0.4-5.el5 has been pushed to the Fedora EPEL 5 stable repository. If problems still persist, please make note of it in this bug report.