File SocaLabs-plugins_projucer.spec of Package SocaLabs-plugins
#
# spec file for package slPlugins
#
# 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/
#
%define distname slPlugins
Name: SocaLabs-plugins
Version: 20230126
Release: 0
Summary: Various VST/LV2 Plugins from SocaLabs.com
License: BSD-3-Clause
Group: Productivity/Multimedia/Sound/Midi
URL: https://github.com/FigBug/slPlugins
Source0: slPlugins-%{version}.tar.xz
BuildRequires: xorg-x11-libs
BuildRequires: gcc-c++
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(freetype2)
BuildRequires: Mesa-libGL-devel
BuildRequires: libXrandr-devel
BuildRequires: libXcursor-devel
BuildRequires: libjack-devel
BuildRequires: libcurl-devel
BuildRequires: JUCE7-source
BuildRequires: JUCE7-Projucer
BuildRequires: lv2-devel
%description
https://socalabs.com/
SocaLabs Audio Plugins
%package -n lv2-%{name}
Summary: Various VST/LV2 Plugins from SocaLabs.com (LV2)
%description -n lv2-%{name}
https://socalabs.com/
SocaLabs Audio Plugins
%package -n vst-%{name}
Summary: Various VST/LV2 Plugins from SocaLabs.com (VST)
%description -n vst-%{name}
https://socalabs.com/
SocaLabs Audio Plugins
%package -n vst3-%{name}
Summary: Various VST/LV2 Plugins from SocaLabs.com (VST3)
%description -n vst3-%{name}
https://socalabs.com/
SocaLabs Audio Plugins
%prep
%setup -qn %{distname}-%{version}
mkdir -p modules/juce
ln -s %{_usrsrc}/JUCE7/modules modules/juce/modules
%build
mkdir -p bin/vst
mkdir -p bin/lv2
mkdir -p bin/standalone
mkdir -p bin/vst3
cat ci/pluginlist.txt | while read PLUGIN; do
PLUGIN=$(echo $PLUGIN|tr -d '\n\r ')
lv2uri="https://socalabs.com/$PLUGIN/"
#sed "s/_lv2uri_pattern_/${lv2uri//\//\\/}/g" plugins/$PLUGIN/JuceLibraryCode/AppConfig.h.in >plugins/$PLUGIN/JuceLibraryCode/AppConfig.h
sed -i -e 's#jucerFormatVersion="1"#jucerFormatVersion="1" lv2Uri='"'$lv2uri'"'#' plugins/$PLUGIN/$PLUGIN.jucer
sed -i -e 's/JUCEOPTIONS/JUCEOPTIONS JUCE_JACK="1" JUCE_WEB_BROWSER="0" JUCE_USE_CURL="0"/' plugins/$PLUGIN/$PLUGIN.jucer
Projucer --resave plugins/$PLUGIN/$PLUGIN.jucer
cd plugins/$PLUGIN/Builds/LinuxMakefile
CONFIG=Release make %{?_smp_mflags}
cp ./build/$PLUGIN %{_builddir}/%{distname}-%{version}/bin/standalone/
cp ./build/$PLUGIN.so %{_builddir}/%{distname}-%{version}/bin/vst/
cp -r ./build/$PLUGIN.lv2 %{_builddir}/%{distname}-%{version}/bin/lv2/
cp -r ./build/$PLUGIN.vst3 %{_builddir}/%{distname}-%{version}/bin/vst3/
cd %{_builddir}/%{distname}-%{version}/
done
%install
mkdir -p %{buildroot}%{_bindir}
install bin/standalone/* %{buildroot}%{_bindir}/
mkdir -p %{buildroot}%{_libdir}/vst
cp bin/vst/*.so %{buildroot}%{_libdir}/vst/
mkdir -p %{buildroot}%{_libdir}/lv2
cp -r bin/lv2/*.lv2 %{buildroot}%{_libdir}/lv2/
mkdir -p %{buildroot}%{_libdir}/vst3
cp -r bin/vst3/*.vst3 %{buildroot}%{_libdir}/vst3/
%files
%{_bindir}/*
%license LICENSE.md
%doc README.md
%files -n lv2-%{name}
%{_libdir}/lv2/
%doc README.md
%license LICENSE.md
%files -n vst3-%{name}
%{_libdir}/vst3/
%doc README.md
%license LICENSE.md
%files -n vst-%{name}
%{_libdir}/vst/
%doc README.md
%license LICENSE.md
%changelog