Bug 499913 - Review Request: expatmm - C++ wrapper for the expat XML parser library
Review Request: expatmm - C++ wrapper for the expat XML parser library
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Susi Lehtola
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2009-05-08 17:16 EDT by Jerry James
Modified: 2009-05-15 19:30 EDT (History)
3 users (show)

See Also:
Fixed In Version: 1.0.1-1.fc11
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-05-15 19:30:48 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
susi.lehtola: fedora‑review+
kevin: fedora‑cvs+

Attachments (Terms of Use)

  None (edit)
Description Jerry James 2009-05-08 17:16:17 EDT
Spec URL: http://jjames.fedorapeople.org/expatmm/expatmm.spec
SRPM URL: http://jjames.fedorapeople.org/expatmm/expatmm-1.0.1-1.fc10.src.rpm
Description: ExpatMM is a C++ library that uses the efficient expat XML parser to create a C++ class base for the development of C++ event-driver parser objects.  This library provides the developer with two C++ classes:
  - ExpatXMLParser: a generic parser where the developer must supply
    event methods for parse tokens, as well as supply the event method
    for reading input data into a local buffer.
  - ExpatXMLFileParser: a parser where the event method for reading
    input data is implemented as a file reader, with the filename being
    specified at instance construction.

I see that rpmlint is complaining about an unused direct shlib dependency on libm.  Libtool is generating a link command including -lm.  So I tried relinking in the spec file, like so:

cd src/.libs
g++ -shared ${RPM_OPT_FLAGS} ExpatXMLParser.o ExpatXMLFileParser.o ExpatMM-version.o -Xlinker -soname -Xlinker libexpatmm.so.1 -o libexpatmm.so.%{version} -lexpat

... and rpmlint still complains about the unused direct shlib dependency.  It appears that libstdc++ is linked against libm, which may be the source of the problem.  In any case, I don't know how to satisfy rpmlint.
Comment 2 Susi Lehtola 2009-05-09 09:03:01 EDT
- I don't get your unused-direct-shlib-dependency on x86_64 F10 or F11 in mock:

rpmlint output:
expatmm-devel.x86_64: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 1 warnings.

MUST: The package does not yet exist in Fedora. The Review Request is not a duplicate. OK
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
- Funny though, there is both a LICENSE and a COPYING, but they're identical. 

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

Comment 3 Jerry James 2009-05-11 14:42:38 EDT
I'm going to have to look deeper into the source of that unused dependency warning.  In the meantime, thank you very much for the review!

New Package CVS Request
Package Name: expatmm
Short Description: C++ wrapper for the expat XML parser library
Owners: jjames
Branches: F-11
Comment 4 Kevin Fenzi 2009-05-13 01:04:07 EDT
cvs done.
Comment 5 Fedora Update System 2009-05-13 13:42:36 EDT
expatmm-1.0.1-1.fc11 has been submitted as an update for Fedora 11.
Comment 6 Fedora Update System 2009-05-15 19:30:43 EDT
expatmm-1.0.1-1.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

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