Bug 225988 - Merge Review: libavc1394
Summary: Merge Review: libavc1394
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Susi Lehtola
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-01-31 19:18 UTC by Nobody's working on this, feel free to take it
Modified: 2009-05-18 19:15 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-05-18 19:15:15 UTC
Type: ---
Embargoed:
susi.lehtola: fedora-review+


Attachments (Terms of Use)

Description Nobody's working on this, feel free to take it 2007-01-31 19:18:56 UTC
Fedora Merge Review: libavc1394

http://cvs.fedora.redhat.com/viewcvs/devel/libavc1394/
Initial Owner: jwilson

Comment 1 Susi Lehtola 2009-05-15 15:43:49 UTC
- Source URL should be
 Source0: http://downloads.sourceforge.net/libavc1394/libavc1394-%{version}.tar.gz

- Patch should be patch0

- Use
 BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

- Devel package needs to
 Requires: pkgconfig

- You can probably use
 %configure --disable-static
to prevent shared library from being built, then you don't have to remove it.

- What is newer libtool needed for? Autoreconf'ing is quite a brutal operation.

**

rpmlint output:
libavc1394.src: W: no-url-tag
libavc1394.x86_64: W: no-url-tag
libavc1394.x86_64: W: obsolete-not-provided libavc1394_0
libavc1394.x86_64: W: obsolete-not-provided librpm1394_0
libavc1394-debuginfo.x86_64: W: no-url-tag
libavc1394-debuginfo.x86_64: W: spurious-executable-perm /usr/src/debug/libavc1394-0.5.3/test/dvcont.c
libavc1394-devel.x86_64: W: no-url-tag
libavc1394-devel.x86_64: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 8 warnings.

- Url should be
 URL: http://sourceforge.net/projects/libavc1394/

- Remove executable permission in %setup phase.

- Other warnings can be ignored.

**

MUST: The spec file for the package is legible and macros are used consistently. OK
MUST: The package must be named according to the Package Naming Guidelines. OK
MUST: The spec file name must match the base package %{name}. OK
MUST: The package must be licensed with a Fedora approved license and meet the  Licensing Guidelines. OK

MUST: The License field in the package spec file must match the actual license. NEEDSWORK
- Library is under LGPLv2+, files under test/ are under GPLv2+. Change License: field to GPLv2+.

MUST: The sources used to build the package must match the upstream source, as provided in the spec URL. NEEDSWORK
- After fixing source URL is OK.

MUST: The package MUST successfully compile and build into binary rpms. OK
MUST: The spec file MUST handle locales properly. N/A

MUST: Optflags are used and time stamps preserved. NEEDSWORK
- Use INSTALL="install -p" as argument to make install to preserve time stamps.

MUST: Packages containing shared library files must call ldconfig. OK
MUST: A package must own all directories that it creates or require the package that owns the directory. OK
MUST: Files only listed once in %files listings. OK
MUST: Debuginfo package is complete. OK
MUST: Permissions on files must be set properly. OK
MUST: Clean section exists. OK
MUST: Large documentation files must go in a -doc subpackage. OK

MUST: All relevant items are included in %doc. Items in %doc do not affect runtime of application. NEEDSWORK
- Add AUTHORS and TODO to %doc.

MUST: Header files must be in a -devel package. OK
MUST: Static libraries must be in a -static package. N/A

MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'. NEEDSWORK
- Add Requires: pkgconfig to devel.

MUST: If a package contains library files with a suffix then library files ending in .so must go in a -devel package. N/A
MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency. OK
MUST: Packages does not contain any .la libtool archives. OK
MUST: Desktop files are installed properly. N/A
MUST: No file conflicts with other packages and no general names. OK
MUST: Buildroot cleaned before install. OK
SHOULD: %{?dist} tag is used in release. OK
SHOULD: If the package does not include license text(s) as separate files from upstream, the packager should query upstream to include it. OK
SHOULD: The package builds in mock. OK

Comment 2 Susi Lehtola 2009-05-15 15:45:51 UTC
Or, you can specify the license as License: GPLv2+ and LGPLv2+.

Comment 3 Jarod Wilson 2009-05-18 15:08:46 UTC
Sadly, --disable-static doesn't work, and dropping the autoreconf results in hard-coded rpaths. Don't have time to chase this further at the moment, but I think I've cleaned up just about everything else now, and will commit to the devel branch shortly...

$ rpmlint libavc1394-0.5.3-6.fc12.src.rpm
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

$ rpmlint *.rpm
libavc1394-devel.x86_64: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 1 warnings.

Comment 4 Susi Lehtola 2009-05-18 16:19:20 UTC
(In reply to comment #3)
> Sadly, --disable-static doesn't work, and dropping the autoreconf results in
> hard-coded rpaths. Don't have time to chase this further at the moment, but I
> think I've cleaned up just about everything else now, and will commit to the
> devel branch shortly...

Can't you just sed it away from libtool?

https://fedoraproject.org/wiki/Packaging/Guidelines#Removing_Rpath

Comment 5 Jarod Wilson 2009-05-18 17:17:07 UTC
Just took a quick look. Yes, the sed route works. Committed changes to drop the autofoo and libtool BR and the autoreconf'ing.

Comment 6 Susi Lehtola 2009-05-18 18:09:21 UTC
Okay, can you build it in rawhide so I can do the review?

Comment 7 Jarod Wilson 2009-05-18 18:51:39 UTC
Building now, http://koji.fedoraproject.org/koji/taskinfo?taskID=1361505

Comment 8 Susi Lehtola 2009-05-18 19:15:15 UTC
rpmlint output:
libavc1394-devel.x86_64: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 1 warnings.

- This is OK, since -devel requires main package that includes documentation.


MUST: The spec file for the package is legible and macros are used consistently. OK
MUST: The package must be named according to the Package Naming Guidelines. OK
MUST: The spec file name must match the base package %{name}. OK
MUST: The package must be licensed with a Fedora approved license and meet the  Licensing Guidelines. OK
MUST: The License field in the package spec file must match the actual license. OK
MUST: The sources used to build the package must match the upstream source, as provided in the spec URL. OK
MUST: The package MUST successfully compile and build into binary rpms. OK
MUST: The spec file MUST handle locales properly. N/A
MUST: Optflags are used and time stamps preserved. OK
MUST: Packages containing shared library files must call ldconfig. OK
MUST: A package must own all directories that it creates or require the package that owns the directory. OK
MUST: Files only listed once in %files listings. OK
MUST: Debuginfo package is complete. OK
MUST: Permissions on files must be set properly. OK
MUST: Clean section exists. OK
MUST: Large documentation files must go in a -doc subpackage. OK
MUST: All relevant items are included in %doc. Items in %doc do not affect runtime of application. OK
MUST: Header files must be in a -devel package. OK
MUST: Static libraries must be in a -static package. N/A
MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'. OK
MUST: If a package contains library files with a suffix then library files ending in .so must go in a -devel package. OK
MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency. OK
MUST: Packages does not contain any .la libtool archives. OK
MUST: Desktop files are installed properly. N/A
MUST: No file conflicts with other packages and no general names. OK
MUST: Buildroot cleaned before install. OK
SHOULD: %{?dist} tag is used in release. OK
SHOULD: If the package does not include license text(s) as separate files from upstream, the packager should query upstream to include it. OK
SHOULD: The package builds in mock. OK


The package has been

APPROVED


Note You need to log in before you can comment on or make changes to this bug.