diff --git a/NEWS b/NEWS index 05dd0b8..514a7b3 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,15 @@ +1.32.5 +------ + +- build: +-- CMake port uses CFLAGS for pulse/jack/tinyalsa properly now (bug 366). +-- CMake port links libsyn123 with libm now (bug 370). +- libmpg123: +-- Fix --enable-portable (no usage of LFS_WRAP_NONE, bug 368). +-- Fix dct36 wrapper usage for x86-64 and NEON. Stupid (bug 367) and + also avoid returning void. +-- Make ARM builds work with nagging (missing feature macros for std=c99). + 1.32.4 ------ - build: diff --git a/configure b/configure index 1fdd3df..15748ad 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for mpg123 1.32.4. +# Generated by GNU Autoconf 2.71 for mpg123 1.32.5. # # Report bugs to . # @@ -621,8 +621,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='mpg123' PACKAGE_TARNAME='mpg123' -PACKAGE_VERSION='1.32.4' -PACKAGE_STRING='mpg123 1.32.4' +PACKAGE_VERSION='1.32.5' +PACKAGE_STRING='mpg123 1.32.5' PACKAGE_BUGREPORT='maintainer@mpg123.org' PACKAGE_URL='' @@ -1727,7 +1727,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures mpg123 1.32.4 to adapt to many kinds of systems. +\`configure' configures mpg123 1.32.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1798,7 +1798,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of mpg123 1.32.4:";; + short | recursive ) echo "Configuration of mpg123 1.32.5:";; esac cat <<\_ACEOF @@ -2076,7 +2076,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -mpg123 configure 1.32.4 +mpg123 configure 1.32.5 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -2621,7 +2621,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by mpg123 $as_me 1.32.4, which was +It was created by mpg123 $as_me 1.32.5, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -3991,7 +3991,7 @@ fi # Define the identity of the package. PACKAGE='mpg123' - VERSION='1.32.4' + VERSION='1.32.5' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -22430,7 +22430,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by mpg123 $as_me 1.32.4, which was +This file was extended by mpg123 $as_me 1.32.5, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -22498,7 +22498,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -mpg123 config.status 1.32.4 +mpg123 config.status 1.32.5 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff --git a/mpg123.spec b/mpg123.spec index b340ce2..ebb4e0e 100644 --- a/mpg123.spec +++ b/mpg123.spec @@ -3,7 +3,7 @@ # - devel packages for alsa, sdl, etc... to build the respective output modules. Summary: The fast console mpeg audio decoder/player. Name: mpg123 -Version: 1.32.4 +Version: 1.32.5 Release: 1 URL: http://www.mpg123.org/ License: GPL diff --git a/ports/cmake/src/libout123/modules/CMakeLists.txt b/ports/cmake/src/libout123/modules/CMakeLists.txt index 21810c6..51c673d 100644 --- a/ports/cmake/src/libout123/modules/CMakeLists.txt +++ b/ports/cmake/src/libout123/modules/CMakeLists.txt @@ -17,11 +17,11 @@ if(NOT USE_MODULES) $<$:${WIN32_LIBRARIES}> $<$:${WIN32_WASAPI_LIBRARIES}>) if(DEFAULT_OUTPUT_MODULE STREQUAL "pulse") - target_compile_definitions(defaultmodule PRIVATE ${PULSE_CFLAGS}) + target_compile_options(defaultmodule PRIVATE ${PULSE_CFLAGS}) elseif(DEFAULT_OUTPUT_MODULE STREQUAL "jack") - target_compile_definitions(defaultmodule PRIVATE ${JACK_CFLAGS}) + target_compile_options(defaultmodule PRIVATE ${JACK_CFLAGS}) elseif(DEFAULT_OUTPUT_MODULE STREQUAL "tinyalsa") - target_compile_definitions(defaultmodule PRIVATE ${TINYALSA_CFLAGS}) + target_compile_options(defaultmodule PRIVATE ${TINYALSA_CFLAGS}) endif() if(BUILD_SHARED_LIBS) set_target_properties(defaultmodule PROPERTIES POSITION_INDEPENDENT_CODE ON) diff --git a/ports/cmake/src/libsyn123/CMakeLists.txt b/ports/cmake/src/libsyn123/CMakeLists.txt index 5c0ae0b..6edb5b7 100644 --- a/ports/cmake/src/libsyn123/CMakeLists.txt +++ b/ports/cmake/src/libsyn123/CMakeLists.txt @@ -20,6 +20,7 @@ target_include_directories(${TARGET} INTERFACE "$") target_link_libraries(${TARGET} PRIVATE + $<$:m> $<$:shlwapi>) install(TARGETS ${TARGET} EXPORT targets diff --git a/src/include/mpg123.h b/src/include/mpg123.h index 90d1c91..bc89d4b 100644 --- a/src/include/mpg123.h +++ b/src/include/mpg123.h @@ -1327,7 +1327,7 @@ MPG123_EXPORT int mpg123_volume_change(mpg123_handle *mh, double change); /** Adjust output volume including the RVA setting by chosen amount * \param mh handle - * \param change volume adjustment in decibels (limited to +/- 60 dB) + * \param db volume adjustment in decibels (limited to +/- 60 dB) * \return MPG123_OK on success */ MPG123_EXPORT int mpg123_volume_change_db(mpg123_handle *mh, double db); diff --git a/src/libmpg123/getcpuflags_arm.c b/src/libmpg123/getcpuflags_arm.c index 342c217..8d0249a 100644 --- a/src/libmpg123/getcpuflags_arm.c +++ b/src/libmpg123/getcpuflags_arm.c @@ -1,11 +1,17 @@ /* getcpuflags_arm: get cpuflags for ARM - copyright 1995-2014 by the mpg123 project - free software under the terms of the LGPL 2.1 + copyright 1995-2024 by the mpg123 project - free software under the terms of the LGPL 2.1 see COPYING and AUTHORS files in distribution or http://mpg123.org initially written by Taihei Momma */ +// For sigsetjmp, we need POSIX 2001 +#define _POSIX_C_SOURCE 200112L +// For SA_RESTART, XSI is needed (or POSIX 2008). +// This here should include the above, keeping that for clarity. +#define _XOPEN_SOURCE 600 + #include #include #include "mpg123lib_intern.h" diff --git a/src/libmpg123/layer3.c b/src/libmpg123/layer3.c index c49dbba..6640f38 100644 --- a/src/libmpg123/layer3.c +++ b/src/libmpg123/layer3.c @@ -1466,7 +1466,7 @@ static void INT123_dct36(real *inbuf,real *o1,real *o2,const real *wintab,real * #define DCT36_WRAP(asmfunc) \ static void asmfunc ## _wrap(real *inbuf,real *o1,real *o2,const real *wintab,real *tsbuf) \ { \ - return asmfunc(inbuf, o1, o2, wintab, tsbuf); \ + asmfunc(inbuf, o1, o2, wintab, tsbuf); \ } #ifdef OPT_SSE @@ -1529,22 +1529,22 @@ void INT123_dct36_choose(mpg123_handle *fr) #endif #ifdef OPT_AVX case avx: - fr->cpu_opts.the_dct36 = INT123_dct36_avx; + fr->cpu_opts.the_dct36 = INT123_dct36_avx_wrap; break; #endif #ifdef OPT_X86_64 case x86_64: - fr->cpu_opts.the_dct36 = INT123_dct36_x86_64; + fr->cpu_opts.the_dct36 = INT123_dct36_x86_64_wrap; break; #endif #ifdef OPT_NEON case neon: - fr->cpu_opts.the_dct36 = INT123_dct36_neon; + fr->cpu_opts.the_dct36 = INT123_dct36_neon_wrap; break; #endif #ifdef OPT_NEON64 case neon: - fr->cpu_opts.the_dct36 = INT123_dct36_neon64; + fr->cpu_opts.the_dct36 = INT123_dct36_neon64_wrap; break; #endif default: diff --git a/src/libmpg123/libmpg123.c b/src/libmpg123/libmpg123.c index 6792064..6cbd29e 100644 --- a/src/libmpg123/libmpg123.c +++ b/src/libmpg123/libmpg123.c @@ -648,9 +648,10 @@ int attribute_align_arg mpg123_open_handle(mpg123_handle *mh, void *iohandle) #ifndef PORTABLE_API ret = INT123_wrap_open( mh, iohandle, NULL, -1 , mh->p.timeout, mh->p.flags & MPG123_QUIET ); + iohandle = ret == LFS_WRAP_NONE ? iohandle : mh->wrapperdata; if(ret >= 0) #endif - ret = INT123_open_stream_handle(mh, ret == LFS_WRAP_NONE ? iohandle : mh->wrapperdata); + ret = INT123_open_stream_handle(mh, iohandle); return ret; } diff --git a/src/version.h b/src/version.h index 55bd65a..9a8d09f 100644 --- a/src/version.h +++ b/src/version.h @@ -16,7 +16,7 @@ // only single spaces as separator to ease parsing by build scripts #define MPG123_MAJOR 1 #define MPG123_MINOR 32 -#define MPG123_PATCH 4 +#define MPG123_PATCH 5 // Don't get too wild with that to avoid confusing m4. No brackets. // Also, it should fit well into a sane file name for the tarball. #define MPG123_SUFFIX ""