#
# Conditional build:
-%bcond_with ladcca # ladcca sesion management support (deprecated) (GPL)
%bcond_without lash # LASH support (GPL)
%bcond_with midishare # MidiShare support
+%bcond_without pipewire # pipewire support
+%bcond_without portaudio # portaudio support
%bcond_without readline # readline line editing (GPL)
-%bcond_with sse # use the SSE instructions of Pentium3+ or Athlon XP
-%bcond_without static_libs # don't build static library
-#
-%ifarch pentium3 pentium4 %{x8664}
-%define with_sse 1
-%endif
+%bcond_without systemd # systemd notify support
#
Summary: FluidSynth - a software, real-time synthesizer
Summary(pl.UTF-8): FluidSynth - programowy syntezator działający w czasie rzeczywistym
Name: fluidsynth
-Version: 1.1.6
+Version: 2.3.4
Release: 1
-%if %{with ladcca} || %{with lash} || %{with readline}
-License: GPL v2+ (enforced by ladcca/lash/readline), LGPL v2+ (fluidsynth itself)
+%if %{with lash} || %{with readline}
+License: GPL v2+ (enforced by lash/readline), LGPL v2+ (fluidsynth itself)
%else
License: LGPL v2+
%endif
Group: Applications/Sound
-Source0: http://downloads.sourceforge.net/fluidsynth/%{name}-%{version}.tar.bz2
-# Source0-md5: f6e696690e989098f70641364fdffad7
-Patch0: %{name}-midishare.patch
-URL: http://www.fluidsynth.org/
+#Source0Download: https://github.com/FluidSynth/fluidsynth/releases
+Source0: https://github.com/FluidSynth/fluidsynth/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 9e6f11b3a0b9981273e4d1fdadcd9533
+URL: https://www.fluidsynth.org/
+BuildRequires: SDL2-devel >= 2
BuildRequires: alsa-lib-devel >= 0.9.1
-BuildRequires: autoconf >= 2.52
-BuildRequires: automake
+BuildRequires: cmake >= 3.13
BuildRequires: dbus-devel >= 1.0.0
BuildRequires: gettext-tools
-BuildRequires: glib2-devel >= 1:2.6.5
+BuildRequires: glib2-devel >= 1:2.26.0
BuildRequires: jack-audio-connection-kit-devel
-%{?with_ladcca:BuildRequires: ladcca-devel < 0.4.0}
-%{?with_ladcca:BuildRequires: ladcca-devel >= 0.3.1}
BuildRequires: ladspa-devel
%{?with_lash:BuildRequires: lash-devel >= 0.3}
+# OpenMP 4.0
+BuildRequires: libgomp-devel >= 6:4.9
+BuildRequires: libinstpatch-devel >= 1.1.0
BuildRequires: libsndfile-devel >= 1.0.18
-BuildRequires: libtool
%{?with_midishare:BuildRequires: midishare-devel}
BuildRequires: pkgconfig
-BuildRequires: portaudio-devel >= 19
+%{?with_pipewire:BuildRequires: pipewire-devel >= 0.3}
+%{?with_portaudio:BuildRequires: portaudio-devel >= 19}
BuildRequires: pulseaudio-devel >= 0.9.8
%{?with_readline:BuildRequires: readline-devel}
BuildRequires: rpmbuild(macros) >= 1.213
+%{?with_systemd:BuildRequires: systemd-devel >= 1:209}
Requires: alsa-lib >= 0.9.1
-Requires: glib2 >= 1:2.6.5
+Requires: glib2 >= 1:2.26.0
Requires: libsndfile >= 1.0.18
Suggests: soundfont-fluid
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Requires: %{name} = %{version}-%{release}
Requires: alsa-lib-devel >= 0.9.1
Requires: dbus-devel >= 1.0.0
-Requires: glib2-devel >= 1:2.6.5
+Requires: glib2-devel >= 1:2.26.0
Requires: jack-audio-connection-kit-devel
%{?with_lash:Requires: lash-devel >= 0.3}
Requires: libsndfile-devel >= 1.0.18
-%{?with_midishare:Requires: midishare-devel}
-Requires: portaudio-devel >= 19
+%{?with_midishare:Requires: midishare-devel}
+%{?with_pipewire:Requires: pipewire-devel >= 0.3}
+%{?with_portaudio:Requires: portaudio-devel >= 19}
Requires: pulseaudio-devel >= 0.9.8
-%{?with_readline:Requires: readline-devel}
+%{?with_readline:Requires: readline-devel}
+Obsoletes: fluidsynth-static < 2
%description devel
This package contains the header files necessary to develop
Pakiet ten zawiera pliki nagłówkowe potrzebne do tworzenia i
kompilacji aplikacji korzystających z bibliotek FluidSynth.
-%package static
-Summary: Static FluidSynth library
-Summary(pl.UTF-8): Statyczna wersje biblioteki FluidSynth
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-
-%description static
-This package contains static version of the FluidSynth library.
-
-%description static -l pl.UTF-8
-Ten pakiet zawiera bibliotekę statyczną FluidSynth.
-
%prep
%setup -q
-%patch0 -p1
%build
-%{__libtoolize}
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%{__automake}
+%cmake -B build \
+ -Denable-midishare=%{with midishare} \
+ -Denable-lash=%{with lash} \
+ %{!?with_pipewire:-Denable-pipewire=OFF} \
+ -Denable-portaudio=%{with portaudio} \
+ -Denable-readline=%{with readline} \
+ %{!?with_systemd:-Denable-systemd=OFF}
-%configure \
- %{!?with_ladcca:--disable-ladcca} \
- %{!?with_lash:--disable-lash} \
- %{!?with_midishare:--disable-midishare} \
- %{!?with_static_libs:--disable-static} \
- %{?with_sse:--enable-SSE} \
- --enable-jack-support \
- --enable-ladspa \
- --enable-profiling \
- %{!?with_readline:--without-readline}
-
-%{__make}
+%{__make} -C build
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install \
+%{__make} -C build install \
DESTDIR=$RPM_BUILD_ROOT
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libfluidsynth.la
-
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc ChangeLog README
+%doc AUTHORS README.md THANKS TODO
%attr(755,root,root) %{_bindir}/fluidsynth
%attr(755,root,root) %{_libdir}/libfluidsynth.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libfluidsynth.so.1
+%attr(755,root,root) %ghost %{_libdir}/libfluidsynth.so.3
%{_mandir}/man1/fluidsynth.1*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libfluidsynth.so
%{_includedir}/fluidsynth.h
-%{_includedir}/%{name}
+%{_includedir}/fluidsynth
%{_pkgconfigdir}/fluidsynth.pc
-
-%if %{with static_libs}
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libfluidsynth.a
-%endif
+%{_libdir}/cmake/fluidsynth