vstXsdk: create packages

This commit is contained in:
Raven 2024-08-05 11:16:28 +06:00
parent abd43c3654
commit 7481a5afa5
4 changed files with 167 additions and 0 deletions

View File

@ -0,0 +1,47 @@
Name: vst2sdk
Version: 2.4
Release: 1%{dist}
URL: https://github.com/steinbergmedia/vst3sdk
License: LicenseRef-Proprietary-Steinberg-VST3-License OR GPL-3.0-only
Summary: Steinberg's VST2 SDK
Source0: VST_SDK_%{version}.tar.gz
Source1: vst-%{version}-sdk.tar.gz
BuildRequires: cmake
BuildRequires: gcc
Requires: %{name}-filesystem >= %{version}-%{release}
%description
%{summary}.
%prep
%setup -q -n VST_SDK_%{version} -b 1
%build
%cmake
%cmake_build
%install
for file in {aeffect.h,aeffectx.h,vstfxstore.h};
do
install -p -Dm644 pluginterfaces/vst2.x/$file "%{buildroot}%{_datadir}/vstsdk/pluginterfaces/vst2.x/$file"
done
for file in {aeffeditor.h,audioeffect.cpp,audioeffect.h,audioeffectx.cpp,audioeffectx.h};
do
install -p -Dm644 public.sdk/source/vst2.x/$file "%{buildroot}%{_datadir}/vstsdk/public.sdk/source/vst2.x/$file"
done
install -p -Dm644 "%{_builddir}/vst-%{version}-sdk/vstsdk%{version}/public.sdk/source/vst2.x/vstplugmain.cpp" "%{buildroot}%{_datadir}/vstsdk/public.sdk/source/vst2.x/vstplugmain.cpp"
install -p -Dm644 "libVST_SDK.a" "%{buildroot}%{_libdir}/libVST_SDK.a"
%files
%{_libdir}/libVST_SDK.a
%{_datadir}/vstsdk

View File

@ -0,0 +1,51 @@
diff -up vst3sdk-3.7.6/cmake/modules/SMTG_AddVST3Library.cmake.omv~ vst3sdk-3.7.6/cmake/modules/SMTG_AddVST3Library.cmake
--- vst3sdk-3.7.6/cmake/modules/SMTG_AddVST3Library.cmake.omv~ 2022-09-29 23:24:06.269798038 +0200
+++ vst3sdk-3.7.6/cmake/modules/SMTG_AddVST3Library.cmake 2022-09-29 23:24:42.470124681 +0200
@@ -42,6 +42,7 @@ function(smtg_target_run_vst_validator t
$<TARGET_FILE:validator>
$<$<CONFIG:Debug>:${PLUGIN_PACKAGE_PATH}>
$<$<CONFIG:Release>:${PLUGIN_PACKAGE_PATH}>
+ $<$<CONFIG:RelWithDebInfo>:${PLUGIN_PACKAGE_PATH}>
WORKING_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
)
endif(SMTG_WIN)
diff -up vst3sdk-3.7.6/public.sdk/samples/vst/again_sampleaccurate/CMakeLists.txt.omv~ vst3sdk-3.7.6/public.sdk/samples/vst/again_sampleaccurate/CMakeLists.txt
--- vst3sdk-3.7.6/public.sdk/samples/vst/again_sampleaccurate/CMakeLists.txt.omv~ 2022-09-29 23:27:09.033380510 +0200
+++ vst3sdk-3.7.6/public.sdk/samples/vst/again_sampleaccurate/CMakeLists.txt 2022-09-29 23:27:14.684427040 +0200
@@ -21,6 +21,7 @@ smtg_add_vst3plugin(again-sampleaccurate
target_link_libraries(again-sampleaccurate
PRIVATE
sdk_hosting
+ atomic
)
-smtg_target_setup_as_vst3_example(again-sampleaccurate)
\ No newline at end of file
+smtg_target_setup_as_vst3_example(again-sampleaccurate)
diff -up vst3sdk-3.7.6/public.sdk/samples/vst/mda-vst3/CMakeLists.txt.omv~ vst3sdk-3.7.6/public.sdk/samples/vst/mda-vst3/CMakeLists.txt
--- vst3sdk-3.7.6/public.sdk/samples/vst/mda-vst3/CMakeLists.txt.omv~ 2022-09-29 23:27:59.473791483 +0200
+++ vst3sdk-3.7.6/public.sdk/samples/vst/mda-vst3/CMakeLists.txt 2022-09-29 23:28:24.582992563 +0200
@@ -176,3 +176,4 @@ if(SMTG_MDA_VST3_VST2_COMPATIBLE)
)
endif(SMTG_MDA_VST3_VST2_COMPATIBLE)
+target_link_libraries(mda-vst3 PRIVATE atomic)
diff -up vst3sdk-3.7.6/public.sdk/source/vst/hosting/test/hostclassestest.cpp.omv~ vst3sdk-3.7.6/public.sdk/source/vst/hosting/test/hostclassestest.cpp
--- vst3sdk-3.7.6/public.sdk/source/vst/hosting/test/hostclassestest.cpp.omv~ 2022-09-29 23:13:46.562601197 +0200
+++ vst3sdk-3.7.6/public.sdk/source/vst/hosting/test/hostclassestest.cpp 2022-09-29 23:21:01.019015604 +0200
@@ -106,6 +106,7 @@ ModuleInitializer HostAttributeListTests
EXPECT_EQ (tstrcmp (testValue, value), 0);
return true;
});
+#if 0
registerTest (TestSuiteName, STR ("Binary"), [] (ITestResult* testResult) {
auto attrList = HostAttributeList::make ();
std::array<int32, 20> testData;
@@ -123,6 +123,7 @@ ModuleInitializer HostAttributeListTests
}
return true;
});
+#endif
registerTest (TestSuiteName, STR ("Multiple Set"), [] (ITestResult* testResult) {
auto attrList = HostAttributeList::make ();
constexpr int64 testValue1 = 5;

View File

@ -0,0 +1,5 @@
Name: vst3sdk
Description: VST 3 Plug-In SDK
Version: VERSION
Cflags: -I/usr/share/vstsdk
Libs:

View File

@ -0,0 +1,64 @@
%undefine __cmake_in_source_build
Name: vst3sdk
Version: 3.7.11
Release: 1%{dist}
URL: https://github.com/steinbergmedia/vst3sdk
License: LicenseRef-Proprietary-Steinberg-VST3-License OR GPL-3.0-only
Summary: VST 3 Plug-In SDK
# upstream does not provide proper tarballs, so we had to make them manually:
# git clone https://github.com/steinbergmedia/vst3sdk.git
# mv vst3sdk vst3sdk-%{version}
# cd vst3sdk-%{version}
# git submodule init
# git submodule update
# cd ..
# tar -cJf vst3sdk-%{version}.tar.xz vst3sdk-%{version}
Source0: vst3sdk-%{version}.tar.xz
Source1: vst3sdk.pc
Patch0: vst3sdk-buildfix.patch
BuildRequires: rsync
Requires: %{name}-filesystem >= %{version}-%{release}
%description
This package provides the 'base', 'pluginterfaces' and 'public.sdk'
source modules only, necessary for Steinberg VST3 Plug-in and Host application.
%package -n vstsdk-filesystem
Summary: Common directories for VST2 and VST3 SDKs
Provides: vst2sdk-filesystem = %{version}-%{release}
Provides: vst3sdk-filesystem = %{version}-%{release}
%description -n vstsdk-filesystem
%{summary}.
%prep
%autosetup -p1
%build
%install
mkdir -p %{buildroot}%{_datadir}/vstsdk
mkdir -p %{buildroot}%{_libdir}/cmake/%{name}
install -vDm 644 cmake/modules/*.cmake -t "%{buildroot}%{_libdir}/cmake/%{name}/"
rsync -r --exclude doc --exclude .git --exclude .github --exclude .gitignore --exclude .gitattributes . %{buildroot}%{_datadir}/vstsdk/
install -vDm 644 %{SOURCE1} -t "%{buildroot}%{_libdir}/pkgconfig/"
sed -e "s/VERSION/%{version}/" -i %{buildroot}%{_libdir}/pkgconfig/%{name}.pc
%files
%{_libdir}/cmake/
%{_libdir}/pkgconfig/%{name}.pc
%{_datadir}/vstsdk
%files -n vstsdk-filesystem
%license LICENSE.txt
%dir %{_datadir}/vstsdk/pluginterfaces
%dir %{_datadir}/vstsdk/public.sdk/source