Bug 1098820 - Review Request: idfpml - Intel Decimal Floating-Point Math Library
Summary: Review Request: idfpml - Intel Decimal Floating-Point Math Library
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1106294
TreeView+ depends on / blocked
 
Reported: 2014-05-18 22:45 UTC by Eric Smith
Modified: 2019-05-02 21:12 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-05-02 21:12:23 UTC
Type: ---


Attachments (Terms of Use)

Description Eric Smith 2014-05-18 22:45:35 UTC
Spec URL: http://fedorapeople.org/~brouhaha/idfpml/idfpml.spec
SRPM URL: http://fedorapeople.org/~brouhaha/idfpml/idfpml-20U1-1.fc20.src.rpm
Description: 
  Software implementation of the IEEE 754R Decimal Floating-Point
  Arithmetic specification.  Ensures compliance with the upcoming
  revision of the IEEE Standard for Floating-Point Arithmetic.  The
  library implements the functions defined for decimal floating-point
  arithmetic operations in the 'DRAFT Standard for Floating-Point
  Arithmetic P754', which is a revision of the IEEE Standard 754-1985
  for Binary Floating-Point Arithmetic.
Fedora Account System Username: brouhaha

The latest upstream version of Free42 has introduced a dependency on this library.

Comment 1 Michael Schwendt 2014-05-22 10:57:19 UTC
> Version:        20U1

The documentation in the tarball says "Version 2.0 Update 1" from Aug 2011. If Fedora's post-release versioning scheme were used, %version could really become "2.0".

https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Post-Release_packages

If the next release will become "2.1", one can only hope that they will stick to their versioning scheme and call it "21", since "20U1 > 2.1" already.


> %package devel
> Requires:       idfpml = %{version}-%{release}

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


> # Create pkgconfig files for all library variants
> mkdir pkgconfig
> cd pkgconfig
> for ubf in 0 1
> …
>        cat <<EOF >idfpml$cbr$gr$gf$ubfc.pc
> …

With all due respect, but this is insane. You are adding to the API here. Typically, developers eventually will start supporting such pkgconfig files under the assumption that those are provided by upstream. As long as the files are specific to Fedora, that results in incompatibilities. Adding basic non-versioned pkgconfig files is okay if those will be merged upstream. Adding lots of idfpml$cbr$gr$gf$ubfc.pc files is too much IMO.

http://fedoraproject.org/wiki/Staying_close_to_upstream_projects


> %post -p /sbin/ldconfig
> 
> %postun -p /sbin/ldconfig

That's a no-op so far, because the shared lib is not installed in runtime linker's search path:

> %files
> …
> %{_libdir}/idfpml/libbid*.so.*

Comment 2 Eric Smith 2014-06-15 21:32:46 UTC
Thanks for the comments.  I'll fix the require for the base package and remove the ldconfig, and change the version numbering.

I either disagree with or don't fully understand the comments regarding the pkg-config files being created in the package.  The library code as provided by Intel is expected to be statically linked into an application, though there is nothing about it that precludes building as a shared library, which is what we need in Fedora. As such, it is exceedingly unlikely that they will either provide or accept pkg-config files.

I don't understand how this is "adding to the API" or "results in incompatibilities".

I am soliciting comments on that issue on the devel mailing list.

Comment 3 Eric Smith 2014-06-16 08:55:49 UTC
Removed the .pc files also.  :-(

Spec URL: http://fedorapeople.org/~brouhaha/idfpml/idfpml.spec
SRPM URL: http://fedorapeople.org/~brouhaha/idfpml/idfpml-2.0-1.U1.fc20.src.rpm

Comment 4 Yaakov Selkowitz 2016-03-30 04:59:10 UTC
The packaging guidelines do allow for static-only library packages:

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

Given that you're renaming the libraries, creating shared libraries from them too may also be considered "adding to the API".


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