/[svn]/linuxsampler/trunk/configure.ac
ViewVC logotype

Diff of /linuxsampler/trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 716 by iliev, Sun Jul 24 06:57:30 2005 UTC revision 909 by schoenebeck, Sat Aug 5 17:55:49 2006 UTC
# Line 5  AC_INIT(configure.in) Line 5  AC_INIT(configure.in)
5    
6  LINUXSAMPLER_RELEASE_MAJOR=0  LINUXSAMPLER_RELEASE_MAJOR=0
7  LINUXSAMPLER_RELEASE_MINOR=3  LINUXSAMPLER_RELEASE_MINOR=3
8  LINUXSAMPLER_RELEASE_BUILD=3  LINUXSAMPLER_RELEASE_BUILD=3cvs
9    
10  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
11  # The following is the libtool / shared library version. This doesn't have to  # The following is the libtool / shared library version. This doesn't have to
# Line 59  esac Line 59  esac
59  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x86,[Define to 1 if you build for x86 architecture.])  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x86,[Define to 1 if you build for x86 architecture.])
60    
61  # determine the right gcc switch for CPU specific optimizations  # determine the right gcc switch for CPU specific optimizations
62    # (only if the user did not provide one)
63  CXX_CPU_SWITCH=  CXX_CPU_SWITCH=
64  if test "$def_arch_x86" = 1; then  if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then
65    CXX_CPU_SWITCH="-march=$target_cpu"    if test "$def_arch_x86" = 1; then
66  elif test "$target_cpu" = "powerpc"; then      CXX_CPU_SWITCH="-march=$target_cpu"
67    CXX_CPU_SWITCH="-arch=$target_cpu"    elif test "$target_cpu" = "ppc"; then
68        CXX_CPU_SWITCH="-arch=$target_cpu"
69      fi
70  fi  fi
71  AC_SUBST([CXX_CPU_SWITCH])  AC_SUBST([CXX_CPU_SWITCH])
72    
# Line 99  if test "$have_unix98" = "no"; then Line 102  if test "$have_unix98" = "no"; then
102      fi      fi
103  fi  fi
104    
105    # check for <features.h>
106    AC_CHECK_HEADERS(features.h)
107    
108    
109    ###########################################################################
110  # Checks for available audio and MIDI systems / drivers  # Checks for available audio and MIDI systems / drivers
111  # (we throw an error if there's not at least one system for audio output and MIDI input available)  # (we throw an error if there's not at least one system for audio output and MIDI input available)
112    
113  have_midi_input_driver="false"  have_midi_input_driver="false"
114  have_audio_output_driver="false"  have_audio_output_driver="false"
115    
116  AC_CHECK_HEADER(alsa/asoundlib.h,  # ALSA
117      AC_CHECK_LIB(asound, main,  AC_ARG_ENABLE(alsa-driver,
118                               have_alsa=1    [  --disable-alsa-driver
119                               ,                            Disable support for the Advanced Linux Sound
120                               have_alsa=0                            Architecture (ALSA).],
121                  )    [config_alsa_driver="no"],
122                  ,    [config_alsa_driver="yes"]
123                  have_alsa=0  )
124  )  have_alsa=0
125  if test "$have_alsa" = "1"; then  if test "$config_alsa_driver" = "yes"; then
126      have_midi_input_driver="true"      AC_CHECK_HEADER(alsa/asoundlib.h,
127      have_audio_output_driver="true";          AC_CHECK_LIB(asound, main,
128                                     have_alsa=1
129                                     ,
130                                     have_alsa=0
131                        )
132                        ,
133                        have_alsa=0
134        )
135        if test "$have_alsa" = "1"; then
136            have_midi_input_driver="true"
137            have_audio_output_driver="true";
138        fi
139    
140        echo -n "checking Alsa version... "
141        AC_LANG_SAVE
142        AC_LANG_C
143        AC_TRY_RUN([
144            #include <alsa/asoundlib.h>
145            void main(void) {
146                /* ensure backward compatibility */
147                #if !defined(SND_LIB_MAJOR) && defined(SOUNDLIB_VERSION_MAJOR)
148                #define SND_LIB_MAJOR SOUNDLIB_VERSION_MAJOR
149                #endif
150                exit(SND_LIB_MAJOR);
151            }
152        ],
153        alsa_major=0,
154        alsa_major=$?,
155        alsa_major=0
156        )
157        AC_TRY_RUN([
158            #include <alsa/asoundlib.h>
159            void main(void) {
160                /* ensure backward compatibility */
161                #if !defined(SND_LIB_MINOR) && defined(SOUNDLIB_VERSION_MINOR)
162                #define SND_LIB_MINOR SOUNDLIB_VERSION_MINOR
163                #endif
164                exit(SND_LIB_MINOR);
165            }
166        ],
167        alsa_minor=0,
168        alsa_minor=$?,
169        alsa_minor=0
170        )
171        AC_TRY_RUN([
172            #include <alsa/asoundlib.h>
173            void main(void) {
174                /* ensure backward compatibility */
175                #if !defined(SND_LIB_SUBMINOR) && defined(SOUNDLIB_VERSION_SUBMINOR)
176                #define SND_LIB_SUBMINOR SOUNDLIB_VERSION_SUBMINOR
177                #endif
178                exit(SND_LIB_SUBMINOR);
179            }
180        ],
181        alsa_subminor=0,
182        alsa_subminor=$?,
183        alsa_subminor=0
184        )
185        AC_LANG_RESTORE
186        echo "$alsa_major.$alsa_minor.$alsa_subminor";
187        AC_DEFINE_UNQUOTED(ALSA_MAJOR,$alsa_major,[Define to the major version number of your Alsa installation.])
188        AC_DEFINE_UNQUOTED(ALSA_MINOR,$alsa_minor,[Define to the minor version number of your Alsa installation.])
189        AC_DEFINE_UNQUOTED(ALSA_SUBMINOR,$alsa_subminor,[Define to the subminor version number of your Alsa installation.])
190    else
191        echo "ALSA support disabled by configure script parameter"
192  fi  fi
193  AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")  AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")
194  AC_DEFINE_UNQUOTED(HAVE_ALSA,$have_alsa,[Define to 1 if you have ALSA installed.])  AC_DEFINE_UNQUOTED(HAVE_ALSA,$have_alsa,[Define to 1 if you have ALSA installed.])
195    
 echo -n "checking Alsa version... "  
 AC_LANG_SAVE  
 AC_LANG_C  
 AC_TRY_RUN([  
 #include <alsa/asoundlib.h>  
 void main(void) {  
 /* ensure backward compatibility */  
 #if !defined(SND_LIB_MAJOR) && defined(SOUNDLIB_VERSION_MAJOR)  
 #define SND_LIB_MAJOR SOUNDLIB_VERSION_MAJOR  
 #endif  
 exit(SND_LIB_MAJOR);  
 }  
 ],  
 alsa_major=0,  
 alsa_major=$?,  
 alsa_major=0  
 )  
 AC_TRY_RUN([  
 #include <alsa/asoundlib.h>  
 void main(void) {  
 /* ensure backward compatibility */  
 #if !defined(SND_LIB_MINOR) && defined(SOUNDLIB_VERSION_MINOR)  
 #define SND_LIB_MINOR SOUNDLIB_VERSION_MINOR  
 #endif  
 exit(SND_LIB_MINOR);  
 }  
 ],  
 alsa_minor=0,  
 alsa_minor=$?,  
 alsa_minor=0  
 )  
 AC_TRY_RUN([  
 #include <alsa/asoundlib.h>  
 void main(void) {  
 /* ensure backward compatibility */  
 #if !defined(SND_LIB_SUBMINOR) && defined(SOUNDLIB_VERSION_SUBMINOR)  
 #define SND_LIB_SUBMINOR SOUNDLIB_VERSION_SUBMINOR  
 #endif  
 exit(SND_LIB_SUBMINOR);  
 }  
 ],  
 alsa_subminor=0,  
 alsa_subminor=$?,  
 alsa_subminor=0  
 )  
 AC_LANG_RESTORE  
 echo "$alsa_major.$alsa_minor.$alsa_subminor";  
 AC_DEFINE_UNQUOTED(ALSA_MAJOR,$alsa_major,[Define to the major version number of your Alsa installation.])  
 AC_DEFINE_UNQUOTED(ALSA_MINOR,$alsa_minor,[Define to the minor version number of your Alsa installation.])  
 AC_DEFINE_UNQUOTED(ALSA_SUBMINOR,$alsa_subminor,[Define to the subminor version number of your Alsa installation.])  
   
196  # JACK  # JACK
197  PKG_CHECK_MODULES(JACK, jack, HAVE_JACK=true, HAVE_JACK=false)  AC_ARG_ENABLE(jack-driver,
198  AC_SUBST(JACK_LIBS)    [  --disable-jack-driver
199  AC_SUBST(JACK_CFLAGS)                            Disable support for the Jack Audio Connection Kit
200  if test $HAVE_JACK = false; then                            (JACK).],
201      HAVE_JACK=0;    [config_jack_driver="no"],
202      [config_jack_driver="yes"]
203    )
204    have_jack=0
205    if test "$config_jack_driver" = "yes"; then
206        PKG_CHECK_MODULES(JACK, jack, have_jack=1, have_jack=0)
207        if test $have_jack = "1"; then
208            AC_SUBST(JACK_LIBS)
209            AC_SUBST(JACK_CFLAGS)
210            AC_CHECK_LIB(jack, jack_client_name_size, [AC_DEFINE(HAVE_JACK_CLIENT_NAME_SIZE, 1, [Define to 1 if you have the `jack_client_name_size' function.])], , $JACK_LIBS)
211            have_audio_output_driver="true";
212        fi
213  else  else
214      HAVE_JACK=1      echo "JACK support disabled by configure script parameter"
     have_audio_output_driver="true";  
     AC_CHECK_LIB(jack, jack_client_name_size, [AC_DEFINE(HAVE_JACK_CLIENT_NAME_SIZE, 1, [Define to 1 if you have the `jack_client_name_size' function.])], , $JACK_LIBS)  
215  fi  fi
216  AM_CONDITIONAL(HAVE_JACK, test $HAVE_JACK = 1)  AM_CONDITIONAL(HAVE_JACK, test $have_jack = "1")
217  AC_DEFINE_UNQUOTED(HAVE_JACK,$HAVE_JACK,[Define to 1 if you have JACK installed.])  AC_DEFINE_UNQUOTED(HAVE_JACK,$have_jack,[Define to 1 if you have JACK installed.])
218    
219    # ARTS
220    AC_ARG_ENABLE(arts-driver,
221      [  --disable-arts-driver
222                              Disable support for the Analogue Realtime System
223                              (aRts).],
224      [config_arts_driver="no"],
225      [config_arts_driver="yes"]
226    )
227    have_arts=0
228    if test "$config_arts_driver" = "yes"; then
229        m4_ifdef([m4_include(m4/arts.m4)],,
230                 [sinclude([m4/arts.m4])])
231        AM_PATH_ARTS(0.9.5, have_arts=1, have_arts=0)
232        if test "$have_arts" = "1"; then
233            have_audio_output_driver="true"
234        fi
235    else
236        echo "ARTS support disabled by configure script parameter"
237    fi
238    AM_CONDITIONAL(HAVE_ARTS, test "$have_arts" = "1")
239    AC_DEFINE_UNQUOTED(HAVE_ARTS,$have_arts,[Define to 1 if you have aRts installed.])
240    
241  # MidiShare (Linux, OS X, Windows)  # MidiShare (Linux, OS X, Windows)
242  AC_CHECK_HEADER(MidiShare.h,  AC_ARG_ENABLE(midishare-driver,
243      AC_CHECK_LIB(MidiShare, MidiCountEvs,    [  --disable-midishare-driver
244                              have_midishare=1,                            Disable support for the MidiShare system.],
245                              have_midishare=0    [config_midishare_driver="no"],
246                  )    [config_midishare_driver="yes"]
247                  ,  )
248                  have_midishare=0  have_midishare=0
249  )  if test "$config_midishare_driver" = "yes"; then
250  if test "$have_midishare" = "1"; then      AC_CHECK_HEADER(MidiShare.h,
251      have_midi_input_driver="true"          AC_CHECK_LIB(MidiShare, MidiCountEvs,
252                                    have_midishare=1,
253                                    have_midishare=0
254                        )
255                        ,
256                        have_midishare=0
257        )
258        if test "$have_midishare" = "1"; then
259            have_midi_input_driver="true"
260        fi
261    else
262        echo "MidiShare support disabled by configure script parameter"
263  fi  fi
264  AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")  AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")
265  AC_DEFINE_UNQUOTED(HAVE_MIDISHARE,$have_midishare,[Define to 1 if you have MidiShare installed.])  AC_DEFINE_UNQUOTED(HAVE_MIDISHARE,$have_midishare,[Define to 1 if you have MidiShare installed.])
266    
267  # CoreMIDI (OS X)  # CoreMIDI (OS X)
268  AC_CHECK_HEADER(CoreMIDI/CoreMIDI.h,  AC_ARG_ENABLE(coremidi-driver,
269                  have_coremidi=1,    [  --disable-coremidi-driver
270                  have_coremidi=0                            Disable support for the Apple CoreMIDI system.],
271  )    [config_coremidi_driver="no"],
272  if test "$have_coremidi" = "1"; then    [config_coremidi_driver="yes"]
273      have_midi_input_driver="true"  )
274    have_coremidi=0
275    if test "$config_coremidi_driver" = "yes"; then
276        AC_CHECK_HEADER(CoreMIDI/CoreMIDI.h,
277            have_coremidi=1,
278            have_coremidi=0
279        )
280        if test "$have_coremidi" = "1"; then
281            have_midi_input_driver="true"
282        fi
283    else
284        echo "CoreMIDI support disabled by configure script parameter"
285  fi  fi
286  AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")  AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")
287  AC_DEFINE_UNQUOTED(HAVE_COREMIDI,$have_coremidi,[Define to 1 if you have CoreMIDI installed.])  AC_DEFINE_UNQUOTED(HAVE_COREMIDI,$have_coremidi,[Define to 1 if you have CoreMIDI installed.])
288    
289  # Check presence of libgig  # Check presence of libgig
290  libgig_version="2.0.1"  libgig_version="3.0.0"
291  PKG_CHECK_MODULES(GIG, gig >= $libgig_version, HAVE_GIG=true, HAVE_GIG=false)  PKG_CHECK_MODULES(GIG, gig >= $libgig_version, HAVE_GIG=true, HAVE_GIG=false)
292  if test "$HAVE_GIG" = "false"; then  if test "$HAVE_GIG" = "false"; then
293      echo "Required libgig version not found!"      echo "Required libgig version not found!"
# Line 259  fi Line 334  fi
334  # TODO: should we use AC_ARG_VAR(variable, description) instead?  # TODO: should we use AC_ARG_VAR(variable, description) instead?
335    
336  AC_ARG_ENABLE(asm,  AC_ARG_ENABLE(asm,
337    [  --disable-asm    [  --enable-asm
338                            Disable hand-crafted assembly optimizations                            Enable hand-crafted assembly optimizations
339                            (default=on). LinuxSampler provides CPU specific                            (default=off). LinuxSampler provides CPU specific
340                            assembly optimizations for the most important                            assembly optimizations for the most important
341                            synthesis algorithms. You usually don't want to                            synthesis algorithms. This is currently disabled
342                            disable that.],                            by default since current asm code is broken.],
343    [config_asm="no"],    [config_asm="yes"],
344    [config_asm="yes"]    [config_asm="no"]
345  )  )
346  if test "$config_asm" = "yes"; then  if test "$config_asm" = "yes"; then
347    AC_DEFINE_UNQUOTED(CONFIG_ASM, 1, [Define to 1 if you want to enable hand-crafted asm optimizations.])    AC_DEFINE_UNQUOTED(CONFIG_ASM, 1, [Define to 1 if you want to enable hand-crafted asm optimizations.])
348  fi  fi
349    
350  AC_ARG_ENABLE(dev-mode,  AC_ARG_ENABLE(dev-mode,
351    [  --enable-dev-mode    [  --disable-dev-mode
352                            Enable development mode (default=no). In that mode                            Disable development mode (default=on). In that mode
353                            we do some extra sanity checks here and there.                            we do some extra sanity checks here and there.
354                            This helps to spot possible problems, but reduces                            This helps to spot possible problems, but reduces
355                            efficiency a bit],                            efficiency a bit],
356    [config_dev_mode="yes"],    [config_dev_mode="no"],
357    [config_dev_mode="no"]    [config_dev_mode="yes"]
358  )  )
359  if test "$config_dev_mode" = "yes"; then  if test "$config_dev_mode" = "yes"; then
360    AC_DEFINE_UNQUOTED(CONFIG_DEVMODE, 1, [Define to 1 if you want to enable development mode.])    AC_DEFINE_UNQUOTED(CONFIG_DEVMODE, 1, [Define to 1 if you want to enable development mode.])
# Line 436  AC_ARG_ENABLE(max-voices, Line 511  AC_ARG_ENABLE(max-voices,
511  )  )
512  AC_DEFINE_UNQUOTED(CONFIG_MAX_VOICES, $config_max_voices, [Define max. voices.])  AC_DEFINE_UNQUOTED(CONFIG_MAX_VOICES, $config_max_voices, [Define max. voices.])
513    
514    AC_ARG_ENABLE(subfragment-size,
515      [  --enable-subfragment-size
516                              Every audio fragment will be splitted into
517                              subfragments. Where each subfragment renders
518                              audio with constant synthesis parameters. This is
519                              done for efficiency reasons. This parameter
520                              defines the default size of a subfragment in
521                              sample points. A large value means less CPU time
522                              whereas a low value means better audio quality
523                              (default=32).],
524      [config_subfragment_size="${enableval}"],
525      [config_subfragment_size="32"]
526    )
527    AC_DEFINE_UNQUOTED(CONFIG_DEFAULT_SUBFRAGMENT_SIZE, $config_subfragment_size, [Define default subfragment size (in sample points).])
528    
529    AC_ARG_ENABLE(global-attenuation,
530      [  --enable-global-attenuation
531                              To prevent clipping all samples will be lowered
532                              in amplitude by this given factor.
533                              (default=0.35)],
534      [config_global_attenuation="${enableval}"],
535      [config_global_attenuation="0.35"]
536    )
537    AC_DEFINE_UNQUOTED(CONFIG_GLOBAL_ATTENUATION, $config_global_attenuation, [Define global volume attenuation (as floating point factor).])
538    
539  AC_ARG_ENABLE(voice-steal-algo,  AC_ARG_ENABLE(voice-steal-algo,
540    [  --enable-voice-steal-algo    [  --enable-voice-steal-algo
541                            Voice stealing algorithm to be used. Currently                            Voice stealing algorithm to be used. Currently
# Line 469  AC_ARG_ENABLE(sysex-buffer-size, Line 569  AC_ARG_ENABLE(sysex-buffer-size,
569  )  )
570  AC_DEFINE_UNQUOTED(CONFIG_SYSEX_BUFFER_SIZE, $config_sysex_buffer_size, [Define SysEx buffer size.])  AC_DEFINE_UNQUOTED(CONFIG_SYSEX_BUFFER_SIZE, $config_sysex_buffer_size, [Define SysEx buffer size.])
571    
 AC_ARG_ENABLE(filter-update-steps,  
   [  --enable-filter-update-steps  
                           Amount of sample points after which filter  
                           parameters (cutoff, resonance) are going to be  
                           updated (default=64). Higher value means less CPU  
                           load, but also worse parameter resolution, this  
                           value will be aligned to a power of two.],  
   [config_filter_update_steps="${enableval}"],  
   [config_filter_update_steps="64"]  
 )  
 AC_DEFINE_UNQUOTED(CONFIG_FILTER_UPDATE_STEPS, $config_filter_update_steps, [Define amount of steps to refresh filter coefficients.])  
   
572  AC_ARG_ENABLE(force-filter,  AC_ARG_ENABLE(force-filter,
573    [  --enable-force-filter    [  --enable-force-filter
574                            If enabled will force filter to be used even if                            If enabled will force filter to be used even if
# Line 583  if test "config_assert_gs_sysex_checksum Line 671  if test "config_assert_gs_sysex_checksum
671    AC_DEFINE_UNQUOTED(CONFIG_ASSERT_GS_SYSEX_CHECKSUM, 1, [Define to 1 if you want to enable GS SysEx check.])    AC_DEFINE_UNQUOTED(CONFIG_ASSERT_GS_SYSEX_CHECKSUM, 1, [Define to 1 if you want to enable GS SysEx check.])
672  fi  fi
673    
674    AC_ARG_ENABLE(portamento-time-min,
675      [  --enable-portamento-time-min
676                              Minimum Portamento time in seconds
677                              (default=0.1).],
678      [config_portamento_time_min="${enableval}"],
679      [config_portamento_time_min="0.1"]
680    )
681    AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_MIN, $config_portamento_time_min, [Define min. portamento time.])
682    
683    AC_ARG_ENABLE(portamento-time-max,
684      [  --enable-portamento-time-max
685                              Maximum Portamento time in seconds
686                              (default=32).],
687      [config_portamento_time_max="${enableval}"],
688      [config_portamento_time_max="32"]
689    )
690    AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_MAX, $config_portamento_time_max, [Define max. portamento time.])
691    
692    AC_ARG_ENABLE(portamento-time-default,
693      [  --enable-portamento-time-default
694                              Default Portamento time in seconds
695                              (default=1).],
696      [config_portamento_time_default="${enableval}"],
697      [config_portamento_time_default="1"]
698    )
699    AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_DEFAULT, $config_portamento_time_default, [Define default portamento time.])
700    
701  AC_ARG_ENABLE(signed-triang-algo,  AC_ARG_ENABLE(signed-triang-algo,
702    [  --enable-signed-triang-algo    [  --enable-signed-triang-algo
703                            Signed triangular wave algorithm to be used (e.g. for LFOs).                            Signed triangular wave algorithm to be used (e.g. for LFOs).
# Line 591  AC_ARG_ENABLE(signed-triang-algo, Line 706  AC_ARG_ENABLE(signed-triang-algo,
706                                Uses integer math without any branch will then be                                Uses integer math without any branch will then be
707                                converted to floating point value for each sample point.                                converted to floating point value for each sample point.
708                                This int->float conversion might hurt on some systems.                                This int->float conversion might hurt on some systems.
709                                intmathabs:
710                                  Similar to intmath but uses abs() function.
711                                  Depending on compiler and platrofm this could
712                                  perform better than integer math as it avoids
713                                  an extra integer multiply instruction.
714    
715                              diharmonic:                              diharmonic:
716                                The triangular wave will be approximated by adding two                                The triangular wave will be approximated by adding two
717                                sinusoidials. This solution might especially hurt on                                sinusoidials. This solution might especially hurt on
# Line 602  AC_ARG_ENABLE(signed-triang-algo, Line 723  AC_ARG_ENABLE(signed-triang-algo,
723                                benchmark between the algorithms mentioned above.                                benchmark between the algorithms mentioned above.
724                                This will NOT work for cross compilation!],                                This will NOT work for cross compilation!],
725    [ if test ! "(" "${enableval}" = "intmath" \    [ if test ! "(" "${enableval}" = "intmath" \
726                  -o "${enableval}" = "intmathabs" \
727                -o "${enableval}" = "diharmonic" ")" ; then                -o "${enableval}" = "diharmonic" ")" ; then
728        AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-signed-triang-algo])        AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-signed-triang-algo])
729      else      else
# Line 619  AC_ARG_ENABLE(unsigned-triang-algo, Line 741  AC_ARG_ENABLE(unsigned-triang-algo,
741                                Uses integer math without any branch will then be                                Uses integer math without any branch will then be
742                                converted to floating point value for each sample point.                                converted to floating point value for each sample point.
743                                This int->float conversion might hurt on some systems.                                This int->float conversion might hurt on some systems.
744                                intmathabs:
745                                  Similar to intmath but uses abs() function.
746                                  Depending on compiler and platrofm this could
747                                  perform better than integer math as it avoids
748                                  an extra integer multiply instruction.
749    
750                              diharmonic:                              diharmonic:
751                                The triangular wave will be approximated by adding two                                The triangular wave will be approximated by adding two
752                                sinusoidials. This solution might especially hurt on                                sinusoidials. This solution might especially hurt on
# Line 630  AC_ARG_ENABLE(unsigned-triang-algo, Line 758  AC_ARG_ENABLE(unsigned-triang-algo,
758                                benchmark between the algorithms mentioned above.                                benchmark between the algorithms mentioned above.
759                                This will NOT work for cross compilation!],                                This will NOT work for cross compilation!],
760    [ if test ! "(" "${enableval}" = "intmath" \    [ if test ! "(" "${enableval}" = "intmath" \
761                  -o "${enableval}" = "intmathabs" \
762                -o "${enableval}" = "diharmonic" ")" ; then                -o "${enableval}" = "diharmonic" ")" ; then
763        AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-unsigned-triang-algo])        AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-unsigned-triang-algo])
764      else      else
# Line 655  if test "$config_process_muted_channels" Line 784  if test "$config_process_muted_channels"
784    AC_DEFINE_UNQUOTED(CONFIG_PROCESS_MUTED_CHANNELS, 1, [Define to 1 if you want to enable processing of muted channels.])    AC_DEFINE_UNQUOTED(CONFIG_PROCESS_MUTED_CHANNELS, 1, [Define to 1 if you want to enable processing of muted channels.])
785  fi  fi
786    
787    AC_ARG_ENABLE(process-all-notes-off,
788      [  --disable-process-all-notes-off
789                              Disable interpretation of All-Notes-Off MIDI
790                              messages (default=on). By default LS will release
791                              all voices whenever it receives an All-Notes-Off
792                              MIDI message. You can disable this behavior, so
793                              that LS simply ignores such messages.],
794      [config_process_all_notes_off="no"],
795      [config_process_all_notes_off="yes"]
796    )
797    if test "$config_process_all_notes_off" = "yes"; then
798      AC_DEFINE_UNQUOTED(CONFIG_PROCESS_ALL_NOTES_OFF, 1, [Define to 1 if you want to enable processing of All-Notes-Off MIDI messages.])
799    fi
800    
801    AC_ARG_ENABLE(interpolate-volume,
802      [  --disable-interpolate-volume
803                              Disable interpolation of volume modulation
804                              (default=on). With this enabled, the volume changes
805                              generated by for example the envelope generator
806                              will be smoother, minimizing the risk for audio
807                              clicks. Disable it to reduce CPU usage.],
808      [config_interpolate_volume="no"],
809      [config_interpolate_volume="yes"]
810    )
811    if test "$config_interpolate_volume" = "yes"; then
812      AC_DEFINE_UNQUOTED(CONFIG_INTERPOLATE_VOLUME, 1, [Define to 1 if you want to enable interpolation of volume modulation.])
813    fi
814    
815    
816  ###########################################################################  ###########################################################################
817  # Automatic Benchmarks (to detect the best algorithms for the system)  # Automatic Benchmarks (to detect the best algorithms for the system)
# Line 667  if test "$config_signed_triang_algo" = " Line 824  if test "$config_signed_triang_algo" = "
824      AC_TRY_RUN([      AC_TRY_RUN([
825              #define SIGNED 1              #define SIGNED 1
826              #define SILENT 1              #define SILENT 1
827              #include "benchmarks/triang.cpp"              #include "${srcdir}/benchmarks/triang.cpp"
828          ],          ],
829          triang_signed=0,          triang_signed=0,
830          triang_signed=$?,          triang_signed=$?,
# Line 679  if test "$config_signed_triang_algo" = " Line 836  if test "$config_signed_triang_algo" = "
836      elif test "$triang_signed" = "3"; then      elif test "$triang_signed" = "3"; then
837          config_signed_triang_algo="diharmonic"          config_signed_triang_algo="diharmonic"
838          echo "di harmonics"          echo "di harmonics"
839        elif test "$triang_signed" = "5"; then
840            config_signed_triang_algo="intmathabs"
841            echo "integer math using abs()"
842      else      else
843          echo "Benchmark of signed triangular wave algorithms failed!"          echo "Benchmark of signed triangular wave algorithms failed!"
844          echo "Maybe you are doing cross compilation? In that case you have to select"          echo "Maybe you are doing cross compilation? In that case you have to select"
# Line 687  if test "$config_signed_triang_algo" = " Line 847  if test "$config_signed_triang_algo" = "
847          exit -1;          exit -1;
848      fi      fi
849  fi  fi
850  AC_DEFINE_UNQUOTED(CONFIG_SIGNED_TRIANG_ALGO, signed_triang_algo_${config_signed_triang_algo}, [Define signed triangular wave algorithm to be used.])  AC_DEFINE_UNQUOTED(CONFIG_SIGNED_TRIANG_ALGO, ${triang_signed}, [Define signed triangular wave algorithm to be used.])
851    
852  if test "$config_unsigned_triang_algo" = "benchmark"; then  if test "$config_unsigned_triang_algo" = "benchmark"; then
853      echo -n "benchmarking for the best (unsigned) triangular oscillator algorithm... "      echo -n "benchmarking for the best (unsigned) triangular oscillator algorithm... "
# Line 695  if test "$config_unsigned_triang_algo" = Line 855  if test "$config_unsigned_triang_algo" =
855      AC_TRY_RUN([      AC_TRY_RUN([
856              #define SIGNED 0              #define SIGNED 0
857              #define SILENT 1              #define SILENT 1
858              #include "benchmarks/triang.cpp"              #include "${srcdir}/benchmarks/triang.cpp"
859          ],          ],
860          triang_unsigned=0,          triang_unsigned=0,
861          triang_unsigned=$?,          triang_unsigned=$?,
# Line 707  if test "$config_unsigned_triang_algo" = Line 867  if test "$config_unsigned_triang_algo" =
867      elif test "$triang_unsigned" = "3"; then      elif test "$triang_unsigned" = "3"; then
868          config_unsigned_triang_algo="diharmonic"          config_unsigned_triang_algo="diharmonic"
869          echo "di harmonics"          echo "di harmonics"
870        elif test "$triang_unsigned" = "5"; then
871            config_unsigned_triang_algo="intmathabs"
872            echo "integer math using abs()"
873      else      else
874          echo "Benchmark of unsigned triangular wave algorithms failed!"          echo "Benchmark of unsigned triangular wave algorithms failed!"
875          echo "Maybe you are doing cross compilation? In that case you have to select"          echo "Maybe you are doing cross compilation? In that case you have to select"
# Line 715  if test "$config_unsigned_triang_algo" = Line 878  if test "$config_unsigned_triang_algo" =
878          exit -1;          exit -1;
879      fi      fi
880  fi  fi
881  AC_DEFINE_UNQUOTED(CONFIG_UNSIGNED_TRIANG_ALGO, unsigned_triang_algo_${config_unsigned_triang_algo}, [Define unsigned triangular wave algorithm to be used.])  AC_DEFINE_UNQUOTED(CONFIG_UNSIGNED_TRIANG_ALGO, ${triang_unsigned}, [Define unsigned triangular wave algorithm to be used.])
882    
883  AC_LANG_RESTORE  AC_LANG_RESTORE
884    
# Line 792  echo "# Maximum Stream Refill Size: ${co Line 955  echo "# Maximum Stream Refill Size: ${co
955  echo "# Stream Size: ${config_stream_size}"  echo "# Stream Size: ${config_stream_size}"
956  echo "# Maximum Disk Streams: ${config_max_streams}"  echo "# Maximum Disk Streams: ${config_max_streams}"
957  echo "# Maximum Voices: ${config_max_voices}"  echo "# Maximum Voices: ${config_max_voices}"
958    echo "# Default Subfragment Size: ${config_subfragment_size}"
959    echo "# Global Volume Attenuation: ${config_global_attenuation}"
960  echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"  echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"
961  echo "# Signed Triangular Oscillator Algorithm: ${config_signed_triang_algo}"  echo "# Signed Triangular Oscillator Algorithm: ${config_signed_triang_algo}"
962  echo "# Unsigned Triangular Oscillator Algorithm: ${config_unsigned_triang_algo}"  echo "# Unsigned Triangular Oscillator Algorithm: ${config_unsigned_triang_algo}"
963  echo "# SysEx Buffer Size: ${config_sysex_buffer_size} Byte"  echo "# SysEx Buffer Size: ${config_sysex_buffer_size} Byte"
964  echo "# Filter Update Steps: ${config_filter_update_steps}"  echo "# Min. Portamento Time: ${config_portamento_time_min} s"
965    echo "# Max. Portamento Time: ${config_portamento_time_max} s"
966    echo "# Default Portamento Time: ${config_portamento_time_default} s"
967  echo "# Force Filter Usage: ${config_force_filter}"  echo "# Force Filter Usage: ${config_force_filter}"
968  echo "# Filter Cutoff Minimum: ${config_filter_cutoff_min} Hz"  echo "# Filter Cutoff Minimum: ${config_filter_cutoff_min} Hz"
969  echo "# Filter Cutoff Maximum: ${config_filter_cutoff_max} Hz"  echo "# Filter Cutoff Maximum: ${config_filter_cutoff_max} Hz"
# Line 805  echo "# Override Filter Resonance Contro Line 972  echo "# Override Filter Resonance Contro
972  echo "# Override Filter Type: ${config_override_filter_type}"  echo "# Override Filter Type: ${config_override_filter_type}"
973  echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"  echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"
974  echo "# Process Muted Channels: ${config_process_muted_channels}"  echo "# Process Muted Channels: ${config_process_muted_channels}"
975    echo "# Process All-Notes-Off MIDI message: ${config_process_all_notes_off}"
976    echo "# Interpolate Volume: ${config_interpolate_volume}"
977  echo "#-------------------------------------------------------------------#"  echo "#-------------------------------------------------------------------#"
978  echo "# Read './configure --help' or file 'configure.in' for details.     #"  echo "# Read './configure --help' or file 'configure.in' for details.     #"
979  echo "#####################################################################"  echo "#####################################################################"

Legend:
Removed from v.716  
changed lines
  Added in v.909

  ViewVC Help
Powered by ViewVC