Update ZynAddSubFx to v3.0.3.
This update include many bugfixes and many new features over v2.4.3. The list of changes would be too long for this commit message. Please refer to the ZynAddSubFx release announcements at zynaddsubfx-user@lists.sourceforge.net for more information. PR: 220958 PR: 223635 Tested by: pi @ Approved by: maintainer
This commit is contained in:
parent
4049774e59
commit
a4b790f653
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=455641
@ -2,11 +2,9 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= zynaddsubfx
|
||||
PORTVERSION= 2.4.3
|
||||
PORTREVISION= 7
|
||||
PORTVERSION= 3.0.3
|
||||
CATEGORIES= audio
|
||||
MASTER_SITES= SF
|
||||
DISTNAME= ZynAddSubFX-${PORTVERSION}
|
||||
|
||||
MAINTAINER= hselasky@FreeBSD.org
|
||||
COMMENT= Realtime software synthesizer
|
||||
@ -14,19 +12,20 @@ COMMENT= Realtime software synthesizer
|
||||
LICENSE= GPLv2
|
||||
|
||||
LIB_DEPENDS= libfftw3.so:math/fftw3 \
|
||||
libmxml.so:textproc/mxml
|
||||
libmxml.so:textproc/mxml \
|
||||
liblo.so:audio/liblo
|
||||
|
||||
USES= tar:bzip2 cmake pkgconfig
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
OPTIONS_DEFINE= JACK GUI PORTAUDIO LASH LO DOCS EXAMPLES
|
||||
OPTIONS_DEFAULT= JACK GUI PORTAUDIO
|
||||
OPTIONS_DEFINE= OSS JACK GUI PORTAUDIO LASH DOCS EXAMPLES
|
||||
OPTIONS_DEFAULT= OSS JACK GUI PORTAUDIO
|
||||
OPTIONS_RADIO= AUDIO
|
||||
OPTIONS_RADIO_AUDIO= ALSAMIDI DSSI
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
ALSAMIDI_DESC= MIDI input through ALSA
|
||||
DSSI_DESC= DSSI Plugin
|
||||
LO_DESC= Open Sound Control support via LibLO
|
||||
|
||||
ALSAMIDI_LIB_DEPENDS= libasound.so:audio/alsa-lib
|
||||
ALSAMIDI_CMAKE_OFF= -DAlsaEnable:BOOL=OFF
|
||||
@ -37,27 +36,32 @@ DSSI_RUN_DEPENDS= dssi>0:audio/dssi
|
||||
DSSI_CFLAGS= -I${LOCALBASE}/include/dssi
|
||||
DSSI_CMAKE_OFF= -DDssiEnable:BOOL=OFF
|
||||
|
||||
GUI_LIB_DEPENDS= libfltk.so:x11-toolkits/fltk
|
||||
GUI_LIB_DEPENDS= libfltk.so:x11-toolkits/fltk \
|
||||
libpng16.so:graphics/png \
|
||||
libfontconfig.so:x11-fonts/fontconfig
|
||||
GUI_ON= -DGuiModule:STRING=fltk
|
||||
GUI_CMAKE_OFF= -DGuiModule:STRING=OFF
|
||||
GUI_USE+= XORG=x11,xext,xfixes,xcursor,ice,sm,xpm,xinerama,xft
|
||||
GUI_USE+= GL=glu
|
||||
GUI_USES= jpeg
|
||||
|
||||
LO_LIB_DEPENDS= liblo.so:audio/liblo
|
||||
LO_CMAKE_OFF= -DLibloEnable:BOOL=OFF
|
||||
OSS_CMAKE_ON= -DOssEnable:BOOL=ON
|
||||
OSS_CMAKE_OFF= -DOssEnable:BOOL=OFF
|
||||
|
||||
LASH_LIB_DEPENDS= liblash.so:audio/lash
|
||||
LASH_CMAKE_OFF= -DLashEnabe:BOOL=OFF
|
||||
LASH_CMAKE_OFF= -DLashEnable:BOOL=OFF
|
||||
|
||||
JACK_LIB_DEPENDS= libjack.so:audio/jack
|
||||
JACK_CMAKE_OFF= -DJackEnable:BOOL=OFF
|
||||
|
||||
PORTAUDIO_LIB_DEPENDS= libportaudio.so:audio/portaudio
|
||||
PORTAUDIO_CMAKE_OFF= -DPaEnabe:BOOL=OFF
|
||||
PORTAUDIO_LDFLAGS= -lportaudio
|
||||
PORTAUDIO_CMAKE_OFF= -DPaEnable:BOOL=OFF
|
||||
PORTAUDIO_LDFLAGS= -L${LOCALBASE}/lib -lportaudio
|
||||
|
||||
PORTDOCS= *
|
||||
|
||||
DOCSRCDIR1= ${WRKSRC}
|
||||
DOC_FILES1= AUTHORS.txt ChangeLog FAQ.txt HISTORY.txt README.txt
|
||||
DOC_FILES1= AUTHORS.txt ChangeLog HISTORY.txt
|
||||
|
||||
DOCSRCDIR2= ${WRKSRC}/doc
|
||||
DOCSDIR2= ${DOCSDIR}/doc
|
||||
@ -70,6 +74,9 @@ DOC_FILES3= *.png *.jpg
|
||||
|
||||
PORTEXAMPLES= *
|
||||
|
||||
CMAKE_ARGS+= -DZYN_DATADIR:STRING=${DATADIR}
|
||||
CMAKE_ARGS+= -DZYN_EXAMPLESDIR:STRING=${EXAMPLESDIR}
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if ${ARCH} == "i386" || ${ARCH} == "amd64"
|
||||
@ -77,17 +84,14 @@ CFLAGS+= -DASM_F2I_YES
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e \
|
||||
'/FILES/s|^|#| ; \
|
||||
/DESTINATION/s|^|#| ; \
|
||||
/[[:blank:]])/s|^|#|' ${WRKSRC}/CMakeLists.txt
|
||||
@${REINPLACE_CMD} -e \
|
||||
's|-O3 .* -fomit-frame-pointer|| ; \
|
||||
/-DASM_F2I_YES/d ; \
|
||||
/-g #/d ; \
|
||||
/pthread/d ; \
|
||||
s|lib64|lib|' ${WRKSRC}/src/CMakeLists.txt
|
||||
@${REINPLACE_CMD} -e 's|%%DATADIR%%|${DATADIR}|' ${WRKSRC}/src/Misc/Config.cpp
|
||||
/-g #/d' ${WRKSRC}/src/CMakeLists.txt
|
||||
|
||||
post-configure-GUI-off:
|
||||
# kill a stray -lX11, fixed upstream
|
||||
@${REINPLACE_CMD} -e 's| -lX11||' ${WRKSRC}/build.ninja
|
||||
|
||||
post-install:
|
||||
@${MKDIR} ${STAGEDIR}${DATADIR}/banks \
|
||||
@ -101,7 +105,5 @@ post-install:
|
||||
${INSTALL_DATA} ${DOC_FILES1:S|^|${DOCSRCDIR1}/|} ${STAGEDIR}${DOCSDIR}
|
||||
${INSTALL_DATA} ${DOC_FILES2:S|^|${DOCSRCDIR2}/|} ${STAGEDIR}${DOCSDIR2}
|
||||
${INSTALL_DATA} ${DOC_FILES3:S|^|${DOCSRCDIR3}/|} ${STAGEDIR}${DOCSDIR3}
|
||||
(cd ${WRKSRC}/instruments/examples && \
|
||||
${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
@ -1,2 +1,3 @@
|
||||
SHA256 (ZynAddSubFX-2.4.3.tar.bz2) = b84b595660ccec3ebc364c29c2d29def7d28a6947fc1dfb26bd8c34ca0e7f54d
|
||||
SIZE (ZynAddSubFX-2.4.3.tar.bz2) = 2536667
|
||||
TIMESTAMP = 1512549274
|
||||
SHA256 (zynaddsubfx-3.0.3.tar.bz2) = 11de448f9664076e9e8f2bcb8f7f45bf54a13516b7d6693da1ef8c511b8ed7c1
|
||||
SIZE (zynaddsubfx-3.0.3.tar.bz2) = 7989258
|
||||
|
@ -1,93 +0,0 @@
|
||||
commit ecfc42ce3e2564e71ef78f48a2c736bf37f17281
|
||||
Author: fundamental <mark.d.mccurry@gmail.com>
|
||||
Date: Wed Oct 31 23:43:55 2012 -0400
|
||||
|
||||
C++11: Build now compiles without errors
|
||||
|
||||
Due to std::complex<T>::imag() and ::real() changing their signatures, in C++11,
|
||||
code dealing with these was updated to compile under both versions of C++.
|
||||
|
||||
diff --git a/src/Effects/Alienwah.cpp b/src/Effects/Alienwah.cpp
|
||||
index 078a964..b3110ba 100644
|
||||
--- src/Effects/Alienwah.cpp
|
||||
+++ src/Effects/Alienwah.cpp
|
||||
@@ -65,7 +65,7 @@ void Alienwah::out(const Stereo<float *> &smp)
|
||||
complex<float> tmp = clfol * x + oldclfol * x1;
|
||||
|
||||
complex<float> out = tmp * oldl[oldk];
|
||||
- out.real() += (1 - fabs(fb)) * smp.l[i] * pangainL;
|
||||
+ out += (1 - fabs(fb)) * smp.l[i] * pangainL;
|
||||
|
||||
oldl[oldk] = out;
|
||||
float l = out.real() * 10.0f * (fb + 0.1f);
|
||||
@@ -74,7 +74,7 @@ void Alienwah::out(const Stereo<float *> &smp)
|
||||
tmp = clfor * x + oldclfor * x1;
|
||||
|
||||
out = tmp * oldr[oldk];
|
||||
- out.real() += (1 - fabs(fb)) * smp.r[i] * pangainR;
|
||||
+ out += (1 - fabs(fb)) * smp.r[i] * pangainR;
|
||||
|
||||
oldr[oldk] = out;
|
||||
float r = out.real() * 10.0f * (fb + 0.1f);
|
||||
diff --git a/src/Params/PADnoteParameters.cpp b/src/Params/PADnoteParameters.cpp
|
||||
index 8d612b5..c972233 100644
|
||||
--- src/Params/PADnoteParameters.cpp
|
||||
+++ src/Params/PADnoteParameters.cpp
|
||||
@@ -477,7 +477,7 @@ void PADnoteParameters::generatespectrum_bandwidthMode(float *spectrum,
|
||||
float idfreq = i / (float)profilesize - 0.5f;
|
||||
idfreq *= ibw;
|
||||
int spfreq = (int) (idfreq + ibasefreq);
|
||||
- float fspfreq = fmod((double)idfreq + ibasefreq, 1.0f);
|
||||
+ float fspfreq = fmodf((float)idfreq + ibasefreq, 1.0f);
|
||||
if(spfreq <= 0)
|
||||
continue;
|
||||
if(spfreq >= size - 1)
|
||||
diff --git a/src/Synth/OscilGen.cpp b/src/Synth/OscilGen.cpp
|
||||
index 3351d82..44e40e4 100644
|
||||
--- src/Synth/OscilGen.cpp
|
||||
+++ src/Synth/OscilGen.cpp
|
||||
@@ -616,12 +616,9 @@ void OscilGen::prepare()
|
||||
clearAll(oscilFFTfreqs);
|
||||
if(Pcurrentbasefunc == 0) //the sine case
|
||||
for(int i = 0; i < MAX_AD_HARMONICS - 1; ++i) {
|
||||
- oscilFFTfreqs[i
|
||||
- + 1].real() = -hmag[i]
|
||||
- * sinf(hphase[i] * (i + 1)) / 2.0f;
|
||||
- oscilFFTfreqs[i
|
||||
- + 1].imag() = hmag[i]
|
||||
- * cosf(hphase[i] * (i + 1)) / 2.0f;
|
||||
+ oscilFFTfreqs[i + 1] =
|
||||
+ std::complex<float>(-hmag[i] * sinf(hphase[i] * (i + 1)) / 2.0f,
|
||||
+ hmag[i] * cosf(hphase[i] * (i + 1)) / 2.0f);
|
||||
}
|
||||
else
|
||||
for(int j = 0; j < MAX_AD_HARMONICS; ++j) {
|
||||
@@ -698,10 +695,12 @@ void OscilGen::adaptiveharmonic(fft_t *f, float freq)
|
||||
break;
|
||||
else {
|
||||
if(down) {
|
||||
- f[high].real() += inf[i].real() * (1.0f - low);
|
||||
- f[high].imag() += inf[i].imag() * (1.0f - low);
|
||||
- f[high + 1].real() += inf[i].real() * low;
|
||||
- f[high + 1].imag() += inf[i].imag() * low;
|
||||
+ f[high] =
|
||||
+ std::complex<float>(f[high].real() + inf[i].real() * (1.0f - low),
|
||||
+ f[high].imag() + inf[i].imag() * (1.0f - low));
|
||||
+
|
||||
+ f[high + 1] = std::complex<float>(f[high + 1].real() + inf[i].real() * low,
|
||||
+ f[high + 1].imag() + inf[i].imag() * low);
|
||||
}
|
||||
else {
|
||||
hc = inf[high].real()
|
||||
@@ -1112,8 +1111,9 @@ void OscilGen::getfromXML(XMLwrapper *xml)
|
||||
if(xml->enterbranch("BASE_FUNCTION")) {
|
||||
for(int i = 1; i < synth->oscilsize / 2; ++i)
|
||||
if(xml->enterbranch("BF_HARMONIC", i)) {
|
||||
- basefuncFFTfreqs[i].real() = xml->getparreal("cos", 0.0f);
|
||||
- basefuncFFTfreqs[i].imag() = xml->getparreal("sin", 0.0f);
|
||||
+ basefuncFFTfreqs[i] =
|
||||
+ std::complex<float>(xml->getparreal("cos", 0.0f),
|
||||
+ xml->getparreal("sin", 0.0f));
|
||||
xml->exitbranch();
|
||||
}
|
||||
xml->exitbranch();
|
@ -1,30 +0,0 @@
|
||||
--- src/CMakeLists.txt.orig 2012-06-16 04:22:35 UTC
|
||||
+++ src/CMakeLists.txt
|
||||
@@ -127,6 +127,13 @@ set (BuildOptionsDebug
|
||||
# From here on, the setting variables have been prepared so concentrate
|
||||
# on the actual compiling.
|
||||
|
||||
+if(PaEnable)
|
||||
+ include_directories(${PORTAUDIO_INCLUDE_DIRS})
|
||||
+ add_definitions(-DPORTAUDIO=1)
|
||||
+ list(APPEND AUDIO_LIBRARIES ${PORTAUDIO_LIBRARIES})
|
||||
+ list(APPEND AUDIO_LIBRARY_DIRS ${PORTAUDIO_LIBRARY_DIRS})
|
||||
+endif()
|
||||
+
|
||||
if(AlsaEnable)
|
||||
list(APPEND AUDIO_LIBRARIES ${ASOUND_LIBRARY})
|
||||
list(APPEND AUDIO_LIBRARY_DIRS ${ASOUND_LIBRARY_DIRS})
|
||||
@@ -143,13 +150,6 @@ if(OssEnable)
|
||||
add_definitions(-DOSS=1)
|
||||
endif(OssEnable)
|
||||
|
||||
-if(PaEnable)
|
||||
- include_directories(${PORTAUDIO_INCLUDE_DIR})
|
||||
- add_definitions(-DPORTAUDIO=1)
|
||||
- list(APPEND AUDIO_LIBRARIES ${PORTAUDIO_LIBRARIES})
|
||||
- list(APPEND AUDIO_LIBRARY_DIRS ${PORTAUDIO_LIBRARY_DIRS})
|
||||
-endif()
|
||||
-
|
||||
if (CompileTests)
|
||||
ENABLE_TESTING()
|
||||
endif()
|
@ -1,26 +0,0 @@
|
||||
--- src/Misc/Config.cpp.orig 2011-12-19 21:14:30 UTC
|
||||
+++ src/Misc/Config.cpp
|
||||
@@ -84,10 +84,9 @@ void Config::init()
|
||||
//banks
|
||||
cfg.bankRootDirList[0] = "~/banks";
|
||||
cfg.bankRootDirList[1] = "./";
|
||||
- cfg.bankRootDirList[2] = "/usr/share/zynaddsubfx/banks";
|
||||
- cfg.bankRootDirList[3] = "/usr/local/share/zynaddsubfx/banks";
|
||||
- cfg.bankRootDirList[4] = "../banks";
|
||||
- cfg.bankRootDirList[5] = "banks";
|
||||
+ cfg.bankRootDirList[2] = "%%DATADIR%%/banks";
|
||||
+ cfg.bankRootDirList[3] = "../banks";
|
||||
+ cfg.bankRootDirList[4] = "banks";
|
||||
}
|
||||
|
||||
if(cfg.presetsDirList[0].empty()) {
|
||||
@@ -95,8 +94,7 @@ void Config::init()
|
||||
cfg.presetsDirList[0] = "./";
|
||||
cfg.presetsDirList[1] = "../presets";
|
||||
cfg.presetsDirList[2] = "presets";
|
||||
- cfg.presetsDirList[3] = "/usr/share/zynaddsubfx/presets";
|
||||
- cfg.presetsDirList[4] = "/usr/local/share/zynaddsubfx/presets";
|
||||
+ cfg.presetsDirList[3] = "%%DATADIR%%/presets";
|
||||
}
|
||||
cfg.LinuxALSAaudioDev = "default";
|
||||
cfg.nameTag = "";
|
@ -1,11 +0,0 @@
|
||||
--- src/Misc/Master.h.orig 2012-06-16 04:02:12 UTC
|
||||
+++ src/Misc/Master.h
|
||||
@@ -33,6 +33,8 @@
|
||||
|
||||
#include "../Params/Controller.h"
|
||||
|
||||
+#include <pthread.h>
|
||||
+
|
||||
typedef enum {
|
||||
MUTEX_TRYLOCK, MUTEX_LOCK, MUTEX_UNLOCK
|
||||
} lockset;
|
@ -1,10 +0,0 @@
|
||||
--- src/Misc/Part.h.orig 2012-06-14 14:35:03 UTC
|
||||
+++ src/Misc/Part.h
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "../Misc/Microtonal.h"
|
||||
|
||||
#include <list> // For the monomemnotes list.
|
||||
+#include <pthread.h>
|
||||
|
||||
class EffectMgr;
|
||||
class ADnoteParameters;
|
@ -1,10 +0,0 @@
|
||||
--- src/Nio/SafeQueue.h.orig 2011-12-19 21:14:30 UTC
|
||||
+++ src/Nio/SafeQueue.h
|
||||
@@ -2,6 +2,7 @@
|
||||
#ifndef SAFEQUEUE_H
|
||||
#define SAFEQUEUE_H
|
||||
#include <cstdlib>
|
||||
+#include <pthread.h>
|
||||
#include <semaphore.h>
|
||||
|
||||
/**
|
@ -1,17 +0,0 @@
|
||||
CMake 2.8.12 support.
|
||||
|
||||
It does not make sense to add MYFLTK_LIBRARIES (which translates to
|
||||
something like "-L/usr/local/lib -lfoo -lbar") to the link interface
|
||||
library of a static library like libzynaddsubfx_gui.a.
|
||||
|
||||
Removing FLTK_LIBRARIES does not cause any problems either, as
|
||||
GUI_LIBRARIES in src/CMakeLists.txt sets all the required GUI-related
|
||||
libraries that need to be linked against the zynaddsubfx binary.
|
||||
--- src/UI/CMakeLists.txt.orig 2012-06-10 22:20:18 UTC
|
||||
+++ src/UI/CMakeLists.txt
|
||||
@@ -32,5 +32,3 @@ add_library(zynaddsubfx_gui STATIC
|
||||
NioUI.cpp
|
||||
WidgetPDial.cpp
|
||||
)
|
||||
-
|
||||
-target_link_libraries(zynaddsubfx_gui ${FLTK_LIBRARIES} ${MYFLTK_LIBRARIES})
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user