summaryrefslogtreecommitdiff
path: root/media-sound/cava
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
committerV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
commit752d6256e5204b958b0ef7905675a940b5e9172f (patch)
tree330d16e6362a49cbed8875a777fe641a43376cd3 /media-sound/cava
parent0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff)
gentoo resync : 12.05.2022
Diffstat (limited to 'media-sound/cava')
-rw-r--r--media-sound/cava/Manifest6
-rw-r--r--media-sound/cava/cava-0.8.1.ebuild75
-rw-r--r--media-sound/cava/cava-0.8.2.ebuild64
-rw-r--r--media-sound/cava/files/cava-0.8.0-gentoo-iniparser4.patch15
-rw-r--r--media-sound/cava/metadata.xml14
5 files changed, 174 insertions, 0 deletions
diff --git a/media-sound/cava/Manifest b/media-sound/cava/Manifest
new file mode 100644
index 000000000000..e61b0544d563
--- /dev/null
+++ b/media-sound/cava/Manifest
@@ -0,0 +1,6 @@
+AUX cava-0.8.0-gentoo-iniparser4.patch 702 BLAKE2B 9ea8f952f0a9673d7348b4abeb46e480022205b3bf6a296b5f742e0dee15c81181c876829177159570b239c6c46c4b1177523eb60d3abf6e89640239e5192ba6 SHA512 ed474fc10475731ef733e77469782308c693d4b7214e911257e69499ab5cc598a13e0293644698f98d749e71c3002cbab857f8fda6e36a050bc8ff6be50af881
+DIST cava-0.8.1.tar.gz 99310 BLAKE2B e7d85a6241fee0a4e45f5c50d068b2300ee2d41a019738dc87317986525571eca5f56831e937580fecf949cc85e11512340678b5842ee6f2f3a99f9d06812c3a SHA512 fad4e4fefe98300cc2774a168322056e4181cd2a0cc77a8622471d86512bab9eea6c09559a75518785fbcafee5a958e6d95c8fe5ce1816253e4dec99a23fae1c
+DIST cava-0.8.2.tar.gz 103930 BLAKE2B feeb8313bd9b74029d101acaecfeed02e449cc29dceb2c119d7deef65befae418526274e6bad14dc0df7eaed90850ecae4a4064a414d94950ab3c24943281017 SHA512 8ab146987324fad97dea5e9fd893de6c12b00cbb074d835c1e334d75c0d32cb4cbbc13cf72f7899191ebd5d346505b2639dcad5312e5ab00975b29a006ba41b3
+EBUILD cava-0.8.1.ebuild 1994 BLAKE2B 9470c59054db1833c7cb1260e2dd9f9bcddb85d70900301c5e39118c64e74e971b9bcf64bd6c62c5b5a91bbe7e51e760b13a67dc4c84660149749e112c2dc4d6 SHA512 243a64243ee7ac6d10ce73f0cefc24bd5a4d18b043fc1ebe6a97eaf85d9149181811d4d8eeeca7721e452cd518b9d8fcb8491e34af3529c1f0849a81f20620b2
+EBUILD cava-0.8.2.ebuild 1521 BLAKE2B 988bec79e23ed06e159db642f9f288b5b93bca580458ed26cf11f50f9ac4c14fc665895bde48deb0d1e1551e01d0e11c33d206f5c70c5fd650abdcbbaf0a1ce8 SHA512 84235386f14e088f668200aa59aec2172c9fe57fd6c505433f63eac3089268b8514a2d1c2afdccfe9142fc63703595752a632fa23d12a2eddebbeb2423e7faf1
+MISC metadata.xml 427 BLAKE2B 94797ecc93cc139cde50a9c04e5d413d9356083740a2a3130894f7bd2fe30e8caf007712566a53cf2a28ad81be79d46aba6c57355491b75f9f3501dd0523ee10 SHA512 21289938ed3ecdfc6d15e3df7577c0a560b403b27d6b6b944cf007af9abaab6a96045d2cc35cb44a869e321a678bc85e9f02d285729ebaffb09797d8726001c6
diff --git a/media-sound/cava/cava-0.8.1.ebuild b/media-sound/cava/cava-0.8.1.ebuild
new file mode 100644
index 000000000000..b96197a19e07
--- /dev/null
+++ b/media-sound/cava/cava-0.8.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Console-based Audio Visualizer for Alsa"
+HOMEPAGE="https://github.com/karlstav/cava/"
+SRC_URI="https://github.com/karlstav/cava/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa +ncurses portaudio pulseaudio sdl sndio"
+
+RDEPEND="
+ dev-libs/iniparser:4
+ sci-libs/fftw:=
+ alsa? ( media-libs/alsa-lib )
+ ncurses? ( sys-libs/ncurses:= )
+ portaudio? ( media-libs/portaudio )
+ pulseaudio? ( media-sound/pulseaudio )
+ sdl? ( media-libs/libsdl2[opengl,video] )
+ sndio? ( media-sound/sndio:= )"
+DEPEND="${RDEPEND}"
+BDEPEND="app-editors/vim-core"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.8.0-gentoo-iniparser4.patch
+)
+
+src_prepare() {
+ default
+
+ # see autogen.sh
+ echo ${PV} > version || die
+ xxd -i example_files/config config_file.h || die
+
+ # https://github.com/karlstav/cava/issues/450
+ sed -i 's/-Werror //' Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local econfargs=(
+ $(use_enable alsa input-alsa)
+ $(use_enable portaudio input-portaudio)
+ $(use_enable pulseaudio input-pulse)
+ $(use_enable sndio input-sndio)
+
+ $(use_enable ncurses output-ncurses)
+ $(use_enable sdl output-sdl)
+
+ GENTOO_SYSROOT="${ESYSROOT}" # see iniparser4.patch
+ )
+
+ econf "${econfargs[@]}"
+}
+
+pkg_postinst() {
+ if [[ ! ${REPLACING_VERSIONS} ]]; then
+ elog "A default ~/.config/cava/config will be created after initial"
+ elog "use of ${PN}, see it and ${EROOT}/usr/share/doc/${PF}/README*"
+ elog "for configuring audio input and more."
+ fi
+
+ if use !alsa && use !portaudio && use !pulseaudio && use !sndio; then
+ # give a warning given greets with a segfault without proper configuration
+ ewarn "All audio backends are disabled, ${PN} will only function if first"
+ ewarn "configured to use 'method = fifo' or 'shmem'."
+ ewarn "Tip: fifo is versatile, e.g. mkfifo fifo && jack_capture --daemon -ws > fifo"
+ fi
+}
diff --git a/media-sound/cava/cava-0.8.2.ebuild b/media-sound/cava/cava-0.8.2.ebuild
new file mode 100644
index 000000000000..7afa4ce04e09
--- /dev/null
+++ b/media-sound/cava/cava-0.8.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Console-based Audio Visualizer for Alsa"
+HOMEPAGE="https://github.com/karlstav/cava/"
+SRC_URI="https://github.com/karlstav/cava/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa +ncurses portaudio pulseaudio sdl sndio"
+
+RDEPEND="
+ dev-libs/iniparser:4
+ sci-libs/fftw:=
+ alsa? ( media-libs/alsa-lib )
+ ncurses? ( sys-libs/ncurses:= )
+ portaudio? ( media-libs/portaudio )
+ pulseaudio? ( media-sound/pulseaudio )
+ sdl? ( media-libs/libsdl2[opengl,video] )
+ sndio? ( media-sound/sndio:= )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.8.0-gentoo-iniparser4.patch
+)
+
+src_prepare() {
+ default
+
+ # https://github.com/karlstav/cava/issues/450
+ sed -i 's/-Werror //' Makefile.am || die
+
+ echo ${PV} > version || die
+ eautoreconf
+}
+
+src_configure() {
+ local econfargs=(
+ $(use_enable alsa input-alsa)
+ $(use_enable portaudio input-portaudio)
+ $(use_enable pulseaudio input-pulse)
+ $(use_enable sndio input-sndio)
+
+ $(use_enable ncurses output-ncurses)
+ $(use_enable sdl output-sdl)
+
+ GENTOO_SYSROOT="${ESYSROOT}" # see iniparser4.patch
+ )
+
+ econf "${econfargs[@]}"
+}
+
+pkg_postinst() {
+ if [[ ! ${REPLACING_VERSIONS} ]]; then
+ elog "A default ~/.config/cava/config will be created after initial"
+ elog "use of ${PN}, see it and ${EROOT}/usr/share/doc/${PF}/README*"
+ elog "for configuring audio input and more."
+ fi
+}
diff --git a/media-sound/cava/files/cava-0.8.0-gentoo-iniparser4.patch b/media-sound/cava/files/cava-0.8.0-gentoo-iniparser4.patch
new file mode 100644
index 000000000000..3dcb060c2873
--- /dev/null
+++ b/media-sound/cava/files/cava-0.8.0-gentoo-iniparser4.patch
@@ -0,0 +1,15 @@
+Gentoo uses non-standard naming for slotted iniparser:4 and it
+does not have a pkg-config file (ideally should be unslotted).
+Cava can use iniparser:0 as well but <3.2 forces legacy mode.
+--- a/configure.ac
++++ b/configure.ac
+@@ -259,6 +259,6 @@
+
+-AC_CHECK_LIB(iniparser,iniparser_load, have_iniparser=yes, have_iniparser=no)
++AC_CHECK_LIB(iniparser4,iniparser_load, have_iniparser=yes, have_iniparser=no)
+ if [[ $have_iniparser = "yes" ]] ; then
+- LIBS="$LIBS -liniparser"
+- CPPFLAGS="$CPPFLAGS -I/usr/include/iniparser"
++ LIBS="$LIBS -liniparser4"
++ CPPFLAGS="$CPPFLAGS -I${GENTOO_SYSROOT}/usr/include/iniparser4"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <iniparser.h>]],
diff --git a/media-sound/cava/metadata.xml b/media-sound/cava/metadata.xml
new file mode 100644
index 000000000000..7b32cdd182c8
--- /dev/null
+++ b/media-sound/cava/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ionen@gentoo.org</email>
+ <name>Ionen Wolkens</name>
+ </maintainer>
+ <use>
+ <flag name="sndio">Enable support for the <pkg>media-sound/sndio</pkg> backend</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">karlstav/cava</remote-id>
+ </upstream>
+</pkgmetadata>