%global gittag 3.10
%global dpf DPF
%global commit1 279c265361a9da5a1491107585c75284e0dc0e18
%global shortcommit1 %(c=%{commit1}; echo ${c:0:7})
Name: zam-plugins
Version: %{gittag}
Release: 2%{?dist}
Summary: A collection of LV2/LADSPA/JACK audio plugins
License: GPLv2+ and ISC
URL: http://www.zamaudio.com/
Source0: https://github.com/zamaudio/%{name}/archive/%{gittag}/%{name}-%{version}.tar.gz
Source1: https://github.com/DISTRHO/DPF/archive/%{commit1}/%{dpf}-%{shortcommit1}.tar.gz
# Patch sent upstream https://github.com/zamaudio/zam-plugins/pull/62
Patch0: %{name}-unbundle-zita-convolver.patch
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: jack-audio-connection-kit-devel
BuildRequires: libX11-devel
BuildRequires: mesa-libGL-devel
BuildRequires: liblo-devel
BuildRequires: lv2-devel >= 1.8.1
BuildRequires: ladspa-devel
BuildRequires: fftw-devel >= 3.3.5
BuildRequires: libsamplerate-devel
BuildRequires: zita-convolver-devel >= 3.1.0
%package -n lv2-zam-plugins
Summary: A collection of LV2/LADSPA/JACK audio plugins. LV2 version
Requires: lv2 >= 1.8.1
%package -n ladspa-zam-plugins
Summary: A collection of LV2/LADSPA/JACK audio plugins. LADSPA version
Requires: ladspa
%description
zam-plugins is a collection of LV2/LADSPA/VST/JACK audio plugins
for sound processing developed in-house at ZamAudio.
%description -n lv2-zam-plugins
zam-plugins is a collection of LV2/LADSPA/VST/JACK audio plugins
for sound processing developed in-house at ZamAudio.
This is the LV2 version.
%description -n ladspa-zam-plugins
zam-plugins is a collection of LV2/LADSPA/VST/JACK audio plugins
for sound processing developed in-house at ZamAudio.
This is the LADSPA version.
%prep
%autosetup -a 1 -p 1
# Move submodule DPF to main source directory
rmdir dpf
mv %{dpf}-%{commit1} dpf
%build
# This package does not build on all arches with upstream build flags,
# so upstream build flags are split.
# These are realtime audio plugins, so we need the fastest possible math,
# flags for x86_64 are set to be compatible with most AMD and Intel CPUs,
# and to use the best possible SIMD instruction set.
flags=" -ffast-math"
%ifarch %{ix86}
flags+=" -msse -mfpmath=sse"
%endif
%ifarch x86_64
flags+=" -msse2 -mfpmath=sse"
%endif
%set_build_flags
%make_build PREFIX=%{_prefix} LIBDIR=%{_lib} USE_SYSTEM_LIBS=1 \
BASE_OPTS="${flags}" LINK_OPTS="%{__global_ldflags}"
%install
%make_install PREFIX=%{_prefix} LIBDIR=%{_lib} USE_SYSTEM_LIBS=1
# We don't need VST and DSSI plugins
rm -rf %{buildroot}%{_libdir}/vst %{buildroot}/*-dssi*
%files
%{_bindir}/*
%license LICENSE
%doc README.md
%files -n lv2-zam-plugins
%{_libdir}/lv2/*
%license LICENSE
%doc README.md
%files -n ladspa-zam-plugins
%{_libdir}/ladspa/*
%license LICENSE
%doc README.md
%changelog
* Sun May 13 2018 Guido Aulisi <guido.aulisi@gmail.com> - 3.10-2
- Use %set_build_flags macro
- Document Patch0
* Wed May 9 2018 Guido Aulisi <guido.aulisi@gmail.com> - 3.10-1
- Version 3.10