Bug 1066559

Summary: Review Request: mingw-id3lib - Library for manipulating ID3v1 and ID3v2 tags
Product: [Fedora] Fedora Reporter: David King <amigadave>
Component: Package ReviewAssignee: František Dvořák <valtri>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-mingw, package-review, valtri
Target Milestone: ---Flags: valtri: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: mingw-id3lib-3.8.3-31.fc20 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-03-07 06:30:46 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:
Attachments:
Description Flags
Update sources for autotools to work with newer versions + helper ./bootstrap script.
none
Flag -no-undefined for MinGW build. none

Description David King 2014-02-18 16:03:36 UTC
Spec URL: http://amigadave.fedorapeople.org/mingw-id3lib.spec
SRPM URL: http://amigadave.fedorapeople.org/mingw-id3lib-3.8.3-31.fc20.src.rpm
Description: This package provides a software library for manipulating ID3v1 and
ID3v2 tags. It provides a convenient interface for software developers
to include standards-compliant ID3v1/2 tagging capabilities in their
applications. Features include identification of valid tags, automatic
size conversions, (re)synchronisation of tag frames, seamless tag
(de)compression, and optional padding facilities. Additionally, it can
tell mp3 header info, like bitrate etc.
Fedora Account System Username: amigadave

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

Comment 1 František Dvořák 2014-02-23 21:13:31 UTC
Taking the review.

1) Since it is needed to regenerate the configure script anyway, I would vote for drop the terrible autotools patch from original native package and patch the sources instead to work with newer autotools, and regenerate everything. Any opinion? (I'll attach patches for inspiration)

2) Using "LDFLAGS=-no-undefined" in the %build would override ldflags from rpmbuild. I guess better would be a patch? Or using hack - add it to libid3_la_LIBADD?

3) What is the reason for "check_PROGRAMS=" parameter for make?

4) This could be formulated better (but I'm not native English speaker): 

  "This is the MinGW tools, built for the win32 target."

  It could be used something like: "This is the MinGW version of tools", "These are the MinGW compiled tools", ...

5) cosmetic/silly (you can ignore :-)): double newlines before '%package -n mingw...' could used everywhere in .spec


id3lib can use iconv for converting characters. But it would be hard to convince configure to use it (there are some TRY_RUNs). Does id3lib work OK with non-ASCII characters in id3 tags? (There is some replacement code for it, so it is probably fine.)

Comment 2 František Dvořák 2014-02-23 21:16:01 UTC
Created attachment 866774 [details]
Update sources for autotools to work with newer versions + helper ./bootstrap script.

Comment 3 František Dvořák 2014-02-23 21:17:04 UTC
Created attachment 866775 [details]
Flag -no-undefined for MinGW build.

Comment 4 David King 2014-02-24 12:33:55 UTC
Thanks for the comments! I fixed 1, 2, 3, 4. Not sure about 5, as I do not really know the convention (looking at the example in https://fedoraproject.org/wiki/Packaging:MinGW#Example_Specfile). I added your patch (slightly modified to use autoreconf rather than a bootstrap script), added the -no-undefined change to the existing id3lib-3.8.3-mingw.patch and updated the .spec and SRPM in place:

Spec URL: http://amigadave.fedorapeople.org/mingw-id3lib.spec
SRPM URL: http://amigadave.fedorapeople.org/mingw-id3lib-3.8.3-31.fc20.src.rpm

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

I suppose it makes sense to get the autoreconf patch into the native package too? It saves a few hundred kB in the SRPM size. :-)

I do not get the opportunity to use Windows much, but I will try with some non-ASCII characters with EasyTAG the next time I do some testing.

Comment 5 František Dvořák 2014-02-24 20:06:54 UTC
Nice! The autoreconf way is better. :-) It could be opened low priority bug against id3lib Fedora package (there is already another packaging bug waiting there). The proper way would be to send the patch to upstream, but it doesn't seem very active now...

About the 5: the recommended way is to use formatting from rpmdevtools examples: https://git.fedorahosted.org/cgit/rpmdevtools.git/plain/spectemplate-lib.spec , but the current formatting is OK.

Full review report bellow.


Package Review
==============

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


Issues:
=======

- I think the seds for libtool are not needed now?

- fedora-review complains about obsolete autoconf macros, can you also replace AM_PROG_LIBTOOL by LT_INIT? Similar changes as in ./configure.in can be done in zlib/configure.in

- converting files changes the timestamps, there is a trick how to keep timestamp in some other packages:

iconv -f ISO-8859-1 -t UTF8 ChangeLog > tmp && \
touch -r tmp ChangeLog && \
mv tmp ChangeLog


===== 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.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "GPL (v2 or later) (with incorrect FSF address)", "*No copyright* LGPL
     (v2 or later) (with incorrect FSF address)", "LGPL (v2 or later) (with
     incorrect FSF address)", "Unknown or generated", "zlib/libpng". 29 files
     have unknown license.
[x]: License file installed when any subpackage combination is installed.
[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 901120 bytes in 16 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: There are rpmlint messages (see attachment).
[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]: 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).
[x]: Fully versioned dependency in subpackages if applicable.
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise justified.
[-]: 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.
[!]: Packages should try to preserve timestamps of original installed files.

See above.

[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 is a working URL.
[x]: Spec use %global instead of %define unless justified.

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

Generic:
[!]: Package should not use obsolete m4 macros
     Note: Some obsoleted macros found, see the attachment.
     See: https://fedorahosted.org/FedoraReview/wiki/AutoTools

See above.

[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: mingw32-id3lib-3.8.3-31.fc21.noarch.rpm
          mingw32-id3lib-tools-3.8.3-31.fc21.noarch.rpm
          mingw64-id3lib-3.8.3-31.fc21.noarch.rpm
          mingw64-id3lib-tools-3.8.3-31.fc21.noarch.rpm
          mingw-id3lib-3.8.3-31.fc21.src.rpm
mingw32-id3lib.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw32-id3lib.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw32-id3lib.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/writers.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/utils.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/writer.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/sized_types.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/share/doc/mingw32-id3lib/COPYING
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/globals.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/id3lib_streams.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/id3lib_strings.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/id3lib_frame.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/misc_support.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/field.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/tag.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/reader.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/readers.h
mingw32-id3lib-tools.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw32-id3lib-tools.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw32-id3lib-tools.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw32-id3lib-tools.noarch: W: no-documentation
mingw64-id3lib.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw64-id3lib.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw64-id3lib.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/id3lib_frame.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/reader.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/writer.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/field.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/sized_types.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/id3lib_strings.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/misc_support.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/readers.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/writers.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/tag.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/utils.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/share/doc/mingw64-id3lib/COPYING
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/globals.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/id3lib_streams.h
mingw64-id3lib-tools.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw64-id3lib-tools.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw64-id3lib-tools.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw64-id3lib-tools.noarch: W: no-documentation
mingw-id3lib.src: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw-id3lib.src: W: spelling-error %description -l en_US de -> DE, ed, d
mingw-id3lib.src: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
5 packages and 0 specfiles checked; 30 errors, 17 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint mingw64-id3lib mingw64-id3lib-tools mingw32-id3lib-tool 
s mingw32-id3lib
mingw64-id3lib.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw64-id3lib.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw64-id3lib.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/id3lib_frame.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/reader.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/writer.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/field.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/sized_types.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/id3lib_strings.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/misc_support.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/readers.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/writers.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/tag.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/utils.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/share/doc/mingw64-id3lib/COPYING
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/globals.h
mingw64-id3lib.noarch: E: incorrect-fsf-address /usr/x86_64-w64-mingw32/sys-root/mingw/include/id3/id3lib_streams.h
mingw64-id3lib-tools.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw64-id3lib-tools.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw64-id3lib-tools.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw64-id3lib-tools.noarch: W: no-documentation
mingw32-id3lib-tools.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw32-id3lib-tools.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw32-id3lib-tools.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw32-id3lib-tools.noarch: W: no-documentation
mingw32-id3lib.noarch: W: spelling-error %description -l en_US synchronisation -> synchronization, synchronicity
mingw32-id3lib.noarch: W: spelling-error %description -l en_US de -> DE, ed, d
mingw32-id3lib.noarch: W: spelling-error %description -l en_US bitrate -> nitrate, bit rate, bit-rate
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/writers.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/utils.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/writer.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/sized_types.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/share/doc/mingw32-id3lib/COPYING
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/globals.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/id3lib_streams.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/id3lib_strings.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/id3lib_frame.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/misc_support.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/field.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/tag.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/reader.h
mingw32-id3lib.noarch: E: incorrect-fsf-address /usr/i686-w64-mingw32/sys-root/mingw/include/id3/readers.h
4 packages and 0 specfiles checked; 30 errors, 14 warnings.
# echo 'rpmlint-done:'



Requires
--------
mingw64-id3lib (rpmlib, GLIBC filtered):
    mingw64(kernel32.dll)
    mingw64(libgcc_s_seh-1.dll)
    mingw64(libstdc++-6.dll)
    mingw64(msvcrt.dll)
    mingw64(zlib1.dll)
    mingw64-crt
    mingw64-filesystem

mingw64-id3lib-tools (rpmlib, GLIBC filtered):
    mingw64(kernel32.dll)
    mingw64(libgcc_s_seh-1.dll)
    mingw64(libid3-3-8-3.dll)
    mingw64(libstdc++-6.dll)
    mingw64(msvcrt.dll)
    mingw64-crt
    mingw64-filesystem
    mingw64-id3lib

mingw32-id3lib-tools (rpmlib, GLIBC filtered):
    mingw32(kernel32.dll)
    mingw32(libgcc_s_sjlj-1.dll)
    mingw32(libid3-3-8-3.dll)
    mingw32(libstdc++-6.dll)
    mingw32(msvcrt.dll)
    mingw32-crt
    mingw32-filesystem
    mingw32-id3lib

mingw32-id3lib (rpmlib, GLIBC filtered):
    mingw32(kernel32.dll)
    mingw32(libgcc_s_sjlj-1.dll)
    mingw32(libstdc++-6.dll)
    mingw32(msvcrt.dll)
    mingw32(zlib1.dll)
    mingw32-crt
    mingw32-filesystem



Provides
--------
mingw64-id3lib:
    mingw64(libid3-3-8-3.dll)
    mingw64-id3lib

mingw64-id3lib-tools:
    mingw64-id3lib-tools

mingw32-id3lib-tools:
    mingw32-id3lib-tools

mingw32-id3lib:
    mingw32(libid3-3-8-3.dll)
    mingw32-id3lib



Source checksums
----------------
http://downloads.sourceforge.net/id3lib/id3lib-3.8.3.tar.gz :
  CHECKSUM(SHA256) this package     : 2749cc3c0cd7280b299518b1ddf5a5bcfe2d1100614519b68702230e26c7d079
  CHECKSUM(SHA256) upstream package : 2749cc3c0cd7280b299518b1ddf5a5bcfe2d1100614519b68702230e26c7d079


AutoTools: Obsoleted m4s found
------------------------------
  AM_PROG_LIBTOOL found in: id3lib-3.8.3/configure.in:95
  AC_PROG_LIBTOOL found in: id3lib-3.8.3/zlib/configure.in:26


Generated by fedora-review 0.5.1 (bb9bf27) last change: 2013-12-13
Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -b 1066559
Buildroot used: fedora-rawhide-x86_64
Active plugins: Generic, Shell-api
Disabled plugins: Java, C/C++, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby
Disabled flags: EXARCH, EPEL5, BATCH, DISTTAG

Comment 6 David King 2014-02-24 22:17:29 UTC
Thanks again for the comments. yes, the sed lines now seem unnecessary, so I removed them. I replaced AM_PROG_LIBTOOL by LT_INIT and preserved the timestamps as you suggested.

SRPM URL: http://amigadave.fedorapeople.org/mingw-id3lib-3.8.3-31.fc21.src.rpm
Spec URL: http://amigadave.fedorapeople.org/mingw-id3lib.spec

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

Comment 7 František Dvořák 2014-02-25 00:24:47 UTC
I'm sorry, I swapped the arguments for touch ('-r' is for the reference file):

iconv -f ISO-8859-1 -t UTF8 ChangeLog > tmp && \
touch -r ChangeLog tmp && \
mv tmp ChangeLog

Also the dll library has atypical name: libid3-3-8-3.dll. It is possible to change it by removing "-release $(LT_RELEASE)" from libid3_la_LDFLAGS (in the mingw patch), then name would be libid3-3.dll. I'm not sure if it is important, it is probably mere cosmetics...



Fixing touch (and changing result dll name if to do it) can be done post review.

Package APPROVED!

Comment 8 David King 2014-02-25 08:51:09 UTC
(In reply to František Dvořák from comment #7)
> I'm sorry, I swapped the arguments for touch ('-r' is for the reference
> file):

Fixed! My fault for not checking. :-)

> Also the dll library has atypical name: libid3-3-8-3.dll. It is possible to
> change it by removing "-release $(LT_RELEASE)" from libid3_la_LDFLAGS (in
> the mingw patch), then name would be libid3-3.dll. I'm not sure if it is
> important, it is probably mere cosmetics...

It has an odd name on Linux too: libid3-3.8.so.3.0.0

I would tend towards leaving this as is, because there is not likely to be another id3lib release (although I would be really happy if there was a new release containing the many fixes that have accumulated over the decade since 3.8.3 was released), so there is some possibility of being compatible with other binary builds of id3lib with the same library versioning.

Comment 9 František Dvořák 2014-02-25 09:45:42 UTC
(In reply to David King from comment #8)
> 
> It has an odd name on Linux too: libid3-3.8.so.3.0.0
> 
> I would tend towards leaving this as is, because there is not likely to be
> another id3lib release (although I would be really happy if there was a new
> release containing the many fixes that have accumulated over the decade
> since 3.8.3 was released), so there is some possibility of being compatible
> with other binary builds of id3lib with the same library versioning.

OK, I agree. :-)

Using both '-version' and '-release' with libtool is atypical, but it looks like it can be combined. Increasing minor version number will lead to binary incompatibility of the library: http://www.gnu.org/software/libtool/manual/html_node/Release-numbers.html#Release-numbers, but this is up to upstream, and it's OK.

Comment 10 David King 2014-02-25 17:46:53 UTC
New Package SCM Request
=======================
Package Name: mingw-id3lib
Short Description: Library for manipulating ID3v1 and ID3v2 tags
Owners: amigadave
Branches: f20
InitialCC:

Comment 11 Gwyn Ciesla 2014-02-25 18:52:21 UTC
Git done (by process-git-requests).

Comment 12 Fedora Update System 2014-02-25 19:48:41 UTC
mingw-id3lib-3.8.3-31.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/mingw-id3lib-3.8.3-31.fc20

Comment 13 Fedora Update System 2014-02-26 14:03:55 UTC
mingw-id3lib-3.8.3-31.fc20 has been pushed to the Fedora 20 testing repository.

Comment 14 Fedora Update System 2014-03-07 06:30:46 UTC
mingw-id3lib-3.8.3-31.fc20 has been pushed to the Fedora 20 stable repository.