Bug 851810 (mingw-mpfr) - Review Request: mingw-mpfr - MinGW C library for multiple-precision floating-point computations
Summary: Review Request: mingw-mpfr - MinGW C library for multiple-precision floating-...
Keywords:
Status: CLOSED ERRATA
Alias: mingw-mpfr
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: František Dvořák
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 833622
Blocks: FE-DEADREVIEW
TreeView+ depends on / blocked
 
Reported: 2012-08-25 23:30 UTC by Thomas Sailer
Modified: 2013-12-14 03:13 UTC (History)
7 users (show)

Fixed In Version: mingw-mpfr-3.1.2-1.fc20
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-12-12 02:58:47 UTC
Type: Bug
Embargoed:
valtri: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Thomas Sailer 2012-08-25 23:30:31 UTC
Spec URL: http://sailer.fedorapeople.org/mingw-mpfr.spec
SRPM URL: http://sailer.fedorapeople.org/mingw-mpfr-3.1.1-1.fc17.src.rpm
Description:
MinGW C library for multiple-precision floating-point computations

Approved MinGW packaging guidelines are here:
http://fedoraproject.org/wiki/Packaging/MinGW

Comment 1 Ralf Corsepius 2012-09-03 10:48:35 UTC
* Similar remark as for mingw-gmp: 
I do not see any need to let the package BR: the autotools.

Please remove these.

Comment 2 Thomas Sailer 2012-09-03 16:17:54 UTC
Well spotted, thanks.

Removed autotools BR; but didn't bump the release.

Comment 3 Ralf Corsepius 2012-09-03 16:35:19 UTC
(In reply to comment #2)
> Well spotted, thanks.
> 
> Removed autotools BR; but didn't bump the release.

?!? 

Please provide a new spec and a new src.rpm (with release bumped).
http://sailer.fedorapeople.org/mingw-mpfr.spec still BR's the autotools.

Comment 4 Thomas Sailer 2012-09-03 16:57:37 UTC
Are you sure it's not some caching issue on your side? When I download the spec url, there's only 6 BRs: mingw{32,64}-{filesystem,gcc,gmp}

Comment 5 Kalev Lember 2012-09-03 17:06:14 UTC
Hi,

I have some random drive-by comments. All of these are just a matter of personal preference; feel free to do how you prefer.


> Group:          Development/Libraries
None of the tools in Fedora make use of the Group tag; besides, in this spec file, it's currently only specified for the SRPM and not for the binary RPMs. I'd suggest removing it.

> BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
RPM has a sane default for BuildRoot. Defining it in the spec file is mostly only useful EPEL release with ancient rpm version.

> %package -n mingw32-%{mingw_pkg_name}
Maybe use something shorter, like %{name1} as you've used in other spec files? Long %{mingw_pkg_name} all over the place makes the spec file quite hard to read.

> %install
> rm -rf $RPM_BUILD_ROOT
The rm line isn't needed with the rpm macros in Fedora; again only useful for EPEL.

> %clean
> rm -rf $RPM_BUILD_ROOT
Same also applies to the whole %clean section; not needed in Fedora with the version of rpm there.

> %defattr(-,root,root,-)
This is now the default with the rpm versions in Fedora; no need to keep the line if you are only building for Fedora and not EPEL.

Comment 6 Kalev Lember 2012-09-03 17:08:11 UTC
Oh and I guess the following can also be deleted, as you are removing all the documentation down below?

> iconv  -f iso-8859-1 -t utf-8 doc/mpfr.info > doc/mpfr.info.aux
> mv doc/mpfr.info.aux doc/mpfr.info

Comment 7 Ralf Corsepius 2012-09-03 17:15:50 UTC
(In reply to comment #4)
> Are you sure it's not some caching issue on your side?
No, I am not - The version I downloaded 1/2 hour ago still carried the autotools, the version, I downloaded 5 mins ago does not carry the autotools.

That's a situation, which demonstrated, why not bumping the release numbers is not necessarily a clever idea - We will never know what might have happened ;)

Comment 8 Thomas Sailer 2012-09-04 08:57:02 UTC
(In reply to comment #5)

Hi Kalev,

thanks a lot for your comments!

> > Group:          Development/Libraries
Replaced with System Environment/Libraries (like mingw-gmp)

> > %package -n mingw32-%{mingw_pkg_name}
I used mingw_pkg_name because afaik you did and you're my role model for mingw packages :)
I changed it to name1

> > BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
> > %install
> > rm -rf $RPM_BUILD_ROOT
> > %clean
> > rm -rf $RPM_BUILD_ROOT
> > %defattr(-,root,root,-)
> > iconv  -f iso-8859-1 -t utf-8 doc/mpfr.info > doc/mpfr.info.aux
> > mv doc/mpfr.info.aux doc/mpfr.info
Since I'm not terribly interested in EPEL packages for old EPEL releases, I removed all these.

Release bumped to -2

Spec URL: http://sailer.fedorapeople.org/mingw-mpfr.spec
SRPM URL: http://sailer.fedorapeople.org/mingw-mpfr-3.1.1-2.fc17.src.rpm

Comment 9 Ralf Corsepius 2012-09-04 15:14:33 UTC
(In reply to comment #8)

> Since I'm not terribly interested in EPEL packages for old EPEL releases, I
> removed all these.

Additional question: Does any active of variant of EPEL support any of the mingw-w64 toolchains? 

I could be wrong, but AFAIK, all EPELs only support the older mingw32 toolchains. This would mean all Fedora >= 17 mingw-w64 packages would be unsupported for EPEL.

Comment 10 Erik van Pienbroek 2012-09-04 17:18:57 UTC
(In reply to comment #9)
> Additional question: Does any active of variant of EPEL support any of the
> mingw-w64 toolchains? 
> 
> I could be wrong, but AFAIK, all EPELs only support the older mingw32
> toolchains. This would mean all Fedora >= 17 mingw-w64 packages would be
> unsupported for EPEL.

Hi Ralf,

Your assumption is correct. RHEL6 only supports packages based on the old MinGW packaging guidelines: https://fedoraproject.org/wiki/Packaging:MinGW_Old

One of the rules of EPEL is that it's forbidden to replace packages which are already in the RHEL trees. Therefore we can't introduce the mingw-w64 toolchain and the new packaging macros in EPEL unless Red Hat decides to introduce the base mingw-w64 packages in RHEL6. As I'm not a Red Hat employee I don't have any further information about any possible plans Red Hat might have about introducing the mingw-w64 toolchain in RHEL6

Comment 11 Michael Cronenworth 2012-09-11 14:22:14 UTC
>Requires:       mingw32-gmp
>Requires:       mingw64-gmp

These lines are unnecessary. RPM will automatically create a Requires list that will include the GMP DLL.

Also, please include a changelog entry when you bump version and/or release numbers.

Comment 13 František Dvořák 2013-10-09 19:39:01 UTC
There are only some details yet:
- source URL could be better http://www.mpfr.org/mpfr-%{version}/%{name1}-%{version}.tar.xz (mpfr-current is valid only for the current release)
- in the meantime new version has been released

Comment 14 Ralf Corsepius 2013-11-06 13:17:56 UTC
Ping? Thomas, are you still interested in packaging this, or can this BZ be closed?

Comment 15 Thomas Sailer 2013-11-06 14:00:25 UTC
Yes, eventually - unless someone else beats me

Comment 16 Ralf Corsepius 2013-11-06 14:32:31 UTC
(In reply to Thomas Sailer from comment #15)
> Yes, eventually - unless someone else beats me
Do I understand correctly, you want to continue this review?

In this case, I'd suggest you'd provide an updated package.

Comment 17 Ralf Corsepius 2013-11-18 05:40:43 UTC
(In reply to Ralf Corsepius from comment #16)
> (In reply to Thomas Sailer from comment #15)
> > Yes, eventually - unless someone else beats me
> Do I understand correctly, you want to continue this review?

More than another week has passed without response.

I am going to close this review as stalled. Feel free to reopen should you be wanting to continue this submission.

Comment 18 Thomas Sailer 2013-11-18 11:48:19 UTC
(In reply to Ralf Corsepius from comment #17)
> More than another week has passed without response.

Shock horror.

Spec URL: http://sailer.fedorapeople.org/mingw-mpfr.spec
SRPM URL: http://sailer.fedorapeople.org/mingw-mpfr-3.1.2-1.fc19.src.rpm

$ rpmlint mingw-mpfr.spec mingw-mpfr-3.1.2-1.fc19.src.rpm mingw32-mpfr-3.1.2-1.fc19.noarch.rpm mingw64-mpfr-3.1.2-1.fc19.noarch.rpm mingw32-mpfr-debuginfo-3.1.2-1.fc19.noarch.rpm mingw64-mpfr-debuginfo-3.1.2-1.fc19.noarch.rpm
mingw32-mpfr-debuginfo.noarch: E: debuginfo-without-sources
mingw64-mpfr-debuginfo.noarch: E: debuginfo-without-sources
5 packages and 1 specfiles checked; 2 errors, 0 warnings.

Scratch Build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6192844

Comment 19 František Dvořák 2013-11-23 23:51:07 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated

===== MUST items =====

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
[x]: License file installed when any subpackage combination is installed.
[x]: If the package is under multiple licenses, the licensing breakdown must
     be documented in the spec.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 143360 bytes in 8 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: No rpmlint messages.
[x]: If (and only if) the source package includes the text of the license(s)
     in its own file, then that file, containing the text of the license(s)
     for the package is included in %doc.
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Uses parallel make %{?_smp_mflags} macro.
[-]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[-]: Fully versioned dependency in subpackages if applicable.
[x]: Package functions as described.
     Euler number is 2.7182818284590452353602874713526624977572470936999595749669131. :-)
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX tarball generation or download is documented.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: No rpmlint messages.
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: mingw32-mpfr-3.1.2-1.fc21.noarch.rpm
          mingw64-mpfr-3.1.2-1.fc21.noarch.rpm
          mingw-mpfr-3.1.2-1.fc21.src.rpm
3 packages and 0 specfiles checked; 0 errors, 0 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint mingw64-mpfr mingw32-mpfr
2 packages and 0 specfiles checked; 0 errors, 0 warnings.
# echo 'rpmlint-done:'



Requires
--------
mingw64-mpfr (rpmlib, GLIBC filtered):
    mingw64(kernel32.dll)
    mingw64(libgmp-10.dll)
    mingw64(msvcrt.dll)
    mingw64-crt
    mingw64-filesystem

mingw32-mpfr (rpmlib, GLIBC filtered):
    mingw32(kernel32.dll)
    mingw32(libgmp-10.dll)
    mingw32(msvcrt.dll)
    mingw32-crt
    mingw32-filesystem



Provides
--------
mingw64-mpfr:
    mingw64(libmpfr-4.dll)
    mingw64-mpfr

mingw32-mpfr:
    mingw32(libmpfr-4.dll)
    mingw32-mpfr



Source checksums
----------------
http://www.mpfr.org/mpfr-3.1.2/mpfr-3.1.2.tar.xz :
  CHECKSUM(SHA256) this package     : 399d0f47ef6608cc01d29ed1b99c7faff36d9994c45f36f41ba250147100453b
  CHECKSUM(SHA256) upstream package : 399d0f47ef6608cc01d29ed1b99c7faff36d9994c45f36f41ba250147100453b


Generated by fedora-review 0.5.0 (920221d) last change: 2013-08-30
Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -b 851810
Buildroot used: fedora-rawhide-x86_64
Active plugins: Generic, Shell-api
Disabled plugins: Java, C/C++, Python, SugarActivity, Perl, R, PHP, Ruby
Disabled flags: EPEL5, EXARCH, DISTTAG

Package APPROVED.

Comment 20 Thomas Sailer 2013-11-24 00:09:45 UTC
Thanks František for the review!

New Package SCM Request
=======================
Package Name: mingw-mpfr
Short Description: MinGW C library for multiple-precision floating-point computations
Owners: sailer
Branches: f19 f20
InitialCC:

Comment 21 Gwyn Ciesla 2013-11-25 13:11:20 UTC
Git done (by process-git-requests).

Comment 22 Fedora Update System 2013-11-25 18:12:02 UTC
mingw-mpfr-3.1.2-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/mingw-mpfr-3.1.2-1.fc19

Comment 23 Fedora Update System 2013-11-25 18:12:14 UTC
mingw-mpfr-3.1.2-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/mingw-mpfr-3.1.2-1.fc20

Comment 24 Fedora Update System 2013-11-26 17:56:49 UTC
Package mingw-mpfr-3.1.2-1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing mingw-mpfr-3.1.2-1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-22148/mingw-mpfr-3.1.2-1.fc20
then log in and leave karma (feedback).

Comment 25 Fedora Update System 2013-12-12 02:58:47 UTC
mingw-mpfr-3.1.2-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 26 Fedora Update System 2013-12-14 03:13:44 UTC
mingw-mpfr-3.1.2-1.fc20 has been pushed to the Fedora 20 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.