git: c6041c0a0db7 - main - audio/qtractor: update 1.6.2 → 1.6.4
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 06 Sep 2026 17:50:59 UTC
The branch main has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=c6041c0a0db76392dba9a55912a34f8a1a6a030a
commit c6041c0a0db76392dba9a55912a34f8a1a6a030a
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-09-06 17:49:58 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-09-06 17:50:26 +0000
audio/qtractor: update 1.6.2 → 1.6.4
---
audio/qtractor/Makefile | 35 ++++++++--------------
audio/qtractor/distinfo | 16 ++++++----
.../patch-src_vst3_pluginterfaces_base_fplatform.h | 23 ++++++++++++++
...patch-src_vst3_pluginterfaces_base_funknown.cpp | 23 ++++++++++++++
4 files changed, 69 insertions(+), 28 deletions(-)
diff --git a/audio/qtractor/Makefile b/audio/qtractor/Makefile
index dd7c02c37475..9a3d1c1b3a96 100644
--- a/audio/qtractor/Makefile
+++ b/audio/qtractor/Makefile
@@ -1,11 +1,13 @@
PORTNAME= qtractor
DISTVERSIONPREFIX= v
-DISTVERSION= 1.6.2
+DISTVERSION= 1.6.4
CATEGORIES= audio
-MASTER_SITES= https://download.steinberg.net/sdk_downloads/:vst3sdk
-DISTFILES= ${VST3_SDK_ARCHIVE}:vst3sdk
EXTRACT_ONLY= ${GH_ACCOUNT}-${GH_PROJECT}-${GH_TAGNAME}_GH0${EXTRACT_SUFX} \
- breakfastquay-minibpm-43de991_GH0${EXTRACT_SUFX}
+ free-audio-clap-195b42a_GH0${EXTRACT_SUFX} \
+ breakfastquay-minibpm-43de991_GH0${EXTRACT_SUFX} \
+ steinbergmedia-vst3_base-fcf9da0_GH0${EXTRACT_SUFX} \
+ steinbergmedia-vst3_pluginterfaces-4f547e8_GH0${EXTRACT_SUFX} \
+ steinbergmedia-vst3_public_sdk-586dc5e_GH0${EXTRACT_SUFX}
MAINTAINER= yuri@FreeBSD.org
COMMENT= Audio/MIDI multi-track sequencer
@@ -42,7 +44,11 @@ USE_QT= core gui network svg widgets x11extras xml buildtools:build linguisttoo
USE_GITHUB= yes
GH_ACCOUNT= rncbc
-GH_TUPLE= breakfastquay:minibpm:43de991:minibpm/src/minibpm
+GH_TUPLE= free-audio:clap:195b42a:clap/src/clap \
+ breakfastquay:minibpm:43de991:minibpm/src/minibpm \
+ steinbergmedia:vst3_base:fcf9da0:vst3_base/src/vst3/base \
+ steinbergmedia:vst3_pluginterfaces:4f547e8:vst3_pluginterfaces/src/vst3/pluginterfaces \
+ steinbergmedia:vst3_public_sdk:586dc5e:vst3_public_sdk/src/vst3/public.sdk
CMAKE_OFF= CONFIG_CLAP # for audio/clap, but it doesn't install anything
CMAKE_OFF+= CONFIG_QT6 # breaks with Qt6: Gtk-ERROR **: 21:10:56.939: GTK 2.x symbols detected. Using GTK 2.x and GTK 3 in the same process is not supported
@@ -54,28 +60,11 @@ VST3_DESC= Enable VST3 plug-in support
VST3_USES= xorg
VST3_USE= XORG=xcb
VST3_CMAKE_BOOL= CONFIG_VST3
-VST3_CMAKE_ON= -DCONFIG_VST3SDK=${WRKDIR}/VST_SDK/vst3sdk
-#VST3_BUILD_DEPENDS= vst3sdk>0:audio/vst3sdk # this is supposed to work instead of bundled archive, but it doesn't for some reason, see https://github.com/rncbc/qtractor/issues/331
-VST3_SDK_ARCHIVE= vst-sdk_3.7.4_build-25_2021-12-16.zip
-
-post-extract-VST3-on:
- @cd ${WRKDIR} && unzip -qq ${DISTDIR}/${VST3_SDK_ARCHIVE}
+VST3_CMAKE_ON= -DCONFIG_VST3SDK=${WRKSRC}/src/vst3
post-patch:
@${REINPLACE_CMD} \
's|the ALSA Sequencer kernel module (snd-seq-midi)|alsa-seq-server (installed by audio/alsa-seq-server)|' \
${WRKSRC}/src/qtractorMainForm.cpp
-post-patch-VST3-on:
- @${REINPLACE_CMD} -e ' \
- s,__linux__,__linux__ || __FreeBSD__,; \
- s,endian.h,sys/endian.h, \
- ' \
- ${WRKDIR}/VST_SDK/vst3sdk/pluginterfaces/base/fplatform.h
- @${REINPLACE_CMD} -e ' \
- s,stdatomic.h,atomic,; \
- s,atomic_int_least32_t,std::atomic_int_least32_t, \
- ' \
- ${WRKDIR}/VST_SDK/vst3sdk/pluginterfaces/base/funknown.cpp
-
.include <bsd.port.mk>
diff --git a/audio/qtractor/distinfo b/audio/qtractor/distinfo
index fac691298d9c..4d0dced31828 100644
--- a/audio/qtractor/distinfo
+++ b/audio/qtractor/distinfo
@@ -1,7 +1,13 @@
-TIMESTAMP = 1784096420
-SHA256 (vst-sdk_3.7.4_build-25_2021-12-16.zip) = 49b0e46345af323ab84be9df065653b2a6531745dea6f3ac3fb47915df9f3a81
-SIZE (vst-sdk_3.7.4_build-25_2021-12-16.zip) = 104869292
-SHA256 (rncbc-qtractor-v1.6.2_GH0.tar.gz) = 41903e3bbd148a27527b2937facc4bf1ea129d0061721ab6e3c0e52006b65c48
-SIZE (rncbc-qtractor-v1.6.2_GH0.tar.gz) = 2089235
+TIMESTAMP = 1788716443
+SHA256 (rncbc-qtractor-v1.6.4_GH0.tar.gz) = 6f75110dc48633a2c58d6a3ced28bdd34564d47d64e1c3fa1d7da0ceef73e4ae
+SIZE (rncbc-qtractor-v1.6.4_GH0.tar.gz) = 2096992
+SHA256 (free-audio-clap-195b42a_GH0.tar.gz) = a7a896045a98464cbd1dcaa96868c6e5d33a24daef87a92385e2cb798c156baa
+SIZE (free-audio-clap-195b42a_GH0.tar.gz) = 2357137
SHA256 (breakfastquay-minibpm-43de991_GH0.tar.gz) = 925d18acdd0a902e7ea2ff3722ebe247895b044d1fc35b7b9ba072b77c3f7b58
SIZE (breakfastquay-minibpm-43de991_GH0.tar.gz) = 41564
+SHA256 (steinbergmedia-vst3_base-fcf9da0_GH0.tar.gz) = 0bdd7c9c719753f9a71c561e2cd913409a962e0a6022046f5a6cc182ef54fc83
+SIZE (steinbergmedia-vst3_base-fcf9da0_GH0.tar.gz) = 62425
+SHA256 (steinbergmedia-vst3_pluginterfaces-4f547e8_GH0.tar.gz) = 2307847acf173f6fab72fd2249bda7f115d4c19d5bec01c6ffad2b839a2630a6
+SIZE (steinbergmedia-vst3_pluginterfaces-4f547e8_GH0.tar.gz) = 111422
+SHA256 (steinbergmedia-vst3_public_sdk-586dc5e_GH0.tar.gz) = 7f31e62a2cbe73b91f8d23e1b7162060bec2c9bca3283706a8f463c7b43e5524
+SIZE (steinbergmedia-vst3_public_sdk-586dc5e_GH0.tar.gz) = 12767978
diff --git a/audio/qtractor/files/patch-src_vst3_pluginterfaces_base_fplatform.h b/audio/qtractor/files/patch-src_vst3_pluginterfaces_base_fplatform.h
new file mode 100644
index 000000000000..b5bd02c4df7f
--- /dev/null
+++ b/audio/qtractor/files/patch-src_vst3_pluginterfaces_base_fplatform.h
@@ -0,0 +1,23 @@
+-- Add FreeBSD to the Linux platform branch and use sys/endian.h instead of endian.h.
+-- The VST3 SDK does not natively support FreeBSD, so reuse the Linux code path.
+
+--- src/vst3/pluginterfaces/base/fplatform.h.orig 2026-09-06 17:42:39 UTC
++++ src/vst3/pluginterfaces/base/fplatform.h
+@@ -126,7 +126,7 @@
+ //-----------------------------------------------------------------------------
+ // LINUX
+ //-----------------------------------------------------------------------------
+-#elif (defined (__gnu_linux__) && __gnu_linux__) || (defined (__linux__) && __linux__)
++#elif (defined (__gnu_linux__) && __gnu_linux__) || (defined (__linux__) && __linux__) || defined (__FreeBSD__)
+ #define SMTG_OS_LINUX 1
+ #define SMTG_OS_MACOS 0
+ #define SMTG_OS_WINDOWS 0
+@@ -156,7 +156,7 @@
+ #endif
+ #define SMTG_CPU_ARM_64EC 0
+
+- #include <endian.h>
++ #include <sys/endian.h>
+ #if __BYTE_ORDER == __LITTLE_ENDIAN
+ #define BYTEORDER kLittleEndian
+ #else
diff --git a/audio/qtractor/files/patch-src_vst3_pluginterfaces_base_funknown.cpp b/audio/qtractor/files/patch-src_vst3_pluginterfaces_base_funknown.cpp
new file mode 100644
index 000000000000..bb837d58890f
--- /dev/null
+++ b/audio/qtractor/files/patch-src_vst3_pluginterfaces_base_funknown.cpp
@@ -0,0 +1,23 @@
+-- Use C++ <atomic> instead of C stdatomic.h for FreeBSD libc++ compatibility.
+-- This and similar issues have been reported to VST but they aren't too responsive.
+
+--- src/vst3/pluginterfaces/base/funknown.cpp.orig 2026-09-06 17:43:34 UTC
++++ src/vst3/pluginterfaces/base/funknown.cpp
+@@ -55,7 +55,7 @@
+ #endif
+
+ #if defined (SMTG_USE_STDATOMIC_H) && SMTG_USE_STDATOMIC_H
+-#include <stdatomic.h>
++#include <atomic>
+ #endif
+
+ namespace Steinberg {
+@@ -87,7 +87,7 @@ int32 PLUGIN_API atomicAdd (int32& var, int32 d)
+ int32 PLUGIN_API atomicAdd (int32& var, int32 d)
+ {
+ #if SMTG_USE_STDATOMIC_H
+- return atomic_fetch_add (reinterpret_cast<atomic_int_least32_t*> (&var), d) + d;
++ return atomic_fetch_add (reinterpret_cast<std::atomic_int_least32_t*> (&var), d) + d;
+ #else
+ #if SMTG_OS_WINDOWS
+ #ifdef __MINGW32__