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

Annotation of /linuxsampler/trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1454 - (hide annotations) (download)
Fri Oct 19 17:52:15 2007 UTC (16 years, 5 months ago) by schoenebeck
Original Path: linuxsampler/trunk/configure.in
File size: 46442 byte(s)
* added autoconf checks for pthread library
* added autoconf check for pthread bug found on certain NPTL-enabled
  glibc versions (see Gentoo bug report #194076)

1 schoenebeck 9 AC_INIT(configure.in)
2 schoenebeck 697
3     #------------------------------------------------------------------------------------
4     # LinuxSampler's / liblinuxsampler's "official" release version:
5    
6     LINUXSAMPLER_RELEASE_MAJOR=0
7 schoenebeck 1424 LINUXSAMPLER_RELEASE_MINOR=5
8     LINUXSAMPLER_RELEASE_BUILD=0
9 schoenebeck 697
10     #------------------------------------------------------------------------------------
11     # The following is the libtool / shared library version. This doesn't have to
12     # do anything with the release version. It MUST conform to the following rules:
13     #
14     # 1. Start with version information of `0:0:0' for each libtool library.
15     # 2. Update the version information only immediately before a public release of
16     # your software. More frequent updates are unnecessary, and only guarantee
17     # that the current interface number gets larger faster.
18     # 3. If the library source code has changed at all since the last update, then
19     # increment revision (`c:r:a' becomes `c:r+1:a').
20     # 4. If any interfaces have been added, removed, or changed since the last update,
21     # increment current, and set revision to 0.
22     # 5. If any interfaces have been added since the last public release, then increment
23     # age.
24     # 6. If any interfaces have been removed since the last public release, then set age
25     # to 0.
26    
27 schoenebeck 1424 LIBLINUXSAMPLER_LT_CURRENT=1
28 schoenebeck 697 LIBLINUXSAMPLER_LT_REVISION=0
29     LIBLINUXSAMPLER_LT_AGE=0
30     SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"
31    
32 schoenebeck 947 #------------------------------------------------------------------------------------
33     # the LSCP specification version this LinuSampler release complies with:
34    
35     LSCP_RELEASE_MAJOR=1
36     LSCP_RELEASE_MINOR=2
37    
38     AC_DEFINE_UNQUOTED(LSCP_RELEASE_MAJOR, ${LSCP_RELEASE_MAJOR}, [LSCP spec major version this release complies with.])
39     AC_DEFINE_UNQUOTED(LSCP_RELEASE_MINOR, ${LSCP_RELEASE_MINOR}, [LSCP spec minor version this release complies with.])
40    
41 schoenebeck 697 AM_PROG_LIBTOOL
42    
43     AC_SUBST(SHLIB_VERSION_ARG)
44     AC_SUBST(SHARED_VERSION_INFO)
45    
46 schoenebeck 12 AC_C_BIGENDIAN
47 schoenebeck 9 AC_CANONICAL_SYSTEM
48    
49 schoenebeck 80 AC_SUBST(target)
50     AC_SUBST(target_alias)
51     AC_SUBST(target_cpu)
52     AC_SUBST(target_os)
53     AC_SUBST(target_vendor)
54 schoenebeck 18
55 schoenebeck 275
56 schoenebeck 554 ###########################################################################
57     # General Checks
58 schoenebeck 275
59 schoenebeck 510 AC_MSG_CHECKING([whether x86 architecture])
60 schoenebeck 9 def_arch_x86=0
61     case $target_cpu in
62     "i386" | "i486" | "i586" | "i686" | "i786")
63     echo "yes"
64     def_arch_x86=1;;
65     *)
66     echo "no";;
67     esac
68     AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x86,[Define to 1 if you build for x86 architecture.])
69    
70 schoenebeck 510 # determine the right gcc switch for CPU specific optimizations
71 schoenebeck 829 # (only if the user did not provide one)
72 schoenebeck 510 CXX_CPU_SWITCH=
73 schoenebeck 829 if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then
74     if test "$def_arch_x86" = 1; then
75     CXX_CPU_SWITCH="-march=$target_cpu"
76 schoenebeck 909 elif test "$target_cpu" = "ppc"; then
77 schoenebeck 829 CXX_CPU_SWITCH="-arch=$target_cpu"
78     fi
79 schoenebeck 510 fi
80     AC_SUBST([CXX_CPU_SWITCH])
81    
82 schoenebeck 288 AC_MSG_CHECKING([whether UNIX98 compatible])
83     AC_LANG_SAVE
84     AC_LANG_C
85     AC_TRY_RUN([
86     #ifndef _GNU_SOURCE
87     #define _GNU_SOURCE 1
88     #endif
89     #include <features.h>
90     void main(void) {
91     #if _XOPEN_SOURCE >= 500
92     exit(0); /* UNIX98 compatible */
93     #else
94     exit(-1); /* not UNIX98 compatible */
95     #endif
96     }
97     ],
98     have_unix98="yes",
99     have_unix98="no",
100     have_unix98="no"
101     )
102     AC_LANG_RESTORE
103     AC_MSG_RESULT([$have_unix98])
104     if test "$have_unix98" = "no"; then
105     if test "x$HAVE_UNIX98" = "x"; then
106     echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"
107     echo "pthread_mutexattr_settype() call in Mutex.cpp. You may want to run
108     echo "./configure with environment variable HAVE_UNIX98=1 in case you think you
109     echo "have a UNIX98 compatible system."
110     exit -1;
111     fi
112     fi
113    
114 wylder 822 # check for <features.h>
115     AC_CHECK_HEADERS(features.h)
116 wylder 821
117 schoenebeck 1454 # test for POSIX thread library
118     m4_ifdef([m4_include(m4/pthread.m4)],,
119     [sinclude([m4/pthread.m4])])
120     ACX_PTHREAD
121     LIBS="$PTHREAD_LIBS $LIBS"
122     CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
123     CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
124     CC="$PTHREAD_CC"
125 schoenebeck 852
126 schoenebeck 1454 # check for a bug in NPTL-enabled glibc
127     # (see Gentoo bug report #194076)
128     AC_ARG_ENABLE(nptl-bug-check,
129     [ --disable-nptl-bug-check
130     Disable check for a bug in certain NPTL-enabled
131     glibc versions that caused crashs.],
132     [config_check_nptl_bug="$enableval"],
133     [config_check_nptl_bug="yes"]
134     )
135     if test "$config_check_nptl_bug" = "yes"; then
136     m4_ifdef([m4_include(m4/nptl_bug.m4)],,
137     [sinclude([m4/nptl_bug.m4])])
138     ACX_NPTL_GLIBC_BUG([
139     echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
140     echo "You seem to have a buggy PTHREAD library! LinuxSampler would"
141     echo "probably crash due to this. Please report us the system you are"
142     echo "using and/or file a bug report to the bug tracking system of"
143     echo "your distribution."
144     echo "If you have a NPTL-enabled glibc AND it was compiled for TLS as"
145     echo "well, you can try to circumvent this problem for now by setting"
146     echo "the environment variable LD_ASSUME_KERNEL=\"2.4.1\" , which"
147     echo "should cause this test to pass."
148     echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
149     AC_MSG_ERROR([possibly NPTL glibc bug detected])
150     ])
151     else
152     echo "NPTL glibc bug check disabled"
153     fi
154    
155    
156    
157 schoenebeck 852 ###########################################################################
158 schoenebeck 288 # Checks for available audio and MIDI systems / drivers
159     # (we throw an error if there's not at least one system for audio output and MIDI input available)
160 schoenebeck 852
161 schoenebeck 288 have_midi_input_driver="false"
162     have_audio_output_driver="false"
163    
164 schoenebeck 852 # ALSA
165     AC_ARG_ENABLE(alsa-driver,
166     [ --disable-alsa-driver
167     Disable support for the Advanced Linux Sound
168     Architecture (ALSA).],
169 schoenebeck 1360 [config_alsa_driver="$enableval"],
170 schoenebeck 852 [config_alsa_driver="yes"]
171 schoenebeck 18 )
172 schoenebeck 852 have_alsa=0
173     if test "$config_alsa_driver" = "yes"; then
174     AC_CHECK_HEADER(alsa/asoundlib.h,
175     AC_CHECK_LIB(asound, main,
176     have_alsa=1
177     ,
178     have_alsa=0
179     )
180     ,
181     have_alsa=0
182     )
183     if test "$have_alsa" = "1"; then
184     have_midi_input_driver="true"
185     have_audio_output_driver="true";
186     fi
187    
188     echo -n "checking Alsa version... "
189     AC_LANG_SAVE
190     AC_LANG_C
191     AC_TRY_RUN([
192     #include <alsa/asoundlib.h>
193     void main(void) {
194     /* ensure backward compatibility */
195     #if !defined(SND_LIB_MAJOR) && defined(SOUNDLIB_VERSION_MAJOR)
196     #define SND_LIB_MAJOR SOUNDLIB_VERSION_MAJOR
197     #endif
198     exit(SND_LIB_MAJOR);
199     }
200     ],
201     alsa_major=0,
202     alsa_major=$?,
203     alsa_major=0
204     )
205     AC_TRY_RUN([
206     #include <alsa/asoundlib.h>
207     void main(void) {
208     /* ensure backward compatibility */
209     #if !defined(SND_LIB_MINOR) && defined(SOUNDLIB_VERSION_MINOR)
210     #define SND_LIB_MINOR SOUNDLIB_VERSION_MINOR
211     #endif
212     exit(SND_LIB_MINOR);
213     }
214     ],
215     alsa_minor=0,
216     alsa_minor=$?,
217     alsa_minor=0
218     )
219     AC_TRY_RUN([
220     #include <alsa/asoundlib.h>
221     void main(void) {
222     /* ensure backward compatibility */
223     #if !defined(SND_LIB_SUBMINOR) && defined(SOUNDLIB_VERSION_SUBMINOR)
224     #define SND_LIB_SUBMINOR SOUNDLIB_VERSION_SUBMINOR
225     #endif
226     exit(SND_LIB_SUBMINOR);
227     }
228     ],
229     alsa_subminor=0,
230     alsa_subminor=$?,
231     alsa_subminor=0
232     )
233     AC_LANG_RESTORE
234     echo "$alsa_major.$alsa_minor.$alsa_subminor";
235     AC_DEFINE_UNQUOTED(ALSA_MAJOR,$alsa_major,[Define to the major version number of your Alsa installation.])
236     AC_DEFINE_UNQUOTED(ALSA_MINOR,$alsa_minor,[Define to the minor version number of your Alsa installation.])
237     AC_DEFINE_UNQUOTED(ALSA_SUBMINOR,$alsa_subminor,[Define to the subminor version number of your Alsa installation.])
238     else
239     echo "ALSA support disabled by configure script parameter"
240 schoenebeck 18 fi
241 schoenebeck 291 AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")
242 schoenebeck 288 AC_DEFINE_UNQUOTED(HAVE_ALSA,$have_alsa,[Define to 1 if you have ALSA installed.])
243 schoenebeck 18
244 schoenebeck 852 # JACK
245     AC_ARG_ENABLE(jack-driver,
246     [ --disable-jack-driver
247     Disable support for the Jack Audio Connection Kit
248     (JACK).],
249 schoenebeck 1360 [config_jack_driver="$enableval"],
250 schoenebeck 852 [config_jack_driver="yes"]
251 schoenebeck 18 )
252 schoenebeck 852 have_jack=0
253     if test "$config_jack_driver" = "yes"; then
254     PKG_CHECK_MODULES(JACK, jack, have_jack=1, have_jack=0)
255     if test $have_jack = "1"; then
256     AC_SUBST(JACK_LIBS)
257     AC_SUBST(JACK_CFLAGS)
258     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)
259     have_audio_output_driver="true";
260     fi
261 schoenebeck 33 else
262 schoenebeck 852 echo "JACK support disabled by configure script parameter"
263 schoenebeck 33 fi
264 schoenebeck 852 AM_CONDITIONAL(HAVE_JACK, test $have_jack = "1")
265     AC_DEFINE_UNQUOTED(HAVE_JACK,$have_jack,[Define to 1 if you have JACK installed.])
266 schoenebeck 31
267 schoenebeck 838 # ARTS
268 schoenebeck 852 AC_ARG_ENABLE(arts-driver,
269     [ --disable-arts-driver
270     Disable support for the Analogue Realtime System
271     (aRts).],
272 schoenebeck 1360 [config_arts_driver="$enableval"],
273 schoenebeck 852 [config_arts_driver="yes"]
274     )
275     have_arts=0
276     if test "$config_arts_driver" = "yes"; then
277     m4_ifdef([m4_include(m4/arts.m4)],,
278     [sinclude([m4/arts.m4])])
279     AM_PATH_ARTS(0.9.5, have_arts=1, have_arts=0)
280     if test "$have_arts" = "1"; then
281     have_audio_output_driver="true"
282     fi
283     else
284     echo "ARTS support disabled by configure script parameter"
285 schoenebeck 838 fi
286     AM_CONDITIONAL(HAVE_ARTS, test "$have_arts" = "1")
287     AC_DEFINE_UNQUOTED(HAVE_ARTS,$have_arts,[Define to 1 if you have aRts installed.])
288    
289 schoenebeck 609 # MidiShare (Linux, OS X, Windows)
290 schoenebeck 852 AC_ARG_ENABLE(midishare-driver,
291     [ --disable-midishare-driver
292     Disable support for the MidiShare system.],
293 schoenebeck 1360 [config_midishare_driver="$enableval"],
294 schoenebeck 852 [config_midishare_driver="yes"]
295 schoenebeck 609 )
296 schoenebeck 852 have_midishare=0
297     if test "$config_midishare_driver" = "yes"; then
298     AC_CHECK_HEADER(MidiShare.h,
299     AC_CHECK_LIB(MidiShare, MidiCountEvs,
300     have_midishare=1,
301     have_midishare=0
302     )
303     ,
304     have_midishare=0
305     )
306     if test "$have_midishare" = "1"; then
307     have_midi_input_driver="true"
308     fi
309     else
310     echo "MidiShare support disabled by configure script parameter"
311 schoenebeck 609 fi
312     AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")
313     AC_DEFINE_UNQUOTED(HAVE_MIDISHARE,$have_midishare,[Define to 1 if you have MidiShare installed.])
314    
315     # CoreMIDI (OS X)
316 schoenebeck 852 AC_ARG_ENABLE(coremidi-driver,
317     [ --disable-coremidi-driver
318     Disable support for the Apple CoreMIDI system.],
319 schoenebeck 1360 [config_coremidi_driver="$enableval"],
320 schoenebeck 852 [config_coremidi_driver="yes"]
321 schoenebeck 609 )
322 schoenebeck 852 have_coremidi=0
323     if test "$config_coremidi_driver" = "yes"; then
324     AC_CHECK_HEADER(CoreMIDI/CoreMIDI.h,
325     have_coremidi=1,
326     have_coremidi=0
327     )
328     if test "$have_coremidi" = "1"; then
329     have_midi_input_driver="true"
330     fi
331     else
332     echo "CoreMIDI support disabled by configure script parameter"
333 schoenebeck 609 fi
334     AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")
335     AC_DEFINE_UNQUOTED(HAVE_COREMIDI,$have_coremidi,[Define to 1 if you have CoreMIDI installed.])
336    
337 schoenebeck 1364 # have we found at least one MIDI input and one audio output driver ?
338     if test "$have_midi_input_driver" = "false"; then
339     echo "No supported MIDI input system found!"
340     echo "Sorry, LinuxSampler only supports the following MIDI drivers at the moment:"
341     echo "ALSA, MIDIShare, CoreMIDI."
342     echo "If you think you have one of those available on your system, make sure you"
343     echo "also have the respective development (header) files installed."
344     exit -1;
345     fi
346     if test "$have_audio_output_driver" = "false"; then
347     echo "No supported audio output system found!"
348     echo "Sorry, LinuxSampler only supports ALSA, JACK and ARTS as audio output"
349     echo "driver at the moment!"
350     exit -1;
351     fi
352    
353    
354    
355     ###########################################################################
356     # Checks for various DLL libraries
357    
358 schoenebeck 504 # Check presence of libgig
359 schoenebeck 1424 libgig_version="3.2.0"
360 schoenebeck 504 PKG_CHECK_MODULES(GIG, gig >= $libgig_version, HAVE_GIG=true, HAVE_GIG=false)
361     if test "$HAVE_GIG" = "false"; then
362     echo "Required libgig version not found!"
363     echo "You need to have libgig version ${libgig_version} installed!"
364     exit -1;
365 schoenebeck 714 else
366     echo "yes, found libgig $libgig_version"
367 schoenebeck 504 fi
368     AC_SUBST(GIG_CFLAGS)
369     AC_SUBST(GIG_LIBS)
370    
371 schoenebeck 1364 # Instruments DB feature (requires SQLite 3.3)
372     AC_ARG_ENABLE(instruments-db,
373     [ --disable-instruments-db
374     Disable compilation of the sampler's instruments
375     database feature. You need to have SQLite 3.3
376     or younger installed for this feature.],
377     [config_instruments_db="$enableval"],
378     [config_instruments_db="yes"]
379     )
380     HAVE_SQLITE3=0;
381     if test "$config_instruments_db" = "yes"; then
382     # Check presence of sqlite3
383     sqlite_version="3.3"
384     PKG_CHECK_MODULES(SQLITE3, sqlite3 >= $sqlite_version, HAVE_SQLITE3=true, HAVE_SQLITE3=false)
385     AC_SUBST(SQLITE3_LIBS)
386     AC_SUBST(SQLITE3_CFLAGS)
387     if test $HAVE_SQLITE3 = false; then
388     HAVE_SQLITE3=0
389     config_instruments_db="no"
390     echo "*** Required sqlite version not found!"
391     echo "*** You need to have sqlite version ${sqlite_version} or higher"
392     echo "*** for instruments database support to be enabled."
393     echo "*** Support for instruments DB will be disabled!"
394     else
395     HAVE_SQLITE3=1
396     fi
397 senkov 397 else
398 schoenebeck 1364 echo "Instruments DB feature disabled by configure script parameter"
399 senkov 397 fi
400     AM_CONDITIONAL(HAVE_SQLITE3, test $HAVE_SQLITE3 = 1)
401 schoenebeck 1364 AC_DEFINE_UNQUOTED(HAVE_SQLITE3,$HAVE_SQLITE3,[Define to 1 if you want the instruments DB feature and have SQLITE3 installed.])
402 schoenebeck 31
403 schoenebeck 288
404    
405 schoenebeck 554 ###########################################################################
406     # Handle Configuration Options
407    
408     # TODO: should we use AC_ARG_VAR(variable, description) instead?
409    
410 schoenebeck 617 AC_ARG_ENABLE(asm,
411 schoenebeck 1259 [ --disable-asm
412 schoenebeck 738 Enable hand-crafted assembly optimizations
413 schoenebeck 1259 (default=on). LinuxSampler provides CPU specific
414     assembly optimizations. This is currently limited
415     to just enter a fast (denormal) FPU mode on x86
416     platforms. There are currently no synthesis core
417     assembly optimizations anymore since LS 0.4.0],
418 schoenebeck 1360 [config_asm="$enableval"],
419 schoenebeck 1259 [config_asm="yes"]
420 schoenebeck 617 )
421     if test "$config_asm" = "yes"; then
422 schoenebeck 1259 AC_DEFINE_UNQUOTED(CONFIG_ASM, 1, [Define to 1 if you want to enable asm optimizations.])
423 schoenebeck 617 fi
424    
425 schoenebeck 554 AC_ARG_ENABLE(dev-mode,
426 schoenebeck 1424 [ --enable-dev-mode
427     Enable development mode (default=off). In that mode
428 schoenebeck 554 we do some extra sanity checks here and there.
429     This helps to spot possible problems, but reduces
430     efficiency a bit],
431 schoenebeck 1360 [config_dev_mode="$enableval"],
432 schoenebeck 1424 [config_dev_mode="no"]
433 schoenebeck 554 )
434     if test "$config_dev_mode" = "yes"; then
435     AC_DEFINE_UNQUOTED(CONFIG_DEVMODE, 1, [Define to 1 if you want to enable development mode.])
436     fi
437    
438     AC_ARG_ENABLE(debug-level,
439     [ --enable-debug-level
440     Specify verbosity of console messages (default=1).
441     The higher the value, the higher will be verbosity.
442     A value of 0 means no console output at all.
443     There's not really an upper limit but the usual
444     level of all messages is currently somewhere less
445     than 10.],
446     [config_debug_level="${enableval}"],
447     [config_debug_level="1"]
448     )
449     AC_DEFINE_UNQUOTED(CONFIG_DEBUG_LEVEL, $config_debug_level, [Define console verbosity.])
450    
451     AC_ARG_ENABLE(rt-exceptions,
452     [ --enable-rt-exceptions
453     Enable exceptions in the realtime thread
454     (default=no). If this is enabled, exceptions will
455     be thrown on critical errors in the realtime
456     context as well. Otherwise if disabled
457     segmentation faults will be forced by the
458     application on critical errors.],
459 schoenebeck 1360 [config_rt_exceptions="$enableval"],
460 schoenebeck 554 [config_rt_exceptions="no"]
461     )
462     if test "$config_rt_exceptions" = "yes"; then
463     AC_DEFINE_UNQUOTED(CONFIG_RT_EXCEPTIONS, 1, [Define to 1 to allow exceptions in the realtime context.])
464     fi
465    
466     AC_ARG_ENABLE(preload-samples,
467     [ --enable-preload-samples
468     Due to seeking and latency issues with hard drives
469     we have to cache a small part of samples' head in
470     RAM (default=32768). The higher this value the
471     more memory will be occupied for each sample, but
472     the safer this will be in regards of possible
473     droputs. A 'good' value depends on the running
474     system and usage dependant factors.],
475     [config_preload_samples="${enableval}"],
476     [config_preload_samples="32768"]
477     )
478     AC_DEFINE_UNQUOTED(CONFIG_PRELOAD_SAMPLES, $config_preload_samples, [Define amount of sample points to be cached in RAM.])
479    
480     AC_ARG_ENABLE(max-pitch,
481     [ --enable-max-pitch
482     Specify the maximum allowed pitch value in octaves
483     (default=4). To lower memory usage you might want
484     set a smaller value.],
485     [config_max_pitch="${enableval}"],
486     [config_max_pitch="4"]
487     )
488     AC_DEFINE_UNQUOTED(CONFIG_MAX_PITCH, $config_max_pitch, [Define max. allowed pitch.])
489    
490     AC_ARG_ENABLE(max-events,
491     [ --enable-max-events
492     Specify the maximum allowed amount of events to be
493     processed per fragment (default=1024).],
494     [config_max_events="${enableval}"],
495     [config_max_events="1024"]
496     )
497     AC_DEFINE_UNQUOTED(CONFIG_MAX_EVENTS_PER_FRAGMENT, $config_max_events, [Define max. allowed events per fragment.])
498    
499     AC_ARG_ENABLE(eg-bottom,
500     [ --enable-eg-bottom
501     Bottom limit of envelope generators
502     (default=0.001). Certain kinds of curve types like
503     exponential curves converge against 0 but never
504     reach 0. So we have to define a certain low value
505     after which we should consider all smaller values
506     to be 'almost zero'. The smaller this value, the
507     longer will voices survive in EG's release stage
508     and thus waste voices. If this value is too high
509     will cause click sounds though.],
510     [config_eg_bottom="${enableval}"],
511     [config_eg_bottom="0.001"]
512     )
513     AC_DEFINE_UNQUOTED(CONFIG_EG_BOTTOM, $config_eg_bottom, [Define bottom limit of envelopes.])
514    
515     AC_ARG_ENABLE(eg-min-release-time,
516     [ --enable-eg-min-release-time
517     Specify the lowest allowed release time in seconds
518     (default=0.0025). This value will also be used to
519     ramp down voices on voice stealing. This value
520     should always be less than the period time of the
521     used audio driver, as in case of voice stealing
522     the killed voice needs to be completely ramped
523     down in the same fragment.],
524     [config_eg_min_release_time="${enableval}"],
525     [config_eg_min_release_time="0.0025"]
526     )
527     AC_DEFINE_UNQUOTED(CONFIG_EG_MIN_RELEASE_TIME, $config_eg_min_release_time, [Define min. release time.])
528    
529     AC_ARG_ENABLE(refill-streams,
530     [ --enable-refill-streams
531     Number of streams that should be refilled in each
532     disk thread cycle (default=4).],
533     [config_refill_streams="${enableval}"],
534     [config_refill_streams="4"]
535     )
536     AC_DEFINE_UNQUOTED(CONFIG_REFILL_STREAMS_PER_RUN, $config_refill_streams, [Define amount of streams to be refilled per cycle.])
537    
538     AC_ARG_ENABLE(stream-min-refill,
539     [ --enable-stream-min-refill
540     Minimum refill size for disk streams (default=1024).
541     The disk thread will go to sleep for a while if no
542     stream had to be refilled more than this value in
543     a disk thread cycle.],
544     [config_stream_min_refill="${enableval}"],
545     [config_stream_min_refill="1024"]
546     )
547     AC_DEFINE_UNQUOTED(CONFIG_STREAM_MIN_REFILL_SIZE, $config_stream_min_refill, [Define min. stream refill size.])
548    
549     AC_ARG_ENABLE(stream-max-refill,
550     [ --enable-stream-max-refill
551     Maximum refill size for disk streams
552     (default=65536). The disk thread will refill
553     each stream only by a size of this value per
554     disk thread cycle.],
555     [config_stream_max_refill="${enableval}"],
556     [config_stream_max_refill="65536"]
557     )
558     AC_DEFINE_UNQUOTED(CONFIG_STREAM_MAX_REFILL_SIZE, $config_stream_max_refill, [Define max. stream refill size.])
559    
560     AC_ARG_ENABLE(stream-size,
561     [ --enable-stream-size
562     Size of each stream's ring buffer in sample points
563     (default=262144).],
564     [config_stream_size="${enableval}"],
565     [config_stream_size="262144"]
566     )
567     AC_DEFINE_UNQUOTED(CONFIG_STREAM_BUFFER_SIZE, $config_stream_size, [Define each stream's ring buffer size.])
568    
569     AC_ARG_ENABLE(max-streams,
570     [ --enable-max-streams
571     Maximum amount of disk streams (default=90). This
572     value should always be higher than the maximum
573     amount of voices.],
574     [config_max_streams="${enableval}"],
575     [config_max_streams="90"]
576     )
577     AC_DEFINE_UNQUOTED(CONFIG_MAX_STREAMS, $config_max_streams, [Define max. streams.])
578    
579     AC_ARG_ENABLE(max-voices,
580     [ --enable-max-voices
581     Maximum amount of voices (default=64). This value
582     should always be lower than the maximum amount of
583     disk streams.],
584     [config_max_voices="${enableval}"],
585     [config_max_voices="64"]
586     )
587     AC_DEFINE_UNQUOTED(CONFIG_MAX_VOICES, $config_max_voices, [Define max. voices.])
588    
589 schoenebeck 738 AC_ARG_ENABLE(subfragment-size,
590     [ --enable-subfragment-size
591     Every audio fragment will be splitted into
592     subfragments. Where each subfragment renders
593     audio with constant synthesis parameters. This is
594     done for efficiency reasons. This parameter
595     defines the default size of a subfragment in
596     sample points. A large value means less CPU time
597     whereas a low value means better audio quality
598     (default=32).],
599     [config_subfragment_size="${enableval}"],
600     [config_subfragment_size="32"]
601     )
602     AC_DEFINE_UNQUOTED(CONFIG_DEFAULT_SUBFRAGMENT_SIZE, $config_subfragment_size, [Define default subfragment size (in sample points).])
603    
604 schoenebeck 1005 AC_ARG_ENABLE(global-attenuation-default,
605     [ --enable-global-attenuation-default
606 schoenebeck 781 To prevent clipping all samples will be lowered
607 schoenebeck 1005 in amplitude by this given default factor (can
608     be overridden at runtime).
609 schoenebeck 781 (default=0.35)],
610 schoenebeck 1005 [config_global_attenuation_default="${enableval}"],
611     [config_global_attenuation_default="0.35"]
612 schoenebeck 781 )
613 schoenebeck 1005 AC_DEFINE_UNQUOTED(CONFIG_GLOBAL_ATTENUATION_DEFAULT, $config_global_attenuation_default, [Define default global volume attenuation (as floating point factor).])
614 schoenebeck 781
615 schoenebeck 554 AC_ARG_ENABLE(voice-steal-algo,
616     [ --enable-voice-steal-algo
617     Voice stealing algorithm to be used. Currently
618     available options:
619     none:
620     Disable voice stealing completely.
621 schoenebeck 563 oldestvoiceonkey (default):
622 schoenebeck 554 Try to kill a voice on the same key first,
623     if no success, proceed with the oldest key.
624 schoenebeck 563 oldestkey:
625 schoenebeck 554 Try to kill a voice from the oldest active
626     key.],
627     [ if test ! "(" "${enableval}" = "none" \
628     -o "${enableval}" = "oldestvoiceonkey" \
629     -o "${enableval}" = "oldestkey" ")" ; then
630     AC_MSG_ERROR([Unknown voice stealing algorithm for parameter --enable-voice-steal-algo])
631     else
632     config_voice_steal_algo="${enableval}"
633 schoenebeck 579 fi
634 schoenebeck 554 ],
635 schoenebeck 563 [config_voice_steal_algo="oldestvoiceonkey"]
636 schoenebeck 554 )
637     AC_DEFINE_UNQUOTED(CONFIG_VOICE_STEAL_ALGO, voice_steal_algo_${config_voice_steal_algo}, [Define voice stealing algorithm to be used.])
638    
639     AC_ARG_ENABLE(sysex-buffer-size,
640     [ --enable-sysex-buffer-size
641     System Exclusive Message buffer size in kB
642     (default=2048).],
643     [config_sysex_buffer_size="${enableval}"],
644     [config_sysex_buffer_size="2048"]
645     )
646     AC_DEFINE_UNQUOTED(CONFIG_SYSEX_BUFFER_SIZE, $config_sysex_buffer_size, [Define SysEx buffer size.])
647    
648     AC_ARG_ENABLE(force-filter,
649     [ --enable-force-filter
650     If enabled will force filter to be used even if
651     no usage was define in instrument patch files.
652     (default=no).],
653 schoenebeck 1360 [config_force_filter="$enableval"],
654 schoenebeck 554 [config_force_filter="no"]
655     )
656     if test "$config_force_filter" = "yes"; then
657     AC_DEFINE_UNQUOTED(CONFIG_FORCE_FILTER, 1, [Define to 1 to force filter usage.])
658     fi
659    
660     AC_ARG_ENABLE(filter-cutoff-min,
661     [ --enable-filter-cutoff-min
662     Minimum filter cutoff frequency in Hz
663     (default=100.0).],
664     [config_filter_cutoff_min="${enableval}"],
665     [config_filter_cutoff_min="100.0"]
666     )
667     AC_DEFINE_UNQUOTED(CONFIG_FILTER_CUTOFF_MIN, ${config_filter_cutoff_min}f, [Define min. filter cutoff frequency.])
668    
669     AC_ARG_ENABLE(filter-cutoff-max,
670     [ --enable-filter-cutoff-max
671     Maximum filter cutoff frequency in Hz
672     (default=10000.0).],
673     [config_filter_cutoff_max="${enableval}"],
674     [config_filter_cutoff_max="10000.0"]
675     )
676     AC_DEFINE_UNQUOTED(CONFIG_FILTER_CUTOFF_MAX, ${config_filter_cutoff_max}f, [Define max. filter cutoff frequency.])
677    
678     AC_ARG_ENABLE(override-cutoff-ctrl,
679     [ --enable-override-cutoff-ctrl
680     Override filter cutoff MIDI controller (default=no).
681     Note: you have to define the MIDI controller number
682     here, it's not a boolean parameter type! If this
683     option is used, controller number given by
684     instrument patch will be ignored and instead this
685     supplied value will be used.],
686     [config_override_cutoff_ctrl="${enableval}"],
687     [config_override_cutoff_ctrl="no"]
688     )
689     if test ! "$config_override_cutoff_ctrl" = "no"; then
690     AC_DEFINE_UNQUOTED(CONFIG_OVERRIDE_CUTOFF_CTRL, $config_override_cutoff_ctrl, [Define to a MIDI controller number to override cutoff control.])
691     fi
692    
693     AC_ARG_ENABLE(override-resonance-ctrl,
694     [ --enable-override-resonance-ctrl
695     Override filter resonance MIDI controller
696     (default=no). Note: you have to define the MIDI
697     controller number here, it's not a boolean
698     parameter type! If this option is used, controller
699     number given by instrument patch will be ignored
700     and instead this supplied value will be used.],
701     [config_override_resonance_ctrl="${enableval}"],
702     [config_override_resonance_ctrl="no"]
703     )
704     if test ! "$config_override_resonance_ctrl" = "no"; then
705     AC_DEFINE_UNQUOTED(CONFIG_OVERRIDE_RESONANCE_CTRL, $config_override_resonance_ctrl, [Define to a MIDI controller number to override resonance control.])
706     fi
707    
708     AC_ARG_ENABLE(override-filter-type,
709     [ --enable-override-filter-type
710     Override filter type (default=no). Options:
711     hp: for highpass
712     bp: for bandpass
713     br: for bandreject
714     lp: for lowpass
715     lpt: for lowpass turbo],
716     [ if test "${enableval}" = "hp" ; then
717     config_override_filter_type="::gig::vcf_type_highpass"
718     elif test "${enableval}" = "bp" ; then
719     config_override_filter_type="::gig::vcf_type_bandpass"
720     elif test "${enableval}" = "br" ; then
721     config_override_filter_type="::gig::vcf_type_bandreject"
722     elif test "${enableval}" = "lp" ; then
723     config_override_filter_type="::gig::vcf_type_lowpass"
724     elif test "${enableval}" = "lpt" ; then
725     config_override_filter_type="::gig::vcf_type_lowpassturbo"
726     elif test ! "${enableval}" = "no"; then
727     AC_MSG_ERROR([Unknown filter type for parameter --enable-override-filter-type])
728 schoenebeck 579 fi
729 schoenebeck 554 ],
730     [config_override_filter_type="no"]
731     )
732     if test ! "$config_override_filter_type" = "no"; then
733     AC_DEFINE_UNQUOTED(CONFIG_OVERRIDE_FILTER_TYPE, $config_override_filter_type, [Define to a filter type to always force that filter type.])
734     fi
735    
736 schoenebeck 563 AC_ARG_ENABLE(gs-checksum,
737     [ --enable-gs-checksum
738     Enable Roland General Synth SysEx checksum check
739     (default=no). If this is enabled, all GS SysEx
740     messages which do not provide a correct checksum
741     will be ignored. This is disabled by default as
742     not all devices honor GS checksums.],
743 schoenebeck 1360 [config_assert_gs_sysex_checksum="$enableval"],
744 schoenebeck 563 [config_assert_gs_sysex_checksum="no"]
745     )
746     if test "config_assert_gs_sysex_checksum" = "yes"; then
747     AC_DEFINE_UNQUOTED(CONFIG_ASSERT_GS_SYSEX_CHECKSUM, 1, [Define to 1 if you want to enable GS SysEx check.])
748     fi
749    
750 schoenebeck 829 AC_ARG_ENABLE(portamento-time-min,
751     [ --enable-portamento-time-min
752     Minimum Portamento time in seconds
753     (default=0.1).],
754     [config_portamento_time_min="${enableval}"],
755     [config_portamento_time_min="0.1"]
756     )
757     AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_MIN, $config_portamento_time_min, [Define min. portamento time.])
758    
759     AC_ARG_ENABLE(portamento-time-max,
760     [ --enable-portamento-time-max
761     Maximum Portamento time in seconds
762     (default=32).],
763     [config_portamento_time_max="${enableval}"],
764     [config_portamento_time_max="32"]
765     )
766     AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_MAX, $config_portamento_time_max, [Define max. portamento time.])
767    
768     AC_ARG_ENABLE(portamento-time-default,
769     [ --enable-portamento-time-default
770     Default Portamento time in seconds
771     (default=1).],
772     [config_portamento_time_default="${enableval}"],
773     [config_portamento_time_default="1"]
774     )
775     AC_DEFINE_UNQUOTED(CONFIG_PORTAMENTO_TIME_DEFAULT, $config_portamento_time_default, [Define default portamento time.])
776    
777 schoenebeck 714 AC_ARG_ENABLE(signed-triang-algo,
778     [ --enable-signed-triang-algo
779     Signed triangular wave algorithm to be used (e.g. for LFOs).
780     Currently available options:
781     intmath:
782     Uses integer math without any branch will then be
783     converted to floating point value for each sample point.
784     This int->float conversion might hurt on some systems.
785 senkov 720 intmathabs:
786     Similar to intmath but uses abs() function.
787     Depending on compiler and platrofm this could
788     perform better than integer math as it avoids
789 schoenebeck 1360 an extra integer multiply instruction.
790 schoenebeck 714 diharmonic:
791     The triangular wave will be approximated by adding two
792     sinusoidials. This solution might especially hurt on
793     systems with weak floating point unit.
794     benchmark (default):
795     This is not an algorithm. Use this option if the
796     appropriate algorithm should be automatically
797     chosen by the configure script by performing a
798     benchmark between the algorithms mentioned above.
799     This will NOT work for cross compilation!],
800     [ if test ! "(" "${enableval}" = "intmath" \
801 senkov 720 -o "${enableval}" = "intmathabs" \
802 schoenebeck 714 -o "${enableval}" = "diharmonic" ")" ; then
803     AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-signed-triang-algo])
804     else
805     config_signed_triang_algo="${enableval}"
806     fi
807     ],
808     [config_signed_triang_algo="benchmark"]
809     )
810 schoenebeck 563
811 schoenebeck 714 AC_ARG_ENABLE(unsigned-triang-algo,
812     [ --enable-unsigned-triang-algo
813     Unsigned triangular wave algorithm to be used (e.g. for LFOs).
814     Currently available options:
815     intmath:
816     Uses integer math without any branch will then be
817     converted to floating point value for each sample point.
818     This int->float conversion might hurt on some systems.
819 senkov 720 intmathabs:
820     Similar to intmath but uses abs() function.
821     Depending on compiler and platrofm this could
822     perform better than integer math as it avoids
823 schoenebeck 1360 an extra integer multiply instruction.
824 schoenebeck 714 diharmonic:
825     The triangular wave will be approximated by adding two
826     sinusoidials. This solution might especially hurt on
827     systems with weak floating point unit.
828     benchmark (default):
829     This is not an algorithm. Use this option if the
830     appropriate algorithm should be automatically
831     chosen by the configure script by performing a
832     benchmark between the algorithms mentioned above.
833     This will NOT work for cross compilation!],
834     [ if test ! "(" "${enableval}" = "intmath" \
835 senkov 720 -o "${enableval}" = "intmathabs" \
836 schoenebeck 714 -o "${enableval}" = "diharmonic" ")" ; then
837     AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-unsigned-triang-algo])
838     else
839     config_unsigned_triang_algo="${enableval}"
840     fi
841     ],
842     [config_unsigned_triang_algo="benchmark"]
843     )
844    
845 iliev 716 AC_ARG_ENABLE(process-muted-channels,
846     [ --enable-process-muted-channels
847     Enable processing of muted channels (default=no).
848     In that mode all MIDI events in the muted channels
849     will be processed. This will provide information
850     about the active voices in the muted channels and
851     will not discard notes, triggered in mute mode,
852     when the channel is unmuted. But also will reduce
853     the efficiency.],
854 schoenebeck 1360 [config_process_muted_channels="$enableval"],
855 iliev 716 [config_process_muted_channels="no"]
856     )
857     if test "$config_process_muted_channels" = "yes"; then
858     AC_DEFINE_UNQUOTED(CONFIG_PROCESS_MUTED_CHANNELS, 1, [Define to 1 if you want to enable processing of muted channels.])
859     fi
860 schoenebeck 714
861 schoenebeck 849 AC_ARG_ENABLE(process-all-notes-off,
862     [ --disable-process-all-notes-off
863     Disable interpretation of All-Notes-Off MIDI
864     messages (default=on). By default LS will release
865     all voices whenever it receives an All-Notes-Off
866     MIDI message. You can disable this behavior, so
867     that LS simply ignores such messages.],
868 schoenebeck 1360 [config_process_all_notes_off="$enableval"],
869 schoenebeck 849 [config_process_all_notes_off="yes"]
870     )
871     if test "$config_process_all_notes_off" = "yes"; then
872     AC_DEFINE_UNQUOTED(CONFIG_PROCESS_ALL_NOTES_OFF, 1, [Define to 1 if you want to enable processing of All-Notes-Off MIDI messages.])
873     fi
874    
875 persson 830 AC_ARG_ENABLE(interpolate-volume,
876     [ --disable-interpolate-volume
877     Disable interpolation of volume modulation
878     (default=on). With this enabled, the volume changes
879     generated by for example the envelope generator
880     will be smoother, minimizing the risk for audio
881     clicks. Disable it to reduce CPU usage.],
882 schoenebeck 1360 [config_interpolate_volume="$enableval"],
883 persson 830 [config_interpolate_volume="yes"]
884     )
885     if test "$config_interpolate_volume" = "yes"; then
886     AC_DEFINE_UNQUOTED(CONFIG_INTERPOLATE_VOLUME, 1, [Define to 1 if you want to enable interpolation of volume modulation.])
887     fi
888 iliev 716
889 schoenebeck 1212 AC_ARG_ENABLE(plugin-dir,
890     [ --enable-plugin-dir
891     Directory where the sampler shall look for potential plugins,
892     that is 3rd party shared libraries that should be loaded by
893     the sampler on startup. By default the sampler will search
894     for plugins in the subdirectory "plugins" below its own
895     library directory.
896     (i.e. /usr/local/lib/linuxsampler/plugins)],
897     [config_plugin_dir="${enableval}"],
898     [config_plugin_dir="${libdir}/linuxsampler/plugins"]
899     )
900     AC_SUBST(config_plugin_dir)
901 persson 830
902 schoenebeck 1364 AC_ARG_ENABLE(default-instruments-db-location,
903     [ --enable-default-instruments-db-location
904     Only when instruments DB feature is enabled: file name
905     which shall be taken as default location of the
906     instruments DB file. This location can still be
907     overridden at runtime with a command line switch.
908     (default: /var/lib/linuxsampler/instruments.db)],
909     [config_default_instruments_db_file="${enableval}"],
910     [config_default_instruments_db_file="/var/lib/linuxsampler/instruments.db"]
911     )
912     AC_DEFINE_UNQUOTED(
913     CONFIG_DEFAULT_INSTRUMENTS_DB_LOCATION,
914     "$config_default_instruments_db_file",
915     [Only when instruments DB feature is enabled: default location of the DB file.]
916     )
917 schoenebeck 1432 AC_SUBST(config_default_instruments_db_file)
918 schoenebeck 1212
919 schoenebeck 1364
920 schoenebeck 554 ###########################################################################
921 schoenebeck 714 # Automatic Benchmarks (to detect the best algorithms for the system)
922    
923     AC_LANG_SAVE
924    
925     if test "$config_signed_triang_algo" = "benchmark"; then
926     echo -n "benchmarking for the best (signed) triangular oscillator algorithm... "
927     AC_LANG_CPLUSPLUS
928     AC_TRY_RUN([
929     #define SIGNED 1
930     #define SILENT 1
931 schoenebeck 738 #include "${srcdir}/benchmarks/triang.cpp"
932 schoenebeck 714 ],
933     triang_signed=0,
934     triang_signed=$?,
935     triang_signed=0
936     )
937     if test "$triang_signed" = "2"; then
938     config_signed_triang_algo="intmath"
939     echo "integer math"
940     elif test "$triang_signed" = "3"; then
941     config_signed_triang_algo="diharmonic"
942     echo "di harmonics"
943 senkov 720 elif test "$triang_signed" = "5"; then
944     config_signed_triang_algo="intmathabs"
945     echo "integer math using abs()"
946 schoenebeck 714 else
947     echo "Benchmark of signed triangular wave algorithms failed!"
948     echo "Maybe you are doing cross compilation? In that case you have to select"
949     echo "an algorithm manually with './configure --enable-signed-triang-algo=...'"
950     echo "Call './configure --help' for further information or read configure.in."
951     exit -1;
952     fi
953 schoenebeck 1165 else
954     case "$config_signed_triang_algo" in
955     intmath)
956     triang_signed=2 ;;
957     diharmonic)
958     triang_signed=3 ;;
959     intmathabs)
960     triang_signed=5 ;;
961     esac
962 schoenebeck 714 fi
963 schoenebeck 738 AC_DEFINE_UNQUOTED(CONFIG_SIGNED_TRIANG_ALGO, ${triang_signed}, [Define signed triangular wave algorithm to be used.])
964 schoenebeck 714
965     if test "$config_unsigned_triang_algo" = "benchmark"; then
966     echo -n "benchmarking for the best (unsigned) triangular oscillator algorithm... "
967     AC_LANG_CPLUSPLUS
968     AC_TRY_RUN([
969     #define SIGNED 0
970     #define SILENT 1
971 schoenebeck 738 #include "${srcdir}/benchmarks/triang.cpp"
972 schoenebeck 714 ],
973     triang_unsigned=0,
974     triang_unsigned=$?,
975     triang_unsigned=0
976     )
977     if test "$triang_unsigned" = "2"; then
978     config_unsigned_triang_algo="intmath"
979     echo "integer math"
980     elif test "$triang_unsigned" = "3"; then
981     config_unsigned_triang_algo="diharmonic"
982     echo "di harmonics"
983 senkov 720 elif test "$triang_unsigned" = "5"; then
984 schoenebeck 726 config_unsigned_triang_algo="intmathabs"
985 senkov 720 echo "integer math using abs()"
986 schoenebeck 714 else
987     echo "Benchmark of unsigned triangular wave algorithms failed!"
988     echo "Maybe you are doing cross compilation? In that case you have to select"
989     echo "an algorithm manually with './configure --enable-unsigned-triang-algo=...'"
990     echo "Call './configure --help' for further information or read configure.in."
991     exit -1;
992     fi
993 schoenebeck 1165 else
994     case "$config_unsigned_triang_algo" in
995     intmath)
996     triang_unsigned=2 ;;
997     diharmonic)
998     triang_unsigned=3 ;;
999     intmathabs)
1000     triang_unsigned=5 ;;
1001     esac
1002 schoenebeck 714 fi
1003 schoenebeck 738 AC_DEFINE_UNQUOTED(CONFIG_UNSIGNED_TRIANG_ALGO, ${triang_unsigned}, [Define unsigned triangular wave algorithm to be used.])
1004 schoenebeck 714
1005     AC_LANG_RESTORE
1006    
1007    
1008     ###########################################################################
1009 schoenebeck 554 # Create Build Files
1010    
1011 schoenebeck 9 AM_CONFIG_HEADER(config.h)
1012 schoenebeck 697 AM_INIT_AUTOMAKE(linuxsampler, "$LINUXSAMPLER_RELEASE_MAJOR.$LINUXSAMPLER_RELEASE_MINOR.$LINUXSAMPLER_RELEASE_BUILD")
1013 schoenebeck 9
1014     AC_LANG_CPLUSPLUS
1015     AC_PROG_CXX
1016 persson 497
1017 persson 685 # some gcc 4.0 versions need -msse for SSE register allocations
1018     if test "$config_asm" = "yes"; then
1019     if test "$def_arch_x86" = 1; then
1020     CXXFLAGS="$CXXFLAGS -msse"
1021     fi
1022     fi
1023    
1024 persson 497 # autoconf 2.59/libtool 1.5.12 bug? work-around. Without a check like
1025     # this, the dlfcn.h check in am_prog_libtool may fail.
1026     AC_CHECK_HEADER(stdlib.h)
1027    
1028 schoenebeck 654 AC_OUTPUT( \
1029     Makefile \
1030     man/Makefile \
1031     man/linuxsampler.1 \
1032     src/Makefile \
1033 iliev 1161 src/db/Makefile \
1034 schoenebeck 654 src/network/Makefile \
1035     src/engines/Makefile \
1036     src/engines/gig/Makefile \
1037     src/engines/common/Makefile \
1038 schoenebeck 1321 src/common/Makefile \
1039 schoenebeck 654 src/testcases/Makefile \
1040     src/drivers/Makefile \
1041     src/drivers/audio/Makefile \
1042     src/drivers/midi/Makefile \
1043 schoenebeck 1375 src/plugins/Makefile \
1044 schoenebeck 654 linuxsampler.spec \
1045     debian/Makefile \
1046     Artwork/Makefile \
1047     scripts/Makefile \
1048     osx/Makefile \
1049 schoenebeck 1175 osx/linuxsampler.xcodeproj/Makefile \
1050 schoenebeck 654 Documentation/Makefile \
1051     Documentation/Engines/Makefile \
1052     Documentation/Engines/gig/Makefile \
1053 schoenebeck 697 linuxsampler.pc \
1054     Doxyfile \
1055 schoenebeck 654 )
1056 schoenebeck 554
1057 schoenebeck 1212 # resolve all nested variables in '${config_plugin_dir}'
1058     # (merely for providing a human readable summary below)
1059     while test $config_plugin_dir != `eval echo ${config_plugin_dir}` ; do
1060     config_plugin_dir=`eval echo ${config_plugin_dir}`
1061     done
1062 schoenebeck 554
1063 schoenebeck 1212
1064 schoenebeck 554 ###########################################################################
1065     # Output All Configuration Options
1066    
1067     echo ""
1068     echo "#####################################################################"
1069     echo "# LinuxSampler Configuration #"
1070     echo "#-------------------------------------------------------------------#"
1071 schoenebeck 617 echo "# Assembly Optimizations: ${config_asm}"
1072 schoenebeck 554 echo "# Development Mode: ${config_dev_mode}"
1073     echo "# Debug Level: ${config_debug_level}"
1074     echo "# Use Exceptions in RT Context: ${config_rt_exceptions}"
1075     echo "# Preload Samples: ${config_preload_samples}"
1076     echo "# Maximum Pitch: ${config_max_pitch} (octaves)"
1077     echo "# Maximum Events: ${config_max_events}"
1078     echo "# Envelope Bottom Level: ${config_eg_bottom} (linear)"
1079     echo "# Envelope Minimum Release Time: ${config_eg_min_release_time} s"
1080     echo "# Streams to be refilled per Disk Thread Cycle: ${config_refill_streams}"
1081     echo "# Minimum Stream Refill Size: ${config_stream_min_refill}"
1082     echo "# Maximum Stream Refill Size: ${config_stream_max_refill}"
1083     echo "# Stream Size: ${config_stream_size}"
1084     echo "# Maximum Disk Streams: ${config_max_streams}"
1085     echo "# Maximum Voices: ${config_max_voices}"
1086 schoenebeck 738 echo "# Default Subfragment Size: ${config_subfragment_size}"
1087 schoenebeck 1005 echo "# Default Global Volume Attenuation: ${config_global_attenuation_default}"
1088 schoenebeck 563 echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"
1089 schoenebeck 714 echo "# Signed Triangular Oscillator Algorithm: ${config_signed_triang_algo}"
1090     echo "# Unsigned Triangular Oscillator Algorithm: ${config_unsigned_triang_algo}"
1091 schoenebeck 554 echo "# SysEx Buffer Size: ${config_sysex_buffer_size} Byte"
1092 schoenebeck 829 echo "# Min. Portamento Time: ${config_portamento_time_min} s"
1093     echo "# Max. Portamento Time: ${config_portamento_time_max} s"
1094     echo "# Default Portamento Time: ${config_portamento_time_default} s"
1095 schoenebeck 554 echo "# Force Filter Usage: ${config_force_filter}"
1096     echo "# Filter Cutoff Minimum: ${config_filter_cutoff_min} Hz"
1097     echo "# Filter Cutoff Maximum: ${config_filter_cutoff_max} Hz"
1098     echo "# Override Filter Cutoff Controller: ${config_override_cutoff_ctrl}"
1099     echo "# Override Filter Resonance Controller: ${config_override_resonance_ctrl}"
1100     echo "# Override Filter Type: ${config_override_filter_type}"
1101 schoenebeck 563 echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"
1102 iliev 716 echo "# Process Muted Channels: ${config_process_muted_channels}"
1103 schoenebeck 849 echo "# Process All-Notes-Off MIDI message: ${config_process_all_notes_off}"
1104 persson 830 echo "# Interpolate Volume: ${config_interpolate_volume}"
1105 schoenebeck 1364 echo "# Instruments database support: ${config_instruments_db}"
1106     if test "$config_instruments_db" = "yes"; then
1107     echo "# Instruments DB default location: ${config_default_instruments_db_file}"
1108     fi
1109 schoenebeck 1212 echo "# Plugin Path: ${config_plugin_dir}"
1110 schoenebeck 554 echo "#-------------------------------------------------------------------#"
1111     echo "# Read './configure --help' or file 'configure.in' for details. #"
1112     echo "#####################################################################"
1113     echo ""
1114     echo "Good. Now type 'make' to compile, followed by 'make install' as root."
1115     echo ""

  ViewVC Help
Powered by ViewVC