File Uhhyou-Plugins.spec of Package Uhhyou-Plugins

#
# spec file for package Uhhyou-Plugins
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           Uhhyou-Plugins
Version:        20210208
Release:        0
Summary:        Audio Plugins by ryukau
License:        GPL-3.0
URL:            https://github.com/ryukau/LV2Plugins
Source0:        LV2Plugins-%{version}.tar.gz
Patch0:         01-include-array.patch
BuildRequires: gcc-c++
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(liblo)
%description

CubicPadSynth - wavetable synthesizer which uses PADsynth algorithm to generate oscillator tables.
EnvelopedSine - another additive synthesizer which computes 64 sine waves per note.
EsPhaser - phaser with up to 4096 stages of order 2 Thiran all-pass filters.
FDNCymbal - another attempt to make cymbal sounds.
IterativeSinCluster - an additive synthesizer.
L4Reverb - extended version of LatticeReverb. This time, lattice structure has 4 * 4 * 4 * 4 = 256 sections per channel.
LatticeReverb - reverb using lattice structure. Equipped with 16 delays per channel.
LightPadSynth - lighter version of CubicPadSynth.
SevenDelay - 7th order lagrange fractional delay.
SyncSawSynth - synthesizer with up to 10th order PTR sawtooth oscillator.
TrapezoidSynth - monophonic synthesizer equipped with trapezoid oscillator which is made from 5th order PTR ramp function.
WaveCymbal - banded wave-guide synthesizer.
WaveShaper Pack - 4 stereo waveshapers. Waveshaping algorithms are naive, but all provides option for 16x oversampling.
CollidingCombSynth - experimental synthesizer which sounds like bowed string.

https://github.com/ryukau/LV2Plugins

%package -n lv2-%{name}
Summary:        LV2 version Plugins by ryukau

%description -n lv2-%{name}

CubicPadSynth - wavetable synthesizer which uses PADsynth algorithm to generate oscillator tables.
EnvelopedSine - another additive synthesizer which computes 64 sine waves per note.
EsPhaser - phaser with up to 4096 stages of order 2 Thiran all-pass filters.
FDNCymbal - another attempt to make cymbal sounds.
IterativeSinCluster - an additive synthesizer.
L4Reverb - extended version of LatticeReverb. This time, lattice structure has 4 * 4 * 4 * 4 = 256 sections per channel.
LatticeReverb - reverb using lattice structure. Equipped with 16 delays per channel.
LightPadSynth - lighter version of CubicPadSynth.
SevenDelay - 7th order lagrange fractional delay.
SyncSawSynth - synthesizer with up to 10th order PTR sawtooth oscillator.
TrapezoidSynth - monophonic synthesizer equipped with trapezoid oscillator which is made from 5th order PTR ramp function.
WaveCymbal - banded wave-guide synthesizer.
WaveShaper Pack - 4 stereo waveshapers. Waveshaping algorithms are naive, but all provides option for 16x oversampling.
CollidingCombSynth - experimental synthesizer which sounds like bowed string.

https://github.com/ryukau/LV2Plugins

%package -n vst-%{name}
Summary:        VST version Plugins by ryukau

%description -n vst-%{name}

CubicPadSynth - wavetable synthesizer which uses PADsynth algorithm to generate oscillator tables.
EnvelopedSine - another additive synthesizer which computes 64 sine waves per note.
EsPhaser - phaser with up to 4096 stages of order 2 Thiran all-pass filters.
FDNCymbal - another attempt to make cymbal sounds.
IterativeSinCluster - an additive synthesizer.
L4Reverb - extended version of LatticeReverb. This time, lattice structure has 4 * 4 * 4 * 4 = 256 sections per channel.
LatticeReverb - reverb using lattice structure. Equipped with 16 delays per channel.
LightPadSynth - lighter version of CubicPadSynth.
SevenDelay - 7th order lagrange fractional delay.
SyncSawSynth - synthesizer with up to 10th order PTR sawtooth oscillator.
TrapezoidSynth - monophonic synthesizer equipped with trapezoid oscillator which is made from 5th order PTR ramp function.
WaveCymbal - banded wave-guide synthesizer.
WaveShaper Pack - 4 stereo waveshapers. Waveshaping algorithms are naive, but all provides option for 16x oversampling.
CollidingCombSynth - experimental synthesizer which sounds like bowed string.

https://github.com/ryukau/LV2Plugins

%package misc
Summary: Miscellaneous data for Uhhyou-Plugins
BuildArch: noarch
%description misc

This package contains some helpful tools for Uhhyou-Plugins, like:

Developer notes
Preset extraction scripts
Color themes

%prep
%setup -q -n LV2Plugins-%{version}
%patch0 -p1

%build

make %{?_smp_mflags}
make generate_ttl

%install
mkdir -p %{buildroot}%{_bindir}
cd bin
find . -maxdepth  1 '!' -iregex '.*\.so' -type f -exec cp {} %{buildroot}%{_bindir}/ \;
mkdir -p %{buildroot}%{_libdir}/lv2
cp -r *.lv2 %{buildroot}%{_libdir}/lv2/
mkdir -p %{buildroot}%{_libdir}/vst
cp *-vst.so %{buildroot}%{_libdir}/vst/
mkdir -p %{buildroot}%{_datadir}/%{name}
cd ..
cp -r docs/dev_note %{buildroot}%{_datadir}/%{name}/
cp -r preset %{buildroot}%{_datadir}/%{name}/
cp -r style %{buildroot}%{_datadir}/%{name}/

%files
%license License/COPYING
%doc README.md
%{_bindir}/*
%files -n lv2-%{name}
%license License/COPYING
%doc README.md
%dir %{_libdir}/lv2
%{_libdir}/lv2/*
%files -n vst-%{name}
%license License/COPYING
%doc README.md
%dir %{_libdir}/vst
%{_libdir}/vst/*
%files misc
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/*

%changelog
openSUSE Build Service is sponsored by