Bug 443449

Summary: Review Request: udpcast - UDP broadcast file distribution and installation
Product: [Fedora] Fedora Reporter: Richard W.M. Jones <rjones>
Component: Package ReviewAssignee: Jerry James <loganjerry>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, loganjerry, notting
Target Milestone: ---Flags: loganjerry: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-05-04 19:50:58 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 Richard W.M. Jones 2008-04-21 16:43:50 UTC
Spec URL: http://www.annexia.org/tmp/udpcast.spec
SRPM URL: http://www.annexia.org/tmp/udpcast-20071228-1.fc8.src.rpm
Description: UDP broadcast file distribution and installation

udpcast is a program for broadcasting (reliably) a large file to
many hosts.  It utilises ethernet broadcasts and selective resends
for efficiency.

rpmlint is clean except for this:
udpcast-debuginfo.x86_64: E: empty-debuginfo-package
I'm not sure how to fix this -- maybe just disable debuginfo?

$ rpm -qlp udpcast-20071228-1.fc8.x86_64.rpm
/usr/sbin/udp-receiver
/usr/sbin/udp-sender
/usr/share/doc/udpcast-20071228
/usr/share/doc/udpcast-20071228/COPYING
/usr/share/doc/udpcast-20071228/Changelog.txt
/usr/share/doc/udpcast-20071228/cmd.html
/usr/share/man/man1/udp-receiver.1.gz
/usr/share/man/man1/udp-sender.1.gz

$ rpm -q --requires -p udpcast-20071228-1.fc8.x86_64.rpm
libc.so.6()(64bit)  
libc.so.6(GLIBC_2.2.5)(64bit)  
libc.so.6(GLIBC_2.3.4)(64bit)  
libc.so.6(GLIBC_2.4)(64bit)  
libpthread.so.0()(64bit)  
libpthread.so.0(GLIBC_2.2.5)(64bit)  
libpthread.so.0(GLIBC_2.3.2)(64bit)  
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)

Comment 1 Richard W.M. Jones 2008-04-21 18:17:44 UTC
Spec URL: http://www.annexia.org/tmp/udpcast.spec
SRPM URL: http://www.annexia.org/tmp/udpcast-20071228-2.fc8.src.rpm

* Mon Apr 21 2008 Richard W.M. Jones <rjones> - 20071228-2
- BR m4.

Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=574605

Comment 2 Jerry James 2008-05-01 18:53:13 UTC
I have some suggestions.  First, the debuginfo warning is because the Makefile
passes the -s option to ld, which strips the binaries.  The following line in
the spec file BEFORE you run the configure script will fix it:

sed -i -e '/override LDFLAGS +=-s/d' Makefile.in

Second, the udpcast_version macro defined at the top of the spec file is never
used.  You might as well delete that to reduce clutter.

Third, I recommend using the %configure macro in place of the "CFLAGS=..."
invocation.

Finally, I recommend trimming the spec file Changelog to just your entry.  All
the stuff below that is available in the file named "Changelog", which is in the
%doc list.

MUST:
- rpmlint is silent after the changes recommended above
- package naming guidelines: OK
- spec file name matches base name: OK
- packaging guidelines: OK
- licensing guidelines: OK
- license field matches actual license: FAIL, the fec_license() function in
fec.c claims that udpcast is covered by GPL v2 or any later version.  Therefore,
the license field should say "GPLv2+ and BSD".
- license file in %doc: OK
- spec file in American English: OK
- legible spec file: OK
- SRPM sources match upstream: OK
- builds on one architecture: OK
- appropriate use of ExcludeArch: OK
- all build dependencies in BuildRequires: FAIL.  The man page construction step
runs a perl script and applies m4, so perl and m4 should be in BuildRequires.
- handle locales properly: OK
- invoke ldconfig properly: OK
- relocatable package: OK
- own all created directories: OK
- no duplicate files in %files: OK
- proper file and directory permissions: OK
- %clean section: OK
- consistent use of macros: OK
- code or permissible content: OK
- large documentation: OK
- %doc files not needed to run: OK
- header files in -devel: OK
- static libraries in -static: OK
- pkgconfig files: OK
- .so files in -devel: OK
- -devel requires main package: OK
- no .la archives: OK
- desktop files for GUI programs: OK
- don't own files or directories owned by others: OK
- clean build root first in %install: OK
- filenames are UTF-8: OK

SHOULD:
- license text in separate file: OK
- description and summary translations: OK
- builds in mock: OK (tested only on F8 x86_64)
- builds on all supported architectures: cannot test
- package functions as requires: cannot test adequately
- sane scriptlets: OK
- subpackages require the base package: OK
- placement of pkgconfig files: OK
- file dependencies: OK

Summary: You must fix the License and BuildRequires fields in the spec file.  I
encourage you to consider my other suggestions but won't block this package if
you don't adopt them.

Comment 3 Jerry James 2008-05-01 20:04:48 UTC
Forgot to assign the bug to me...

Comment 4 Richard W.M. Jones 2008-05-02 08:46:23 UTC
Right, here's a new version which should fix all of the above
except trimming the changelog which I like to keep.  This is
rpmlint clean.

Spec URL: http://www.annexia.org/tmp/udpcast.spec
SRPM URL: http://www.annexia.org/tmp/udpcast-20071228-3.fc9.src.rpm

* Fri May  2 2008 Richard W.M. Jones <rjones> - 20071228-3
- Remove '-s' flag from Makefile.
- Remove unused udpcast_version macro.
- Use configure macro.
- Fix the license, GPLv2+ and BSD.
- BuildRequires perl.


Comment 5 Jerry James 2008-05-04 03:23:46 UTC
The --prefix, --mandir, and --libdir options are set by the %configure macro, so
you should delete those.  See the definition in /usr/lib/rpm/redhat/macros. 
Otherwise, this package looks ready to go.

APPROVED


Comment 6 Richard W.M. Jones 2008-05-04 13:09:58 UTC
OK, I'll change that configure line as appropriate.  CVS request coming up ...



Comment 7 Richard W.M. Jones 2008-05-04 13:11:09 UTC
New Package CVS Request
=======================
Package Name: udpcast
Short Description: UDP broadcast file distribution and installation
Owners: rjones
Branches: F-8 F-9 EL-5
InitialCC: rjones
Cvsextras Commits: yes

Comment 8 Kevin Fenzi 2008-05-04 17:23:07 UTC
cvs done.

Comment 9 Richard W.M. Jones 2008-05-04 19:50:58 UTC
Imported and built.