git: 9b7d73b61bb4 - main - audio/furnace: Refactor port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 06 Apr 2025 19:49:03 UTC
The branch main has been updated by ehaupt:
URL: https://cgit.FreeBSD.org/ports/commit/?id=9b7d73b61bb4d65fb0d4578070d7847148d4a4a9
commit 9b7d73b61bb4d65fb0d4578070d7847148d4a4a9
Author: Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2025-04-06 19:48:35 +0000
Commit: Emanuel Haupt <ehaupt@FreeBSD.org>
CommitDate: 2025-04-06 19:48:52 +0000
audio/furnace: Refactor port
* Unbundle fftw3, freetype, libsndfile and portaudio (this is also more
inline with other distros)
* Add USES= compiler:c++14-lang
* Remove USES= tar:xz
* Remove entries for sdl and fmt in GH_TUPLE
* Add EXTRACT_AFTER_ARGS to reduce I/O (reduces workdir size with ~40%)
and as build script "leaks"
* Use CMAKE_OFF/ON/BOOL helpers
* Add patch to fix path for system rtmidi
PR: 285918
---
audio/furnace/Makefile | 45 +++++++++++++++++-----------
audio/furnace/files/patch-src_audio_rtmidi.h | 18 +++++++++++
2 files changed, 46 insertions(+), 17 deletions(-)
diff --git a/audio/furnace/Makefile b/audio/furnace/Makefile
index 02675c36330d..2a94b374a7f6 100644
--- a/audio/furnace/Makefile
+++ b/audio/furnace/Makefile
@@ -1,6 +1,7 @@
PORTNAME= furnace
DISTVERSIONPREFIX= v
DISTVERSION= 0.6.8.1
+PORTREVISION= 1
CATEGORIES= audio
MAINTAINER= ehaupt@FreeBSD.org
@@ -11,39 +12,49 @@ LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libasound.so:audio/alsa-lib \
+ libfftw3.so:math/fftw3 \
libfmt.so:devel/libfmt \
+ libfreetype.so:print/freetype2 \
+ libsndfile.so:audio/libsndfile \
+ libportaudio.so:audio/portaudio \
librtmidi.so:audio/rtmidi \
- libsndfile.so:audio/libsndfile
-USES= cmake desktop-file-utils gl localbase:ldflags pkgconfig sdl \
- shared-mime-info tar:xz
+USES= cmake compiler:c++14-lang desktop-file-utils gl \
+ localbase:ldflags pkgconfig sdl shared-mime-info
USE_GITHUB= yes
GH_ACCOUNT= tildearrow
-GH_TUPLE= libsdl-org:SDL:2359383fc:sdl/extern/SDL \
- superctr:adpcm:ef7a21715:adpcm/extern/adpcm \
- fmtlib:fmt:e57ca2e36:fmt/extern/fmt
+GH_TUPLE= superctr:adpcm:ef7a21715:adpcm/extern/adpcm
USE_GL= gl
USE_SDL= sdl2
-CMAKE_ARGS+= -DBUILD_GUI:BOOL=ON \
- -DSYSTEM_FMT:BOOL=ON \
- -DSYSTEM_LIBSNDFILE:BOOL=ON \
- -DSYSTEM_RTMIDI=ON \
- -DSYSTEM_SDL2:BOOL=ON \
- -DSYSTEM_ZLIB:BOOL=ON
+CMAKE_ON= SYSTEM_FFTW \
+ SYSTEM_FMT \
+ SYSTEM_FREETYPE \
+ SYSTEM_LIBSNDFILE \
+ SYSTEM_PORTAUDIO \
+ SYSTEM_RTMIDI \
+ SYSTEM_SDL2 \
+ SYSTEM_ZLIB
+CMAKE_OFF= WITH_RENDER_OPENGL1
-# tags are bogus, ignore until 0.6 is released
-PORTSCOUT= ignore:1
+EXTRACT_AFTER_ARGS= --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/fftw \
+ --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/fmt \
+ --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/freetype \
+ --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/libsndfile-modified \
+ --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/portaudio \
+ --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/rtmidi \
+ --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/SDL \
+ --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/extern/zlib \
+ --no-same-owner --no-same-permissions
OPTIONS_DEFINE= DOCS JACK NLS
OPTIONS_SUB= yes
JACK_LIB_DEPENDS= libjack.so:audio/jack
-JACK_CMAKE_OFF= -DWITH_JACK:BOOL=OFF
+JACK_CMAKE_BOOL= WITH_JACK
NLS_USES= gettext-runtime
-NLS_CMAKE_ON= -DWITH_LOCALE:BOOL=ON
-NLS_CMAKE_OFF= -DWITH_LOCALE:BOOL=OFF
+NLS_CMAKE_BOOL= WITH_LOCALE
post-install:
${INSTALL_DATA} \
diff --git a/audio/furnace/files/patch-src_audio_rtmidi.h b/audio/furnace/files/patch-src_audio_rtmidi.h
new file mode 100644
index 000000000000..e1da3bff3fb0
--- /dev/null
+++ b/audio/furnace/files/patch-src_audio_rtmidi.h
@@ -0,0 +1,18 @@
+--- src/audio/rtmidi.h.orig 2025-04-06 15:53:42 UTC
++++ src/audio/rtmidi.h
+@@ -17,7 +17,7 @@
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+-#include "../../extern/rtmidi/RtMidi.h"
++#include "rtmidi/RtMidi.h"
+ #include "taAudio.h"
+
+ class TAMidiInRtMidi: public TAMidiIn {
+@@ -51,4 +51,4 @@ class TAMidiOutRtMidi: public TAMidiOut {
+ port(NULL),
+ isOpen(false),
+ isWorking(false) {}
+-};
+\ No newline at end of file
++};