Opened 7 months ago

Closed 7 months ago

#18633 closed enhancement (fixed)

mpg123-1.32.2

Reported by: Douglas R. Reno Owned by: Douglas R. Reno
Priority: normal Milestone: 12.1
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New minor version

Change History (9)

comment:1 by Xi Ruoyao, 7 months ago

1.32.0

  • build:
    • Move version handling out of configure.ac to ease other build systems.
    • Include "fmt123.h" instead of <fmt123.h> in main API headers to make it more likely the correct one is included (at least gcc picks the one in the same directory as the including header first).
    • All headers are build-independent now.
    • Fix build for picky linkers by avoiding definition of wrap_getcpuflags() where it is not used (spurious linker error to non-exitent getcpuflags(), bug 353).
    • Handle deprecation of C99 detection macro in autoconf 2.70.
    • No use of AC_SYS_LARGEFILE anymore for explicit handling and differing choice for the libraries and frontend programs.
    • Added --enable-portable and --disable-largefile to configure, removing the other largefile-related options.
    • Added --disable-components --enable-libmpg123 to only build libmpg123 (and likewise --enable-libout123, --enable-libout123-modules, --enable-libsyn123) to autoconf build. CMake build has something similar with BUILD_PROGRAMS and BUILD_LIBOUT123, which leave only libmpg123 and libsyn123 if disabled). (bug 351)
    • Consistent formatting of ./configure --help with AS_HELP_STRING().
  • ports/Sony_PSP: removed
  • mpg123:
    • Added --libversion.
    • Added proper A-B looping with terminal control key 'o', renamed --pauseloop to --presetloop.
    • Really get rid of mpg123_position() usage. (It was all lies before!)
    • Fix terminal progress info when seeking in stopped mode (1.31 regression).
    • Patch up interaction of output buffer with generic remote control, adding non-interruptible drain after P 3, and dropping buffer on QUIT.
    • Uppercase some generic control replies for consinstency: SILENCE, PROGRESS, MUTE, UNMUTE
  • libmpg123, libout123, libsyn123:
    • Bumped API version for version query functions.
    • Replaced nearly all symbol renames with explicit INT123_ prefix declarations (intsym.h close to empty now).
  • libout123:
    • Add sleep builtin output module (silent, but proper timing).
  • libsyn123:
    • Introduced SYN123_PORTABLE_API for an API without off_t and ssize_t (see NEWS.libsyn123).
  • libmpg123:
    • Internal I/O using explicit largefile support via off64_t, lseek64, fallback to plain 32 bit off_t.
    • Added explicit 64 bit API with 64 suffix (mpg123_tell64(), not mpg123_tell_64()). This allows full avoidance of ambiguus off_t. The API is always using 64 bit integers, regardless of internal implementation. (bug 344)
    • Introduced MPG123_PORTABLE_API for an API subset without off_t and ssize_t.
    • Made mpg123_seek() and friends ignore offset sign for SEEK_END (always seeking towards beginning, assuming negative offset) to make lseek()-conforming usage possible. Seeking beyond the end never made sense, so no loss of valid functionality.
  • Overall use of INT123_strerror(), trying to use thread-safe strerror_l() if possible.

comment:2 by Joe Locash, 7 months ago

The latest version is now 1.32.1.

gst-plugins-good-1.22.6 fails to build with 1.32.x:

FAILED: ext/mpg123/libgstmpg123.so 
cc  -o ext/mpg123/libgstmpg123.so ext/mpg123/libgstmpg123.so.p/gstmpg123audiodec.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -shared -fPIC -Wl,--start-group -Wl,-soname,libgstmpg123.so -Wl,-Bsymbolic-functions -Wl,-z,nodelete /usr/lib/libgstaudio-1.0.so /usr/lib/libgobject-2.0.so /usr/lib/libglib-2.0.so /usr/lib/libgstbase-1.0.so /usr/lib/libgstreamer-1.0.so /usr/lib/libmpg123.so -Wl,--end-group
/usr/bin/ld: ext/mpg123/libgstmpg123.so.p/gstmpg123audiodec.c.o: in function `gst_mpg123_audio_dec_handle_frame':
gstmpg123audiodec.c:(.text+0x17f3): undefined reference to `mpg123_decode_frame_64'
collect2: error: ld returned 1 exit status

It has been reported upstream to gstreamer @ https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3001

comment:3 by Douglas R. Reno, 7 months ago

Summary: mpg123-1.32.0mpg123-1.32.1

comment:4 by Xi Ruoyao, 7 months ago

1.32.1

  • Include man pages again in tarball and install. We cannot avoid the empty man directory when disabling programs with autoconf.
  • Fix signal handler prototype, avoiding some justified warnings.
  • ports/cmake:
    • Include CheckTypeSize, which seems to be needed sometimes (bug 357).
    • Avoid O_LARGEFILE redefinition, logic closer to autoconf.

comment:5 by Joe Locash, 7 months ago

Now at 1.32.2. This fixes the build of gst-plugins-good.

comment:6 by Douglas R. Reno, 7 months ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:7 by Douglas R. Reno, 7 months ago

Summary: mpg123-1.32.1mpg123-1.32.2

comment:8 by Douglas R. Reno, 7 months ago

  • libmpg123: Re-introduce _64 symbols on native 64 bit offset platforms. This was a regression since 1.31 series. Sorry, too much cleanup, not enough testing.
  • build:
    • Better O_LARGEFILE logic, avoiding redefintion.
  • ports/cmake:
    • Require C99 (bug 360, among other points, thanks to Ozkan Sezer).
    • Fix broken O_LARGEFILE logic (bug 360).
    • Typo fix and cleanup, also manual SSE switch for Android on old x86 (bug 359).

comment:9 by Douglas R. Reno, 7 months ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.