commit:     b36c9fee6f414879ba5b40e5f9badc4d47590e65
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  4 10:16:36 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Mon Sep  4 10:17:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b36c9fee

media-sound/deadbeef: add 1.9.6_beta1

Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 media-sound/deadbeef/Manifest                      |   1 +
 media-sound/deadbeef/deadbeef-1.9.6_beta1.ebuild   | 202 +++++++++++++++++++++
 .../files/deadbeef-1.9.6-drop-Werror.patch         |  35 ++++
 .../deadbeef-1.9.6-fix-desktop-launcher.patch      |  32 ++++
 .../files/deadbeef-1.9.6-update-gettext.patch      |  17 ++
 5 files changed, 287 insertions(+)

diff --git a/media-sound/deadbeef/Manifest b/media-sound/deadbeef/Manifest
index 46cd8056168f..f5c033632241 100644
--- a/media-sound/deadbeef/Manifest
+++ b/media-sound/deadbeef/Manifest
@@ -1 +1,2 @@
 DIST deadbeef-1.9.5.tar.bz2 5204015 BLAKE2B 
45b9023807a5652c38f6cafd5ea0fca87e2872db264538f5c9d9ee4815281fe3f4e08eee5d43a083a67b3a9f646de24a90147d76f15622710d8f4adbdabe0c8d
 SHA512 
c7a15f47fd8081a363e5cba732aa4ff4b1c311408728fbc5f7f47cf349bc112274a1d9fe0df8a58f09abf8f7656d914fb1baafa38fdf4dcb38fae7e1f70f682c
+DIST deadbeef-1.9.6_beta1.tar.bz2 5171353 BLAKE2B 
71dcecb1c4e0621532c1d36c4e0f82538e36bfce27bacf746866b851accc6edead5adccbeecc2ba43171c8e56437c5703e43eb6c9d85edaf0e76206909326041
 SHA512 
2c324ae14513705cd50d0f8a44cea31abb98f8814e8c826e0da881e5fc508c8ac2c22fe2837d9fadcd943d7b5b0a4f6b80873db10903516cdacf958896a9070e

diff --git a/media-sound/deadbeef/deadbeef-1.9.6_beta1.ebuild 
b/media-sound/deadbeef/deadbeef-1.9.6_beta1.ebuild
new file mode 100644
index 000000000000..1b203d579230
--- /dev/null
+++ b/media-sound/deadbeef/deadbeef-1.9.6_beta1.ebuild
@@ -0,0 +1,202 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools xdg flag-o-matic toolchain-funcs plocale
+
+MY_PV=${PV/_/-}
+DL_PV=$(ver_cut 1-2)
+
+DESCRIPTION="DeaDBeeF is a modular audio player similar to foobar2000"
+HOMEPAGE="https://deadbeef.sourceforge.io/";
+SRC_URI="https://sourceforge.net/projects/${PN}/files/travis/linux/${DL_PV}/deadbeef-${MY_PV}.tar.bz2/download
+       -> ${P}.tar.bz2"
+S="${WORKDIR}"/${PN}-${MY_PV}
+
+LICENSE="
+       GPL-2
+       LGPL-2.1
+       wavpack? ( BSD )
+"
+SLOT="0"
+IUSE="aac alsa cdda converter cover dts ffmpeg flac +hotkeys lastfm libretro 
libsamplerate mp3 musepack nls notify +nullout opus oss pulseaudio pipewire 
sc68 shellexec +supereq vorbis wavpack"
+
+REQUIRED_USE="
+       || ( alsa oss pulseaudio pipewire nullout )
+"
+
+DEPEND="
+       >=app-accessibility/at-spi2-core-2.46.0
+       dev-libs/glib:2
+       dev-libs/jansson:=
+       dev-libs/libdispatch
+       net-misc/curl
+       x11-libs/cairo
+       x11-libs/gdk-pixbuf:2
+       x11-libs/gtk+:3
+       x11-libs/libX11
+       x11-libs/pango
+       aac? ( media-libs/faad2 )
+       alsa? ( media-libs/alsa-lib )
+       cdda? (
+               dev-libs/libcdio:=
+               media-libs/libcddb
+               media-sound/cdparanoia
+       )
+       cover? ( media-libs/imlib2[jpeg,png] )
+       dts? ( media-libs/libdca )
+       ffmpeg? ( media-video/ffmpeg:= )
+       flac? (
+               media-libs/flac:=
+               media-libs/libogg
+       )
+       libsamplerate? ( media-libs/libsamplerate )
+       mp3? ( media-sound/mpg123 )
+       musepack? ( media-sound/musepack-tools )
+       nls? ( virtual/libintl )
+       notify? ( sys-apps/dbus )
+       opus? ( media-libs/opusfile )
+       pulseaudio? ( media-libs/libpulse )
+       pipewire? ( media-video/pipewire:= )
+       vorbis? ( media-libs/libvorbis )
+       wavpack? ( media-sound/wavpack )
+"
+
+RDEPEND="${DEPEND}"
+BDEPEND="
+       dev-util/intltool
+       sys-devel/clang
+       >=sys-devel/gettext-0.21
+       sys-devel/llvm
+       virtual/pkgconfig
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.9.6-drop-Werror.patch
+       "${FILESDIR}"/${PN}-1.9.6-update-gettext.patch
+       "${FILESDIR}"/${PN}-1.9.6-fix-desktop-launcher.patch
+)
+
+src_prepare() {
+       default
+
+       drop_from_linguas() {
+               sed "/${1}/d" -i "${S}/po/LINGUAS" || die
+       }
+
+       drop_and_stub() {
+               einfo drop_and_stub "${1}"
+               rm -r "${1}" || die
+               mkdir "${1}" || die
+               cat > "${1}/Makefile.in" <<-EOF || die
+                       all: nothing
+                       install: nothing
+                       nothing:
+               EOF
+       }
+
+       plocale_for_each_disabled_locale drop_from_linguas || die
+
+       eautopoint --force
+       eautoreconf
+
+       # Get rid of bundled gettext. (Avoid build failures with musl)
+       drop_and_stub "${S}/intl"
+
+       # Plugins that are undesired for whatever reason, candidates for 
unbundling and such.
+       for i in adplug alac dumb ffap mms gme mono2stereo psf shn sid 
soundtouch wma; do
+               drop_and_stub "${S}/plugins/${i}"
+       done
+
+       rm -r "${S}/plugins/rg_scanner/ebur128" || die
+}
+
+src_configure () {
+       if ! tc-is-clang; then
+               AR=llvm-ar
+               CC=${CHOST}-clang
+               CXX=${CHOST}-clang++
+               NM=llvm-nm
+               RANLIB=llvm-ranlib
+
+               strip-unsupported-flags
+       fi
+
+       export HOST_CC="$(tc-getBUILD_CC)"
+       export HOST_CXX="$(tc-getBUILD_CXX)"
+       tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+       local myconf=(
+               "--disable-staticlink"
+               "--disable-portable"
+               "--disable-rpath"
+
+               "--disable-libmad"
+               "--disable-gtk2"
+               "--disable-adplug"
+               "--disable-coreaudio"
+               "--disable-dumb"
+               "--disable-alac"
+               "--disable-ffap"
+               "--disable-gme"
+               "--disable-mms"
+               "--disable-mono2stereo"
+               "--disable-psf"
+               "--disable-rgscanner"
+               "--disable-shn"
+               "--disable-sid"
+               "--disable-sndfile"
+               "--disable-soundtouch"
+               "--disable-tta"
+               "--disable-vfs-zip"
+               "--disable-vtx"
+               "--disable-wildmidi"
+               "--disable-wma"
+
+               "$(use_enable alsa)"
+               "$(use_enable oss)"
+               "$(use_enable pulseaudio pulse)"
+               "$(use_enable mp3)"
+               "$(use_enable mp3 libmpg123)"
+               "$(use_enable nls)"
+               "$(use_enable vorbis)"
+               "$(use_enable flac)"
+               "$(use_enable supereq)"
+               "$(use_enable cdda)"
+               "$(use_enable cdda cdda-paranoia)"
+               "$(use_enable aac)"
+               "$(use_enable cover artwork)"
+               "$(use_enable cover artwork-network)"
+               "$(use_enable dts dca)"
+               "$(use_enable ffmpeg)"
+               "$(use_enable converter)"
+               "$(use_enable musepack)"
+               "$(use_enable notify)"
+               "$(use_enable nullout)"
+               "$(use_enable opus)"
+               "$(use_enable pulseaudio pulse)"
+               "$(use_enable pipewire)"
+               "$(use_enable sc68)"
+               "$(use_enable shellexec)"
+               "$(use_enable shellexec shellexecui)"
+               "$(use_enable lastfm lfm)"
+               "$(use_enable libretro)"
+               "$(use_enable libsamplerate src)"
+               "$(use_enable wavpack)"
+
+               "--enable-gtk3"
+               "--enable-vfs-curl"
+               "--enable-shared"
+               "--enable-m3u"
+               "--enable-pltbrowser"
+       )
+
+       econf "${myconf[@]}"
+}
+
+src_install() {
+       default
+
+       find "${ED}" -name '*.la' -delete || die
+}

diff --git a/media-sound/deadbeef/files/deadbeef-1.9.6-drop-Werror.patch 
b/media-sound/deadbeef/files/deadbeef-1.9.6-drop-Werror.patch
new file mode 100644
index 000000000000..f31e079d942b
--- /dev/null
+++ b/media-sound/deadbeef/files/deadbeef-1.9.6-drop-Werror.patch
@@ -0,0 +1,35 @@
+Remove -Werror 
+
+See also: 
https://devmanual.gentoo.org/ebuild-writing/common-mistakes/index.html#-werror-compiler-flag-not-removed
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -337,7 +337,7 @@ AS_IF([test "${have_iconv}" = "yes"], [
+     AC_DEFINE(HAVE_LIBICONV,1,[Use libiconv instead of glibc iconv])
+ ])
+ 
+-AX_CHECK_COMPILER_FLAGS(-msse2, HAVE_SSE2=1, [], -Werror)
++AX_CHECK_COMPILER_FLAGS(-msse2, HAVE_SSE2=1, [])
+ AS_IF([test "${HAVE_SSE2}"], [
+     AC_DEFINE(HAVE_SSE2,1,[Support SSE2 instructions])
+ ])
+--- a/plugins/gtkui/Makefile.am
++++ b/plugins/gtkui/Makefile.am
+@@ -94,7 +94,7 @@
+ 
+ ddb_gui_GTK2_la_LIBADD = $(LDADD) $(GTK2_DEPS_LIBS) $(SM_LIBADD) 
../libparser/libparser.la ../../shared/libtrkpropertiesutil.la 
../../shared/libeqpreset.la ../../shared/libdeletefromdisk.la 
../../shared/libtftintutil.la ../../shared/analyzer/libanalyzer.la 
../../shared/scope/libscope.la $(JANSSON_LIBS) $(DISPATCH_LIBS)
+ 
+-ddb_gui_GTK2_la_CFLAGS = -std=c99 -Werror -DGLIB_DISABLE_DEPRECATION_WARNINGS 
-DGDK_DISABLE_DEPRECATION_WARNINGS -DGTK_DISABLE_DEPRECATION_WARNINGS 
$(GTK2_DEPS_CFLAGS) $(SM_CFLAGS) $(JANSSON_CFLAGS) $(DISPATCH_CFLAGS) 
-I@top_srcdir@/include -DDDB_WARN_DEPRECATED=1
++ddb_gui_GTK2_la_CFLAGS = -std=c99 -DGLIB_DISABLE_DEPRECATION_WARNINGS 
-DGDK_DISABLE_DEPRECATION_WARNINGS -DGTK_DISABLE_DEPRECATION_WARNINGS 
$(GTK2_DEPS_CFLAGS) $(SM_CFLAGS) $(JANSSON_CFLAGS) $(DISPATCH_CFLAGS) 
-I@top_srcdir@/include -DDDB_WARN_DEPRECATED=1
+ 
+ endif
+ 
+@@ -105,7 +105,7 @@
+ 
+ ddb_gui_GTK3_la_SOURCES = $(GTKUI_SOURCES_GTK3)
+ ddb_gui_GTK3_la_LIBADD = $(LDADD) $(GTK3_DEPS_LIBS) $(SM_LIBADD) 
../libparser/libparser.la ../../shared/libtrkpropertiesutil.la 
../../shared/libeqpreset.la ../../shared/libdeletefromdisk.la 
../../shared/libtftintutil.la ../../shared/analyzer/libanalyzer.la 
../../shared/scope/libscope.la $(JANSSON_LIBS) $(DISPATCH_LIBS)
+-ddb_gui_GTK3_la_CFLAGS = -std=c99 -Werror -DGLIB_DISABLE_DEPRECATION_WARNINGS 
-DGDK_DISABLE_DEPRECATION_WARNINGS -DGTK_DISABLE_DEPRECATION_WARNINGS 
$(GTK3_DEPS_CFLAGS) $(SM_CFLAGS) $(JANSSON_CFLAGS) $(DISPATCH_CFLAGS) 
-I@top_srcdir@/include -DDDB_WARN_DEPRECATED=1
++ddb_gui_GTK3_la_CFLAGS = -std=c99 -DGLIB_DISABLE_DEPRECATION_WARNINGS 
-DGDK_DISABLE_DEPRECATION_WARNINGS -DGTK_DISABLE_DEPRECATION_WARNINGS 
$(GTK3_DEPS_CFLAGS) $(SM_CFLAGS) $(JANSSON_CFLAGS) $(DISPATCH_CFLAGS) 
-I@top_srcdir@/include -DDDB_WARN_DEPRECATED=1
+ ddb_gui_GTK3_la_OBJCFLAGS = $(GTK3_DEPS_CFLAGS) $(SM_CFLAGS) $(JANSSON_CFLAGS)
+ 
+ nodist_ddb_gui_GTK3_la_SOURCES = gtkui-gresources.c

diff --git 
a/media-sound/deadbeef/files/deadbeef-1.9.6-fix-desktop-launcher.patch 
b/media-sound/deadbeef/files/deadbeef-1.9.6-fix-desktop-launcher.patch
new file mode 100644
index 000000000000..235f5d5935de
--- /dev/null
+++ b/media-sound/deadbeef/files/deadbeef-1.9.6-fix-desktop-launcher.patch
@@ -0,0 +1,32 @@
+Fix QA issue about malformed desktop launcher.
+
+ * QA Notice: This package installs one or more .desktop files that do not
+ * pass validation.
+ *
+ *     /usr/share/applications/deadbeef.desktop: error: action group "Desktop 
Action Next" exists, but there is no matching action "Next"
+ *     /usr/share/applications/deadbeef.desktop: error: action group "Desktop 
Action Prev" exists, but there is no matching action "Prev"
+ *     /usr/share/applications/deadbeef.desktop: error: action group "Desktop 
Action Stop" exists, but there is no matching action "Stop"
+ *     /usr/share/applications/deadbeef.desktop: error: file contains group 
"Desktop Action Toggle Pause", which has an invalid action identifier, only 
alphanumeric characters and '-' are allowed
+ *     /usr/share/applications/deadbeef.desktop: error: value 
"Play;Pause;Toggle Pause;Stop;Next;Prev;" for key "Actions" in group "Desktop 
Entry" contains invalid action identifier "Toggle Pause", only alphanumeric 
characters and '-' are allowed
+ *
+
+--- a/deadbeef.desktop.in
++++ b/deadbeef.desktop.in
+@@ -14,7 +14,7 @@
+ Icon=deadbeef
+ Exec=deadbeef %F
+ Terminal=false
+-Actions=Play;Pause;Toggle Pause;Stop;Next;Prev;
++Actions=Play;Pause;Toggle-Pause;Stop;Next;Prev;
+ 
MimeType=application/ogg;audio/x-vorbis+ogg;application/x-ogg;audio/mp3;audio/prs.sid;audio/x-flac;audio/mpeg;audio/x-mpeg;audio/x-mod;audio/x-it;audio/x-s3m;audio/x-xm;audio/x-mpegurl;audio/x-scpls;application/x-cue;
+ Categories=Audio;AudioVideo;Player;GTK;
+ Keywords=Sound;Music;Audio;Player;Musicplayer;MP3;
+@@ -35,7 +35,7 @@
+ Name[zh_TW]=暫停
+ Exec=deadbeef --pause
+ 
+-[Desktop Action Toggle Pause]
++[Desktop Action Toggle-Pause]
+ Name=Toggle Pause
+ Name[zh_CN]=播放/暂停
+ Name[zh_TW]=播放/暫停

diff --git a/media-sound/deadbeef/files/deadbeef-1.9.6-update-gettext.patch 
b/media-sound/deadbeef/files/deadbeef-1.9.6-update-gettext.patch
new file mode 100644
index 000000000000..48c0f0433eac
--- /dev/null
+++ b/media-sound/deadbeef/files/deadbeef-1.9.6-update-gettext.patch
@@ -0,0 +1,17 @@
+Update to a newer gettext to fix clang issues
+
+See also: https://bugs.gentoo.org/908414
+See also: https://github.com/gentoo/gentoo/pull/32491
+--- a/configure.ac
++++ b/configure.ac
+@@ -17,8 +17,8 @@ AC_SYS_LARGEFILE
+ dnl AC_PROG_LIBTOOL
+ AC_CONFIG_MACRO_DIR([m4])
+ AC_C_BIGENDIAN
+-AM_GNU_GETTEXT
+-AM_GNU_GETTEXT_VERSION([0.18])
++AM_GNU_GETTEXT([external])
++AM_GNU_GETTEXT_REQUIRE_VERSION([0.21])
+ PKG_PROG_PKG_CONFIG
+ AM_PROG_CC_C_O
+ AM_ICONV

Reply via email to