svn commit: r448453 - in head/audio: . synthpod-lv2 synthpod-lv2/files
Richard Gallamore
ultima at FreeBSD.org
Mon Aug 21 07:02:59 UTC 2017
Author: ultima
Date: Mon Aug 21 07:02:57 2017
New Revision: 448453
URL: https://svnweb.freebsd.org/changeset/ports/448453
Log:
Synthpod is an LV2 host. It can be run as a standalone app and be used as a
tool for live performances or general audio and event filtering.
It was conceptualized to fill the gap between pure textual (e.g. SuperCollider)
and pure visual flow (e.g. Pure Data) audio programming paradigms.
Potential fields of application may include:
* Live audio synthesis
* Real-time event scripting
* Non-linear signal routing
* Advanced control automation
* Advanced event filtering
* Live mixing
* Live coding
* Algorithmic composition
* Interfacing to expressive controllers
WWW: https://open-music-kontrollers.ch/lv2/synthpod
PR: 221319
Submitted by: Yuri Victorovich (maintainer)
Reviewed by: matthew (mentor)
Approved by: matthew (mentor)
Differential Revision: https://reviews.freebsd.org/D12094
Added:
head/audio/synthpod-lv2/
head/audio/synthpod-lv2/Makefile (contents, props changed)
head/audio/synthpod-lv2/distinfo (contents, props changed)
head/audio/synthpod-lv2/files/
head/audio/synthpod-lv2/files/patch-CMakeLists.txt (contents, props changed)
head/audio/synthpod-lv2/pkg-descr (contents, props changed)
head/audio/synthpod-lv2/pkg-message (contents, props changed)
head/audio/synthpod-lv2/pkg-plist (contents, props changed)
Modified:
head/audio/Makefile
Modified: head/audio/Makefile
==============================================================================
--- head/audio/Makefile Mon Aug 21 06:57:50 2017 (r448452)
+++ head/audio/Makefile Mon Aug 21 07:02:57 2017 (r448453)
@@ -770,6 +770,7 @@
SUBDIR += sweep
SUBDIR += swh-lv2
SUBDIR += swhplugins
+ SUBDIR += synthpod-lv2
SUBDIR += taglib
SUBDIR += taglib-extras
SUBDIR += taglib-sharp
Added: head/audio/synthpod-lv2/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/audio/synthpod-lv2/Makefile Mon Aug 21 07:02:57 2017 (r448453)
@@ -0,0 +1,82 @@
+# Created by: Yuri Victorovich <yuri at rawbw.com>
+# $FreeBSD$
+
+PORTNAME= synthpod
+PORTVERSION= g20170810
+CATEGORIES= audio
+PKGNAMESUFFIX= -lv2
+
+MAINTAINER= yuri at rawbw.com
+COMMENT= Lightweight Nonlinear LV2 Plugin Container
+
+LICENSE= ART20
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+BUILD_DEPENDS= lv2>0:audio/lv2
+LIB_DEPENDS= liblilv-0.so:audio/lilv \
+ libserd-0.so:devel/serd \
+ libsord-0.so:devel/sord \
+ libsratom-0.so:audio/sratom
+
+USES= cmake compiler:c++11-lib pkgconfig localbase
+USE_GITHUB= yes
+GH_ACCOUNT= OpenMusicKontrollers
+GH_TAGNAME= 07cae54
+USE_CXXSTD= c++11
+
+CMAKE_ARGS= -DBUILD_ALSA="OFF"
+
+OPTIONS_DEFINE= JACK DUMMY DOT
+OPTIONS_DEFAULT=JACK X11 SHOW KX
+OPTIONS_GROUP= UI
+OPTIONS_GROUP_UI= X11 GTK2 GTK3 QT4 QT5 SHOW KX
+OPTIONS_SUB= yes
+
+DUMMY_DESC= Build DUMMY standalone host
+DOT_DESC= Build Dot exporter
+KX_DESC= Build external-ui sandbox
+JACK_DESC= Build JACK standalone host
+X11_DESC= Build X11 sandbox
+GTK2_DESC= Build GTK-2 sandbox
+GTK3_DESC= Build GTK-3 sandbox
+QT4_DESC= Build Qt-4 sandbox
+QT5_DESC= Build Qt-5 sandbox
+SHOW_DESC= Build show-iface sandbox
+
+DOT_CMAKE_ON= -DBUILD_DOT="ON"
+DUMMY_CMAKE_ON= -DBUILD_DUMMY="ON"
+DUMMY_LIB_DEPENDS= libuv.so:devel/libuv
+GTK2_CMAKE_ON= -DBUILD_UI="ON" -DBUILD_SANDBOX_GTK2="ON"
+GTK2_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2
+GTK2_USE= XORG=x11,xcb,xext GL=gl,glu GNOME=glib20,gtk20,gdkpixbuf2,atk,cairo,pango gettext-runtime
+GTK3_CMAKE_ON= -DBUILD_UI="ON" -DBUILD_SANDBOX_GTK3="ON"
+GTK3_USE= XORG=x11,xcb,xext GL=glu GNOME=glib20,gtk30,gdkpixbuf2,atk,cairo,pango gettext-runtime
+JACK_LIB_DEPENDS= libjack.so:audio/jack \
+ libuv.so:devel/libuv
+JACK_CMAKE_OFF= -DBUILD_JACK="OFF"
+KX_CMAKE_ON= -DBUILD_UI="ON" -DBUILD_SANDBOX_KX="ON"
+KX_USE= XORG=x11,xcb,xext GL=glu
+QT4_CMAKE_ON= -DBUILD_UI="ON" -DBUILD_SANDBOX_QT4="ON"
+QT4_USE= XORG=x11,xcb,xext GL=glu QT4=corelib,gui
+QT5_BROKEN= Build fails: https://github.com/OpenMusicKontrollers/synthpod/issues/10
+QT5_CMAKE_ON= -DBUILD_UI="ON" -DBUILD_SANDBOX_QT5="ON"
+QT5_USE= XORG=x11,xcb,xext GL=glu QT5=core,gui
+SHOW_USE= XORG=x11,xcb,xext GL=glu
+SHOW_CMAKE_ON= -DBUILD_UI="ON" -DBUILD_SANDBOX_SHOW="ON"
+X11_CMAKE_ON= -DBUILD_UI="ON" -DBUILD_SANDBOX_X11="ON"
+X11_LIB_DEPENDS= libxcb-icccm.so:x11/xcb-util-wm
+X11_USE= XORG=x11,xcb,xext GL=gl,glu
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MX11} || ${PORT_OPTIONS:MGTK2} || ${PORT_OPTIONS:MGTK3} || ${PORT_OPTIONS:MQT4} || ${PORT_OPTIONS:MQT5} || ${PORT_OPTIONS:MSHOW} || ${PORT_OPTIONS:MKX}
+PLIST_SUB+= UI=""
+.else
+PLIST_SUB+= UI="@comment "
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|share/man|man|' ${WRKSRC}/bin/CMakeLists.txt
+
+.include <bsd.port.mk>
Added: head/audio/synthpod-lv2/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/audio/synthpod-lv2/distinfo Mon Aug 21 07:02:57 2017 (r448453)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1503280076
+SHA256 (OpenMusicKontrollers-synthpod-g20170810-07cae54_GH0.tar.gz) = 319dc6ababcf867cd7ae628931b1c99fba842d634245675ac600d611a4df362d
+SIZE (OpenMusicKontrollers-synthpod-g20170810-07cae54_GH0.tar.gz) = 2336518
Added: head/audio/synthpod-lv2/files/patch-CMakeLists.txt
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/audio/synthpod-lv2/files/patch-CMakeLists.txt Mon Aug 21 07:02:57 2017 (r448453)
@@ -0,0 +1,39 @@
+--- CMakeLists.txt.orig 2017-08-06 12:24:04 UTC
++++ CMakeLists.txt
+@@ -34,6 +34,15 @@ include_directories(${PROJECT_SOURCE_DIR
+ include_directories(${PROJECT_SOURCE_DIR}/zero_worker.lv2)
+ include_directories(${PROJECT_SOURCE_DIR}/zero_writer.lv2)
+
++# FreeBSD: clock_nanosleep was missing and was added to 11-STABLE in r317618
++CHECK_FUNCTION_EXISTS(clock_nanosleep HAVE_CLOCK_NANOSLEEP_FUNCTION)
++if(${HAVE_CLOCK_NANOSLEEP_FUNCTION})
++ MESSAGE("-- FreeBSD: clock_nanosleep exists")
++else()
++ MESSAGE("-- FreeBSD: clock_nanosleep DOES NOT EXIST and will be replaced with nanosleep")
++ execute_process(COMMAND sed -i'.bak' -E "s|clock_nanosleep\\\(CLOCK_[A-Z]+, TIMER_ABSTIME, |nanosleep\\\(|" bin/synthpod_dummy.c bin/synthpod_sandbox_show.c bin/synthpod_sandbox_kx.c)
++endif()
++
+ set(SYNTHPOD_BIN_DIR "bin")
+ add_definitions("-DSYNTHPOD_BIN_DIR=\"${CMAKE_INSTALL_PREFIX}/${SYNTHPOD_BIN_DIR}/\"")
+
+@@ -92,16 +101,16 @@ option(BUILD_DUMMY "Build DUMMY standalo
+
+ option(BUILD_DOT "Build Dot exporter" OFF)
+
+-option(BUILD_UI "Build graphical user interface(s)" ON)
++option(BUILD_UI "Build graphical user interface(s)" OFF)
+
+ include(CMakeDependentOption)
+-cmake_dependent_option(BUILD_SANDBOX_X11 "Build X11 sandbox" ON "BUILD_UI" OFF)
++cmake_dependent_option(BUILD_SANDBOX_X11 "Build X11 sandbox" OFF "BUILD_UI" OFF)
+ cmake_dependent_option(BUILD_SANDBOX_GTK2 "Build GTK-2 sandbox" OFF "BUILD_UI" OFF)
+ cmake_dependent_option(BUILD_SANDBOX_GTK3 "Build GTK-3 sandbox" OFF "BUILD_UI" OFF)
+ cmake_dependent_option(BUILD_SANDBOX_QT4 "Build Qt-4 sandbox" OFF "BUILD_UI" OFF)
+ cmake_dependent_option(BUILD_SANDBOX_QT5 "Build Qt-5 sandbox" OFF "BUILD_UI" OFF)
+-cmake_dependent_option(BUILD_SANDBOX_SHOW "Build show-iface sandbox" ON "BUILD_UI" OFF)
+-cmake_dependent_option(BUILD_SANDBOX_KX "Build external-ui sandbox" ON "BUILD_UI" OFF)
++cmake_dependent_option(BUILD_SANDBOX_SHOW "Build show-iface sandbox" OFF "BUILD_UI" OFF)
++cmake_dependent_option(BUILD_SANDBOX_KX "Build external-ui sandbox" OFF "BUILD_UI" OFF)
+
+ if(BUILD_SANDBOX_X11)
+ add_definitions("-DSANDBOX_X11")
Added: head/audio/synthpod-lv2/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/audio/synthpod-lv2/pkg-descr Mon Aug 21 07:02:57 2017 (r448453)
@@ -0,0 +1,18 @@
+Synthpod is an LV2 host. It can be run as a standalone app and be used as a
+tool for live performances or general audio and event filtering.
+
+It was conceptualized to fill the gap between pure textual (e.g. SuperCollider)
+and pure visual flow (e.g. Pure Data) audio programming paradigms.
+
+Potential fields of application may include:
+* Live audio synthesis
+* Real-time event scripting
+* Non-linear signal routing
+* Advanced control automation
+* Advanced event filtering
+* Live mixing
+* Live coding
+* Algorithmic composition
+* Interfacing to expressive controllers
+
+WWW: https://open-music-kontrollers.ch/lv2/synthpod
Added: head/audio/synthpod-lv2/pkg-message
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/audio/synthpod-lv2/pkg-message Mon Aug 21 07:02:57 2017 (r448453)
@@ -0,0 +1,16 @@
+======================================================================
+You installed SynthPod: Lightweight Nonlinear LV2 Plugin Container
+
+The major way to run it is to plug the LV2 plugin container to the
+Jack sound server:
+
+$ synthpod_jack -g
+
+This shows you the design window where you can arrange plugins to
+achieve the topology you like.
+
+Please don't forget to connect SynthPod input and output in Jack. You
+can normally do this with the UI command qjackctl from audio/qjackctl.
+
+SynthPod is currently in alpha stage.
+======================================================================
Added: head/audio/synthpod-lv2/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/audio/synthpod-lv2/pkg-plist Mon Aug 21 07:02:57 2017 (r448453)
@@ -0,0 +1,47 @@
+%%DUMMY%%bin/synthpod_dummy
+%%DOT%%bin/synthpod_dot
+%%JACK%%bin/synthpod_jack
+%%X11%%bin/synthpod_sandbox_x11
+%%GTK2%%bin/synthpod_sandbox_gtk2
+%%GTK3%%bin/synthpod_sandbox_gtk3
+%%QT4%%bin/synthpod_sandbox_qt4
+%%QT5%%bin/synthpod_sandbox_qt5
+%%SHOW%%bin/synthpod_sandbox_show
+%%KX%%bin/synthpod_sandbox_kx
+%%X11%%bin/synthpod_ui
+%%UI%%lib/lv2/synthpod.lv2/Abel-Regular.ttf
+%%UI%%lib/lv2/synthpod.lv2/synthpod_nk.so
+lib/lv2/synthpod.lv2/manifest.ttl
+lib/lv2/synthpod.lv2/synthpod.so
+lib/lv2/synthpod.lv2/synthpod.ttl
+lib/lv2/synthpod.lv2/synthpod_ui.ttl
+lib/synthpod/lv2/manifest.ttl
+lib/synthpod/lv2/synthpod_bundle.so
+lib/synthpod/lv2/synthpod_bundle.ttl
+%%DUMMY%%share/applications/synthpod_dummy.desktop
+%%JACK%%share/applications/synthpod_jack.desktop
+%%JACK%%share/icons/hicolor/256x256/apps/synthpod.png
+%%DUMMY%%man/man1/synthpod_dummy.1.gz
+%%JACK%%man/man1/synthpod_jack.1.gz
+%%X11%%man/man1/synthpod_sandbox.1.gz
+%%DATADIR%%/atom.png
+%%DATADIR%%/atom_inverted.png
+%%DATADIR%%/audio.png
+%%DATADIR%%/automaton.png
+%%DATADIR%%/cancel.png
+%%DATADIR%%/control.png
+%%DATADIR%%/cv.png
+%%DATADIR%%/download.png
+%%DATADIR%%/event.png
+%%DATADIR%%/event_inverted.png
+%%DATADIR%%/house.png
+%%DATADIR%%/layers.png
+%%DATADIR%%/menu.png
+%%DATADIR%%/midi.png
+%%DATADIR%%/osc.png
+%%DATADIR%%/patch.png
+%%DATADIR%%/plus.png
+%%DATADIR%%/settings.png
+%%DATADIR%%/time.png
+%%DATADIR%%/user.png
+%%DATADIR%%/xpress.png
More information about the svn-ports-all
mailing list