File fluidsynth.spec of Package fluidsynth

Name:		fluidsynth
Version:	2.4.6
Release:	53.1
Summary:	A real-time software synthesizer based on SoundFont 2 specifications.
URL:		http://www.fluidsynth.org/
Source:		%{name}-%{version}.tar.gz
Group:		Productivity/Multimedia/Sound/Midi
License:	LGPL-2.0+
Packager:	rncbc.org

%define sover 3

BuildRequires:	coreutils
BuildRequires:	pkgconfig
BuildRequires:	glibc-devel
BuildRequires:	gcc-c++
BuildRequires:	cmake
%if %{defined fedora}
BuildRequires:	jack-audio-connection-kit-devel
BuildRequires:	alsa-lib-devel
BuildRequires:	libdb-devel
%else
BuildRequires:	libjack-devel
BuildRequires:	alsa-devel
BuildRequires:	db-devel
%endif
BuildRequires:	ladspa-devel
BuildRequires:	libsndfile-devel
BuildRequires:	glib2-devel
%if %{defined fedora}
BuildRequires:	pulseaudio-libs-devel
%else
BuildRequires:	libpulse-devel
%endif
#BuildRequires:	doxygen

%description
FluidSynth is a real-time software synthesizer based on the SoundFont 2 
specifications. It is a "software synthesizer". FluidSynth can read MIDI events
from the MIDI input device and render them to the audio device. It features 
real-time effect modulation usingNov SoundFont 2.01 modulators, and a built-in
command line shell. It can also play MIDI files.

Note: FluidSynth was previously called IIWU Synth.


%package -n lib%{name}%{sover}
Summary:	Shared library package for FluidSynth
Group:		System/Libraries
Provides:	%{name}-libs = %{version}-%{release}
Obsoletes:	%{name}-libs < %{version}-%{release}


%description -n lib%{name}%{sover}
FluidSynth is a real-time software synthesizer based on the SoundFont
2 specifications. FluidSynth can read MIDI events from MIDI input
devices and render them to audio devices using SoundFont files to
define the instrument sounds. It can also play MIDI files and supports
real time effect control via SoundFont modulators and MIDI
controls. FluidSynth can be interfaced to other programs in different
ways, including linking as a shared library.

This package contains the run-time shared libraries for FluidSynth.


%package -n lib%{name}-devel
Summary:	Development package for the fluidsynth library
Group:		Development/Libraries/C and C++
Provides:	%{name}-devel = %{version}-%{release}
Obsoletes:	%{name}-devel < %{version}
Requires:	lib%{name}%{sover} >= %{version}
Requires:	pkgconfig


%description -n lib%{name}-devel
FluidSynth is a real-time software synthesizer based on the SoundFont
2 specifications. FluidSynth can read MIDI events from MIDI input
devices and render them to audio devices using SoundFont files to
define the instrument sounds. It can also play MIDI files and supports
real time effect control via SoundFont modulators and MIDI
controls. FluidSynth can be interfaced to other programs in different
ways, including linking as a shared library.

This package contains libraries and includes for building applications
with FluidSynth support.


%prep
%setup -q

%build
cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} .
%__make
%__make doc

%install
%__make DESTDIR="%{buildroot}" install

%if 0%{?sle_version} == 150200 && 0%{?is_opensuse}
%post -n lib%{name}%{sover} -p /sbin/ldconfig
%postun -n lib%{name}%{sover} -p /sbin/ldconfig
%else
%ldconfig_scriptlets -n lib%{name}%{sover}
%endif


%files
%doc AUTHORS README.md LICENSE THANKS TODO
%{_bindir}/*
%{_mandir}/man1/*

%files -n lib%{name}%{sover}
%{_libdir}/lib%{name}.so.%{sover}
%{_libdir}/lib%{name}.so.%{sover}.*

%files -n lib%{name}-devel
#doc doc/*.txt
#doc doc/api doc/html/*
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
%{_includedir}/%{name}.h
%dir %{_includedir}/%{name}
%{_includedir}/%{name}/*.h
%dir %{_libdir}/cmake
%dir %{_libdir}/cmake/%{name}
%{_libdir}/cmake/%{name}/*

%changelog
* Wed May  7 2025 Rui Nuno Capela <rncbc@rncbc.org> 2.4.6
- New 2.4.6 release
* Sun Apr 13 2025 Rui Nuno Capela <rncbc@rncbc.org> 2.4.5
- New 2.4.5 release
* Sun Mar 16 2025 Rui Nuno Capela <rncbc@rncbc.org> 2.4.4
- New 2.4.4 release
* Thu Jan 30 2025 Rui Nuno Capela <rncbc@rncbc.org> 2.4.3
- New 2.4.3 release
* Sun Jan  5 2025 Rui Nuno Capela <rncbc@rncbc.org> 2.4.2
- New 2.4.2 release
* Wed Dec  4 2024 Rui Nuno Capela <rncbc@rncbc.org> 2.4.1
- New 2.4.1 release
* Mon Nov  4 2024 Rui Nuno Capela <rncbc@rncbc.org> 2.4.0
- New 2.4.0 release
openSUSE Build Service is sponsored by