On 2013/03/28 10:09, Stuart Henderson wrote: > (if you're interested in this you might also be interested in a > WIP update of fluidsynth that I have, but there is a minor bug > to track down in the sndio driver).
problem found (it was crashing when printing settings) - diff below, building lmms to test now. Index: Makefile =================================================================== RCS file: /cvs/ports/audio/fluidsynth/Makefile,v retrieving revision 1.17 diff -u -p -r1.17 Makefile --- Makefile 21 Mar 2013 08:45:12 -0000 1.17 +++ Makefile 28 Mar 2013 13:43:03 -0000 @@ -1,22 +1,23 @@ -# $OpenBSD: Makefile,v 1.17 2013/03/21 08:45:12 ajacoutot Exp $ +# $OpenBSD: Makefile,v 1.16 2013/03/10 22:55:02 espie Exp $ COMMENT = SoundFont2 software synthesizer -DISTNAME = fluidsynth-1.0.9 -REVISION = 2 +DISTNAME = fluidsynth-1.1.6 -SHARED_LIBS = fluidsynth 0.1 +SHARED_LIBS += fluidsynth 1.0 # 6.2 CATEGORIES = audio HOMEPAGE = http://fluidsynth.resonance.org/trac -# LGPL +# LGPLv2+ PERMIT_PACKAGE_CDROM = Yes -WANTLIB = c jack m ncurses pthread readline sndio +WANTLIB += FLAC c glib-2.0 gthread-2.0 iconv intl jack m ncurses +WANTLIB += ogg pcre pthread readline sndfile sndio vorbis vorbisenc -MASTER_SITES = ${MASTER_SITE_SAVANNAH:=fluid/} +MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=fluidsynth/} -LIB_DEPENDS = audio/jack +LIB_DEPENDS = audio/jack \ + devel/glib2 AUTOCONF_VERSION = 2.61 AUTOMAKE_VERSION = 1.9 @@ -28,6 +29,7 @@ BUILD_DEPENDS += devel/libtool CONFIGURE_STYLE = gnu CONFIGURE_ARGS += ${CONFIGURE_SHARED} \ + --disable-dbus-support \ --disable-lash \ --disable-ladcca \ --disable-oss-support \ @@ -35,7 +37,7 @@ CONFIGURE_ARGS += ${CONFIGURE_SHARED} \ --disable-pulse-support post-patch: - cp ${FILESDIR}/fluid_sndio.c ${WRKSRC}/src/ + cp ${FILESDIR}/fluid_sndio.c ${WRKSRC}/src/drivers/ pre-configure: cd ${WRKSRC} && AUTOMAKE_VERSION=${AUTOMAKE_VERSION} \ Index: distinfo =================================================================== RCS file: /cvs/ports/audio/fluidsynth/distinfo,v retrieving revision 1.2 diff -u -p -r1.2 distinfo --- distinfo 15 Oct 2009 15:44:50 -0000 1.2 +++ distinfo 28 Mar 2013 13:43:03 -0000 @@ -1,5 +1,2 @@ -MD5 (fluidsynth-1.0.9.tar.gz) = WEdVLglSj8kdyojxDLk5HA== -RMD160 (fluidsynth-1.0.9.tar.gz) = B37LEwAO5Y68DPzeZTI6ehEo8eI= -SHA1 (fluidsynth-1.0.9.tar.gz) = /tjc2KgWmB4eMKyIGKRZSetPWcA= -SHA256 (fluidsynth-1.0.9.tar.gz) = Fxtrt1T7Y0LNAPkTn1hzvBt2TUos/nBAmq5ssfAabmA= -SIZE (fluidsynth-1.0.9.tar.gz) = 927002 +SHA256 (fluidsynth-1.1.6.tar.gz) = UIUzkdnr7am023h++yP5ix4mtylt0rtdDZa1vM7iFxw= +SIZE (fluidsynth-1.1.6.tar.gz) = 958735 Index: files/fluid_sndio.c =================================================================== RCS file: /cvs/ports/audio/fluidsynth/files/fluid_sndio.c,v retrieving revision 1.3 diff -u -p -r1.3 fluid_sndio.c --- files/fluid_sndio.c 24 Dec 2009 10:34:43 -0000 1.3 +++ files/fluid_sndio.c 28 Mar 2013 13:43:03 -0000 @@ -60,7 +60,7 @@ typedef struct { typedef struct { fluid_midi_driver_t driver; - struct mio_hdl *hdl; + struct mio_hdl *hdl; pthread_t thread; int status; fluid_midi_parser_t *parser; @@ -76,7 +76,7 @@ static void* fluid_sndio_audio_run2(void void fluid_sndio_audio_driver_settings(fluid_settings_t* settings) { - fluid_settings_register_str(settings, "audio.sndio.device", NULL, 0, NULL, NULL); + fluid_settings_register_str(settings, "audio.sndio.device", "default", 0, NULL, NULL); } /* @@ -372,7 +372,7 @@ fluid_sndio_audio_run2(void* d) void fluid_sndio_midi_driver_settings(fluid_settings_t* settings) { - fluid_settings_register_str(settings, "midi.sndio.device", NULL, 0, NULL, NULL); + fluid_settings_register_str(settings, "midi.sndio.device", "default", 0, NULL, NULL); } int Index: patches/patch-configure_ac =================================================================== RCS file: /cvs/ports/audio/fluidsynth/patches/patch-configure_ac,v retrieving revision 1.3 diff -u -p -r1.3 patch-configure_ac --- patches/patch-configure_ac 22 Aug 2012 20:14:06 -0000 1.3 +++ patches/patch-configure_ac 28 Mar 2013 13:43:03 -0000 @@ -1,25 +1,25 @@ -$OpenBSD: patch-configure_ac,v 1.3 2012/08/22 20:14:06 naddy Exp $ ---- configure.ac.orig Sun Apr 12 07:06:55 2009 -+++ configure.ac Tue Aug 21 17:28:07 2012 -@@ -87,7 +87,7 @@ AC_SUBST(LIBFLUID_CPPFLAGS) - AC_SUBST(LIBFLUID_LDFLAGS) - AC_SUBST(FLUID_CPPFLAGS) +$OpenBSD$ +--- configure.ac.orig Thu Aug 16 05:01:13 2012 ++++ configure.ac Sun Mar 24 23:57:37 2013 +@@ -94,7 +94,7 @@ dnl Check for GNU LD + AC_LIB_PROG_LD_GNU + AM_CONDITIONAL(GNU_LD_SUPPORT, test "x$with_gnu_ld" = "xyes") -AM_CONDITIONAL(MINGW32_SUPPORT, test "$mingw32_support" == "yes") +AM_CONDITIONAL(MINGW32_SUPPORT, test "$mingw32_support" = "yes") AC_ARG_ENABLE(double, AS_HELP_STRING([--enable-double], [double floating point for dsp (default=float)]), -@@ -141,7 +141,7 @@ if test "$ENABLE_DEBUG" = "yes"; then - CFLAGS="${CFLAGS} ${FCCFLAGS} -g -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wstrict-prototypes -Wno-unused" - AC_DEFINE(DEBUG, 1, [Define to activate debugging message]) - 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 -Wno-unused -Winline" -+ CFLAGS="${CFLAGS} ${FCCFLAGS} -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wstrict-prototypes -Wno-unused -Winline" - AC_DEFINE(DEBUG, 0, [Define to activate debugging message]) +@@ -150,7 +150,7 @@ if test "$GCC" = yes; then + CFLAGS="${CFLAGS} ${FCCFLAGS} -g -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wstrict-prototypes -Wno-unused-parameter -Wno-cast-qual" + AC_DEFINE(DEBUG, 1, [Define to activate debugging message]) + 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" + AC_DEFINE(DEBUG, 0, [Define to activate debugging message]) + fi fi - -@@ -228,7 +228,27 @@ dnl - Check support for OSS audio +@@ -291,7 +291,27 @@ dnl - Check support for OSS audio AC_OSS_AUDIO AM_CONDITIONAL(OSS_SUPPORT, test "$OSS_SUPPORT" = "1") @@ -47,7 +47,7 @@ $OpenBSD: patch-configure_ac,v 1.3 2012/ dnl - Check support for MidiShare AC_MIDISHARE -@@ -440,6 +460,12 @@ if test "${OSS_SUPPORT}" = "1"; then +@@ -517,6 +537,12 @@ if test "${OSS_SUPPORT}" = "1"; then echo "OSS: yes" else echo "OSS: no" Index: patches/patch-fluidsynth_pc_in =================================================================== RCS file: /cvs/ports/audio/fluidsynth/patches/patch-fluidsynth_pc_in,v retrieving revision 1.2 diff -u -p -r1.2 patch-fluidsynth_pc_in --- patches/patch-fluidsynth_pc_in 26 Dec 2008 08:45:12 -0000 1.2 +++ patches/patch-fluidsynth_pc_in 28 Mar 2013 13:43:03 -0000 @@ -1,6 +1,6 @@ -$OpenBSD: patch-fluidsynth_pc_in,v 1.2 2008/12/26 08:45:12 jakemsr Exp $ ---- fluidsynth.pc.in.orig Sat Aug 18 14:55:32 2007 -+++ fluidsynth.pc.in Sat Dec 20 17:33:14 2008 +$OpenBSD$ +--- fluidsynth.pc.in.orig Thu Aug 16 05:01:13 2012 ++++ fluidsynth.pc.in Sun Mar 24 23:55:55 2013 @@ -6,5 +6,5 @@ includedir=@includedir@ Name: FluidSynth Description: Software SoundFont synth Index: patches/patch-src_Makefile_am =================================================================== RCS file: /cvs/ports/audio/fluidsynth/patches/patch-src_Makefile_am,v retrieving revision 1.2 diff -u -p -r1.2 patch-src_Makefile_am --- patches/patch-src_Makefile_am 15 Oct 2009 15:44:50 -0000 1.2 +++ patches/patch-src_Makefile_am 28 Mar 2013 13:43:03 -0000 @@ -1,40 +1,38 @@ -$OpenBSD: patch-src_Makefile_am,v 1.2 2009/10/15 15:44:50 jakemsr Exp $ ---- src/Makefile.am.orig Tue Feb 3 23:34:02 2009 -+++ src/Makefile.am Tue Oct 13 21:12:04 2009 -@@ -33,6 +33,10 @@ if OSS_SUPPORT - fluid_oss = fluid_oss.c +$OpenBSD$ +--- src/Makefile.am.orig Thu Aug 16 05:01:13 2012 ++++ src/Makefile.am Mon Mar 25 00:05:56 2013 +@@ -40,6 +40,9 @@ if OSS_SUPPORT + fluid_oss = drivers/fluid_oss.c endif +if SNDIO_SUPPORT -+fluid_sndio = fluid_sndio.c ++fluid_sndio = drivers/fluid_sndio.c +endif -+ + # if LASH_SUPPORT || LADCCA_SUPPORT (Makefile supports OR?) if LASH_SUPPORT - fluid_lash = fluid_lash.c -@@ -49,7 +53,7 @@ endif - # Extra files and optional drivers - EXTRA_DIST = fluid_dll.c fluid_dsound.c fluid_winmidi.c fluid_portaudio.c \ - fluid_coreaudio.c fluid_alsa.c fluid_oss.c fluid_pulse.c \ -- fluid_dsp_simple.c \ -+ fluid_sndio.c fluid_dsp_simple.c \ - fluid_sndmgr.c config_macos.h config_macosx.h config_macosx_pb.h \ - config_win32.h fluid_jack.c fluid_dart.c - -@@ -65,6 +69,7 @@ libfluidsynth_la_SOURCES = \ +@@ -68,6 +71,7 @@ EXTRA_DIST = fluid_dll.c \ + drivers/fluid_oss.c \ + drivers/fluid_portaudio.c \ + drivers/fluid_pulse.c \ ++ drivers/fluid_sndio.c \ + drivers/fluid_sndmgr.c \ + drivers/fluid_winmidi.c \ + config_macos.h \ +@@ -93,6 +97,7 @@ libfluidsynth_la_SOURCES = \ $(fluid_oss) \ $(fluid_portaudio) \ $(fluid_pulse) \ + $(fluid_sndio) \ $(fluid_windows) \ $(fluid_dart) \ - fluid_adriver.c \ -@@ -129,7 +134,7 @@ INCLUDES = -I$(top_srcdir)/include $(LASH_CFLAGS) $(LA - + $(fluid_rtkit) \ +@@ -181,7 +186,7 @@ INCLUDES = -I$(top_srcdir)/include \ libfluidsynth_la_LIBADD = $(LIBFLUID_LIBS) $(LASH_LIBS) $(LADCCA_LIBS) \ $(READLINE_LIBS) $(COREAUDIO_LIBS) $(COREMIDI_LIBS) $(JACK_LIBS) \ -- $(ALSA_LIBS) $(PULSE_LIBS) $(PORTAUDIO_LIBS) $(DART_LIBS) -+ $(ALSA_LIBS) $(PULSE_LIBS) $(PORTAUDIO_LIBS) $(DART_LIBS) $(SNDIO_LIBS) + $(ALSA_LIBS) $(PULSE_LIBS) $(PORTAUDIO_LIBS) $(DART_LIBS) \ +- $(GLIB_LIBS) $(LIBSNDFILE_LIBS) $(DBUS_LIBS) ++ $(GLIB_LIBS) $(LIBSNDFILE_LIBS) $(DBUS_LIBS) $(SNDIO_LIBS) libfluidsynth_la_LDFLAGS = \ -version-info @LT_VERSION_INFO@ \ Index: patches/patch-src_drivers_fluid_adriver_c =================================================================== RCS file: patches/patch-src_drivers_fluid_adriver_c diff -N patches/patch-src_drivers_fluid_adriver_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_drivers_fluid_adriver_c 28 Mar 2013 13:43:03 -0000 @@ -0,0 +1,54 @@ +$OpenBSD$ +--- src/drivers/fluid_adriver.c.orig Thu Aug 16 05:01:13 2012 ++++ src/drivers/fluid_adriver.c Sun Mar 24 23:55:55 2013 +@@ -64,6 +64,15 @@ int delete_fluid_oss_audio_driver(fluid_audio_driver_t + void fluid_oss_audio_driver_settings(fluid_settings_t* settings); + #endif + ++#if SNDIO_SUPPORT ++fluid_audio_driver_t* new_fluid_sndio_audio_driver(fluid_settings_t* settings, ++ fluid_synth_t* synth); ++fluid_audio_driver_t* new_fluid_sndio_audio_driver2(fluid_settings_t* settings, ++ fluid_audio_func_t func, void* data); ++int delete_fluid_sndio_audio_driver(fluid_audio_driver_t* p); ++void fluid_sndio_audio_driver_settings(fluid_settings_t* settings); ++#endif ++ + #if COREAUDIO_SUPPORT + fluid_audio_driver_t* new_fluid_core_audio_driver(fluid_settings_t* settings, + fluid_synth_t* synth); +@@ -120,6 +129,13 @@ int delete_fluid_file_audio_driver(fluid_audio_driver_ + + /* Available audio drivers, listed in order of preference */ + fluid_audriver_definition_t fluid_audio_drivers[] = { ++#if SNDIO_SUPPORT ++ { "sndio", ++ new_fluid_sndio_audio_driver, ++ new_fluid_sndio_audio_driver2, ++ delete_fluid_sndio_audio_driver, ++ fluid_sndio_audio_driver_settings }, ++#endif + #if JACK_SUPPORT + { "jack", + new_fluid_jack_audio_driver, +@@ -223,7 +239,9 @@ void fluid_audio_driver_settings(fluid_settings_t* set + FLUID_DEFAULT_AUDIO_RT_PRIO, 0, 99, 0, NULL, NULL); + + /* Set the default driver */ +-#if JACK_SUPPORT ++#if SNDIO_SUPPORT ++ fluid_settings_register_str(settings, "audio.driver", "sndio", 0, NULL, NULL); ++#elif JACK_SUPPORT + fluid_settings_register_str(settings, "audio.driver", "jack", 0, NULL, NULL); + #elif ALSA_SUPPORT + fluid_settings_register_str(settings, "audio.driver", "alsa", 0, NULL, NULL); +@@ -256,6 +274,9 @@ void fluid_audio_driver_settings(fluid_settings_t* set + #endif + #if OSS_SUPPORT + fluid_settings_add_option(settings, "audio.driver", "oss"); ++#endif ++#if SNDIO_SUPPORT ++ fluid_settings_add_option(settings, "audio.driver", "sndio"); + #endif + #if COREAUDIO_SUPPORT + fluid_settings_add_option(settings, "audio.driver", "coreaudio"); Index: patches/patch-src_drivers_fluid_jack_c =================================================================== RCS file: patches/patch-src_drivers_fluid_jack_c diff -N patches/patch-src_drivers_fluid_jack_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_drivers_fluid_jack_c 28 Mar 2013 13:43:03 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ +--- src/drivers/fluid_jack.c.orig Thu Aug 16 05:01:13 2012 ++++ src/drivers/fluid_jack.c Sun Mar 24 23:59:51 2013 +@@ -101,7 +101,7 @@ fluid_jack_audio_driver_settings(fluid_settings_t* set + { + fluid_settings_register_str(settings, "audio.jack.id", "fluidsynth", 0, NULL, NULL); + fluid_settings_register_int(settings, "audio.jack.multi", 0, 0, 1, FLUID_HINT_TOGGLED, NULL, NULL); +- fluid_settings_register_int(settings, "audio.jack.autoconnect", 0, 0, 1, FLUID_HINT_TOGGLED, NULL, NULL); ++ fluid_settings_register_int(settings, "audio.jack.autoconnect", 1, 0, 1, FLUID_HINT_TOGGLED, NULL, NULL); + fluid_settings_register_str(settings, "audio.jack.server", "", 0, NULL, NULL); + } + Index: patches/patch-src_drivers_fluid_mdriver_c =================================================================== RCS file: patches/patch-src_drivers_fluid_mdriver_c diff -N patches/patch-src_drivers_fluid_mdriver_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_drivers_fluid_mdriver_c 28 Mar 2013 13:43:03 -0000 @@ -0,0 +1,53 @@ +$OpenBSD$ +--- src/drivers/fluid_mdriver.c.orig Thu Aug 16 05:01:13 2012 ++++ src/drivers/fluid_mdriver.c Sun Mar 24 23:55:55 2013 +@@ -46,6 +46,15 @@ fluid_midi_driver_t *new_fluid_jack_midi_driver (fluid + int delete_fluid_jack_midi_driver(fluid_midi_driver_t *p); + #endif + ++/* SNDIO */ ++#if SNDIO_SUPPORT ++fluid_midi_driver_t* new_fluid_sndio_midi_driver(fluid_settings_t* settings, ++ handle_midi_event_func_t handler, ++ void* event_handler_data); ++int delete_fluid_sndio_midi_driver(fluid_midi_driver_t* p); ++void fluid_sndio_midi_driver_settings(fluid_settings_t* settings); ++#endif ++ + /* OSS */ + #if OSS_SUPPORT + fluid_midi_driver_t* new_fluid_oss_midi_driver(fluid_settings_t* settings, +@@ -96,6 +105,12 @@ struct fluid_mdriver_definition_t { + + + struct fluid_mdriver_definition_t fluid_midi_drivers[] = { ++#if SNDIO_SUPPORT ++ { "sndio", ++ new_fluid_sndio_midi_driver, ++ delete_fluid_sndio_midi_driver, ++ fluid_sndio_midi_driver_settings }, ++#endif + #if JACK_SUPPORT + { "jack", + new_fluid_jack_midi_driver, +@@ -149,7 +164,9 @@ void fluid_midi_driver_settings(fluid_settings_t* sett + FLUID_DEFAULT_MIDI_RT_PRIO, 0, 99, 0, NULL, NULL); + + /* Set the default driver */ +-#if ALSA_SUPPORT ++#if SNDIO_SUPPORT ++ fluid_settings_register_str(settings, "midi.driver", "sndio", 0, NULL, NULL); ++#elif ALSA_SUPPORT + fluid_settings_register_str(settings, "midi.driver", "alsa_seq", 0, NULL, NULL); + #elif JACK_SUPPORT + fluid_settings_register_str(settings, "midi.driver", "jack", 0, NULL, NULL); +@@ -169,6 +186,9 @@ void fluid_midi_driver_settings(fluid_settings_t* sett + #if ALSA_SUPPORT + fluid_settings_add_option(settings, "midi.driver", "alsa_seq"); + fluid_settings_add_option(settings, "midi.driver", "alsa_raw"); ++#endif ++#if SNDIO_SUPPORT ++ fluid_settings_add_option(settings, "midi.driver", "sndio"); + #endif + #if JACK_SUPPORT + fluid_settings_add_option(settings, "midi.driver", "jack"); Index: patches/patch-src_fluid_adriver_c =================================================================== RCS file: patches/patch-src_fluid_adriver_c diff -N patches/patch-src_fluid_adriver_c --- patches/patch-src_fluid_adriver_c 24 Dec 2009 10:34:43 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,54 +0,0 @@ -$OpenBSD: patch-src_fluid_adriver_c,v 1.3 2009/12/24 10:34:43 jakemsr Exp $ ---- src/fluid_adriver.c.orig Sun Mar 15 18:02:15 2009 -+++ src/fluid_adriver.c Wed Dec 23 01:31:00 2009 -@@ -64,6 +64,15 @@ int delete_fluid_oss_audio_driver(fluid_audio_driver_t - void fluid_oss_audio_driver_settings(fluid_settings_t* settings); - #endif - -+#if SNDIO_SUPPORT -+fluid_audio_driver_t* new_fluid_sndio_audio_driver(fluid_settings_t* settings, -+ fluid_synth_t* synth); -+fluid_audio_driver_t* new_fluid_sndio_audio_driver2(fluid_settings_t* settings, -+ fluid_audio_func_t func, void* data); -+int delete_fluid_sndio_audio_driver(fluid_audio_driver_t* p); -+void fluid_sndio_audio_driver_settings(fluid_settings_t* settings); -+#endif -+ - #if COREAUDIO_SUPPORT - fluid_audio_driver_t* new_fluid_core_audio_driver(fluid_settings_t* settings, - fluid_synth_t* synth); -@@ -122,6 +131,13 @@ void fluid_file_audio_driver_settings(fluid_settings_t - - /* Available audio drivers, listed in order of preference */ - fluid_audriver_definition_t fluid_audio_drivers[] = { -+#if SNDIO_SUPPORT -+ { "sndio", -+ new_fluid_sndio_audio_driver, -+ new_fluid_sndio_audio_driver2, -+ delete_fluid_sndio_audio_driver, -+ fluid_sndio_audio_driver_settings }, -+#endif - #if JACK_SUPPORT - { "jack", - new_fluid_jack_audio_driver, -@@ -222,7 +238,9 @@ void fluid_audio_driver_settings(fluid_settings_t* set - #endif - - /* Set the default driver */ --#if JACK_SUPPORT -+#if SNDIO_SUPPORT -+ fluid_settings_register_str(settings, "audio.driver", "sndio", 0, NULL, NULL); -+#elif JACK_SUPPORT - fluid_settings_register_str(settings, "audio.driver", "jack", 0, NULL, NULL); - #elif ALSA_SUPPORT - fluid_settings_register_str(settings, "audio.driver", "alsa", 0, NULL, NULL); -@@ -255,6 +273,9 @@ void fluid_audio_driver_settings(fluid_settings_t* set - #endif - #if OSS_SUPPORT - fluid_settings_add_option(settings, "audio.driver", "oss"); -+#endif -+#if SNDIO_SUPPORT -+ fluid_settings_add_option(settings, "audio.driver", "sndio"); - #endif - #if COREAUDIO_SUPPORT - fluid_settings_add_option(settings, "audio.driver", "coreaudio"); Index: patches/patch-src_fluid_jack_c =================================================================== RCS file: patches/patch-src_fluid_jack_c diff -N patches/patch-src_fluid_jack_c --- patches/patch-src_fluid_jack_c 15 Oct 2009 15:44:50 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,12 +0,0 @@ -$OpenBSD: patch-src_fluid_jack_c,v 1.2 2009/10/15 15:44:50 jakemsr Exp $ ---- src/fluid_jack.c.orig Sun Mar 8 22:43:14 2009 -+++ src/fluid_jack.c Tue Oct 13 20:47:41 2009 -@@ -90,7 +90,7 @@ fluid_jack_audio_driver_settings(fluid_settings_t* set - { - fluid_settings_register_str(settings, "audio.jack.id", "fluidsynth", 0, NULL, NULL); - fluid_settings_register_str(settings, "audio.jack.multi", "no", 0, NULL, NULL); -- fluid_settings_register_int(settings, "audio.jack.autoconnect", 0, 0, 1, FLUID_HINT_TOGGLED, NULL, NULL); -+ fluid_settings_register_int(settings, "audio.jack.autoconnect", 1, 0, 1, FLUID_HINT_TOGGLED, NULL, NULL); - } - - Index: patches/patch-src_fluid_mdriver_c =================================================================== RCS file: patches/patch-src_fluid_mdriver_c diff -N patches/patch-src_fluid_mdriver_c --- patches/patch-src_fluid_mdriver_c 24 Dec 2009 10:34:43 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,52 +0,0 @@ ---- src/fluid_mdriver.c.orig Sun Mar 8 21:31:02 2009 -+++ src/fluid_mdriver.c Wed Dec 23 01:32:21 2009 -@@ -46,6 +46,15 @@ fluid_midi_driver_t *new_fluid_jack_midi_driver (fluid - int delete_fluid_jack_midi_driver(fluid_midi_driver_t *p); - #endif - -+/* SNDIO */ -+#if SNDIO_SUPPORT -+fluid_midi_driver_t* new_fluid_sndio_midi_driver(fluid_settings_t* settings, -+ handle_midi_event_func_t handler, -+ void* event_handler_data); -+int delete_fluid_sndio_midi_driver(fluid_midi_driver_t* p); -+void fluid_sndio_midi_driver_settings(fluid_settings_t* settings); -+#endif -+ - /* OSS */ - #if OSS_SUPPORT - fluid_midi_driver_t* new_fluid_oss_midi_driver(fluid_settings_t* settings, -@@ -96,6 +105,12 @@ struct fluid_mdriver_definition_t { - - - struct fluid_mdriver_definition_t fluid_midi_drivers[] = { -+#if SNDIO_SUPPORT -+ { "sndio", -+ new_fluid_sndio_midi_driver, -+ delete_fluid_sndio_midi_driver, -+ fluid_sndio_midi_driver_settings }, -+#endif - #if JACK_SUPPORT - { "jack", - new_fluid_jack_midi_driver, -@@ -146,7 +161,9 @@ void fluid_midi_driver_settings(fluid_settings_t* sett - int i; - - /* Set the default driver */ --#if ALSA_SUPPORT -+#if SNDIO_SUPPORT -+ fluid_settings_register_str(settings, "midi.driver", "sndio", 0, NULL, NULL); -+#elif ALSA_SUPPORT - fluid_settings_register_str(settings, "midi.driver", "alsa_seq", 0, NULL, NULL); - #elif JACK_SUPPORT - fluid_settings_register_str(settings, "midi.driver", "jack", 0, NULL, NULL); -@@ -166,6 +183,9 @@ void fluid_midi_driver_settings(fluid_settings_t* sett - #if ALSA_SUPPORT - fluid_settings_add_option(settings, "midi.driver", "alsa_seq"); - fluid_settings_add_option(settings, "midi.driver", "alsa_raw"); -+#endif -+#if SNDIO_SUPPORT -+ fluid_settings_add_option(settings, "midi.driver", "sndio"); - #endif - #if JACK_SUPPORT - fluid_settings_add_option(settings, "midi.driver", "jack"); Index: patches/patch-src_fluid_sys_c =================================================================== RCS file: patches/patch-src_fluid_sys_c diff -N patches/patch-src_fluid_sys_c --- patches/patch-src_fluid_sys_c 15 Oct 2009 15:44:50 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,30 +0,0 @@ -$OpenBSD: patch-src_fluid_sys_c,v 1.2 2009/10/15 15:44:50 jakemsr Exp $ ---- src/fluid_sys.c.orig Tue Feb 3 23:29:24 2009 -+++ src/fluid_sys.c Tue Oct 13 20:47:41 2009 -@@ -889,8 +889,10 @@ new_fluid_timer(int msec, fluid_timer_callback_t callb - { - pthread_attr_t *attr = NULL; - pthread_attr_t rt_attr; -+#if !defined(__OpenBSD__) - int sched = SCHED_FIFO; - struct sched_param priority; -+#endif - int err; - - fluid_timer_t* timer = FLUID_NEW(fluid_timer_t); -@@ -906,6 +908,7 @@ new_fluid_timer(int msec, fluid_timer_callback_t callb - timer->auto_destroy = auto_destroy; - - err = pthread_attr_init(&rt_attr); -+#if !defined(__OpenBSD__) - if (err == 0) { - err = pthread_attr_setschedpolicy(&rt_attr, SCHED_FIFO); - if (err == 0) { -@@ -916,6 +919,7 @@ new_fluid_timer(int msec, fluid_timer_callback_t callb - } - } - } -+#endif - - if (new_thread) { - err = pthread_create(&timer->thread, attr, fluid_timer_start, (void*) timer); Index: patches/patch-src_fluidsynth_c =================================================================== RCS file: /cvs/ports/audio/fluidsynth/patches/patch-src_fluidsynth_c,v retrieving revision 1.2 diff -u -p -r1.2 patch-src_fluidsynth_c --- patches/patch-src_fluidsynth_c 15 Oct 2009 15:44:50 -0000 1.2 +++ patches/patch-src_fluidsynth_c 28 Mar 2013 13:43:03 -0000 @@ -1,18 +1,18 @@ -$OpenBSD: patch-src_fluidsynth_c,v 1.2 2009/10/15 15:44:50 jakemsr Exp $ ---- src/fluidsynth.c.orig Tue Feb 3 23:45:02 2009 -+++ src/fluidsynth.c Tue Oct 13 20:57:00 2009 -@@ -212,9 +212,9 @@ int main(int argc, char** argv) - int audio_channels = 0; +$OpenBSD$ +--- src/fluidsynth.c.orig Thu Aug 16 05:01:13 2012 ++++ src/fluidsynth.c Sun Mar 24 23:58:13 2013 +@@ -295,9 +295,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:df:G:g:hijK:L:lm:no:p:R:r:sVvz:"; + 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; -@@ -237,7 +237,9 @@ int main(int argc, char** argv) +@@ -325,7 +325,9 @@ int main(int argc, char** argv) {"audio-groups", 1, 0, 'G'}, {"chorus", 1, 0, 'C'}, {"connect-jack-outputs", 0, 0, 'j'}, @@ -20,9 +20,9 @@ $OpenBSD: patch-src_fluidsynth_c,v 1.2 2 {"disable-lash", 0, 0, 'l'}, +#endif {"dump", 0, 0, 'd'}, + {"fast-render", 1, 0, 'F'}, {"gain", 1, 0, 'g'}, - {"help", 0, 0, 'h'}, -@@ -344,9 +346,11 @@ int main(int argc, char** argv) +@@ -460,9 +462,11 @@ int main(int argc, char** argv) audio_channels = atoi(optarg); fluid_settings_setint(settings, "synth.audio-channels", audio_channels); break; @@ -32,20 +32,5 @@ $OpenBSD: patch-src_fluidsynth_c,v 1.2 2 break; +#endif case 'm': - fluid_settings_setstr(settings, "midi.driver", optarg); - break; -@@ -421,12 +425,14 @@ int main(int argc, char** argv) - #endif - - #ifdef LASH_ENABLED -+#ifdef LASH_ENABLED - /* connect to the lash server */ - if (connect_lash) - { - enabled_lash = fluid_lash_connect (lash_args); - fluid_settings_setint (settings, "lash.enable", enabled_lash ? 1 : 0); - } -+#endif - #endif - - /* The 'groups' setting is only relevant for LADSPA operation + if (FLUID_STRCMP (optarg, "help") == 0) + { Index: patches/patch-src_utils_fluid_sys_c =================================================================== RCS file: patches/patch-src_utils_fluid_sys_c diff -N patches/patch-src_utils_fluid_sys_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_utils_fluid_sys_c 28 Mar 2013 13:43:03 -0000 @@ -0,0 +1,14 @@ +$OpenBSD$ +--- src/utils/fluid_sys.c.orig Thu Aug 16 05:01:13 2012 ++++ src/utils/fluid_sys.c Mon Mar 25 00:20:40 2013 +@@ -429,8 +429,10 @@ fluid_thread_self_set_prio (int prio_level) + memset(&priority, 0, sizeof(priority)); + priority.sched_priority = prio_level; + ++// #if !defined(__OpenBSD__) + if (pthread_setschedparam (pthread_self (), SCHED_FIFO, &priority) == 0) { + return; ++// #endif + } + #ifdef DBUS_SUPPORT + /* Try to gain high priority via rtkit */ Index: pkg/PFRAG.shared =================================================================== RCS file: pkg/PFRAG.shared diff -N pkg/PFRAG.shared --- pkg/PFRAG.shared 6 Apr 2008 22:42:11 -0000 1.1.1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,2 +0,0 @@ -@comment $OpenBSD: PFRAG.shared,v 1.1.1.1 2008/04/06 22:42:11 jakemsr Exp $ -@lib lib/libfluidsynth.so.${LIBfluidsynth_VERSION} Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/audio/fluidsynth/pkg/PLIST,v retrieving revision 1.2 diff -u -p -r1.2 PLIST --- pkg/PLIST 26 Dec 2008 08:45:12 -0000 1.2 +++ pkg/PLIST 28 Mar 2013 13:43:03 -0000 @@ -1,5 +1,4 @@ @comment $OpenBSD: PLIST,v 1.2 2008/12/26 08:45:12 jakemsr Exp $ -%%SHARED%% @bin bin/fluidsynth include/fluidsynth/ include/fluidsynth.h @@ -22,6 +21,7 @@ include/fluidsynth/version.h include/fluidsynth/voice.h lib/libfluidsynth.a lib/libfluidsynth.la +@lib lib/libfluidsynth.so.${LIBfluidsynth_VERSION} lib/pkgconfig/ lib/pkgconfig/fluidsynth.pc @man man/man1/fluidsynth.1