Spec URL: http://www.unicornscan.org/releases/unicornscan-0.4.7.spec SRPM URL: http://www.unicornscan.org/releases/unicornscan-0.4.7-1.src.rpm Description: Unicornscan provides an interface for introducing a stimulus to and measuring a response from a TCP/IP enabled device or network.
Just a quick glimpse over the spec - Buildroot does not respect the guidelines (http://fedoraproject.org/wiki/Packaging/Guidelines#head-b4fdd45fa76cbf54c885ef0836361319ab962473) - You have duplicate Requires and Build-Requires ( for instance postgresql-devel requires postgresql); please also verify if all those packages listed under Rwquires are indeed neededm usually rpm does a pretty good job with automatic deps - You have included lots of files which probably should not be included (.a, .la). Please see http://fedoraproject.org/wiki/Packaging/Guidelines#head-2302ec1e1f44202c9cc4bcce24cb711266557ad7 and if the files that you have included, examine one of -- add a comment explaining why are they needed -- create separate packages for static and/or libtool archives
Thank you for the feedback. Please see the updated files at: http://www.unicornscan.org/releases/unicornscan-0.4.7-1.fc8.i386.rpm http://www.unicornscan.org/releases/unicornscan-0.4.7-1.fc8.src.rpm http://www.unicornscan.org/releases/unicornscan-0.4.7.spec
There are a couple more changes needed - if possible, please name the spec unicornscan.spec (leaving out the version) - please use "make %{?_smp_mflags}" instead of "make" (unless there is a problem with parallel compile, in which case this should be mentioned in a comment) - the configure script cause build to fail in mock fails with: checking for non-priv user for listener... Using user nobody checking for PostgreSQL... configure: error: cant find PostgreSQL pq library ./configure: line 24853: exit: rerun: numeric argument required ./configure: line 24853: exit: rerun: numeric argument required error: Bad exit status from /var/tmp/rpm-tmp.23415 (%build) This happens despite the presence of postgresql-devel in the buildroot: Installing: bison x86_64 2.3-4.fc8 fedora 541 k ccache x86_64 2.4-11.fc8 fedora 53 k flex x86_64 2.5.33-11.fc8 fedora 305 k libpcap x86_64 14:0.9.8-1.fc9 fedora 103 k postgresql-devel x86_64 8.2.5-1.fc8 fedora 1.3 M
As a separate comment: are you sure that the versions you have mentioned as BR are really needed ? If older versions are good enough. the presence of this tool in EPEL would be awesome
We would LOVE to have unicornscan included in EPEL. Just let us know what the minimum versions should be and we'll make sure it works with those. We uncovered a weird build bug (we think it has to do with the version of make on fedora) that was stopping the pgsqldb output module from building on fc8 i386. I've uploaded the new src code, src rpms, installation rpms, and spec file. Please let me know if this improved anything on your build machine. http://www.unicornscan.org/releases/unicornscan-0.4.7-2.fc8.i386.rpm http://www.unicornscan.org/releases/unicornscan-0.4.7-2.fc8.src.rpm http://www.unicornscan.org/releases/unicornscan-0.4.7.spec
I am very much in favor of including this tool in Fedora/EPEL so I am taking this for review. However I am a bit busy at the moment so if anyone feels like doing the review, by all means please go ahead and do it. Otherwise look for news in a day or two.
A couple of things that I have noticed: 1. could you please rename the spec to "unicornscan.spec" ? the naming scheme you are using contradicts http://fedoraproject.org/wiki/Packaging/NamingGuidelines#head-625ebbc8678382beca8d0b02504d30e7b6f23791 2. are the %{_libdir}/unicornscan/modules/*.la files needed for runtime usage ? I could not test because of issue number 3 below, but if they are needed, please make a note about that in the spec. 3. the package still does not build in mock, because of PostgreSQL. I have attached the build log. 4. please use %configure, not ./configure and use macros, not absolute paths. I have attached a modified spec which fixes this. 5. Please do NOT link against a private copy of a library (ltdl in this case), you should use the ones provided by the system. See also http://fedoraproject.org/wiki/Packaging/Guidelines#head-17396a3b06ec849a7c0c6fc3243673b17e5fed90 In order to avoid using your own copy of ltdl, you have to BR libtool-ltld-devel (see my spec) 6. The configure script seems happier after adding libcap-devel and libdnet-devel. Any particular reason to avoid using them ? 7.rpmlint complains about the source rpm: unicornscan.src: E: invalid-spec-name unicornscan-0.4.7.spec unicornscan.src:25: E: configure-without-libdir-spec unicornscan.src:30: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/http.a unicornscan.src:31: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/httpexp.a unicornscan.src:32: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/ntalk.a unicornscan.src:33: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/osdetect.a unicornscan.src:34: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/pgsqldb.a unicornscan.src:35: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/rdns.a unicornscan.src:36: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/sip.a unicornscan.src:37: E: hardcoded-library-path in $RPM_BUILD_ROOT/usr/lib/unicornscan/modules/upnp.a unicornscan.src: W: summary-ended-with-dot Scalable, Accurate, Flexible, and Efficient Network Probing. The hardcoded-library stuff are non issues because you delete the files before inclusion, but the rest could (and should) be easily fixed. 8. I did not verify ALL the files, but at least the dozen of .c and .h I have examined specify * This program is free software; you can redistribute it and/or * * modify it under the terms of the GNU General Public License * * as published by the Free Software Foundation; either * * version 2 of the License, or (at your option) any later * * version. Therefore please - make sure all the files specify the license they are released under (for instance the src/output_modules/database/attic/mysqldb.c does not have a license specified but mentions GPLv2... unlike the other sources I have examined) - update the license tag of the rpm to GPLv2+ instead of GPLv2. 9.Since you have decided to include a LICENSE file in the tarball, you absolutely MUST include it. See also http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#head-90d644ce2c5db60bad3ba8773fe11653c7629dc3 10. I fail to see the usefulness of including the INSTALL file. On the other hand, please make sure that none of the other INSTALL.xxx files is useful. I for one would like to see a unicorn-frontend.rpm including the www-front-end directory (and maybe the related INSTALL file). That is, assuming the php stuff over there really works. I have never tested that. 11. And last but not least, please add a corresponding changelog entry for each modification of the spec file.
Created attachment 290246 [details] failed build log
Created attachment 290247 [details] modified spec the modifications include - GPLv2+ instead of GPLv2 as license tag - additional BR for libtool-ldtl, libpcap-devel,libdnet-devel - replacing ./configure with %configure - removed references to absolute paths - added INSTALL="install -p" in order to preserve timestamps - replaced %defattr(-,root,root) with %defattr(-,root,root,-) - includes the text of the GPL licensed - does not included the INSTALL file
oh well... the last two lines in #9 should have been: - includes the text of the GPL license, as bundled in the tarball - does not include the INSTALL file because it it not relevant to fedora users because they install from rpm; anyone recompiling the program will find the file in the pristine tarball.
We are currently searching for an x86_64 fedora box to do development on. If you know of such a machine that we may use to solve the compilation issue, it would be much appreciated. We are tracking down all of the other items you've listed. We are now using your modified spec file.
you can use koji scratch build for that. or, if this helps, send me the src.rpm and I can run it in mock and then send you the logs
ping ?
ping again? Since the submitter din not reply for 7 months, this is the last appeal before marking the ticket as deadreview.
closing due to lack of response from the submitter during the last 8 months.