based on an old diff from sthen@ for 1.9.1. I remember testing it with an updated faad that never reached the port tree, and i'm now testing it again with the current faad-2.7p2.
I don't use it, but doing some testing (in particular with aac files) and it seems to work. The recap of the last episodes is that this old version of deadbeef was blocking audio/faad from being updated. deadbeef removed the sndio plugin however, so we're (hopefully temporarly) switching to pulseaudio. It also disables libmad in favour of libmpg123. ok? Index: Makefile =================================================================== RCS file: /home/cvs/ports/audio/deadbeef/Makefile,v retrieving revision 1.45 diff -u -p -r1.45 Makefile --- Makefile 31 Mar 2022 14:10:58 -0000 1.45 +++ Makefile 4 Oct 2022 08:40:35 -0000 @@ -1,37 +1,35 @@ COMMENT = DeaDBeeF is an audio player -DISTNAME = deadbeef-0.7.2 -REVISION = 14 +DISTNAME = deadbeef-1.9.2 CATEGORIES = audio -HOMEPAGE = http://deadbeef.sourceforge.net/ +HOMEPAGE = https://deadbeef.sourceforge.io/ # GPLv2 & LGPLv2.1 PERMIT_PACKAGE = Yes -WANTLIB += ${COMPILER_LIBCXX} FLAC Imlib2 X11 Xcomposite -WANTLIB += Xcursor Xdamage Xext Xfixes Xi Xinerama Xrandr Xrender -WANTLIB += atk-1.0 atk-bridge-2.0 atspi avcodec avformat avutil -WANTLIB += bz2 c cairo cairo-gobject cddb cdio crypto curl dbus-1 -WANTLIB += epoxy expat faad ffi fontconfig freetype gdk-3 gdk_pixbuf-2.0 -WANTLIB += gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0 graphite2 -WANTLIB += gsm gthread-2.0 gtk-3 harfbuzz iconv intl jansson m -WANTLIB += mad mms mp3lame mp4ff mpcdec nghttp2 ogg opus pango-1.0 -WANTLIB += pangocairo-1.0 pangoft2-1.0 pcre pixman-1 png -WANTLIB += sndfile sndio speex ssl swresample vorbis vorbisenc -WANTLIB += vorbisfile vpx wavpack x264 x265 xcb xcb-render xcb-shm -WANTLIB += xvidcore z zip fribidi Xau Xdmcp -WANTLIB += aom dav1d execinfo jpeg lzma theoradec theoraenc xml2 zstd +WANTLIB += ${COMPILER_LIBCXX} BlocksRuntime FLAC X11 Xau Xcomposite +WANTLIB += Xcursor Xdamage Xdmcp Xext Xfixes Xi Xinerama Xrandr +WANTLIB += Xrender aom atk-1.0 atk-bridge-2.0 avcodec avformat +WANTLIB += avutil bz2 c cairo cairo-gobject cddb cdio crypto curl +WANTLIB += dav1d dbus-1 dispatch epoxy execinfo expat faad ffi +WANTLIB += fontconfig freetype fribidi gdk-3 gdk_pixbuf-2.0 gio-2.0 +WANTLIB += glib-2.0 gmodule-2.0 gobject-2.0 graphite2 gsm gthread-2.0 +WANTLIB += gtk-3 harfbuzz iconv intl jansson jpeg lzma m mms mp3lame +WANTLIB += mpcdec mpg123 nghttp2 ogg opus opusfile pango-1.0 +WANTLIB += pangocairo-1.0 pangoft2-1.0 pcre pixman-1 png pulse +WANTLIB += pulse-simple sndfile speex ssl swresample theoradec +WANTLIB += theoraenc vorbis vorbisenc vorbisfile vpx wavpack x264 +WANTLIB += x265 xcb xcb-render xcb-shm xml2 xvidcore z zip zstd -COMPILER = base-clang ports-gcc base-gcc +COMPILER = base-clang ports-gcc + +DEBUG_PACKAGES = ${BUILD_PACKAGES} MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=deadbeef/} EXTRACT_SUFX = .tar.bz2 MODULES = textproc/intltool -BUILD_DEPENDS = ${MODGNU_AUTOCONF_DEPENDS} \ - ${MODGNU_AUTOMAKE_DEPENDS} - .if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" BUILD_DEPENDS += devel/yasm .endif @@ -42,19 +40,20 @@ RUN_DEPENDS = devel/desktop-file-utils LIB_DEPENDS = archivers/libzip \ audio/faad \ audio/flac \ + audio/libcddb \ audio/libcdio \ - audio/libmad \ audio/libogg \ audio/libsndfile \ audio/libvorbis \ audio/musepack \ + audio/opusfile \ + audio/pulseaudio \ audio/wavpack \ devel/jansson \ + devel/libdispatch \ graphics/ffmpeg \ - graphics/imlib2 \ multimedia/libmms \ net/curl \ - x11/dbus \ x11/gtk+3 USE_GMAKE = Yes @@ -63,9 +62,9 @@ LIBTOOL_FLAGS = --tag=disable-static NO_TEST = Yes AUTOCONF_VERSION = 2.69 -AUTOMAKE_VERSION = 1.11 +AUTOMAKE_VERSION = 1.16 -CONFIGURE_STYLE = gnu +CONFIGURE_STYLE = autoreconf CONFIGURE_ARGS += --disable-static \ --disable-abstract-socket \ --disable-adplug \ @@ -73,16 +72,20 @@ CONFIGURE_ARGS += --disable-static \ --disable-coreaudio \ --disable-gme \ --disable-gtk2 \ - --disable-libmpg123 \ + --disable-libmad \ --disable-mono2stereo \ --disable-oss \ - --disable-pulse \ --disable-sid \ --disable-src \ --disable-supereq \ --disable-wildmidi \ --disable-wma \ --disable-cdda-paranoia + +# sndio code worked with 0.7.2 but needs further changes for 1.9.2 +CONFIGURE_ARGS += --enable-pulse \ + --disable-sndio + CONFIGURE_ENV += CPPFLAGS='-I${LOCALBASE}/lib/libzip/include \ -I${X11BASE}/include \ -I${WRKSRC}/plugins/dumb/dumb-kode54/include' \ @@ -91,13 +94,12 @@ CONFIGURE_ENV += CPPFLAGS='-I${LOCALBASE CONFIGURE_ENV += ax_cv_c_flags__msse2='no' .endif +# XXX: why is this even needed? +MAKE_FLAGS += INTL_LIBS=-lintl + post-patch: - @mkdir -p ${WRKSRC}/m4 # XXX need for autoreconf @mkdir -p ${WRKSRC}/plugins/sndio @cp ${FILESDIR}/{Makefile.am,sndio.c} ${WRKSRC}/plugins/sndio - -pre-configure: - @cd ${WRKSRC} && ${AUTOCONF_ENV} autoreconf post-install: @rm ${PREFIX}/lib/deadbeef/*.la Index: distinfo =================================================================== RCS file: /home/cvs/ports/audio/deadbeef/distinfo,v retrieving revision 1.6 diff -u -p -r1.6 distinfo --- distinfo 13 Sep 2016 08:48:11 -0000 1.6 +++ distinfo 4 Oct 2022 07:44:33 -0000 @@ -1,2 +1,2 @@ -SHA256 (deadbeef-0.7.2.tar.bz2) = imOr3wDC83wz4BiuCznTkYc+A3Q0B0uEu0c4G/KDyIQ= -SIZE (deadbeef-0.7.2.tar.bz2) = 4736472 +SHA256 (deadbeef-1.9.2.tar.bz2) = uIw0NaNZM6c1qlPsJnQy/uH8VeyA9/CoCNBotjPi2Ak= +SIZE (deadbeef-1.9.2.tar.bz2) = 5105029 Index: patches/patch-Makefile_am =================================================================== RCS file: patches/patch-Makefile_am diff -N patches/patch-Makefile_am --- patches/patch-Makefile_am 11 Mar 2022 18:20:08 -0000 1.6 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,12 +0,0 @@ ---- Makefile.am.orig Sun Sep 4 08:48:52 2016 -+++ Makefile.am Sun Sep 4 08:49:05 2016 -@@ -51,6 +51,9 @@ deadbeef_SOURCES =\ - sdkdir = $(pkgincludedir) - sdk_HEADERS = deadbeef.h - -+# Fix 'undefined symbol' errors when loading plugins -+deadbeef_LDFLAGS = $(LDFLAGS) -Wl,--export-dynamic -+ - deadbeef_LDADD = $(LDADD) $(DEPS_LIBS) $(ICONV_LIB) $(DL_LIBS) -lm -lpthread $(INTL_LIBS) plugins/libparser/libparser.a - - AM_CFLAGS = $(DEPS_CFLAGS) -std=c99 Index: patches/patch-configure_ac =================================================================== RCS file: /home/cvs/ports/audio/deadbeef/patches/patch-configure_ac,v retrieving revision 1.7 diff -u -p -r1.7 patch-configure_ac --- patches/patch-configure_ac 11 Mar 2022 18:20:08 -0000 1.7 +++ patches/patch-configure_ac 4 Oct 2022 07:32:46 -0000 @@ -1,6 +1,7 @@ ---- configure.ac.orig Tue Mar 15 21:20:56 2016 -+++ configure.ac Mon Sep 5 08:53:07 2016 -@@ -83,6 +83,7 @@ AC_ARG_ENABLE(alsa, [AS_HELP_STRING([--disable-als +Index: configure.ac +--- configure.ac.orig ++++ configure.ac +@@ -84,6 +84,7 @@ AC_ARG_ENABLE(alsa, [AS_HELP_STRING([--disable-als AC_ARG_ENABLE(oss, [AS_HELP_STRING([--disable-oss ], [disable Open Sound System output plugin (default: enabled)])], [enable_oss=$enableval], [enable_oss=yes]) AC_ARG_ENABLE(pulse, [AS_HELP_STRING([--disable-pulse ], [disable PulseAudio output plugin (default: enabled)])], [enable_pulse=$enableval], [enable_pulse=yes]) AC_ARG_ENABLE(coreaudio,[AS_HELP_STRING([--disable-coreaudio], [disable CoreAudio output plugin (default: enabled)])], [enable_coreaudio=$enableval], [enable_coreaudio=yes]) @@ -8,18 +9,18 @@ AC_ARG_ENABLE(gtk3, [AS_HELP_STRING([--disable-gtk3 ], [disable GTK3 version of gtkui plugin (default: enabled)])], [enable_gtk3=$enableval], [enable_gtk3=yes]) AC_ARG_ENABLE(gtk2, [AS_HELP_STRING([--disable-gtk2 ], [disable GTK2 version of gtkui plugin (default: enabled)])], [enable_gtk2=$enableval], [enable_gtk2=yes]) AC_ARG_ENABLE(vfs_curl, [AS_HELP_STRING([--disable-vfs-curl], [disable HTTP streaming vfs plugin (default: enabled)])], [enable_vfs_curl=$enableval], [enable_vfs_curl=yes]) -@@ -188,8 +189,8 @@ AS_IF([test "${enable_portable}" != "no" -a "${enable_ - PREFIXFLAGS=" -DLIBDIR=\\\"$libdir\\\" -DPREFIX=\\\"$prefix\\\" -DDOCDIR=\\\"$docdir\\\"" - ]) +@@ -193,8 +194,8 @@ AS_IF([test "${enable_portable}" != "no" -a "${enable_ + dnl HACK: using undocumented variable to check whether it's safe to define __EXTENSIONS__ + test $ac_cv_safe_to_define___extensions__ = yes && CFLAGS_EXTENSIONS="-D__EXTENSIONS__" + +-CXXFLAGS="$CXXFLAGS $INSANE_CXXFLAGS -D_GNU_SOURCE $CFLAGS_EXTENSIONS $PREFIXFLAGS -DDDB_WARN_DEPRECATED=1" +-CFLAGS="$CFLAGS $INSANE_CFLAGS -D_GNU_SOURCE $CFLAGS_EXTENSIONS $PREFIXFLAGS -DDDB_WARN_DEPRECATED=1" ++CXXFLAGS="$CXXFLAGS $INSANE_CXXFLAGS -D_GNU_SOURCE $CFLAGS_EXTENSIONS $PREFIXFLAGS" ++CFLAGS="$CFLAGS $INSANE_CFLAGS -D_GNU_SOURCE $CFLAGS_EXTENSIONS $PREFIXFLAGS" --CXXFLAGS="$CXXFLAGS $INSANE_CXXFLAGS -D_GNU_SOURCE $PREFIXFLAGS -DDDB_WARN_DEPRECATED=1" --CFLAGS="$CFLAGS $INSANE_CFLAGS -D_GNU_SOURCE $PREFIXFLAGS -DDDB_WARN_DEPRECATED=1" -+CXXFLAGS="$CXXFLAGS $INSANE_CXXFLAGS -D_GNU_SOURCE $PREFIXFLAGS" -+CFLAGS="$CFLAGS $INSANE_CFLAGS -D_GNU_SOURCE $PREFIXFLAGS" AS_IF([test "${enable_staticlink}" != "no"], [ - HAVE_ZLIB=yes -@@ -287,6 +288,17 @@ AS_IF([test "${enable_coreaudio}" != "no" -a "${found_ +@@ -295,6 +296,17 @@ AS_IF([test "${enable_coreaudio}" != "no" -a "${found_ AC_SUBST(COREAUDIO_LIBS) @@ -37,7 +38,7 @@ AS_IF([test "${enable_ffmpeg}" != "no"], [ AS_IF([test "${enable_staticlink}" != "no"], [ FFMPEG_DEPS_CFLAGS="-I../../$LIB/include" -@@ -394,11 +406,11 @@ AS_IF([test "${enable_vorbis}" != "no"], [ +@@ -402,11 +414,11 @@ AS_IF([test "${enable_vorbis}" != "no"], [ AC_SUBST(VORBIS_LIBS) AC_SUBST(VORBIS_CFLAGS) ], [ @@ -52,7 +53,7 @@ AC_SUBST(VORBIS_LIBS) ]) ]) -@@ -430,10 +442,10 @@ AS_IF([test "${enable_flac}" != "no"], [ +@@ -455,10 +467,10 @@ AS_IF([test "${enable_flac}" != "no"], [ AC_SUBST(FLAC_CFLAGS) AC_SUBST(FLAC_LIBS) ], [ @@ -65,7 +66,7 @@ AC_SUBST(FLAC_LIBS) ]) ]) -@@ -739,7 +751,7 @@ AS_IF([test "${enable_aac}" != "no"], [ +@@ -735,7 +747,7 @@ AS_IF([test "${enable_aac}" != "no"], [ ]) AS_IF([test "${enable_mms}" != "no"], [ @@ -74,16 +75,16 @@ AC_SUBST(LIBMMS_LIBS) HAVE_MMS=yes ]) -@@ -796,7 +808,7 @@ AS_IF([test "${enable_sc68}" != "no"], [ - HAVE_SC68=yes +@@ -809,7 +821,7 @@ AS_IF([test "${enable_soundtouch}" != "no"], [ + HAVE_SOUNDTOUCH=yes ]) --PLUGINS_DIRS="plugins/liboggedit plugins/libmp4ff plugins/libparser plugins/lastfm plugins/mp3 plugins/vorbis plugins/flac plugins/wavpack plugins/sndfile plugins/vfs_curl plugins/cdda plugins/gtkui plugins/alsa plugins/ffmpeg plugins/hotkeys plugins/oss plugins/artwork plugins/adplug plugins/ffap plugins/sid plugins/nullout plugins/supereq plugins/vtx plugins/gme plugins/pulse plugins/notify plugins/musepack plugins/wildmidi plugins/tta plugins/dca plugins/aac plugins/mms plugins/shellexec plugins/shellexecui plugins/dsp_libsrc plugins/m3u plugins/vfs_zip plugins/converter plugins/dumb plugins/shn plugins/ao plugins/mono2stereo plugins/alac plugins/wma plugins/pltbrowser plugins/coreaudio plugins/sc68" -+PLUGINS_DIRS="plugins/liboggedit plugins/libparser plugins/lastfm plugins/mp3 plugins/vorbis plugins/flac plugins/wavpack plugins/sndfile plugins/vfs_curl plugins/cdda plugins/gtkui plugins/alsa plugins/ffmpeg plugins/hotkeys plugins/oss plugins/artwork plugins/adplug plugins/ffap plugins/sid plugins/nullout plugins/supereq plugins/vtx plugins/gme plugins/pulse plugins/notify plugins/musepack plugins/wildmidi plugins/tta plugins/dca plugins/aac plugins/mms plugins/shellexec plugins/shellexecui plugins/dsp_libsrc plugins/m3u plugins/vfs_zip plugins/converter plugins/dumb plugins/shn plugins/ao plugins/mono2stereo plugins/alac plugins/wma plugins/pltbrowser plugins/coreaudio plugins/sc68 plugins/sndio" +-PLUGINS_DIRS="plugins/liboggedit plugins/libparser plugins/lastfm plugins/mp3 plugins/vorbis plugins/opus plugins/flac plugins/wavpack plugins/sndfile plugins/vfs_curl plugins/cdda plugins/gtkui plugins/alsa plugins/ffmpeg plugins/hotkeys plugins/oss plugins/artwork plugins/adplug plugins/ffap plugins/sid plugins/nullout plugins/supereq plugins/vtx plugins/gme plugins/pulse plugins/notify plugins/musepack plugins/wildmidi plugins/tta plugins/dca plugins/aac plugins/mms plugins/shellexec plugins/shellexecui plugins/dsp_libsrc plugins/m3u plugins/vfs_zip plugins/converter plugins/dumb plugins/shn plugins/psf plugins/mono2stereo plugins/alac plugins/wma plugins/pltbrowser plugins/coreaudio plugins/sc68 plugins/rg_scanner plugins/soundtouch" ++PLUGINS_DIRS="plugins/liboggedit plugins/libparser plugins/lastfm plugins/mp3 plugins/vorbis plugins/opus plugins/flac plugins/wavpack plugins/sndfile plugins/vfs_curl plugins/cdda plugins/gtkui plugins/alsa plugins/ffmpeg plugins/hotkeys plugins/oss plugins/artwork plugins/adplug plugins/ffap plugins/sid plugins/nullout plugins/supereq plugins/vtx plugins/gme plugins/pulse plugins/notify plugins/musepack plugins/wildmidi plugins/tta plugins/dca plugins/aac plugins/mms plugins/shellexec plugins/shellexecui plugins/dsp_libsrc plugins/m3u plugins/vfs_zip plugins/converter plugins/dumb plugins/shn plugins/psf plugins/mono2stereo plugins/alac plugins/wma plugins/pltbrowser plugins/coreaudio plugins/sc68 plugins/rg_scanner plugins/soundtouch plugins/sndio" AM_CONDITIONAL(APE_USE_YASM, test "x$APE_USE_YASM" = "xyes") AM_CONDITIONAL(HAVE_VORBIS, test "x$HAVE_VORBISPLUGIN" = "xyes") -@@ -811,6 +823,7 @@ AM_CONDITIONAL(HAVE_GTK2, test "x$HAVE_GTK2" = "xyes") +@@ -825,6 +837,7 @@ AM_CONDITIONAL(HAVE_GTK2, test "x$HAVE_GTK2" = "xyes") AM_CONDITIONAL(HAVE_GTK3, test "x$HAVE_GTK3" = "xyes") AM_CONDITIONAL(HAVE_ALSA, test "x$HAVE_ALSAPLUGIN" = "xyes") AM_CONDITIONAL(HAVE_COREAUDIO, test "x$HAVE_COREAUDIO" = "xyes") @@ -91,27 +92,11 @@ AM_CONDITIONAL(HAVE_FFMPEG, test "x$HAVE_FFMPEGPLUGIN" = "xyes") AM_CONDITIONAL(HAVE_PULSE, test "x$HAVE_PULSEPLUGIN" = "xyes") AM_CONDITIONAL(HAVE_ARTWORK, test "x$HAVE_ARTWORK" = "xyes") -@@ -870,7 +883,6 @@ Makefile - pixmaps/Makefile - icons/Makefile - plugins/liboggedit/Makefile --plugins/libmp4ff/Makefile - plugins/libparser/Makefile - plugins/gme/Makefile - plugins/alsa/Makefile -@@ -916,6 +928,7 @@ plugins/wma/Makefile +@@ -933,6 +946,7 @@ plugins/wma/Makefile plugins/pltbrowser/Makefile plugins/sc68/Makefile plugins/coreaudio/Makefile +plugins/sndio/Makefile - intl/Makefile + plugins/rg_scanner/Makefile + plugins/soundtouch/Makefile po/Makefile.in - deadbeef.desktop -@@ -952,6 +965,7 @@ PRINT_PLUGIN_INFO([alsa],[ALSA output],[test "x$HAVE_A - PRINT_PLUGIN_INFO([oss],[oss output plugin],[test "x$HAVE_OSS" = "xyes"]) - PRINT_PLUGIN_INFO([pulse],[PulseAudio output plugin],[test "x$HAVE_PULSEPLUGIN" = "xyes"]) - PRINT_PLUGIN_INFO([coreaudio],[CoreAudio output plugin],[test "x$HAVE_COREAUDIO" = "xyes"]) -+PRINT_PLUGIN_INFO([sndio],[sndio output plugin],[test "x$HAVE_SNDIO" = "xyes"]) - PRINT_PLUGIN_INFO([sid],[SID player based on libsidplay2],[test "x$HAVE_SID" = "xyes"]) - PRINT_PLUGIN_INFO([ffap],[Monkey's audio (APE) decoder],[test "x$HAVE_FFAP" = "xyes"]) - PRINT_PLUGIN_INFO([lastfm],[last.fm scrobbler],[test "x$HAVE_LASTFM" = "xyes"]) Index: patches/patch-junklib_c =================================================================== RCS file: /home/cvs/ports/audio/deadbeef/patches/patch-junklib_c,v retrieving revision 1.6 diff -u -p -r1.6 patch-junklib_c --- patches/patch-junklib_c 11 Mar 2022 18:20:08 -0000 1.6 +++ patches/patch-junklib_c 4 Oct 2022 07:32:46 -0000 @@ -7,34 +7,13 @@ junklib: fix pointer going out of scope Index: junklib.c --- junklib.c.orig +++ junklib.c -@@ -33,7 +33,6 @@ +@@ -32,9 +32,6 @@ + #include <stdlib.h> #include <string.h> - #undef HAVE_ICI #if HAVE_ICONV +- #ifndef __MINGW32__ - #define LIBICONV_PLUG +- #endif #include <iconv.h> #elif HAVE_ICU #warning icu -@@ -586,7 +585,7 @@ junk_iconv (const char *in, int inlen, char *out, int - if (cd == (iconv_t)-1) { - return -1; - } --#ifdef __linux__ -+#if defined(__linux__) || defined (__OpenBSD__) - char *pin = (char*)in; - #else - const char *pin = in; -@@ -1025,11 +1024,12 @@ junk_id3v1_read_int (playItem_t *it, char *buffer, con - return -1; - } - -+ const char *cs = NULL; -+ - if (it) { - if (memcmp (buffer, "TAG", 3)) { - return -1; // no tag - } -- const char *cs = NULL; - charset = &cs; - int res = junk_id3v1_read_int (NULL, buffer, charset); - if (res) { Index: patches/patch-plugins_aac_Makefile_am =================================================================== RCS file: patches/patch-plugins_aac_Makefile_am diff -N patches/patch-plugins_aac_Makefile_am --- patches/patch-plugins_aac_Makefile_am 11 Mar 2022 18:20:08 -0000 1.6 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,26 +0,0 @@ ---- plugins/aac/Makefile.am.orig Sun Sep 4 08:58:27 2016 -+++ plugins/aac/Makefile.am Sun Sep 4 08:59:10 2016 -@@ -1,9 +1,20 @@ - if HAVE_AAC - pkglib_LTLIBRARIES = aac.la --aac_la_SOURCES = aac.c aac_parser.c aac_parser.h -+aac_la_SOURCES = aac.c aac_parser.c aac_parser.h\ -+ ../libmp4ff/mp4atom.c\ -+ ../libmp4ff/mp4ff.c\ -+ ../libmp4ff/mp4meta.c\ -+ ../libmp4ff/mp4sample.c\ -+ ../libmp4ff/mp4tagupdate.c\ -+ ../libmp4ff/mp4util.c\ -+ ../libmp4ff/mp4ff.h\ -+ ../libmp4ff/mp4ffint.h\ -+ ../libmp4ff/mp4ff_int_types.h -+ - aac_la_LDFLAGS = -module -avoid-version - --aac_la_LIBADD = $(LDADD) $(FAAD2_LIBS) ../libmp4ff/libmp4ff.a --AM_CFLAGS = -I@top_srcdir@/plugins/libmp4ff $(CFLAGS) $(FAAD2_CFLAGS) -std=c99 -DUSE_MP4FF -DUSE_TAGGING -+aac_la_LIBADD = $(LDADD) $(FAAD2_LIBS) -+AM_CFLAGS = $(CFLAGS) $(FAAD2_CFLAGS) -std=c99 -DUSE_MP4FF -DUSE_TAGGING -+ - endif - Index: patches/patch-plugins_aac_aac_c =================================================================== RCS file: patches/patch-plugins_aac_aac_c diff -N patches/patch-plugins_aac_aac_c --- patches/patch-plugins_aac_aac_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ ---- plugins/aac/aac.c.orig Sun Nov 18 22:47:40 2012 -+++ plugins/aac/aac.c Sun Nov 18 22:47:48 2012 -@@ -29,7 +29,7 @@ - #include "../../deadbeef.h" - #include "aac_parser.h" - --#include "mp4ff.h" -+#include "../libmp4ff/mp4ff.h" - - #define min(x,y) ((x)<(y)?(x):(y)) - #define max(x,y) ((x)>(y)?(x):(y)) Index: patches/patch-plugins_alac_Makefile_am =================================================================== RCS file: patches/patch-plugins_alac_Makefile_am diff -N patches/patch-plugins_alac_Makefile_am --- patches/patch-plugins_alac_Makefile_am 11 Mar 2022 18:20:08 -0000 1.5 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,13 +0,0 @@ ---- plugins/alac/Makefile.am.orig Sun Sep 4 09:00:25 2016 -+++ plugins/alac/Makefile.am Sun Sep 4 09:00:42 2016 -@@ -5,8 +5,8 @@ alac.c decomp.h demux.c demux.h stream.c stream.h - - alac_la_LDFLAGS = -module -avoid-version - --alac_la_LIBADD = $(LDADD) $(FAAD2_LIBS) ../libmp4ff/libmp4ff.a --AM_CFLAGS = $(CFLAGS) -std=c99 -DUSE_MP4FF -DUSE_TAGGING -I@top_srcdir@/plugins/libmp4ff -+alac_la_LIBADD = $(LDADD) $(FAAD2_LIBS) -lmp4ff -+AM_CFLAGS = $(CFLAGS) -std=c99 -DUSE_MP4FF -DUSE_TAGGING - endif - - Index: patches/patch-plugins_alac_alac_c =================================================================== RCS file: patches/patch-plugins_alac_alac_c diff -N patches/patch-plugins_alac_alac_c --- patches/patch-plugins_alac_alac_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,56 +0,0 @@ -commit 0d269ed4eee6a6b5e82dbc898a4779aea368e8f2 -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Sat Oct 8 11:01:36 2016 +0200 - -alac: prevent crash on unrecognized/corrupt content - ---- plugins/alac/alac.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins/alac/alac.c Sun Oct 9 20:41:19 2016 -@@ -457,6 +457,9 @@ void entropy_rice_decode(alac_file* alac, - // got blockSize 0s - if (blockSize > 0) - { -+ if (outputCount + 1 + blockSize > outputSize) { -+ blockSize = outputSize - outputCount - 1; -+ } - memset(&outputBuffer[outputCount + 1], 0, blockSize * sizeof(*outputBuffer)); - outputCount += blockSize; - } -@@ -792,11 +795,17 @@ void decode_frame(alac_file *alac, - - isnotcompressed = readbits(alac, 1); /* whether the frame is compressed */ - -+ uint32_t read_output_samples = 0; -+ - if (hassize) - { - /* now read the number of samples, - * as a 32bit integer */ -- outputsamples = readbits(alac, 32); -+ read_output_samples = readbits(alac, 32); -+ outputsamples = read_output_samples; -+ if (outputsamples > alac->setinfo_max_samples_per_frame) { -+ outputsamples = alac->setinfo_max_samples_per_frame; -+ } - *outputsize = outputsamples * alac->bytespersample; - } - -@@ -971,11 +980,17 @@ void decode_frame(alac_file *alac, - - isnotcompressed = readbits(alac, 1); /* whether the frame is compressed */ - -+ uint32_t read_output_samples = 0; -+ - if (hassize) - { - /* now read the number of samples, - * as a 32bit integer */ -- outputsamples = readbits(alac, 32); -+ read_output_samples = readbits(alac, 32); -+ outputsamples = read_output_samples; -+ if (outputsamples > alac->setinfo_max_samples_per_frame) { -+ outputsamples = alac->setinfo_max_samples_per_frame; -+ } - *outputsize = outputsamples * alac->bytespersample; - } - Index: patches/patch-plugins_alac_alac_plugin_c =================================================================== RCS file: patches/patch-plugins_alac_alac_plugin_c diff -N patches/patch-plugins_alac_alac_plugin_c --- patches/patch-plugins_alac_alac_plugin_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ ---- plugins/alac/alac_plugin.c.orig Thu Jan 16 08:03:20 2014 -+++ plugins/alac/alac_plugin.c Thu Jan 16 08:03:49 2014 -@@ -31,7 +31,7 @@ - #include <stdlib.h> - #include <string.h> - #include <math.h> --#include "mp4ff.h" -+#include <mp4ff.h> - #include "demux.h" - #include "decomp.h" - #include "stream.h" Index: patches/patch-plugins_alac_demux_c =================================================================== RCS file: patches/patch-plugins_alac_demux_c diff -N patches/patch-plugins_alac_demux_c --- patches/patch-plugins_alac_demux_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,20 +0,0 @@ -commit 550488a10db0acfbe149a4910a9a7170da2a770a -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Mon Oct 10 10:45:24 2016 +0200 - -alac: fixed demuxer mdat/moov parser - ---- plugins/alac/demux.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins/alac/demux.c Fri Nov 4 11:01:26 2016 -@@ -530,9 +530,8 @@ static int read_chunk_moov(qtmovie_t *qtmovie, size_t - read_chunk_iods(qtmovie, sub_chunk_len); - break; - default: -- trace ("(moov) unknown chunk id: %c%c%c%c\n", -- SPLITFOURCC(sub_chunk_id)); -- return 0; -+ stream_skip(qtmovie->stream, sub_chunk_len-8); -+ break; - } - - size_remaining -= sub_chunk_len; Index: patches/patch-plugins_ao_Makefile_am =================================================================== RCS file: patches/patch-plugins_ao_Makefile_am diff -N patches/patch-plugins_ao_Makefile_am --- patches/patch-plugins_ao_Makefile_am 11 Mar 2022 18:20:08 -0000 1.4 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ ---- plugins/ao/Makefile.am.orig Sun Sep 4 09:02:09 2016 -+++ plugins/ao/Makefile.am Sun Sep 4 09:03:10 2016 -@@ -18,7 +18,7 @@ eng_psf/cpuintrf.h eng_psf/mamemem.h eng_psf/psx.h\ - eng_psf/peops/adsr.h eng_psf/peops/dma.h eng_psf/peops/externals.h eng_psf/peops/gauss_i.h eng_psf/peops/registers.h eng_psf/peops/regs.h eng_psf/peops/spu.h eng_psf/peops/stdafx.h\ - eng_psf/peops2/adsr.h eng_psf/peops2/dma.h eng_psf/peops2/externals.h eng_psf/peops2/gauss_i.h eng_psf/peops2/psemuxa.h eng_psf/peops2/registers.h eng_psf/peops2/regs.h eng_psf/peops2/reverb.h eng_psf/peops2/spu.h eng_psf/peops2/stdafx.h - --ddb_ao_la_LDFLAGS = -module -avoid-version $(ZLIB_LIBS) -+ddb_ao_la_LDFLAGS = -module -avoid-version $(ZLIB_LIBS) -lm - - ddb_ao_la_LIBADD = $(LDADD) - AM_CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) -Wall -DPATH_MAX=1024 -DHAS_PSXCPU=1 -I.. -Ieng_ssf -Ieng_qsf -Ieng_dsf -lm -fPIC Index: patches/patch-plugins_artwork_artwork_c =================================================================== RCS file: patches/patch-plugins_artwork_artwork_c diff -N patches/patch-plugins_artwork_artwork_c --- patches/patch-plugins_artwork_artwork_c 11 Mar 2022 18:20:08 -0000 1.5 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,60 +0,0 @@ -commit 045d8a7d0ff3b8647ac42170672b574e42f9dc7e -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Sun Jun 12 22:13:41 2016 +0200 - -artwork: fix dirname usage - ---- plugins/artwork/artwork.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins/artwork/artwork.c Wed Sep 7 16:40:41 2016 -@@ -1600,12 +1600,14 @@ path_more_recent (const char *fname, const time_t plac - } - - static int --recheck_missing_artwork (char *fname, const time_t placeholder_mtime) -+recheck_missing_artwork (const char *input_fname, const time_t placeholder_mtime) - { -+ int res = 0; -+ char *fname = strdup (input_fname); - /* Check if local files could have new associated artwork */ - if (deadbeef->is_local_file (fname)) { - char *vfs_fname = vfs_path (fname); -- char *real_fname = vfs_fname ? vfs_fname : fname; -+ const char *real_fname = vfs_fname ? vfs_fname : fname; - - /* Recheck artwork if file (track or VFS container) was modified since the last check */ - if (path_more_recent (real_fname, placeholder_mtime)) { -@@ -1613,12 +1615,13 @@ recheck_missing_artwork (char *fname, const time_t pla - } - - /* Recheck local artwork if the directory contents have changed */ -- if (artwork_enable_local && path_more_recent (dirname (real_fname), placeholder_mtime)) { -- return 1; -- } -+ char *dname = strdup (dirname (fname)); -+ res = artwork_enable_local && path_more_recent (dname, placeholder_mtime); -+ free (dname); - } - -- return 0; -+ free (fname); -+ return res; - } - - static int -@@ -1635,13 +1638,9 @@ process_query (const cover_query_t *query) - /* Flood control, don't retry missing artwork for an hour unless something changes */ - struct stat placeholder_stat; - if (!stat (cache_path, &placeholder_stat) && placeholder_stat.st_mtime + 60*60 > time (NULL)) { -- char *fname_copy = strdup (query->fname); -- if (fname_copy) { -- int recheck = recheck_missing_artwork (fname_copy, placeholder_stat.st_mtime); -- free (fname_copy); -- if (!recheck) { -- return 0; -- } -+ int recheck = recheck_missing_artwork (query->fname, placeholder_stat.st_mtime); -+ if (!recheck) { -+ return 0; - } - } - Index: patches/patch-plugins_artwork_artwork_h =================================================================== RCS file: patches/patch-plugins_artwork_artwork_h diff -N patches/patch-plugins_artwork_artwork_h --- patches/patch-plugins_artwork_artwork_h 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,17 +0,0 @@ -commit d08efb4688ce231edf74e507a051379cc307722e -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Mon May 30 22:16:29 2016 +0200 - -artwork: don't include deadbeef.h from API header by relative path - ---- plugins/artwork/artwork.h.orig Sun Jun 19 13:26:18 2016 -+++ plugins/artwork/artwork.h Thu Sep 8 09:29:09 2016 -@@ -24,8 +24,6 @@ - #ifndef __ARTWORK_H - #define __ARTWORK_H - --#include "../../deadbeef.h" -- - #define DDB_ARTWORK_VERSION 3 - - typedef void (*artwork_callback) (const char *fname, const char *artist, const char *album, void *user_data); Index: patches/patch-plugins_artwork_artwork_internal_c =================================================================== RCS file: patches/patch-plugins_artwork_artwork_internal_c diff -N patches/patch-plugins_artwork_artwork_internal_c --- patches/patch-plugins_artwork_artwork_internal_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,74 +0,0 @@ -commit 045d8a7d0ff3b8647ac42170672b574e42f9dc7e -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Sun Jun 12 22:13:41 2016 +0200 - -artwork: fix dirname usage - ---- plugins/artwork/artwork_internal.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins/artwork/artwork_internal.c Wed Sep 7 16:40:41 2016 -@@ -109,28 +109,31 @@ check_dir (const char *path) - return 0; - } - -- char* dir = strdup (path); -- if (!dir) { -- return 0; -- } -- -- int good_dir = check_dir (dirname (dir)); -+ char *dir = strdup (path); -+ char *dname = strdup (dirname (dir)); -+ int good_dir = check_dir (dname); - free (dir); -+ free (dname); - return good_dir && !mkdir (path, 0755); - } - --int ensure_dir (const char *path) --{ -- char dir[PATH_MAX]; -- strcpy (dir, path); -- dirname (dir); -- trace ("artwork: ensure folder %s exists\n", dir); -- return check_dir (dir); -+// check if directory of a supplied file exists, -+// attempt to create one if it doesn't, -+// return 1 on success. -+int -+ensure_dir (const char *path) { -+ char *dir = strdup (path); -+ char *dname = strdup (dirname (dir)); -+ trace ("artwork: ensure folder %s exists\n", dname); -+ int res = check_dir (dname); -+ free (dir); -+ free (dname); -+ return res; - } - - #define BUFFER_SIZE 4096 --int copy_file (const char *in, const char *out) --{ -+int -+copy_file (const char *in, const char *out) { - trace ("copying %s to %s\n", in, out); - - if (!ensure_dir (out)) { -@@ -153,16 +156,12 @@ int copy_file (const char *in, const char *out) - } - - int err = 0; -- int bytes_read; -+ int64_t bytes_read; - size_t file_bytes = 0; - do { - char buffer[BUFFER_SIZE]; - bytes_read = deadbeef->fread (buffer, 1, BUFFER_SIZE, request); -- if (bytes_read < 0 || errno) { -- trace ("artwork: failed to read file %s: %s\n", tmp_out, strerror (errno)); -- err = -1; -- } -- else if (bytes_read > 0 && fwrite (buffer, bytes_read, 1, fout) != 1) { -+ if (bytes_read > 0 && fwrite (buffer, bytes_read, 1, fout) != 1) { - trace ("artwork: failed to write file %s: %s\n", tmp_out, strerror (errno)); - err = -1; - } Index: patches/patch-plugins_c =================================================================== RCS file: /home/cvs/ports/audio/deadbeef/patches/patch-plugins_c,v retrieving revision 1.8 diff -u -p -r1.8 patch-plugins_c --- patches/patch-plugins_c 11 Mar 2022 18:20:08 -0000 1.8 +++ patches/patch-plugins_c 4 Oct 2022 07:32:46 -0000 @@ -1,61 +1,12 @@ ---- plugins.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins.c Thu Sep 8 08:25:07 2016 -@@ -750,7 +750,7 @@ load_gui_plugin (const char **plugdirs) { - #endif - - char conf_gui_plug[100]; -- conf_get_str ("gui_plugin", "GTK2", conf_gui_plug, sizeof (conf_gui_plug)); -+ conf_get_str ("gui_plugin", "GTK3", conf_gui_plug, sizeof (conf_gui_plug)); - char name[100]; - - // try to load selected plugin -@@ -917,7 +917,6 @@ plug_load_all (void) { - #ifndef ANDROID - char *xdg_local_home = getenv ("XDG_LOCAL_HOME"); - char xdg_plugin_dir[1024]; -- char xdg_plugin_dir_explicit_arch[1024]; - - if (xdg_local_home) { - strncpy (xdg_plugin_dir, xdg_local_home, sizeof (xdg_plugin_dir)); -@@ -938,16 +937,11 @@ plug_load_all (void) { - trace ("warning: XDG_LOCAL_HOME value is too long: %s. Ignoring.", xdg_local_home); - xdg_plugin_dir[0] = 0; - } -- written = snprintf (xdg_plugin_dir_explicit_arch, sizeof (xdg_plugin_dir_explicit_arch), "%s/.local/lib%d/deadbeef", homedir, (int)(sizeof (long) * 8)); -- if (written > sizeof (xdg_plugin_dir_explicit_arch)) { -- trace ("warning: XDG_LOCAL_HOME value is too long: %s. Ignoring.", xdg_local_home); -- xdg_plugin_dir_explicit_arch[0] = 0; -- } - } - } - - // load from HOME 1st, than replace from installdir if needed -- const char *plugins_dirs[] = { xdg_plugin_dir_explicit_arch, xdg_plugin_dir, dirname, NULL }; -+ const char *plugins_dirs[] = { xdg_plugin_dir, dirname, NULL }; - - // If xdg_plugin_dir and dirname is the same, we should avoid each plugin - // to be load twice. -@@ -1288,8 +1282,10 @@ plug_select_output (void) { - return 0; - #else +Index: plugins.c +--- plugins.c.orig ++++ plugins.c +@@ -1444,6 +1444,8 @@ _select_output_plugin (void) { char outplugname[100]; --#ifdef HAVE_COCOAUI -+#if defined(HAVE_COCOAUI) - conf_get_str ("output_plugin", "CoreAudio", outplugname, sizeof (outplugname)); -+#elif defined(HAVE_SNDIO) -+ conf_get_str ("output_plugin", "sndio output plugin", outplugname, sizeof (outplugname)); - #else - conf_get_str ("output_plugin", "ALSA output plugin", outplugname, sizeof (outplugname)); - #endif -@@ -1334,8 +1330,10 @@ plug_reinit_sound (void) { - - if (plug_select_output () < 0) { - char outplugname[100]; --#ifdef HAVE_COCOAUI -+#if defined(HAVE_COCOAUI) - conf_get_str ("output_plugin", "core audio output plugin", outplugname, sizeof (outplugname)); + #ifdef OSX_APPBUNDLE + conf_get_str ("output_plugin", "coreaudio", outplugname, sizeof (outplugname)); +#elif defined(HAVE_SNDIO) -+ conf_get_str ("output_plugin", "sndio output plugin", outplugname, sizeof (outplugname)); ++ conf_get_str ("output_plugin", "sndio", outplugname, sizeof (outplugname)); #else - conf_get_str ("output_plugin", "ALSA output plugin", outplugname, sizeof (outplugname)); + conf_get_str ("output_plugin", "alsa", outplugname, sizeof (outplugname)); #endif Index: patches/patch-plugins_dumb_Makefile_am =================================================================== RCS file: patches/patch-plugins_dumb_Makefile_am diff -N patches/patch-plugins_dumb_Makefile_am --- patches/patch-plugins_dumb_Makefile_am 11 Mar 2022 18:20:08 -0000 1.4 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,30 +0,0 @@ ---- plugins/dumb/Makefile.am.orig Sun Jun 19 13:26:18 2016 -+++ plugins/dumb/Makefile.am Thu Sep 8 08:09:20 2016 -@@ -4,15 +4,13 @@ EXTRA_DIST = $(dumbpath)/readme.txt $(dumbpath)/Change - if HAVE_DUMB - pkglib_LTLIBRARIES = ddb_dumb.la - --ddb_dumb_la_CFLAGS = $(CFLAGS) -I$(dumbpath)/include -std=gnu99 --ddb_dumb_la_LDFLAGS = -module -avoid-version -lm - if HAVE_SSE2 --noinst_LIBRARIES = libdumbsse2.a --libdumbsse2_a_SOURCES = dumb-kode54/src/helpers/resampler_sse2.c --libdumbsse2_a_CFLAGS = $(CFLAGS) -I$(dumbpath)/include -std=gnu99 -msse2 -fPIC --ddb_dumb_la_LIBADD = libdumbsse2.a -+ddb_dumb_la_CFLAGS = $(CFLAGS) -I$(dumbpath)/include -std=gnu99 -msse2 -+else -+ddb_dumb_la_CFLAGS = $(CFLAGS) -I$(dumbpath)/include -std=gnu99 - endif - -+ddb_dumb_la_LDFLAGS = -module -avoid-version -lm - - ddb_dumb_la_SOURCES =\ - dumb-kode54/src/it/loadmod2.c\ -@@ -115,4 +113,7 @@ dumb-kode54/src/helpers/resample.inc\ - dumb-kode54/src/helpers/resamp2.inc\ - dumb-kode54/src/helpers/resamp3.inc\ - cdumb.c -+if HAVE_SSE2 -+ddb_dumb_la_SOURCES += dumb-kode54/src/helpers/resampler_sse2.c -+endif - endif Index: patches/patch-plugins_ffmpeg_ffmpeg_c =================================================================== RCS file: patches/patch-plugins_ffmpeg_ffmpeg_c diff -N patches/patch-plugins_ffmpeg_ffmpeg_c --- patches/patch-plugins_ffmpeg_ffmpeg_c 11 Mar 2022 18:20:08 -0000 1.6 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,30 +0,0 @@ -commit 67f6568151248965dd89ef3304464a50e9982a20 -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Sun Apr 30 17:08:03 2017 - -ffmpeg: increase the supported file extension limit to 1024 - -commit f6646210f643e4fb75f352cfb021dcfc0ed0b628 -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Sun Apr 30 08:37:07 2017 - -ffmpeg: buffer overflow fix when there are >= 256 extensions supported -by ffmpeg - -Index: plugins/ffmpeg/ffmpeg.c ---- plugins/ffmpeg/ffmpeg.c.orig -+++ plugins/ffmpeg/ffmpeg.c -@@ -76,11 +76,11 @@ static DB_functions_t *deadbeef; - "m2ts,mts,mxf,rm,ra,roq,sox," \ - "spdif,swf,rcv,voc,w64,wav,wv" - --#define EXT_MAX 256 -+#define EXT_MAX 1024 - - #define FFMPEG_MAX_ANALYZE_DURATION 500000 - --static char * exts[EXT_MAX] = {NULL}; -+static char * exts[EXT_MAX+1] = {NULL}; - - enum { - FT_ALAC = 0, Index: patches/patch-plugins_flac_Makefile_am =================================================================== RCS file: patches/patch-plugins_flac_Makefile_am diff -N patches/patch-plugins_flac_Makefile_am --- patches/patch-plugins_flac_Makefile_am 11 Mar 2022 18:20:08 -0000 1.4 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ ---- plugins/flac/Makefile.am.orig Sun Sep 4 09:23:20 2016 -+++ plugins/flac/Makefile.am Sun Sep 4 09:24:00 2016 -@@ -1,13 +1,21 @@ - if HAVE_FLAC - pkglib_LTLIBRARIES = flac.la --flac_la_SOURCES = flac.c -+flac_la_SOURCES = flac.c\ -+ ../liboggedit/oggedit_art.c\ -+ ../liboggedit/oggedit_flac.c\ -+ ../liboggedit/oggedit_internal.c\ -+ ../liboggedit/oggedit_opus.c\ -+ ../liboggedit/oggedit_utils.c\ -+ ../liboggedit/oggedit_vorbis.c\ -+ ../liboggedit/oggedit.h\ -+ ../liboggedit/oggedit_internal.h -+ - flac_la_LDFLAGS = -module -avoid-version -export-symbols-regex flac_load - - if HAVE_OGG - oggedit_def = -DUSE_OGGEDIT=1 --oggedit_lib = ../liboggedit/liboggedit.a $(OGG_LIBS) - endif - --flac_la_LIBADD = $(LDADD) $(FLAC_LIBS) $(oggedit_lib) -+flac_la_LIBADD = $(LDADD) $(FLAC_LIBS) $(OGG_LIBS) - AM_CFLAGS = $(CFLAGS) $(FLAC_CFLAGS) $(oggedit_def) -std=c99 - endif Index: patches/patch-plugins_flac_flac_c =================================================================== RCS file: patches/patch-plugins_flac_flac_c diff -N patches/patch-plugins_flac_flac_c --- patches/patch-plugins_flac_flac_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,43 +0,0 @@ -commit aa34db82ba64cc5f8d29b5109ddefd2811ca23e5 -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Mon Aug 8 18:59:29 2016 +0200 - -flac: change embedded cue load order, to reduce a chance of loading -bad-formed native flac cuesheets - ---- plugins/flac/flac.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins/flac/flac.c Wed Sep 7 16:40:48 2016 -@@ -932,16 +932,6 @@ cflac_insert (ddb_playlist_t *plt, DB_playItem_t *afte - - // try embedded cue - deadbeef->pl_lock (); -- if (info.flac_cue_sheet) { -- DB_playItem_t *cue = cflac_insert_with_embedded_cue (plt, after, it, &info.flac_cue_sheet->data.cue_sheet, info.totalsamples, info.info.fmt.samplerate); -- if (cue) { -- cflac_free_temp (_info); -- deadbeef->pl_item_unref (it); -- deadbeef->pl_item_unref (cue); -- deadbeef->pl_unlock (); -- return cue; -- } -- } - const char *cuesheet = deadbeef->pl_find_meta (it, "cuesheet"); - if (cuesheet) { - DB_playItem_t *last = deadbeef->plt_insert_cue_from_buffer (plt, after, it, (const uint8_t *)cuesheet, strlen (cuesheet), info.totalsamples, info.info.fmt.samplerate); -@@ -951,6 +941,16 @@ cflac_insert (ddb_playlist_t *plt, DB_playItem_t *afte - deadbeef->pl_item_unref (last); - deadbeef->pl_unlock (); - return last; -+ } -+ } -+ if (info.flac_cue_sheet) { -+ DB_playItem_t *cue = cflac_insert_with_embedded_cue (plt, after, it, &info.flac_cue_sheet->data.cue_sheet, info.totalsamples, info.info.fmt.samplerate); -+ if (cue) { -+ cflac_free_temp (_info); -+ deadbeef->pl_item_unref (it); -+ deadbeef->pl_item_unref (cue); -+ deadbeef->pl_unlock (); -+ return cue; - } - } - deadbeef->pl_unlock (); Index: patches/patch-plugins_gtkui_coverart_c =================================================================== RCS file: patches/patch-plugins_gtkui_coverart_c diff -N patches/patch-plugins_gtkui_coverart_c --- patches/patch-plugins_gtkui_coverart_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -commit d08efb4688ce231edf74e507a051379cc307722e -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Mon May 30 22:16:29 2016 +0200 - -artwork: don't include deadbeef.h from API header by relative path - ---- plugins/gtkui/coverart.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins/gtkui/coverart.c Thu Sep 8 09:29:09 2016 -@@ -30,6 +30,7 @@ - #ifdef __linux__ - #include <sys/prctl.h> - #endif -+#include "../../deadbeef.h" - #include "../artwork/artwork.h" - #include "gtkui.h" - Index: patches/patch-plugins_gtkui_prefwin_c =================================================================== RCS file: patches/patch-plugins_gtkui_prefwin_c diff -N patches/patch-plugins_gtkui_prefwin_c --- patches/patch-plugins_gtkui_prefwin_c 11 Mar 2022 18:20:08 -0000 1.7 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,20 +0,0 @@ ---- plugins/gtkui/prefwin.c.orig Sun Sep 4 09:31:09 2016 -+++ plugins/gtkui/prefwin.c Sun Sep 4 09:32:42 2016 -@@ -155,7 +155,7 @@ gtkui_run_preferences_dlg (void) { - // output plugin selection - combobox = GTK_COMBO_BOX (lookup_widget (w, "pref_output_plugin")); - -- const char *outplugname = deadbeef->conf_get_str_fast ("output_plugin", "ALSA output plugin"); -+ const char *outplugname = deadbeef->conf_get_str_fast ("output_plugin", "sndio output plugin"); - DB_output_t **out_plugs = deadbeef->plug_get_output_list (); - for (int i = 0; out_plugs[i]; i++) { - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combobox), out_plugs[i]->plugin.name); -@@ -420,7 +420,7 @@ on_pref_output_plugin_changed (GtkComboBox - DB_output_t *new = NULL; - - deadbeef->conf_lock (); -- const char *outplugname = deadbeef->conf_get_str_fast ("output_plugin", "ALSA output plugin"); -+ const char *outplugname = deadbeef->conf_get_str_fast ("output_plugin", "sndio output plugin"); - for (int i = 0; out_plugs[i]; i++) { - if (!strcmp (out_plugs[i]->plugin.name, outplugname)) { - prev = out_plugs[i]; Index: patches/patch-plugins_mp3_mp3_h =================================================================== RCS file: /home/cvs/ports/audio/deadbeef/patches/patch-plugins_mp3_mp3_h,v retrieving revision 1.2 diff -u -p -r1.2 patch-plugins_mp3_mp3_h --- patches/patch-plugins_mp3_mp3_h 11 Mar 2022 18:20:08 -0000 1.2 +++ patches/patch-plugins_mp3_mp3_h 4 Oct 2022 07:32:46 -0000 @@ -1,32 +1,28 @@ ---- plugins/mp3/mp3.h.orig Sun Jun 19 13:26:18 2016 -+++ plugins/mp3/mp3.h Wed Sep 7 12:56:15 2016 -@@ -110,23 +110,16 @@ typedef struct { - DB_fileinfo_t info; - // input buffer, for MPEG data - buffer_t buffer; +Index: plugins/mp3/mp3.h +--- plugins/mp3/mp3.h.orig ++++ plugins/mp3/mp3.h +@@ -69,24 +69,18 @@ typedef struct { + + char input[READBUFFER]; // input buffer, for MPEG data + - union { #ifdef USE_LIBMAD - struct { -- struct mad_stream mad_stream; -- struct mad_frame mad_frame; -- struct mad_synth mad_synth; + struct mad_stream mad_stream; + struct mad_frame mad_frame; + struct mad_synth mad_synth; + long input_remaining_bytes; - }; -+ struct mad_stream mad_stream; -+ struct mad_frame mad_frame; -+ struct mad_synth mad_synth; #endif #ifdef USE_LIBMPG123 - struct { -- mpg123_handle *mpg123_handle; -- int mpg123_status; -- unsigned char *mpg123_audio; + mpg123_handle *mpg123_handle; + int mpg123_status; + unsigned char *mpg123_audio; + int total_decoded_samples; - }; -+ mpg123_handle *mpg123_handle; -+ int mpg123_status; -+ unsigned char *mpg123_audio; #endif - }; -- - struct mp3_decoder_api_s *dec; - } mp3_info_t; + int want_16bit; + int raw_signal; Index: patches/patch-plugins_notify_notify_c =================================================================== RCS file: patches/patch-plugins_notify_notify_c diff -N patches/patch-plugins_notify_notify_c --- patches/patch-plugins_notify_notify_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -commit ca7e395956ebc921aba6700dc2eac9e114f5fefa -Author: Alexey Yakovenko <waker...@gmail.com> -Date: Sat Jul 30 14:41:10 2016 +0200 - -notify: corrected tf flags for multiline non-dynamic output - ---- plugins/notify/notify.c.orig Sun Jun 19 13:26:18 2016 -+++ plugins/notify/notify.c Tue Sep 13 10:33:38 2016 -@@ -178,6 +178,7 @@ static void show_notification (DB_playItem_t *track) { - ddb_tf_context_t ctx = { - ._size = sizeof (ddb_tf_context_t), - .it = track, -+ .flags = DDB_TF_CONTEXT_MULTILINE | DDB_TF_CONTEXT_NO_DYNAMIC, - }; - - deadbeef->tf_eval (&ctx, tf_title, title, sizeof (title)); Index: patches/patch-plugins_vorbis_Makefile_am =================================================================== RCS file: patches/patch-plugins_vorbis_Makefile_am diff -N patches/patch-plugins_vorbis_Makefile_am --- patches/patch-plugins_vorbis_Makefile_am 11 Mar 2022 18:20:08 -0000 1.5 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,22 +0,0 @@ ---- plugins/vorbis/Makefile.am.orig Sun Sep 4 09:36:35 2016 -+++ plugins/vorbis/Makefile.am Sun Sep 4 09:37:03 2016 -@@ -1,8 +1,17 @@ - if HAVE_VORBIS - pkglib_LTLIBRARIES = vorbis.la --vorbis_la_SOURCES = vorbis.c -+vorbis_la_SOURCES = vorbis.c\ -+ ../liboggedit/oggedit_art.c\ -+ ../liboggedit/oggedit_flac.c\ -+ ../liboggedit/oggedit_internal.c\ -+ ../liboggedit/oggedit_opus.c\ -+ ../liboggedit/oggedit_utils.c\ -+ ../liboggedit/oggedit_vorbis.c\ -+ ../liboggedit/oggedit.h\ -+ ../liboggedit/oggedit_internal.h -+ - vorbis_la_LDFLAGS = -module -avoid-version -lm -export-symbols-regex vorbis_load - --vorbis_la_LIBADD = $(LDADD) $(VORBIS_LIBS) ../liboggedit/liboggedit.a -+vorbis_la_LIBADD = $(LDADD) $(VORBIS_LIBS) - AM_CFLAGS = $(CFLAGS) $(VORBIS_CFLAGS) -std=c99 - endif Index: patches/patch-threading_pthread_c =================================================================== RCS file: patches/patch-threading_pthread_c diff -N patches/patch-threading_pthread_c --- patches/patch-threading_pthread_c 11 Mar 2022 18:20:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ ---- threading_pthread.c.orig Tue Sep 23 15:07:41 2014 -+++ threading_pthread.c Tue Sep 23 15:09:45 2014 -@@ -54,7 +54,7 @@ thread_start (void (*fn)(void *ctx), void *ctx) { - fprintf (stderr, "pthread_attr_destroy failed: %s\n", strerror (s)); - return 0; - } -- return tid; -+ return (intptr_t)tid; - } - - intptr_t Index: pkg/PLIST =================================================================== RCS file: /home/cvs/ports/audio/deadbeef/pkg/PLIST,v retrieving revision 1.12 diff -u -p -r1.12 PLIST --- pkg/PLIST 11 Mar 2022 18:20:08 -0000 1.12 +++ pkg/PLIST 4 Oct 2022 07:53:38 -0000 @@ -1,25 +1,32 @@ @bin bin/deadbeef include/deadbeef/ include/deadbeef/artwork.h +include/deadbeef/converter.h include/deadbeef/deadbeef.h include/deadbeef/gtkui_api.h lib/deadbeef/ -lib/deadbeef/aac.so -lib/deadbeef/alac.so -lib/deadbeef/artwork.so -lib/deadbeef/cdda.so -lib/deadbeef/converter.so -lib/deadbeef/converter_gtk3.so +@so lib/deadbeef/aac.so +@so lib/deadbeef/alac.so +@so lib/deadbeef/artwork.so +@so lib/deadbeef/cdda.so +@so lib/deadbeef/converter.so +@so lib/deadbeef/converter_gtk3.so lib/deadbeef/convpresets/ -lib/deadbeef/convpresets/AAC_(Nero_FAAC).txt +lib/deadbeef/convpresets/AAC_VBR_192Kbps_(Nero_FAAC).txt +lib/deadbeef/convpresets/AAC_VBR_256Kbps_(Nero_FAAC).txt +lib/deadbeef/convpresets/AAC_VBR_320Kbps_(Nero_FAAC).txt lib/deadbeef/convpresets/ALAC.txt lib/deadbeef/convpresets/FLAC_(compression_level_5).txt +lib/deadbeef/convpresets/File_Copy.txt +lib/deadbeef/convpresets/File_Move.txt lib/deadbeef/convpresets/MP3_CBR_320_Kbps_(Lame).txt lib/deadbeef/convpresets/MP3_VBR_192Kbps_(Lame).txt lib/deadbeef/convpresets/MS_RIFF_WAV.txt lib/deadbeef/convpresets/MusePack.txt lib/deadbeef/convpresets/Ogg_FLAC.txt -lib/deadbeef/convpresets/Ogg_Vorbis_(-q_5).txt +lib/deadbeef/convpresets/Ogg_VBR_192Kbps.txt +lib/deadbeef/convpresets/Ogg_VBR_256Kbps.txt +lib/deadbeef/convpresets/Ogg_VBR_320Kbps.txt lib/deadbeef/convpresets/Opus.txt lib/deadbeef/convpresets/TTA.txt lib/deadbeef/convpresets/WavPack.txt @@ -120,34 +127,37 @@ lib/deadbeef/data68/Replay/utopia.bin lib/deadbeef/data68/Replay/vikingchild.bin lib/deadbeef/data68/Replay/xbiossound.bin lib/deadbeef/data68/Replay/zonewarrior.bin -lib/deadbeef/dca.so -lib/deadbeef/ddb_ao.so -lib/deadbeef/ddb_dumb.so -lib/deadbeef/ddb_gui_GTK3.so -lib/deadbeef/ddb_shn.so -lib/deadbeef/ffap.so -lib/deadbeef/ffmpeg.so -lib/deadbeef/flac.so -lib/deadbeef/hotkeys.so -lib/deadbeef/in_sc68.so -lib/deadbeef/lastfm.so -lib/deadbeef/m3u.so -lib/deadbeef/mms.so -lib/deadbeef/mp3.so -lib/deadbeef/musepack.so -lib/deadbeef/notify.so -lib/deadbeef/nullout.so -lib/deadbeef/pltbrowser_gtk3.so -lib/deadbeef/shellexec.so -lib/deadbeef/shellexecui_gtk3.so -lib/deadbeef/sndfile.so -lib/deadbeef/sndio.so -lib/deadbeef/tta.so -lib/deadbeef/vfs_curl.so -lib/deadbeef/vfs_zip.so -lib/deadbeef/vorbis.so -lib/deadbeef/vtx.so -lib/deadbeef/wavpack.so +@so lib/deadbeef/dca.so +@so lib/deadbeef/ddb_dumb.so +@so lib/deadbeef/ddb_gui_GTK3.so +@so lib/deadbeef/ddb_shn.so +@so lib/deadbeef/ddb_soundtouch.so +@so lib/deadbeef/ffap.so +@so lib/deadbeef/ffmpeg.so +@so lib/deadbeef/flac.so +@so lib/deadbeef/hotkeys.so +@so lib/deadbeef/in_sc68.so +@so lib/deadbeef/lastfm.so +@so lib/deadbeef/m3u.so +@so lib/deadbeef/mms.so +@so lib/deadbeef/mp3.so +@so lib/deadbeef/musepack.so +@so lib/deadbeef/notify.so +@so lib/deadbeef/nullout.so +@so lib/deadbeef/opus.so +@so lib/deadbeef/pltbrowser_gtk3.so +@so lib/deadbeef/psf.so +@so lib/deadbeef/pulse.so +@so lib/deadbeef/rg_scanner.so +@so lib/deadbeef/shellexec.so +@so lib/deadbeef/shellexecui_gtk3.so +@so lib/deadbeef/sndfile.so +@so lib/deadbeef/tta.so +@so lib/deadbeef/vfs_curl.so +@so lib/deadbeef/vfs_zip.so +@so lib/deadbeef/vorbis.so +@so lib/deadbeef/vtx.so +@so lib/deadbeef/wavpack.so share/applications/deadbeef.desktop share/deadbeef/ share/deadbeef/pixmaps/ @@ -161,8 +171,6 @@ share/doc/deadbeef/COPYING.LGPLv2.1 share/doc/deadbeef/ChangeLog share/doc/deadbeef/README share/doc/deadbeef/about.txt -share/doc/deadbeef/help.pt_BR.txt -share/doc/deadbeef/help.ru.txt share/doc/deadbeef/help.txt share/doc/deadbeef/translators.txt share/icons/hicolor/128x128/apps/deadbeef.png @@ -202,15 +210,16 @@ share/locale/it/LC_MESSAGES/deadbeef.mo share/locale/ja/LC_MESSAGES/deadbeef.mo share/locale/kk/LC_MESSAGES/deadbeef.mo share/locale/km/LC_MESSAGES/deadbeef.mo +share/locale/ko/LC_MESSAGES/deadbeef.mo share/locale/lg/LC_MESSAGES/deadbeef.mo share/locale/lt/LC_MESSAGES/deadbeef.mo share/locale/lv/LC_MESSAGES/deadbeef.mo +share/locale/nb/LC_MESSAGES/deadbeef.mo share/locale/nl/LC_MESSAGES/deadbeef.mo share/locale/pl/LC_MESSAGES/deadbeef.mo share/locale/pt/LC_MESSAGES/deadbeef.mo share/locale/pt_BR/LC_MESSAGES/deadbeef.mo share/locale/ro/LC_MESSAGES/deadbeef.mo -share/locale/ru/LC_MESSAGES/deadbeef.mo share/locale/si_LK/ share/locale/si_LK/LC_MESSAGES/ share/locale/si_LK/LC_MESSAGES/deadbeef.mo