--- linuxsampler/trunk/configure.in 2005/05/19 19:25:14 554 +++ linuxsampler/trunk/configure.in 2005/06/08 21:00:06 617 @@ -150,6 +150,32 @@ AM_CONDITIONAL(HAVE_JACK, test $HAVE_JACK = 1) AC_DEFINE_UNQUOTED(HAVE_JACK,$HAVE_JACK,[Define to 1 if you have JACK installed.]) +# MidiShare (Linux, OS X, Windows) +AC_CHECK_HEADER(MidiShare.h, + AC_CHECK_LIB(MidiShare, MidiCountEvs, + have_midishare=1, + have_midishare=0 + ) + , + have_midishare=0 +) +if test "$have_midishare" = "1"; then + have_midi_input_driver="true" +fi +AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1") +AC_DEFINE_UNQUOTED(HAVE_MIDISHARE,$have_midishare,[Define to 1 if you have MidiShare installed.]) + +# CoreMIDI (OS X) +AC_CHECK_HEADER(CoreMIDI/CoreMIDI.h, + have_coremidi=1, + have_coremidi=0 +) +if test "$have_coremidi" = "1"; then + have_midi_input_driver="true" +fi +AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1") +AC_DEFINE_UNQUOTED(HAVE_COREMIDI,$have_coremidi,[Define to 1 if you have CoreMIDI installed.]) + # Check presence of libgig libgig_version="2.0.0" PKG_CHECK_MODULES(GIG, gig >= $libgig_version, HAVE_GIG=true, HAVE_GIG=false) @@ -175,7 +201,10 @@ if test "$have_midi_input_driver" = "false"; then echo "No supported MIDI input system found!" - echo "Sorry, LinuxSampler only supports ALSA as MIDI input driver at the moment!" + echo "Sorry, LinuxSampler only supports the following MIDI drivers at the moment:" + echo "ALSA, MIDIShare, CoreMIDI." + echo "If you think you have one of those available on your system, make sure you" + echo "also have the respective development (header) files installed." exit -1; fi if test "$have_audio_output_driver" = "false"; then @@ -190,6 +219,20 @@ # TODO: should we use AC_ARG_VAR(variable, description) instead? +AC_ARG_ENABLE(asm, + [ --disable-asm + Disable hand-crafted assembly optimizations + (default=on). LinuxSampler provides CPU specific + assembly optimizations for the most important + synthesis algorithms. You usually don't want to + diable that.], + [config_asm="no"], + [config_asm="yes"] +) +if test "$config_asm" = "yes"; then + AC_DEFINE_UNQUOTED(CONFIG_ASM, 1, [Define to 1 if you want to enable hand-crafted asm optimizations.]) +fi + AC_ARG_ENABLE(dev-mode, [ --enable-dev-mode Enable development mode (default=no). In that mode @@ -360,10 +403,10 @@ available options: none: Disable voice stealing completely. - oldestvoiceonkey: + oldestvoiceonkey (default): Try to kill a voice on the same key first, if no success, proceed with the oldest key. - oldestkey (default): + oldestkey: Try to kill a voice from the oldest active key.], [ if test ! "(" "${enableval}" = "none" \ @@ -372,9 +415,9 @@ AC_MSG_ERROR([Unknown voice stealing algorithm for parameter --enable-voice-steal-algo]) else config_voice_steal_algo="${enableval}" - fi + fi ], - [config_voice_steal_algo="oldestkey"] + [config_voice_steal_algo="oldestvoiceonkey"] ) AC_DEFINE_UNQUOTED(CONFIG_VOICE_STEAL_ALGO, voice_steal_algo_${config_voice_steal_algo}, [Define voice stealing algorithm to be used.]) @@ -479,7 +522,7 @@ config_override_filter_type="::gig::vcf_type_lowpassturbo" elif test ! "${enableval}" = "no"; then AC_MSG_ERROR([Unknown filter type for parameter --enable-override-filter-type]) - fi + fi ], [config_override_filter_type="no"] ) @@ -487,6 +530,21 @@ AC_DEFINE_UNQUOTED(CONFIG_OVERRIDE_FILTER_TYPE, $config_override_filter_type, [Define to a filter type to always force that filter type.]) fi +AC_ARG_ENABLE(gs-checksum, + [ --enable-gs-checksum + Enable Roland General Synth SysEx checksum check + (default=no). If this is enabled, all GS SysEx + messages which do not provide a correct checksum + will be ignored. This is disabled by default as + not all devices honor GS checksums.], + [config_assert_gs_sysex_checksum="yes"], + [config_assert_gs_sysex_checksum="no"] +) +if test "config_assert_gs_sysex_checksum" = "yes"; then + AC_DEFINE_UNQUOTED(CONFIG_ASSERT_GS_SYSEX_CHECKSUM, 1, [Define to 1 if you want to enable GS SysEx check.]) +fi + + ########################################################################### # Create Build Files @@ -502,7 +560,7 @@ AM_PROG_LIBTOOL -AC_OUTPUT(Makefile src/Makefile src/network/Makefile src/engines/Makefile src/engines/gig/Makefile src/engines/common/Makefile src/common/Makefile src/lib/Makefile src/lib/fileloader/Makefile src/lib/fileloader/libgig/Makefile src/testcases/Makefile src/drivers/Makefile src/drivers/audio/Makefile src/drivers/midi/Makefile) +AC_OUTPUT(Makefile man/Makefile man/linuxsampler.1 src/Makefile src/network/Makefile src/engines/Makefile src/engines/gig/Makefile src/engines/common/Makefile src/common/Makefile src/lib/Makefile src/lib/fileloader/Makefile src/lib/fileloader/libgig/Makefile src/testcases/Makefile src/drivers/Makefile src/drivers/audio/Makefile src/drivers/midi/Makefile) ########################################################################### @@ -512,6 +570,7 @@ echo "#####################################################################" echo "# LinuxSampler Configuration #" echo "#-------------------------------------------------------------------#" +echo "# Assembly Optimizations: ${config_asm}" echo "# Development Mode: ${config_dev_mode}" echo "# Debug Level: ${config_debug_level}" echo "# Use Exceptions in RT Context: ${config_rt_exceptions}" @@ -526,6 +585,7 @@ echo "# Stream Size: ${config_stream_size}" echo "# Maximum Disk Streams: ${config_max_streams}" echo "# Maximum Voices: ${config_max_voices}" +echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}" echo "# SysEx Buffer Size: ${config_sysex_buffer_size} Byte" echo "# Filter Update Steps: ${config_filter_update_steps}" echo "# Force Filter Usage: ${config_force_filter}" @@ -534,6 +594,7 @@ echo "# Override Filter Cutoff Controller: ${config_override_cutoff_ctrl}" echo "# Override Filter Resonance Controller: ${config_override_resonance_ctrl}" echo "# Override Filter Type: ${config_override_filter_type}" +echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}" echo "#-------------------------------------------------------------------#" echo "# Read './configure --help' or file 'configure.in' for details. #" echo "#####################################################################"