# The naming scheme in non-Mandriva-based distros %if 0%{!?mklibname:1} %define mklibname(ds) lib%{1}%{?2:%{2}}%{-s:-static}%{-d:-devel} %endif %if 0%{!?mkrel:1} %define mkrel(c) %{1}%{?dist} %endif %define libname %{mklibname %{name}} %define devname %{mklibname %{name} -d} # AmazonLinux %if (0%{?fedora} && 0%{?fedora} < 41) %bcond_with sdl2 %else %bcond_without sdl2 %endif %if (0%{?fedora} && 0%{?fedora} < 41) || 0%{?centos} %bcond_with portaudio %else %bcond_without portaudio %endif %if "%{_vendor}" == "openEuler" %bcond_with pipewire %else %bcond_without pipewire %endif %if 0%{?mageia} >= 9 || 0%{?suse_version} >= 1600 || "%{_vendor}" == "openmandriva" %bcond_without sndio %else %bcond_with sndio %endif Name: cava Version: 0.10.4 Release: %mkrel 1 Summary: Console-based Audio Visualizer for Alsa Group: Multimedia/Audio License: MIT URL: https://github.com/karlstav/cava Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz BuildRequires: gcc BuildRequires: meson > 0.50.0 BuildRequires: pkgconfig(alsa) BuildRequires: (pkgconfig(fftw3) or fftw-devel) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(jack) %if %{with portaudio} BuildRequires: pkgconfig(portaudio-2.0) %endif %if %{with sndio} BuildRequires: pkgconfig(sndio) %endif %if %{with sdl2} BuildRequires: pkgconfig(sdl2) %endif BuildRequires: pkgconfig(gl) %if %{with pipewire} BuildRequires: pkgconfig(libpipewire-0.3) %endif BuildRequires: pkgconfig(ncursesw) BuildRequires: (pkgconfig(iniparser) or iniparser-devel or libiniparser-devel or config(iniparser)) %description C.A.V.A. is a bar spectrum analyzer for audio using ALSA for input. %package -n %{libname} Summary: Shared library for C.A.V.A. %description -n %{libname} %{summary} %package -n %{devname} Summary: Development files for C.A.V.A. %description -n %{devname} %{summary} %prep %autosetup -p1 %build %meson -Dbuild_target=all %{!?with_pipewire:-Dinput_pipewire=disabled} %{!?with_portaudio:-Dinput_portaudio=disabled} %{!?with_sdl2:-Dinput_sdl2=disabled} %{!?with_sndio:-Dinput_sndio=disabled} %meson_build %install %meson_install %files %license LICENSE %doc README.md %doc example_files %{_bindir}/cava %{_datadir}/consolefonts/%{name}.psf %files -n %{libname} %license LICENSE %doc README.md %doc example_files %{_libdir}/lib%{name}.so %files -n %{devname} %license LICENSE %{_includedir}/%{name} %{_libdir}/pkgconfig/%{name}.pc