Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Apr 2020 02:13:04 +0000 (UTC)
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r532175 - in head/audio: . sfizz sfizz/files
Message-ID:  <202004200213.03K2D4KC052874@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yuri
Date: Mon Apr 20 02:13:03 2020
New Revision: 532175
URL: https://svnweb.freebsd.org/changeset/ports/532175

Log:
  New port: audio/sfizz: SFZ parser and synth C++ library & LV2/VST3 plugins

Added:
  head/audio/sfizz/
  head/audio/sfizz/Makefile   (contents, props changed)
  head/audio/sfizz/distinfo   (contents, props changed)
  head/audio/sfizz/files/
  head/audio/sfizz/files/patch-cmake_SfizzConfig.cmake   (contents, props changed)
  head/audio/sfizz/files/patch-src_external_atomic__queue_defs.h   (contents, props changed)
  head/audio/sfizz/files/patch-src_external_cpuid_platform_src_platform_config.hpp   (contents, props changed)
  head/audio/sfizz/files/patch-src_external_ghc_filesystem.hpp   (contents, props changed)
  head/audio/sfizz/files/patch-vst_external_VST__SDK_VST3__SDK_vstgui4_vstgui_lib_vstguibase.h   (contents, props changed)
  head/audio/sfizz/pkg-descr   (contents, props changed)
  head/audio/sfizz/pkg-plist   (contents, props changed)
Modified:
  head/audio/Makefile

Modified: head/audio/Makefile
==============================================================================
--- head/audio/Makefile	Mon Apr 20 01:35:21 2020	(r532174)
+++ head/audio/Makefile	Mon Apr 20 02:13:03 2020	(r532175)
@@ -725,6 +725,7 @@
     SUBDIR += sdl2_mixer
     SUBDIR += sdl_mixer
     SUBDIR += sdl_sound
+    SUBDIR += sfizz
     SUBDIR += sfront
     SUBDIR += shairplay
     SUBDIR += shairport-sync

Added: head/audio/sfizz/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/Makefile	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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>

Added: head/audio/sfizz/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/distinfo	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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

Added: head/audio/sfizz/files/patch-cmake_SfizzConfig.cmake
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/files/patch-cmake_SfizzConfig.cmake	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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()
+ 

Added: head/audio/sfizz/files/patch-src_external_atomic__queue_defs.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/files/patch-src_external_atomic__queue_defs.h	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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__) || \

Added: head/audio/sfizz/files/patch-src_external_cpuid_platform_src_platform_config.hpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/files/patch-src_external_cpuid_platform_src_platform_config.hpp	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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

Added: head/audio/sfizz/files/patch-src_external_ghc_filesystem.hpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/files/patch-src_external_ghc_filesystem.hpp	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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

Added: head/audio/sfizz/files/patch-vst_external_VST__SDK_VST3__SDK_vstgui4_vstgui_lib_vstguibase.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/files/patch-vst_external_VST__SDK_VST3__SDK_vstgui4_vstgui_lib_vstguibase.h	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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>

Added: head/audio/sfizz/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/pkg-descr	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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/

Added: head/audio/sfizz/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/sfizz/pkg-plist	Mon Apr 20 02:13:03 2020	(r532175)
@@ -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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202004200213.03K2D4KC052874>