Date: Mon, 21 Aug 2017 07:02:57 +0000 (UTC) From: Richard Gallamore <ultima@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r448453 - in head/audio: . synthpod-lv2 synthpod-lv2/files Message-ID: <201708210702.v7L72vNv059632@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
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@rawbw.com> +# $FreeBSD$ + +PORTNAME= synthpod +PORTVERSION= g20170810 +CATEGORIES= audio +PKGNAMESUFFIX= -lv2 + +MAINTAINER= yuri@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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201708210702.v7L72vNv059632>