From 78f8f16f0fc79fb3bd61fbada0285fa767457847 Mon Sep 17 00:00:00 2001 From: nia Date: Sun, 6 Oct 2019 17:29:33 +0000 Subject: [PATCH] fluidsynth: Update to 2.0.7 Switched to github for upstream, build system now uses cmake. Changes in major release 2.0.0: New Features implement polyphonic key pressure (#185, thanks to @mawe42) add API for manipulating default modulators (#265, #164, #71, thanks to @mawe42) add midi.autoconnect setting for automatically connecting fluidsynth with available MIDI Input ports (currently only for alsa_seq thanks to @tomcucinotta) add seek support to midi-player (#261, thanks to @loki666) add support for text and lyrics midi events (#111) add support for 24 bit sample soundfonts (#301, #329) consider "important midi channels" during overflow calculation synth.overflow.important-channels (#294, thanks to @mawe42) add a custom default modulator for MIDI CC8 to support proper stereo balance (#317, thanks to @mawe42) add support for an additional custom high-pass filter (#331, thanks to @mawe42) incorporate JJC's polymono patch (#306, #236, #158) add basic channel support implement MIDI modes Omni On, Omni Off, Poly, Mono implement portamento control implement legato control implement breath control add support soundfont loading from memory (#241) add a profiling command interface (#345, thanks to @jjceresa) add support on demand sample loading (#366, thanks to @mawe42) add reverb and chorus settings (#49) allow using the midi router to manipulate midi files when playing from command line fluid_synth_process() received a new proper implementation synth.effects-groups allows to render effects of all MIDI channels to separate audio channels General CMake 3.1.0 or later is required for building consider channel pressure, key pressure and pitch wheel for lower attenuation boundary calculation (#163, thanks to @mawe42) complete rewrite of the LADSPA subsystem (#227, #235, thanks to @mawe42) complete rewrite of the Soundfont Loader API (#334, #309) avoid reverb amplitude growing exponentially (#279, thanks to @jjceresa) removed deprecated autotools build system a minimal build of fluidsynth without requiring pkg-config is supported remove deprecated LADCCA support use unique device names for the audio.portaudio.device setting (#284, thanks to @jjceresa) documentation of the settings moved to http://www.fluidsynth.org/api/fluidsettings.xml adjust MIDI Pan and Balance calculations as outlined by MIDI Recommended Practice (RP-036) (#317, thanks to @mawe42) make network support compile-time optional (#307, thanks to @carlo-bramini) speed up calculation of chorus modulation waveforms for devices without FPU (#321, thanks to @carlo-bramini) cleanup internal audio rendering and mixing engine (#197) reduce memory consumption of loaded soundfonts (#370, thanks to @mawe42) --- audio/fluidsynth/Makefile | 42 ++++++++++++------- audio/fluidsynth/PLIST | 8 ++-- audio/fluidsynth/distinfo | 14 +++---- audio/fluidsynth/hacks.mk | 10 ----- audio/fluidsynth/patches/patch-aa | 67 ------------------------------- audio/fluidsynth/patches/patch-ac | 22 ---------- audio/fluidsynth/patches/patch-ad | 13 ------ audio/fluidsynth/patches/patch-ae | 53 ------------------------ 8 files changed, 38 insertions(+), 191 deletions(-) delete mode 100644 audio/fluidsynth/hacks.mk delete mode 100644 audio/fluidsynth/patches/patch-aa delete mode 100644 audio/fluidsynth/patches/patch-ac delete mode 100644 audio/fluidsynth/patches/patch-ad delete mode 100644 audio/fluidsynth/patches/patch-ae diff --git a/audio/fluidsynth/Makefile b/audio/fluidsynth/Makefile index dc1872d30bcd..035d0c55227a 100644 --- a/audio/fluidsynth/Makefile +++ b/audio/fluidsynth/Makefile @@ -1,32 +1,46 @@ -# $NetBSD: Makefile,v 1.26 2019/07/06 18:52:06 nia Exp $ +# $NetBSD: Makefile,v 1.27 2019/10/06 17:29:33 nia Exp $ -DISTNAME= fluidsynth-1.1.6 -PKGREVISION= 2 +DISTNAME= fluidsynth-2.0.7 CATEGORIES= audio -MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=fluidsynth/} -EXTRACT_SUFX= .tar.bz2 +MASTER_SITES= ${MASTER_SITE_GITHUB:=FluidSynth/} +GITHUB_TAG= v${PKGVERSION_NOREV} MAINTAINER= pkgsrc-users@NetBSD.org HOMEPAGE= http://www.fluidsynth.org/ COMMENT= Software synthesizer based on SoundFont2 LICENSE= gnu-lgpl-v2 -USE_LIBTOOL= yes -USE_TOOLS+= pkg-config -GNU_CONFIGURE= yes -PKGCONFIG_OVERRIDE= fluidsynth.pc.in -PTHREAD_AUTO_VARS= yes +USE_CMAKE= yes +USE_TOOLS+= pkg-config -CPPFLAGS+= -DDEVOSSAUDIO="\"${DEVOSSAUDIO}\"" -LDFLAGS+= ${LIBOSSAUDIO} +CMAKE_ARGS+= -DMAN_INSTALL_DIR=${PREFIX}/${PKGMANDIR}/man1 +CMAKE_ARGS+= -DLIB_SUFFIX="" + +PKGCONFIG_OVERRIDE= fluidsynth.pc.in CPPFLAGS.SunOS+= -Du_int8_t=uint8_t -Du_int16_t=uint16_t CPPFLAGS.SunOS+= -Du_int32_t=uint32_t -Du_int64_t=uint64_t CPPFLAGS.SunOS+= -DSOUND_PCM_WRITE_CHANNELS=SNDCTL_DSP_CHANNELS -LIBS.SunOS+= -lsocket +LDFLAGS.SunOS+= -lsocket -.include "../../devel/glib2/buildlink3.mk" +.include "../../mk/bsd.prefs.mk" +.include "../../mk/oss.buildlink3.mk" + +.if ${OSS_TYPE} != "none" +LDFLAGS+= ${LIBOSSAUDIO} +SUBST_CLASSES+= oss +SUBST_STAGE.oss= pre-configure +SUBST_MESSAGE.oss= Correcting the path to the OSS device. +SUBST_FILES.oss+= src/drivers/fluid_oss.c +SUBST_SED.oss+= -e "s,/dev/dsp,${DEVOSSAUDIO},g" +. if ${OPSYS} == "NetBSD" +SUBST_SED.oss+= -e "s,/dev/midi,/dev/rmidi0,g" +. endif +.endif + +.include "../../audio/libsndfile/buildlink3.mk" .include "../../devel/libgetopt/buildlink3.mk" +.include "../../devel/glib2/buildlink3.mk" .include "../../mk/readline.buildlink3.mk" .include "../../mk/oss.buildlink3.mk" .include "../../mk/pthread.buildlink3.mk" diff --git a/audio/fluidsynth/PLIST b/audio/fluidsynth/PLIST index 791dec433b9e..4710802c75c3 100644 --- a/audio/fluidsynth/PLIST +++ b/audio/fluidsynth/PLIST @@ -1,14 +1,14 @@ -@comment $NetBSD: PLIST,v 1.2 2009/06/14 17:32:08 joerg Exp $ +@comment $NetBSD: PLIST,v 1.3 2019/10/06 17:29:33 nia Exp $ bin/fluidsynth include/fluidsynth.h include/fluidsynth/audio.h include/fluidsynth/event.h include/fluidsynth/gen.h +include/fluidsynth/ladspa.h include/fluidsynth/log.h include/fluidsynth/midi.h include/fluidsynth/misc.h include/fluidsynth/mod.h -include/fluidsynth/ramsfont.h include/fluidsynth/seq.h include/fluidsynth/seqbind.h include/fluidsynth/settings.h @@ -18,6 +18,8 @@ include/fluidsynth/synth.h include/fluidsynth/types.h include/fluidsynth/version.h include/fluidsynth/voice.h -lib/libfluidsynth.la +lib/libfluidsynth.so +lib/libfluidsynth.so.2 +lib/libfluidsynth.so.2.2.0 lib/pkgconfig/fluidsynth.pc man/man1/fluidsynth.1 diff --git a/audio/fluidsynth/distinfo b/audio/fluidsynth/distinfo index 90488c331009..1226e0bbfe78 100644 --- a/audio/fluidsynth/distinfo +++ b/audio/fluidsynth/distinfo @@ -1,10 +1,6 @@ -$NetBSD: distinfo,v 1.14 2015/11/03 01:12:31 agc Exp $ +$NetBSD: distinfo,v 1.15 2019/10/06 17:29:33 nia Exp $ -SHA1 (fluidsynth-1.1.6.tar.bz2) = 1d45fc3263d85f867efd809bdacb5d6116243c35 -RMD160 (fluidsynth-1.1.6.tar.bz2) = 27b17e1e097004dd3cf8fb88d8e4499eeb339ea8 -SHA512 (fluidsynth-1.1.6.tar.bz2) = 0ead8bf86c0edf6d98044eb16b52b85fac8bc3bdeb9c1478d0bceb4f5b38ca28218fcf2cd18cdd5608190dc70b7c39bde681765d01787bc84bc97c6ab3bbf946 -Size (fluidsynth-1.1.6.tar.bz2) = 823783 bytes -SHA1 (patch-aa) = 16279c3f937b903cdfbc1a26b67606500e33a546 -SHA1 (patch-ac) = 81ca2243404a4fd1a3f93da82116c276db7fb42c -SHA1 (patch-ad) = edb221360d033804d04c15560a80e9d08e8406bc -SHA1 (patch-ae) = a536d0d16e7b4a138e69b0b0d91f2926e0675e45 +SHA1 (fluidsynth-2.0.7.tar.gz) = fd92957fbb915598361cb16249f190ce0f01416c +RMD160 (fluidsynth-2.0.7.tar.gz) = 3f71d90e4f46609cd3eae32ae7916be098b7b161 +SHA512 (fluidsynth-2.0.7.tar.gz) = c939c77277767541b90ae8bc24687cd9cd11b375264e6b5017658f5fd9c5637a3ce09bc4ad837a349e4a63883fe5ecbe80e65dd91d2cbf71072bcbcfc068614e +Size (fluidsynth-2.0.7.tar.gz) = 1315250 bytes diff --git a/audio/fluidsynth/hacks.mk b/audio/fluidsynth/hacks.mk deleted file mode 100644 index b946977403f9..000000000000 --- a/audio/fluidsynth/hacks.mk +++ /dev/null @@ -1,10 +0,0 @@ -# $NetBSD: hacks.mk,v 1.1 2005/10/31 15:23:54 tv Exp $ - -### -### Define socklen_t on platforms without it (there's no easy autoconf -### CHECK_TYPE check to insert this without depending on autoconf) -### -.if ${OPSYS} == "Interix" -PKG_HACKS+= socklen-int -CPPFLAGS+= -Dsocklen_t=int -.endif diff --git a/audio/fluidsynth/patches/patch-aa b/audio/fluidsynth/patches/patch-aa deleted file mode 100644 index a96a9db81dc2..000000000000 --- a/audio/fluidsynth/patches/patch-aa +++ /dev/null @@ -1,67 +0,0 @@ -$NetBSD: patch-aa,v 1.4 2012/08/24 06:35:20 marino Exp $ - ---- src/drivers/fluid_oss.c.orig 2012-08-16 04:01:13.000000000 +0000 -+++ src/drivers/fluid_oss.c -@@ -42,10 +42,16 @@ - #include - #include - -+#ifdef __NetBSD__ -+#define DEVOSSMIDI "/dev/rmidi0" -+#else -+#define DEVOSSMIDI "/dev/midi" -+#endif -+ - #define BUFFER_LENGTH 512 - - // Build issue on some systems (OSS 4.0)? --#ifdef SNDCTL_DSP_CHANNELS -+#if defined (SNDCTL_DSP_CHANNELS) && !defined (SOUND_PCM_WRITE_CHANNELS) - #define SOUND_PCM_WRITE_CHANNELS SNDCTL_DSP_CHANNELS - #endif - -@@ -101,7 +107,7 @@ static void fluid_oss_midi_run(void* d); - void - fluid_oss_audio_driver_settings(fluid_settings_t* settings) - { -- fluid_settings_register_str(settings, "audio.oss.device", "/dev/dsp", 0, NULL, NULL); -+ fluid_settings_register_str(settings, "audio.oss.device", DEVOSSAUDIO, 0, NULL, NULL); - } - - /* -@@ -164,7 +170,7 @@ new_fluid_oss_audio_driver(fluid_setting - } - - if (!fluid_settings_dupstr(settings, "audio.oss.device", &devname) || !devname) { /* ++ alloc device name */ -- devname = FLUID_STRDUP ("/dev/dsp"); -+ devname = FLUID_STRDUP (DEVOSSAUDIO); - - if (devname == NULL) { - FLUID_LOG(FLUID_ERR, "Out of memory"); -@@ -278,7 +284,7 @@ new_fluid_oss_audio_driver2(fluid_settin - - - if (!fluid_settings_dupstr(settings, "audio.oss.device", &devname) || !devname) { -- devname = FLUID_STRDUP ("/dev/dsp"); -+ devname = FLUID_STRDUP (DEVOSSAUDIO); - - if (!devname) - { -@@ -503,7 +509,7 @@ fluid_oss_audio_run2(void* d) - - void fluid_oss_midi_driver_settings(fluid_settings_t* settings) - { -- fluid_settings_register_str(settings, "midi.oss.device", "/dev/midi", 0, NULL, NULL); -+ fluid_settings_register_str(settings, "midi.oss.device", DEVOSSMIDI, 0, NULL, NULL); - } - - /* -@@ -546,7 +552,7 @@ new_fluid_oss_midi_driver(fluid_settings - fluid_settings_dupstr(settings, "midi.oss.device", &device); /* ++ alloc device name */ - - if (device == NULL) { -- device = FLUID_STRDUP ("/dev/midi"); -+ device = FLUID_STRDUP (DEVOSSMIDI); - - if (!device) - { diff --git a/audio/fluidsynth/patches/patch-ac b/audio/fluidsynth/patches/patch-ac deleted file mode 100644 index d7599ff3a47d..000000000000 --- a/audio/fluidsynth/patches/patch-ac +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-ac,v 1.6 2012/01/28 13:15:32 wiz Exp $ - ---- configure.orig 2011-09-04 07:38:58.000000000 +0000 -+++ configure -@@ -11587,7 +11587,7 @@ else - fi - - -- if test "$mingw32_support" == "yes"; then -+ if test "$mingw32_support" = "yes"; then - MINGW32_SUPPORT_TRUE= - MINGW32_SUPPORT_FALSE='#' - else -@@ -11723,7 +11723,7 @@ if test "$GCC" = yes; then - $as_echo "#define DEBUG 1" >>confdefs.h - - else -- CFLAGS="${CFLAGS} ${FCCFLAGS} -O2 -fomit-frame-pointer -funroll-all-loops -finline-functions -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wstrict-prototypes -Winline -Wno-unused-parameter -Wno-cast-qual" -+ CFLAGS="${CFLAGS} ${FCCFLAGS} -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wstrict-prototypes -Winline -Wno-unused-parameter -Wno-cast-qual" - - $as_echo "#define DEBUG 0" >>confdefs.h - diff --git a/audio/fluidsynth/patches/patch-ad b/audio/fluidsynth/patches/patch-ad deleted file mode 100644 index bf994d033a5d..000000000000 --- a/audio/fluidsynth/patches/patch-ad +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ad,v 1.4 2012/01/28 13:15:32 wiz Exp $ - ---- src/utils/fluid_sys.h.orig 2009-02-04 07:29:24.000000000 +0000 -+++ src/utils/fluid_sys.h -@@ -284,7 +284,7 @@ extern fluid_profile_data_t fluid_profil - sample data. - */ - --#if defined(HAVE_SYS_MMAN_H) && !defined(__OS2__) -+#if defined(HAVE_SYS_MMAN_H) && !defined(__OS2__) && !defined(__INTERIX) - #define fluid_mlock(_p,_n) mlock(_p, _n) - #define fluid_munlock(_p,_n) munlock(_p,_n) - #else diff --git a/audio/fluidsynth/patches/patch-ae b/audio/fluidsynth/patches/patch-ae deleted file mode 100644 index 0b7d77b514d9..000000000000 --- a/audio/fluidsynth/patches/patch-ae +++ /dev/null @@ -1,53 +0,0 @@ -$NetBSD: patch-ae,v 1.5 2012/01/28 13:15:32 wiz Exp $ - ---- src/fluidsynth.c.orig 2011-09-04 07:38:58.000000000 +0000 -+++ src/fluidsynth.c -@@ -293,9 +293,9 @@ int main(int argc, char** argv) - int with_server = 0; - int dump = 0; - int fast_render = 0; -- int connect_lash = 1; - char *optchars = "a:C:c:dE:f:F:G:g:hijK:L:lm:nO:o:p:R:r:sT:Vvz:"; - #ifdef LASH_ENABLED -+ int connect_lash = 1; - int enabled_lash = 0; /* set to TRUE if lash gets enabled */ - fluid_lash_args_t *lash_args; - -@@ -323,7 +323,9 @@ int main(int argc, char** argv) - {"audio-groups", 1, 0, 'G'}, - {"chorus", 1, 0, 'C'}, - {"connect-jack-outputs", 0, 0, 'j'}, -+#ifdef LASH_ENABLED - {"disable-lash", 0, 0, 'l'}, -+#endif - {"dump", 0, 0, 'd'}, - {"fast-render", 1, 0, 'F'}, - {"gain", 1, 0, 'g'}, -@@ -458,9 +460,11 @@ int main(int argc, char** argv) - audio_channels = atoi(optarg); - fluid_settings_setint(settings, "synth.audio-channels", audio_channels); - break; -+#ifdef LASH_ENABLED - case 'l': /* disable LASH */ - connect_lash = 0; - break; -+#endif - case 'm': - if (FLUID_STRCMP (optarg, "help") == 0) - { -@@ -572,6 +576,7 @@ int main(int argc, char** argv) - #endif - - #ifdef LASH_ENABLED -+#ifdef LASH_ENABLED - /* connect to the lash server */ - if (connect_lash) - { -@@ -579,6 +584,7 @@ int main(int argc, char** argv) - fluid_settings_setint (settings, "lash.enable", enabled_lash ? 1 : 0); - } - #endif -+#endif - - /* The 'groups' setting is only relevant for LADSPA operation - * If not given, set number groups to number of audio channels, because