Blob Blame History Raw
Name:     gsequencer
Version:  0.7.122.7
Release:  0%{?dist}
Summary:  Advanced Gtk+ Sequencer audio processing engine

# the entire source code is GPLv3+ except the documentation provided as XML is GFDLv3+
License: GPLv3+ and GFDL
Source0: http://download.savannah.gnu.org/releases/gsequencer/stable/%{name}-%{version}.tar.gz
Patch0:  gsequencer.0-fix-docbook-path.patch
Patch1:  gsequencer.1-fix-libgsequencer-blue-print.patch
URL:                http://nongnu.org/gsequencer
BuildRequires:      libtool
BuildRequires:      chrpath
BuildRequires:      docbook-style-xsl
BuildRequires:      gtk-doc
BuildRequires:      pkgconfig(uuid)
BuildRequires:      pkgconfig(libxml-2.0)
BuildRequires:      gmp-devel
BuildRequires:      pkgconfig(alsa)
BuildRequires:      ladspa-devel
BuildRequires:      dssi-devel
BuildRequires:      lv2-devel
BuildRequires:      pkgconfig(jack)
BuildRequires:      pkgconfig(samplerate)
BuildRequires:      pkgconfig(sndfile)
BuildRequires:      pkgconfig(libinstpatch-1.0)
BuildRequires:      pkgconfig(gtk+-2.0)
BuildRequires:      CUnit-devel
BuildRequires:      desktop-file-utils
BuildRequires:      xorg-x11-server-Xvfb
Requires:           xml-common

%description
Advanced Gtk+ Sequencer audio processing engine is an audio
sequencer application supporting LADPSA, DSSI and Lv2 plugin
format. It can output to JACK audio connection kit, ALSA and
OSS4.

You may add multiple sinks, mix different sources by producing
sound with different sequencers. Further it features a pattern
and piano roll. Additional there is a automation editor to
automate ports.

%prep
%autosetup -N
%patch0
%patch1

%build
autoreconf -fi
%configure --disable-oss --enable-gtk-doc --enable-gtk-doc-html
%make_build
%make_build ags-docs

%install
%make_install
%make_install install-html
%make_install install-ags-docs
chrpath --delete %{buildroot}%{_bindir}/gsequencer
chrpath --delete %{buildroot}%{_bindir}/midi2xml
chrpath --delete %{buildroot}%{_libdir}/libags.so*
chrpath --delete %{buildroot}%{_libdir}/libags_server.so*
chrpath --delete %{buildroot}%{_libdir}/libags_thread.so*
chrpath --delete %{buildroot}%{_libdir}/libags_gui.so*
chrpath --delete %{buildroot}%{_libdir}/libags_audio.so*
chrpath --delete %{buildroot}%{_libdir}/libgsequencer.so*
find %{buildroot} -name '*.la' -exec rm -f {} ';'
rm -rf %{buildroot}%{_datadir}/doc-base/

%check
xvfb-run -a make check
desktop-file-validate %{buildroot}/%{_datadir}/applications/gsequencer.desktop

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig

%files
%license COPYING
%{_libdir}/libags.so.*
%{_libdir}/libags_thread.so.*
%{_libdir}/libags_server.so.*
%{_libdir}/libags_gui.so.*
%{_libdir}/libags_audio.so.*
%{_libdir}/libgsequencer.so.*
%{_bindir}/gsequencer
%{_bindir}/midi2xml
%{_mandir}/man1/gsequencer.1*
%{_mandir}/man1/midi2xml.1*
%{_datadir}/gsequencer/
%{_datadir}/xml/gsequencer/
%{_docdir}/gsequencer/
%{_datadir}/applications/gsequencer.desktop

%package devel
Summary:  Advanced Gtk+ Sequencer library development files
Requires: %{name}%{_isa} = %{version}-%{release}
%description devel
Advanced Gtk+ Sequencer library development files.

%files devel
%{_includedir}/ags/
%{_libdir}/libags.so
%{_libdir}/libags_thread.so
%{_libdir}/libags_server.so
%{_libdir}/libags_gui.so
%{_libdir}/libags_audio.so
%{_libdir}/libgsequencer.so
%{_libdir}/pkgconfig/libags.pc
%{_libdir}/pkgconfig/libags_audio.pc
%{_libdir}/pkgconfig/libags_gui.pc
%{_libdir}/pkgconfig/libgsequencer.pc

%package -n gsequencer-devel-doc
Summary:  Advanced Gtk+ Sequencer library development documentation
BuildArch: noarch
%description -n gsequencer-devel-doc
Advanced Gtk+ Sequencer library development documentation.

%files -n gsequencer-devel-doc
%{_datadir}/gtk-doc/
%{_datadir}/doc/libags-doc/
%{_datadir}/doc/libags-audio-doc/
%{_datadir}/doc/libags-gui-doc/
%{_datadir}/doc/libgsequencer-doc/

%changelog
* Wed Mar 15 2017 Joël Krähemann <jkraehemann@gmail.com> 0.7.122.7-0
- removed 3 patches that was applied upstream
- modified libgsequencer blue-print patch because upstream changed
- do make check with xvfb-run

* Wed Mar 08 2017 Joël Krähemann <jkraehemann@gmail.com> 0.7.122.6-3
- make docs noarch

* Tue Mar 07 2017 Joël Krähemann <jkraehemann@gmail.com> 0.7.122.6-2
- provide libgsequencer blue-print patch to install to default linker path
- provide libgsequencer gtk-doc patch to generate application API reference
- provide libgsequencer.xml patch to fix non-existing XML files
- provide libgsequencer.pc patch to make it available

* Thu Mar 02 2017 Joël Krähemann <jkraehemann@gmail.com> 0.7.122.6-1
- modified manpage expression
- modified binary expression
- removed CFLAGS and BINDIR flags of make_build

* Sat Dec 31 2016 Joël Krähemann <jkraehemann@gmail.com> 0.7.122-0
- RPM release

* Tue Dec 27 2016 Joël Krähemann <jkraehemann@gmail.com> 0.7.121-0
- fixed license field

* Mon Dec 26 2016 Joël Krähemann <jkraehemann@gmail.com> 0.7.120-0
- added xml-common requires
- gsequencer-devel-doc owns /usr/share/gtk-doc/
- pass compiler optimization flags
- added missing make install-html
- added build requires of docbook-xsl
- added patch to fix docbook path

* Thu Dec 22 2016 Joël Krähemann <jkraehemann@gmail.com> 0.7.119-0
- removed debian specific directory /usr/share/doc-base

* Tue Dec 13 2016 Joël Krähemann <jkraehemann@gmail.com> 0.7.115-0
- Initial RPM release
- unified usage of buildroot within gsequencer.spec
- run make check during check