diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-04-22 19:12:45 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-04-22 19:12:45 +0000 |
| commit | 8b76d681a72190b3dbe575894fc1f47df03e5751 (patch) | |
| tree | 47c37233312eb7baf120e33019bc7a1ba10b6fad /media-sound/audacious | |
| parent | 3bac0c1b93e7e7849ecfe749f6864ed1ad5e018d (diff) | |
| download | baldeagleos-repo-8b76d681a72190b3dbe575894fc1f47df03e5751.tar.gz baldeagleos-repo-8b76d681a72190b3dbe575894fc1f47df03e5751.tar.xz baldeagleos-repo-8b76d681a72190b3dbe575894fc1f47df03e5751.zip | |
Adding metadata
Diffstat (limited to 'media-sound/audacious')
| -rw-r--r-- | media-sound/audacious/audacious-4.5.1-r1.ebuild | 95 | ||||
| -rw-r--r-- | media-sound/audacious/files/audacious-4.5.1-fix_intmin_overflow.patch | 17 |
2 files changed, 112 insertions, 0 deletions
diff --git a/media-sound/audacious/audacious-4.5.1-r1.ebuild b/media-sound/audacious/audacious-4.5.1-r1.ebuild new file mode 100644 index 000000000000..1b6a80d2ea9f --- /dev/null +++ b/media-sound/audacious/audacious-4.5.1-r1.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson xdg + +DESCRIPTION="Lightweight and versatile audio player" +HOMEPAGE="https://audacious-media-player.org/" +SRC_URI="https://distfiles.audacious-media-player.org/${P}.tar.bz2" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="amd64 ~ppc64 ~riscv x86" +IUSE="gtk qt6 test" +REQUIRED_USE="test? ( qt6 )" +RESTRICT="!test? ( test )" + +BDEPEND=" + >=dev-util/gdbus-codegen-2.80.5-r1 + sys-devel/gettext + virtual/pkgconfig +" +DEPEND=" + dev-libs/glib:2 + virtual/freedesktop-icon-theme + gtk? ( + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + >=x11-libs/gtk+-3.18:3 + x11-libs/pango + ) + qt6? ( + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtsvg:6 + ) +" +RDEPEND="${DEPEND}" +PDEPEND="~media-plugins/audacious-plugins-${PV}[gtk=,qt6=]" + +PATCHES=( + # Avoid superfluous handling for X11/Wayland with gtk+, warn in pkg_postinst instead. + "${FILESDIR}"/${PN}-4.5.1-rm_gdk_symbols.patch + + # from upstream, see #972499 + "${FILESDIR}"/${P}-fix_intmin_overflow.patch +) + +src_configure() { + # D-Bus is a mandatory dependency. Remote control, + # session management and some plugins depend on this. + # Building without D-Bus is *unsupported* and a USE-flag + # will not be added due to the bug reports that will result. + # Bugs #197894, #199069, #207330, #208606 + local emesonargs=( + -Ddbus=true + $(meson_use qt6 qt) + -Dqt5=false + $(meson_use gtk) + -Dgtk2=false + -Dlibarchive=false + -Dbuildstamp="Gentoo ${P}" + -Dvalgrind=false + ) + meson_src_configure + + if use test; then + emesonargs=() + EMESON_SOURCE="${S}"/src/libaudcore/tests \ + BUILD_DIR="${WORKDIR}"/${P}-libaudcore_tests-build \ + meson_src_configure + fi +} + +src_compile() { + meson_src_compile + + if use test; then + EMESON_SOURCE="${S}"/src/libaudcore/tests \ + BUILD_DIR="${WORKDIR}"/${P}-libaudcore_tests-build \ + meson_src_compile + fi +} + +src_test() { + BUILD_DIR="${WORKDIR}"/${P}-libaudcore_tests-build meson_src_test +} + +pkg_postinst() { + if use gtk || use qt6; then + ewarn "Audacious without X11/XWayland is unsupported." + ewarn "Especially the Winamp interface is not usable yet on Wayland." + fi + xdg_pkg_postinst +} diff --git a/media-sound/audacious/files/audacious-4.5.1-fix_intmin_overflow.patch b/media-sound/audacious/files/audacious-4.5.1-fix_intmin_overflow.patch new file mode 100644 index 000000000000..055979c2b3e5 --- /dev/null +++ b/media-sound/audacious/files/audacious-4.5.1-fix_intmin_overflow.patch @@ -0,0 +1,17 @@ +backport https://github.com/audacious-media-player/audacious/commit/6ffe0b6.patch +https://bugs.gentoo.org/972499 +audcore: Prevent undefined behavior for integer conversions. +--- a/src/libaudcore/audstrings.cc ++++ b/src/libaudcore/audstrings.cc +@@ -1121,8 +1121,10 @@ EXPORT double str_to_double(const char * string) + + EXPORT void str_insert_int(StringBuf & string, int pos, int val) + { ++ unsigned absval = val; + bool neg = (val < 0); +- unsigned absval = neg ? -val : val; ++ if (neg) ++ absval = -absval; + + int digits = digits_for(absval); + int len = (neg ? 1 : 0) + digits; |
