add carla.

Carla is a fully-featured modular audio plugin host, with support for many
audio drivers and plugin formats.

Carla currently supports LADSPA (including LRDF), DSSI, LV2, VST2, VST3 and
AU plugin formats, plus SF2 and SFZ file support.

It uses JACK as the default and preferred audio driver but also supports
native drivers like ALSA, DirectSound or CoreAudio.
This commit is contained in:
nia 2020-12-12 15:32:45 +01:00
parent 64b20195f1
commit d592ba8896
10 changed files with 407 additions and 0 deletions

View File

@ -366,6 +366,7 @@ SUBDIR+= capnproto
SUBDIR+= cardpeek
SUBDIR+= cargo-audit
SUBDIR+= caribou
SUBDIR+= carla
SUBDIR+= cartago
SUBDIR+= casady-fonts
SUBDIR+= castget

8
carla/DESCR Normal file
View File

@ -0,0 +1,8 @@
Carla is a fully-featured modular audio plugin host, with support for many
audio drivers and plugin formats.
Carla currently supports LADSPA (including LRDF), DSSI, LV2, VST2, VST3 and
AU plugin formats, plus SF2 and SFZ file support.
It uses JACK as the default and preferred audio driver but also supports
native drivers like ALSA, DirectSound or CoreAudio.

103
carla/Makefile Normal file
View File

@ -0,0 +1,103 @@
# $NetBSD$
DISTNAME= carla-2.2.0
CATEGORIES= audio
MASTER_SITES= ${MASTER_SITE_GITHUB:=falkTX/}
GITHUB_PROJECT= Carla
GITHUB_TAG= v${PKGVERSION_NOREV}
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://kx.studio/Applications:Carla
COMMENT= Audio plugin host
LICENSE= gnu-gpl-v2
DEPENDS+= ${PYPKGPREFIX}-qt5-[0-9]*:../../x11/py-qt5
USE_TOOLS+= gmake pkg-config gsed bash:run
USE_LANGUAGES= c c++
MAKE_FLAGS+= PREFIX=${PREFIX}
.include "../../mk/bsd.prefs.mk"
.if !empty(PKGSRC_COMPILER:M*clang*)
MAKE_FLAGS+= CLANG=true
.endif
PKGCONFIG_OVERRIDE+= data/carla-native-plugin.pc
PKGCONFIG_OVERRIDE+= data/carla-standalone.pc
PKGCONFIG_OVERRIDE+= data/carla-utils.pc
REPLACE_BASH+= data/carla
REPLACE_BASH+= data/carla-control
REPLACE_BASH+= data/carla-bridge-lv2-modgui
REPLACE_BASH+= data/carla-database
REPLACE_BASH+= data/carla-jack-multi
REPLACE_BASH+= data/carla-jack-patchbayplugin
REPLACE_BASH+= data/carla-jack-single
REPLACE_BASH+= data/carla-osc-gui
REPLACE_BASH+= data/carla-patchbay
REPLACE_BASH+= data/carla-rack
REPLACE_BASH+= data/carla-settings
REPLACE_PYTHON+= data/carla-single
REPLACE_PYTHON+= source/frontend/carla
REPLACE_PYTHON+= source/frontend/carla-control
REPLACE_PYTHON+= source/frontend/carla-jack-multi
REPLACE_PYTHON+= source/frontend/carla-jack-single
REPLACE_PYTHON+= source/frontend/carla-patchbay
REPLACE_PYTHON+= source/frontend/carla-plugin
REPLACE_PYTHON+= source/frontend/carla-plugin-patchbay
REPLACE_PYTHON+= source/frontend/carla-rack
REPLACE_PYTHON+= source/frontend/bigmeter-ui
REPLACE_PYTHON+= source/frontend/midipattern-ui
REPLACE_PYTHON+= source/frontend/notes-ui
REPLACE_PYTHON+= source/frontend/xycontroller-ui
SUBST_CLASSES+= py
SUBST_STAGE.py= pre-configure
SUBST_MESSAGE.py= Correcting the Python executable name.
SUBST_FILES.py+= data/carla-bridge-lv2-modgui
SUBST_FILES.py+= data/carla-control
SUBST_FILES.py+= data/carla-database
SUBST_FILES.py+= data/carla-jack-multi
SUBST_FILES.py+= data/carla-jack-single
SUBST_FILES.py+= data/carla-osc-gui
SUBST_FILES.py+= data/carla-patchbay
SUBST_FILES.py+= data/carla-rack
SUBST_FILES.py+= data/carla-settings
SUBST_SED.py+= -e "s,python3,${PYTHONBIN},g"
SUBST_CLASSES+= prefix
SUBST_STAGE.prefix= pre-configure
SUBST_MESSAGE.prefix= Fixing paths.
SUBST_FILES.prefix+= source/frontend/carla_shared.py
SUBST_SED.prefix+= -e "s,/usr/local,${PREFIX},g"
PYTHON_VERSIONS_INCOMPATIBLE= 27
post-install:
${CHMOD} +x ${DESTDIR}${PREFIX}/share/carla/carla
${CHMOD} +x ${DESTDIR}${PREFIX}/share/carla/carla-control
${CHMOD} +x ${DESTDIR}${PREFIX}/share/carla/carla-jack-multi
${CHMOD} +x ${DESTDIR}${PREFIX}/share/carla/carla-jack-single
${CHMOD} +x ${DESTDIR}${PREFIX}/share/carla/carla-patchbay
${CHMOD} +x ${DESTDIR}${PREFIX}/share/carla/carla-rack
.include "../../audio/fluidsynth/buildlink3.mk"
.include "../../audio/jack/buildlink3.mk"
.include "../../audio/liblo/buildlink3.mk"
.include "../../audio/libsndfile/buildlink3.mk"
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
.include "../../lang/python/application.mk"
.include "../../multimedia/ffmpeg4/buildlink3.mk"
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
.if ${OPSYS} != "Darwin"
. include "../../graphics/MesaLib/buildlink3.mk"
. include "../../x11/gtk2/buildlink3.mk"
. include "../../x11/gtk3/buildlink3.mk"
. include "../../x11/libX11/buildlink3.mk"
. include "../../x11/libXext/buildlink3.mk"
.endif
.include "../../x11/qt5-qtbase/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

222
carla/PLIST Normal file
View File

@ -0,0 +1,222 @@
@comment $NetBSD$
bin/carla
bin/carla-control
bin/carla-database
bin/carla-jack-multi
bin/carla-jack-patchbayplugin
bin/carla-jack-single
bin/carla-osc-gui
bin/carla-patchbay
bin/carla-rack
bin/carla-settings
bin/carla-single
include/carla/CarlaBackend.h
include/carla/CarlaEngine.hpp
include/carla/CarlaHost.h
include/carla/CarlaNative.h
include/carla/CarlaPlugin.hpp
include/carla/CarlaUtils.h
include/carla/includes/CarlaDefines.h
include/carla/includes/CarlaMIDI.h
include/carla/includes/CarlaNative.h
include/carla/includes/CarlaNativePlugin.h
lib/carla/carla-bridge-lv2-gtk2
lib/carla/carla-bridge-lv2-gtk3
lib/carla/carla-bridge-lv2-modgui
lib/carla/carla-bridge-lv2-qt5
lib/carla/carla-bridge-lv2-x11
lib/carla/carla-bridge-lv2.so
lib/carla/carla-bridge-native
lib/carla/carla-discovery-native
lib/carla/libcarla_native-plugin.so
lib/carla/libcarla_standalone2.so
lib/carla/libcarla_utils.so
lib/carla/styles/carlastyle.json
lib/carla/styles/carlastyle.so
lib/lv2/carla.lv2/audiofile.ttl
lib/lv2/carla.lv2/audiogain.ttl
lib/lv2/carla.lv2/audiogain_s.ttl
lib/lv2/carla.lv2/bigmeter.ttl
lib/lv2/carla.lv2/carla-bridge-lv2-gtk2
lib/lv2/carla.lv2/carla-bridge-lv2-gtk3
lib/lv2/carla.lv2/carla-bridge-lv2-modgui
lib/lv2/carla.lv2/carla-bridge-lv2-qt5
lib/lv2/carla.lv2/carla-bridge-lv2-x11
lib/lv2/carla.lv2/carla-bridge-lv2.so
lib/lv2/carla.lv2/carla-bridge-native
lib/lv2/carla.lv2/carla-discovery-native
lib/lv2/carla.lv2/carla.so
lib/lv2/carla.lv2/carlapatchbay.ttl
lib/lv2/carla.lv2/carlapatchbay16.ttl
lib/lv2/carla.lv2/carlapatchbay32.ttl
lib/lv2/carla.lv2/carlapatchbay3s.ttl
lib/lv2/carla.lv2/carlapatchbay64.ttl
lib/lv2/carla.lv2/carlapatchbaycv.ttl
lib/lv2/carla.lv2/carlarack.ttl
lib/lv2/carla.lv2/lfo.ttl
lib/lv2/carla.lv2/libcarla_native-plugin.so
lib/lv2/carla.lv2/libcarla_utils.so
lib/lv2/carla.lv2/manifest.ttl
lib/lv2/carla.lv2/midichanab.ttl
lib/lv2/carla.lv2/midichanfilter.ttl
lib/lv2/carla.lv2/midichannelize.ttl
lib/lv2/carla.lv2/midifile.ttl
lib/lv2/carla.lv2/midigain.ttl
lib/lv2/carla.lv2/midijoin.ttl
lib/lv2/carla.lv2/midipattern.ttl
lib/lv2/carla.lv2/midisplit.ttl
lib/lv2/carla.lv2/miditranspose.ttl
lib/lv2/carla.lv2/resources
lib/lv2/carla.lv2/styles
lib/pkgconfig/carla-native-plugin.pc
lib/pkgconfig/carla-standalone.pc
lib/pkgconfig/carla-utils.pc
lib/vst/carla.vst/CarlaPatchbay.so
lib/vst/carla.vst/CarlaPatchbay16.so
lib/vst/carla.vst/CarlaPatchbay32.so
lib/vst/carla.vst/CarlaPatchbay64.so
lib/vst/carla.vst/CarlaPatchbayFX.so
lib/vst/carla.vst/CarlaRack.so
lib/vst/carla.vst/CarlaRackFX.so
lib/vst/carla.vst/carla-bridge-lv2-gtk2
lib/vst/carla.vst/carla-bridge-lv2-gtk3
lib/vst/carla.vst/carla-bridge-lv2-modgui
lib/vst/carla.vst/carla-bridge-lv2-qt5
lib/vst/carla.vst/carla-bridge-lv2-x11
lib/vst/carla.vst/carla-bridge-lv2.so
lib/vst/carla.vst/carla-bridge-native
lib/vst/carla.vst/carla-discovery-native
lib/vst/carla.vst/jack
lib/vst/carla.vst/libcarla_native-plugin.so
lib/vst/carla.vst/libcarla_utils.so
lib/vst/carla.vst/resources
lib/vst/carla.vst/styles
share/applications/carla-control.desktop
share/applications/carla-jack-multi.desktop
share/applications/carla-jack-single.desktop
share/applications/carla-patchbay.desktop
share/applications/carla-rack.desktop
share/applications/carla.desktop
share/carla/carla
share/carla/carla-control
share/carla/carla-jack-multi
share/carla/carla-jack-single
share/carla/carla-patchbay
share/carla/carla-rack
share/carla/carla_app.py
share/carla/carla_backend.py
share/carla/carla_backend_qt.py
share/carla/carla_backend_qtweb.py
share/carla/carla_control.py
share/carla/carla_database.py
share/carla/carla_host.py
share/carla/carla_modgui.py
share/carla/carla_settings.py
share/carla/carla_shared.py
share/carla/carla_skin.py
share/carla/carla_utils.py
share/carla/carla_widgets.py
share/carla/externalui.py
share/carla/ladspa_rdf.py
share/carla/modgui/__init__.py
share/carla/modgui/host.py
share/carla/modgui/webserver.py
share/carla/patchcanvas/__init__.py
share/carla/patchcanvas/canvasbezierline.py
share/carla/patchcanvas/canvasbezierlinemov.py
share/carla/patchcanvas/canvasbox.py
share/carla/patchcanvas/canvasboxshadow.py
share/carla/patchcanvas/canvasfadeanimation.py
share/carla/patchcanvas/canvasicon.py
share/carla/patchcanvas/canvasline.py
share/carla/patchcanvas/canvaslinemov.py
share/carla/patchcanvas/canvasport.py
share/carla/patchcanvas/canvasportglow.py
share/carla/patchcanvas/patchcanvas.py
share/carla/patchcanvas/scene.py
share/carla/patchcanvas/theme.py
share/carla/patchcanvas/utils.py
share/carla/resources/bigmeter-ui
share/carla/resources/carla-plugin
share/carla/resources/carla-plugin-patchbay
share/carla/resources/carla_app.py
share/carla/resources/carla_backend.py
share/carla/resources/carla_backend_qt.py
share/carla/resources/carla_control.py
share/carla/resources/carla_database.py
share/carla/resources/carla_host.py
share/carla/resources/carla_settings.py
share/carla/resources/carla_shared.py
share/carla/resources/carla_skin.py
share/carla/resources/carla_utils.py
share/carla/resources/carla_widgets.py
share/carla/resources/externalui.py
share/carla/resources/midipattern-ui
share/carla/resources/modgui
share/carla/resources/notes-ui
share/carla/resources/patchcanvas
share/carla/resources/resources_rc.py
share/carla/resources/ui_carla_about.py
share/carla/resources/ui_carla_about_juce.py
share/carla/resources/ui_carla_add_jack.py
share/carla/resources/ui_carla_database.py
share/carla/resources/ui_carla_edit.py
share/carla/resources/ui_carla_host.py
share/carla/resources/ui_carla_parameter.py
share/carla/resources/ui_carla_plugin_calf.py
share/carla/resources/ui_carla_plugin_classic.py
share/carla/resources/ui_carla_plugin_compact.py
share/carla/resources/ui_carla_plugin_default.py
share/carla/resources/ui_carla_plugin_presets.py
share/carla/resources/ui_carla_refresh.py
share/carla/resources/ui_carla_settings.py
share/carla/resources/ui_carla_settings_driver.py
share/carla/resources/ui_inputdialog_value.py
share/carla/resources/ui_midipattern.py
share/carla/resources/widgets
share/carla/resources/xycontroller-ui
share/carla/resources_rc.py
share/carla/ui_carla_about.py
share/carla/ui_carla_about_juce.py
share/carla/ui_carla_add_jack.py
share/carla/ui_carla_database.py
share/carla/ui_carla_edit.py
share/carla/ui_carla_host.py
share/carla/ui_carla_osc_connect.py
share/carla/ui_carla_parameter.py
share/carla/ui_carla_plugin_calf.py
share/carla/ui_carla_plugin_classic.py
share/carla/ui_carla_plugin_compact.py
share/carla/ui_carla_plugin_default.py
share/carla/ui_carla_plugin_presets.py
share/carla/ui_carla_refresh.py
share/carla/ui_carla_settings.py
share/carla/ui_carla_settings_driver.py
share/carla/ui_inputdialog_value.py
share/carla/ui_midipattern.py
share/carla/ui_xycontroller.py
share/carla/widgets/__init__.py
share/carla/widgets/canvaspreviewframe.py
share/carla/widgets/collapsablewidget.py
share/carla/widgets/digitalpeakmeter.py
share/carla/widgets/draggablegraphicsview.py
share/carla/widgets/ledbutton.py
share/carla/widgets/paramspinbox.py
share/carla/widgets/pianoroll.py
share/carla/widgets/pixmapbutton.py
share/carla/widgets/pixmapdial.py
share/carla/widgets/pixmapkeyboard.py
share/carla/widgets/racklistwidget.py
share/carla/widgets/scalablebutton.py
share/carla/widgets/scalabledial.py
share/icons/hicolor/128x128/apps/carla-control.png
share/icons/hicolor/128x128/apps/carla.png
share/icons/hicolor/16x16/apps/carla-control.png
share/icons/hicolor/16x16/apps/carla.png
share/icons/hicolor/256x256/apps/carla-control.png
share/icons/hicolor/256x256/apps/carla.png
share/icons/hicolor/48x48/apps/carla-control.png
share/icons/hicolor/48x48/apps/carla.png
share/icons/hicolor/scalable/apps/carla-control.svg
share/icons/hicolor/scalable/apps/carla.svg
share/mime/packages/carla.xml

2
carla/TODO Normal file
View File

@ -0,0 +1,2 @@
Some aspects seem buggy, can't figure out how to get it to integrate
with LMMS on NetBSD.

13
carla/buildlink3.mk Normal file
View File

@ -0,0 +1,13 @@
# $NetBSD$
BUILDLINK_TREE+= carla
.if !defined(CARLA_BUILDLINK3_MK)
CARLA_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.carla+= carla>=2.2.0
BUILDLINK_PKGSRCDIR.carla?= ../../wip/carla
.endif # CARLA_BUILDLINK3_MK
BUILDLINK_TREE+= -carla

9
carla/distinfo Normal file
View File

@ -0,0 +1,9 @@
$NetBSD$
SHA1 (carla-2.2.0.tar.gz) = a28307f2b482048ce075d9bdb9d3d978ba3c87e4
RMD160 (carla-2.2.0.tar.gz) = a529c5bc99e7c816b691ccaa68acf72d2d13ae24
SHA512 (carla-2.2.0.tar.gz) = afb2beab979f801817a7fd7663bfdc90800db021679243faa5acb15de60f6dc281032e05c51a8625124c69e7759099fc682678eb98c08507f952763e665ac9c4
Size (carla-2.2.0.tar.gz) = 9844747 bytes
SHA1 (patch-source_Makefile.mk) = adf4fdbf6c56ca06035c40433f6654244389886f
SHA1 (patch-source_utils_CarlaMutex.hpp) = c50dfe4cc7887f389c8ef776030b4d02d795c422
SHA1 (patch-source_utils_CarlaScopeUtils.hpp) = aeb077167587908a04c07a27f7137cedefba5c71

View File

@ -0,0 +1,18 @@
$NetBSD$
This doesn't work. Just require GNU sed.
--- source/Makefile.mk.orig 2020-09-26 14:38:36.000000000 +0000
+++ source/Makefile.mk
@@ -690,11 +690,7 @@ endif
# ---------------------------------------------------------------------------------------------------------------------
# Set arguments used for inline 'sed'
-ifeq ($(BSD),true)
-SED_ARGS=-i '' -e
-else
SED_ARGS=-i -e
-endif
# ---------------------------------------------------------------------------------------------------------------------
# Set command used for file symlinking

View File

@ -0,0 +1,16 @@
$NetBSD$
NetBSD does not have pthread_condattr_setpshared.
--- source/utils/CarlaMutex.hpp.orig 2020-09-26 14:38:36.000000000 +0000
+++ source/utils/CarlaMutex.hpp
@@ -204,7 +204,9 @@ public:
{
pthread_condattr_t cattr;
pthread_condattr_init(&cattr);
+#if defined(PTHREAD_PROCESS_PRIVATE) && !defined(__NetBSD__)
pthread_condattr_setpshared(&cattr, PTHREAD_PROCESS_PRIVATE);
+#endif
pthread_cond_init(&fCondition, &cattr);
pthread_condattr_destroy(&cattr);

View File

@ -0,0 +1,15 @@
$NetBSD$
NetBSD does not have uselocale.
--- source/utils/CarlaScopeUtils.hpp.orig 2020-09-26 14:38:36.000000000 +0000
+++ source/utils/CarlaScopeUtils.hpp
@@ -25,7 +25,7 @@
#include <algorithm>
#include <clocale>
-#if ! (defined(CARLA_OS_HAIKU) || defined(CARLA_OS_MAC) || defined(CARLA_OS_WIN))
+#if ! (defined(CARLA_OS_HAIKU) || defined(CARLA_OS_MAC) || defined(CARLA_OS_WIN) || defined(__NetBSD__))
# define CARLA_USE_NEWLOCALE
#endif