mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-22 08:58:47 +00:00
New port: audio/sfizz: SFZ parser and synth C++ library & LV2/VST3 plugins
This commit is contained in:
parent
41f204c222
commit
4ae07f1d52
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=532175
@ -725,6 +725,7 @@
|
|||||||
SUBDIR += sdl2_mixer
|
SUBDIR += sdl2_mixer
|
||||||
SUBDIR += sdl_mixer
|
SUBDIR += sdl_mixer
|
||||||
SUBDIR += sdl_sound
|
SUBDIR += sdl_sound
|
||||||
|
SUBDIR += sfizz
|
||||||
SUBDIR += sfront
|
SUBDIR += sfront
|
||||||
SUBDIR += shairplay
|
SUBDIR += shairplay
|
||||||
SUBDIR += shairport-sync
|
SUBDIR += shairport-sync
|
||||||
|
44
audio/sfizz/Makefile
Normal file
44
audio/sfizz/Makefile
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PORTNAME= sfizz
|
||||||
|
DISTVERSION= 0.3.2
|
||||||
|
CATEGORIES= audio
|
||||||
|
|
||||||
|
MAINTAINER= yuri@FreeBSD.org
|
||||||
|
COMMENT= SFZ parser and synth C++ library & LV2/VST3 plugins
|
||||||
|
|
||||||
|
LICENSE= BSD2CLAUSE
|
||||||
|
LICENSE_FILE= ${WRKSRC}/LICENSE.md
|
||||||
|
|
||||||
|
LIB_DEPENDS= libsndfile.so:audio/libsndfile
|
||||||
|
|
||||||
|
USES= cmake compiler:c++11-lib localbase:ldflags pkgconfig
|
||||||
|
USE_GITHUB= yes
|
||||||
|
GH_ACCOUNT= sfztools
|
||||||
|
GH_TUPLE= \
|
||||||
|
abseil:abseil-cpp:df3ea785d8c30a9503321a3d35ee7d35808f190d:abseil_abseil_cpp/external/abseil-cpp \
|
||||||
|
steinbergmedia:vst3_base:4f6a7184f20f40a7c940a6717e6e0d8b35eeea63:steinbergmedia_vst3_base/vst/external/VST_SDK/VST3_SDK/base \
|
||||||
|
steinbergmedia:vst3_pluginterfaces:227ea1d8f749c6a66dd591582061d58682b4aa9f:steinbergmedia_vst3_pluginterfaces/vst/external/VST_SDK/VST3_SDK/pluginterfaces \
|
||||||
|
steinbergmedia:vst3_public_sdk:c04e9bd690f50893742e2a082abab47af2c3efc8:steinbergmedia_vst3_public_sdk/vst/external/VST_SDK/VST3_SDK/public.sdk \
|
||||||
|
sfztools:vstgui:c6a7f607c21a7353e922a6d45e54d6c56d5a6745:sfztools_vstgui/vst/external/VST_SDK/VST3_SDK/vstgui4
|
||||||
|
USE_LDCONFIG= yes
|
||||||
|
|
||||||
|
OPTIONS_DEFINE= JACK LV2 VST
|
||||||
|
OPTIONS_DEFAULT= JACK LV2
|
||||||
|
OPTIONS_SUB= yes
|
||||||
|
|
||||||
|
JACK_LIB_DEPENDS= libjack.so:audio/jack
|
||||||
|
JACK_CMAKE_BOOL= SFIZZ_JACK
|
||||||
|
|
||||||
|
LV2_DESC= Install the LV2 plugin
|
||||||
|
LV2_BUILD_DEPENDS= lv2>0:audio/lv2
|
||||||
|
LV2_CMAKE_BOOL= SFIZZ_LV2
|
||||||
|
|
||||||
|
VST_DESC= Install the VST plugin
|
||||||
|
VST_CMAKE_BOOL= SFIZZ_VST
|
||||||
|
VST_BROKEN= Compilation issues, need to investogate
|
||||||
|
|
||||||
|
post-install-LV2-on:
|
||||||
|
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lv2/sfizz.lv2/sfizz.so
|
||||||
|
|
||||||
|
.include <bsd.port.mk>
|
13
audio/sfizz/distinfo
Normal file
13
audio/sfizz/distinfo
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
TIMESTAMP = 1587344882
|
||||||
|
SHA256 (sfztools-sfizz-0.3.2_GH0.tar.gz) = 1b1d0ff4ef998597e384433f05c10a859767178501f1e7c82219ccb0973b3c0c
|
||||||
|
SIZE (sfztools-sfizz-0.3.2_GH0.tar.gz) = 34417809
|
||||||
|
SHA256 (abseil-abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d_GH0.tar.gz) = f368a8476f4e2e0eccf8a7318b98dafbe30b2600f4e3cf52636e5eb145aba06a
|
||||||
|
SIZE (abseil-abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d_GH0.tar.gz) = 1679879
|
||||||
|
SHA256 (steinbergmedia-vst3_base-4f6a7184f20f40a7c940a6717e6e0d8b35eeea63_GH0.tar.gz) = e3fc07094850115b26c84301bc3a49e880d42b715ca2900b7e2642105ed98497
|
||||||
|
SIZE (steinbergmedia-vst3_base-4f6a7184f20f40a7c940a6717e6e0d8b35eeea63_GH0.tar.gz) = 61890
|
||||||
|
SHA256 (steinbergmedia-vst3_pluginterfaces-227ea1d8f749c6a66dd591582061d58682b4aa9f_GH0.tar.gz) = 179e780c3a4f604210ec85349e659b340919e3c8cec17b9f310f97231029b0cf
|
||||||
|
SIZE (steinbergmedia-vst3_pluginterfaces-227ea1d8f749c6a66dd591582061d58682b4aa9f_GH0.tar.gz) = 88523
|
||||||
|
SHA256 (steinbergmedia-vst3_public_sdk-c04e9bd690f50893742e2a082abab47af2c3efc8_GH0.tar.gz) = bb87a131afa6f2f3b93bef29c8677569b072c72bef9a6603ab5f0e3f815f1089
|
||||||
|
SIZE (steinbergmedia-vst3_public_sdk-c04e9bd690f50893742e2a082abab47af2c3efc8_GH0.tar.gz) = 5884665
|
||||||
|
SHA256 (sfztools-vstgui-c6a7f607c21a7353e922a6d45e54d6c56d5a6745_GH0.tar.gz) = d260594c9fd3aad8164d08ed0688a12fa6ef519da6af3c5e139f4e973de0093d
|
||||||
|
SIZE (sfztools-vstgui-c6a7f607c21a7353e922a6d45e54d6c56d5a6745_GH0.tar.gz) = 3508421
|
11
audio/sfizz/files/patch-cmake_SfizzConfig.cmake
Normal file
11
audio/sfizz/files/patch-cmake_SfizzConfig.cmake
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- cmake/SfizzConfig.cmake.orig 2020-04-20 01:18:25 UTC
|
||||||
|
+++ cmake/SfizzConfig.cmake
|
||||||
|
@@ -67,7 +67,7 @@ if (USE_LIBCPP)
|
||||||
|
add_compile_options(-stdlib=libc++)
|
||||||
|
# Presumably need the above for linking too, maybe other options missing as well
|
||||||
|
add_link_options(-stdlib=libc++) # New command on CMake master, not in 3.12 release
|
||||||
|
-add_link_options(-lc++abi) # New command on CMake master, not in 3.12 release
|
||||||
|
+#add_link_options(-lc++abi) # New command on CMake master, not in 3.12 release
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
28
audio/sfizz/files/patch-src_external_atomic__queue_defs.h
Normal file
28
audio/sfizz/files/patch-src_external_atomic__queue_defs.h
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
--- src/external/atomic_queue/defs.h.orig 2020-04-20 01:14:22 UTC
|
||||||
|
+++ src/external/atomic_queue/defs.h
|
||||||
|
@@ -6,11 +6,15 @@
|
||||||
|
|
||||||
|
#include <atomic>
|
||||||
|
|
||||||
|
+#if defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
|
+#include <machine/param.h> // for CACHE_LINE_SIZE
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#if defined(__x86_64__) || defined(_M_X64) || \
|
||||||
|
defined(__i386__) || defined(_M_IX86)
|
||||||
|
#include <emmintrin.h>
|
||||||
|
namespace atomic_queue {
|
||||||
|
-constexpr int CACHE_LINE_SIZE = 64;
|
||||||
|
+//constexpr int CACHE_LINE_SIZE = 64;
|
||||||
|
static inline void spin_loop_pause() noexcept {
|
||||||
|
_mm_pause();
|
||||||
|
}
|
||||||
|
@@ -18,7 +22,7 @@ static inline void spin_loop_pause() noexcept {
|
||||||
|
#elif defined(__arm__) || defined(__aarch64__)
|
||||||
|
// TODO: These need to be verified as I do not have access to ARM platform.
|
||||||
|
namespace atomic_queue {
|
||||||
|
-constexpr int CACHE_LINE_SIZE = 64;
|
||||||
|
+//constexpr int CACHE_LINE_SIZE = 64;
|
||||||
|
static inline void spin_loop_pause() noexcept {
|
||||||
|
#if (defined(__ARM_ARCH_6K__) || \
|
||||||
|
defined(__ARM_ARCH_6Z__) || \
|
@ -0,0 +1,11 @@
|
|||||||
|
--- src/external/cpuid/platform/src/platform/config.hpp.orig 2020-04-20 01:17:24 UTC
|
||||||
|
+++ src/external/cpuid/platform/src/platform/config.hpp
|
||||||
|
@@ -11,7 +11,7 @@
|
||||||
|
// http://sourceforge.net/p/predef/wiki/Architectures/
|
||||||
|
|
||||||
|
// Detect operating systems
|
||||||
|
-#if defined(__linux__)
|
||||||
|
+#if defined(__linux__) || defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
|
#define PLATFORM_LINUX 1
|
||||||
|
#if defined(__ANDROID__)
|
||||||
|
#define PLATFORM_ANDROID 1
|
11
audio/sfizz/files/patch-src_external_ghc_filesystem.hpp
Normal file
11
audio/sfizz/files/patch-src_external_ghc_filesystem.hpp
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- src/external/ghc/filesystem.hpp.orig 2020-04-20 01:09:03 UTC
|
||||||
|
+++ src/external/ghc/filesystem.hpp
|
||||||
|
@@ -43,7 +43,7 @@
|
||||||
|
#ifndef GHC_OS_DETECTED
|
||||||
|
#if defined(__APPLE__) && defined(__MACH__)
|
||||||
|
#define GHC_OS_MACOS
|
||||||
|
-#elif defined(__linux__)
|
||||||
|
+#elif defined(__linux__) || defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
|
#define GHC_OS_LINUX
|
||||||
|
#if defined(__ANDROID__)
|
||||||
|
#define GHC_OS_ANDROID
|
@ -0,0 +1,11 @@
|
|||||||
|
--- vst/external/VST_SDK/VST3_SDK/vstgui4/vstgui/lib/vstguibase.h.orig 2020-04-20 01:31:17 UTC
|
||||||
|
+++ vst/external/VST_SDK/VST3_SDK/vstgui4/vstgui/lib/vstguibase.h
|
||||||
|
@@ -134,7 +134,7 @@
|
||||||
|
using std::min;
|
||||||
|
using std::max;
|
||||||
|
|
||||||
|
-#elif defined(__linux__)
|
||||||
|
+#elif defined(__linux__) || defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
|
#include <cstdint>
|
||||||
|
#include <type_traits>
|
||||||
|
#include <algorithm>
|
11
audio/sfizz/pkg-descr
Normal file
11
audio/sfizz/pkg-descr
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
sfizz is a sample-based musical synthesizer.
|
||||||
|
|
||||||
|
It features the well-established SFZ instrument format (https://sfzformat.com/)
|
||||||
|
at its core, which permits to use existing instrument libraries, or create
|
||||||
|
personal instruments with ease.
|
||||||
|
|
||||||
|
Not only is sfizz ready-to-use as an instrument plugin of its own, the library
|
||||||
|
allows developers to create instruments of their own, taking advantage of the
|
||||||
|
abilities of SFZ.
|
||||||
|
|
||||||
|
WWW: https://sfz.tools/sfizz/
|
11
audio/sfizz/pkg-plist
Normal file
11
audio/sfizz/pkg-plist
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
%%JACK%%bin/sfizz_jack
|
||||||
|
include/sfizz.h
|
||||||
|
include/sfizz.hpp
|
||||||
|
lib/libsfizz.a
|
||||||
|
lib/libsfizz.so
|
||||||
|
lib/libsfizz.so.0
|
||||||
|
%%LV2%%lib/lv2/sfizz.lv2/LICENSE.md
|
||||||
|
%%LV2%%lib/lv2/sfizz.lv2/manifest.ttl
|
||||||
|
%%LV2%%lib/lv2/sfizz.lv2/sfizz.so
|
||||||
|
%%LV2%%lib/lv2/sfizz.lv2/sfizz.ttl
|
||||||
|
libdata/pkgconfig/sfizz.pc
|
Loading…
Reference in New Issue
Block a user