+# TODO: OBOE support, BR: pkgconfig(oboe-1.0)
#
# Conditional build:
-%bcond_with ladcca # enable ladcca sesion managment support
-%bcond_with sse # use the SSE instructions of Pentium3+ or Athlon XP
+%bcond_without lash # LASH support (GPL)
+%bcond_with midishare # MidiShare support
+%bcond_without portaudio # portaudio support
+%bcond_without readline # readline line editing (GPL)
+%bcond_without systemd # systemd notify support
#
-%ifarch pentium3 pentium4 %{x8664}
-%define with_sse 1
-%endif
-#
-Summary: FluidSynth is a software, real-time synthesizer
-Summary(pl): FluidSynth to programowy syntezator dzia³aj±cy w czasie rzeczywistym
+Summary: FluidSynth - a software, real-time synthesizer
+Summary(pl.UTF-8): FluidSynth - programowy syntezator działający w czasie rzeczywistym
Name: fluidsynth
-Version: 1.0.3
-Release: 4
-License: LGPL
+Version: 2.1.6
+Release: 1
+%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://savannah.nongnu.org/download/fluid/stable.pkg/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: fbdccd05e538626888e27b58d3bdbc2b
+#Source0Download: https://github.com/FluidSynth/fluidsynth/releases
+Source0: https://github.com/FluidSynth/fluidsynth/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 4e5111b59ba4b91c549f9eb088da0a52
URL: http://www.fluidsynth.org/
-BuildRequires: alsa-lib-devel >= 0.9.0
-BuildRequires: automake
+BuildRequires: SDL2-devel >= 2
+BuildRequires: alsa-lib-devel >= 0.9.1
+BuildRequires: cmake >= 3.1.0
+BuildRequires: dbus-devel >= 1.0.0
+BuildRequires: gettext-tools
+BuildRequires: glib2-devel >= 1:2.6.5
BuildRequires: jack-audio-connection-kit-devel
-%{?with_ladcca:BuildRequires: ladcca-devel >= 0.3.1}
-%{?with_ladcca:BuildRequires: ladcca-devel < 0.4.0}
BuildRequires: ladspa-devel
+%{?with_lash:BuildRequires: lash-devel >= 0.3}
+# OpenMP 4.0
+BuildRequires: libgomp-devel >= 6:4.9
+BuildRequires: libinstpatch >= 1.1.0
+BuildRequires: libsndfile-devel >= 1.0.18
+%{?with_midishare:BuildRequires: midishare-devel}
BuildRequires: pkgconfig
+%{?with_portaudio:BuildRequires: portaudio-devel >= 19}
+BuildRequires: pulseaudio-devel >= 0.9.8
+%{?with_readline:BuildRequires: readline-devel}
BuildRequires: rpmbuild(macros) >= 1.213
-Requires: alsa-lib
-# supports also Mac OS X Darwin, so probably it is easy to extend
-ExclusiveArch: %{ix86} %{x8664}
+%{?with_systemd:BuildRequires: systemd-devel >= 1:209}
+Requires: alsa-lib >= 0.9.1
+Requires: glib2 >= 1:2.6.5
+Requires: libsndfile >= 1.0.18
+Suggests: soundfont-fluid
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Fluid Synth is a software, real-time synthesizer based on the
Soundfont 2 specifications.
-%description -l pl
-Fluid Synth to programowy, dzia³aj±cy w czasie rzeczywistym syntezator
+%description -l pl.UTF-8
+Fluid Synth to programowy, działający w czasie rzeczywistym syntezator
oparty na specyfikacji Soundfont 2.
%package devel
Summary: Development files for the FluidSynth
-Summary(pl): Pliki nag³ówkowe dla FluidSynth
+Summary(pl.UTF-8): Pliki nagłówkowe dla FluidSynth
Group: Development/Libraries
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: jack-audio-connection-kit-devel
+%{?with_lash:Requires: lash-devel >= 0.3}
+Requires: libsndfile-devel >= 1.0.18
+%{?with_midishare:Requires: midishare-devel}
+%{?with_portaudio:Requires: portaudio-devel >= 19}
+Requires: pulseaudio-devel >= 0.9.8
+%{?with_readline:Requires: readline-devel}
+Obsoletes: fluidsynth-devel < 2
%description devel
This package contains the header files necessary to develop
applications using FluidSynth.
-%description devel -l pl
-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): 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
-Ten pakiet zawiera bibliotekê statyczn± FluidSynth.
+%description devel -l pl.UTF-8
+Pakiet ten zawiera pliki nagłówkowe potrzebne do tworzenia i
+kompilacji aplikacji korzystających z bibliotek FluidSynth.
%prep
%setup -q
%build
+mkdir -p build
+cd build
+%cmake .. \
+ -Denable-midishare=%{with midishare} \
+ -Denable-lash=%{with lash} \
+ -Denable-portaudio=%{with portaudio} \
+ -Denable-readline=%{with readline} \
+ %{!?with_systemd:-Denable-systemd=OFF}
+
+# define missing in autotools suite
+echo '#define DEFAULT_SOUNDFONT "%{_datadir}/soundfonts/default.sf2"' >> src/config.h
-cp /usr/share/automake/config.sub .
-
-%configure \
- %{!?with_ladcca:--disable-ladcca} \
- %{?with_sse:--enable-SSE} \
- --enable-coreaudio \
- --enable-jack-support \
- --enable-ladspa \
- --enable-midishare \
- --enable-profiling
-
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT
+cd build
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc ChangeLog README
-%{_mandir}/man1/*
-%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_libdir}/lib%{name}.so.*.*.*
+%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.2
+%{_mandir}/man1/fluidsynth.1*
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib%{name}.so
-%attr(755,root,root) %{_libdir}/lib%{name}.la
-%{_includedir}/%{name}.h
-%{_includedir}/%{name}
-%{_libdir}/pkgconfig/fluidsynth.pc
-
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/lib%{name}.a
+%attr(755,root,root) %{_libdir}/libfluidsynth.so
+%{_includedir}/fluidsynth.h
+%{_includedir}/fluidsynth
+%{_pkgconfigdir}/fluidsynth.pc