--- linuxsampler/trunk/configure.in 2005/08/16 17:14:25 738 +++ linuxsampler/trunk/configure.in 2006/01/15 18:23:11 830 @@ -5,7 +5,7 @@ LINUXSAMPLER_RELEASE_MAJOR=0 LINUXSAMPLER_RELEASE_MINOR=3 -LINUXSAMPLER_RELEASE_BUILD=3 +LINUXSAMPLER_RELEASE_BUILD=3cvs #------------------------------------------------------------------------------------ # The following is the libtool / shared library version. This doesn't have to @@ -59,11 +59,15 @@ AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x86,[Define to 1 if you build for x86 architecture.]) # determine the right gcc switch for CPU specific optimizations +# (only if the user did not provide one) CXX_CPU_SWITCH= -if test "$def_arch_x86" = 1; then - CXX_CPU_SWITCH="-march=$target_cpu" -elif test "$target_cpu" = "powerpc"; then - CXX_CPU_SWITCH="-arch=$target_cpu" +echo "X $CXXFLAGS " +if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then + if test "$def_arch_x86" = 1; then + CXX_CPU_SWITCH="-march=$target_cpu" + elif test "$target_cpu" = "powerpc"; then + CXX_CPU_SWITCH="-arch=$target_cpu" + fi fi AC_SUBST([CXX_CPU_SWITCH]) @@ -99,6 +103,9 @@ fi fi +# check for +AC_CHECK_HEADERS(features.h) + # Checks for available audio and MIDI systems / drivers # (we throw an error if there's not at least one system for audio output and MIDI input available) have_midi_input_driver="false" @@ -451,6 +458,16 @@ ) AC_DEFINE_UNQUOTED(CONFIG_DEFAULT_SUBFRAGMENT_SIZE, $config_subfragment_size, [Define default subfragment size (in sample points).]) +AC_ARG_ENABLE(global-attenuation, + [ --enable-global-attenuation + To prevent clipping all samples will be lowered + in amplitude by this given factor. + (default=0.35)], + [config_global_attenuation="${enableval}"], + [config_global_attenuation="0.35"] +) +AC_DEFINE_UNQUOTED(CONFIG_GLOBAL_ATTENUATION, $config_global_attenuation, [Define global volume attenuation (as floating point factor).]) + AC_ARG_ENABLE(voice-steal-algo, [ --enable-voice-steal-algo Voice stealing algorithm to be used. Currently @@ -586,6 +603,33 @@ AC_DEFINE_UNQUOTED(CONFIG_ASSERT_GS_SYSEX_CHECKSUM, 1, [Define to 1 if you want to enable GS SysEx check.]) fi +AC_ARG_ENABLE(portamento-time-min, + [ --enable-portamento-time-min + Minimum Portamento time in seconds + (default=0.1).], + [config_portamento_time_min="${enableval}"], + [config_portamento_time_min="0.1"] +) +AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_MIN, $config_portamento_time_min, [Define min. portamento time.]) + +AC_ARG_ENABLE(portamento-time-max, + [ --enable-portamento-time-max + Maximum Portamento time in seconds + (default=32).], + [config_portamento_time_max="${enableval}"], + [config_portamento_time_max="32"] +) +AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_MAX, $config_portamento_time_max, [Define max. portamento time.]) + +AC_ARG_ENABLE(portamento-time-default, + [ --enable-portamento-time-default + Default Portamento time in seconds + (default=1).], + [config_portamento_time_default="${enableval}"], + [config_portamento_time_default="1"] +) +AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_DEFAULT, $config_portamento_time_default, [Define default portamento time.]) + AC_ARG_ENABLE(signed-triang-algo, [ --enable-signed-triang-algo Signed triangular wave algorithm to be used (e.g. for LFOs). @@ -672,6 +716,20 @@ AC_DEFINE_UNQUOTED(CONFIG_PROCESS_MUTED_CHANNELS, 1, [Define to 1 if you want to enable processing of muted channels.]) fi +AC_ARG_ENABLE(interpolate-volume, + [ --disable-interpolate-volume + Disable interpolation of volume modulation + (default=on). With this enabled, the volume changes + generated by for example the envelope generator + will be smoother, minimizing the risk for audio + clicks. Disable it to reduce CPU usage.], + [config_interpolate_volume="no"], + [config_interpolate_volume="yes"] +) +if test "$config_interpolate_volume" = "yes"; then + AC_DEFINE_UNQUOTED(CONFIG_INTERPOLATE_VOLUME, 1, [Define to 1 if you want to enable interpolation of volume modulation.]) +fi + ########################################################################### # Automatic Benchmarks (to detect the best algorithms for the system) @@ -816,10 +874,14 @@ echo "# Maximum Disk Streams: ${config_max_streams}" echo "# Maximum Voices: ${config_max_voices}" echo "# Default Subfragment Size: ${config_subfragment_size}" +echo "# Global Volume Attenuation: ${config_global_attenuation}" echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}" echo "# Signed Triangular Oscillator Algorithm: ${config_signed_triang_algo}" echo "# Unsigned Triangular Oscillator Algorithm: ${config_unsigned_triang_algo}" echo "# SysEx Buffer Size: ${config_sysex_buffer_size} Byte" +echo "# Min. Portamento Time: ${config_portamento_time_min} s" +echo "# Max. Portamento Time: ${config_portamento_time_max} s" +echo "# Default Portamento Time: ${config_portamento_time_default} s" echo "# Force Filter Usage: ${config_force_filter}" echo "# Filter Cutoff Minimum: ${config_filter_cutoff_min} Hz" echo "# Filter Cutoff Maximum: ${config_filter_cutoff_max} Hz" @@ -828,6 +890,7 @@ echo "# Override Filter Type: ${config_override_filter_type}" echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}" echo "# Process Muted Channels: ${config_process_muted_channels}" +echo "# Interpolate Volume: ${config_interpolate_volume}" echo "#-------------------------------------------------------------------#" echo "# Read './configure --help' or file 'configure.in' for details. #" echo "#####################################################################"