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

Contents of /linuxsampler/trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 697 - (show annotations) (download)
Tue Jul 19 15:43:40 2005 UTC (18 years, 8 months ago) by schoenebeck
Original Path: linuxsampler/trunk/configure.in
File size: 26584 byte(s)
* install necessary development header files for allowing 3rd party
  applications to link against liblinuxsampler
* liblinuxsampler's API documentation can be generated with 'make docs'
  (Doxygen required)

1 AC_INIT(configure.in)
2
3 #------------------------------------------------------------------------------------
4 # LinuxSampler's / liblinuxsampler's "official" release version:
5
6 LINUXSAMPLER_RELEASE_MAJOR=0
7 LINUXSAMPLER_RELEASE_MINOR=3
8 LINUXSAMPLER_RELEASE_BUILD=3
9
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 LIBLINUXSAMPLER_LT_CURRENT=0
28 LIBLINUXSAMPLER_LT_REVISION=0
29 LIBLINUXSAMPLER_LT_AGE=0
30 SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"
31
32 AM_PROG_LIBTOOL
33
34 AC_SUBST(SHLIB_VERSION_ARG)
35 AC_SUBST(SHARED_VERSION_INFO)
36
37 AC_C_BIGENDIAN
38 AC_CANONICAL_SYSTEM
39
40 AC_SUBST(target)
41 AC_SUBST(target_alias)
42 AC_SUBST(target_cpu)
43 AC_SUBST(target_os)
44 AC_SUBST(target_vendor)
45
46
47 ###########################################################################
48 # General Checks
49
50 AC_MSG_CHECKING([whether x86 architecture])
51 def_arch_x86=0
52 case $target_cpu in
53 "i386" | "i486" | "i586" | "i686" | "i786")
54 echo "yes"
55 def_arch_x86=1;;
56 *)
57 echo "no";;
58 esac
59 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
62 CXX_CPU_SWITCH=
63 if test "$def_arch_x86" = 1; then
64 CXX_CPU_SWITCH="-march=$target_cpu"
65 elif test "$target_cpu" = "powerpc"; then
66 CXX_CPU_SWITCH="-arch=$target_cpu"
67 fi
68 AC_SUBST([CXX_CPU_SWITCH])
69
70 AC_MSG_CHECKING([whether UNIX98 compatible])
71 AC_LANG_SAVE
72 AC_LANG_C
73 AC_TRY_RUN([
74 #ifndef _GNU_SOURCE
75 #define _GNU_SOURCE 1
76 #endif
77 #include <features.h>
78 void main(void) {
79 #if _XOPEN_SOURCE >= 500
80 exit(0); /* UNIX98 compatible */
81 #else
82 exit(-1); /* not UNIX98 compatible */
83 #endif
84 }
85 ],
86 have_unix98="yes",
87 have_unix98="no",
88 have_unix98="no"
89 )
90 AC_LANG_RESTORE
91 AC_MSG_RESULT([$have_unix98])
92 if test "$have_unix98" = "no"; then
93 if test "x$HAVE_UNIX98" = "x"; then
94 echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"
95 echo "pthread_mutexattr_settype() call in Mutex.cpp. You may want to run
96 echo "./configure with environment variable HAVE_UNIX98=1 in case you think you
97 echo "have a UNIX98 compatible system."
98 exit -1;
99 fi
100 fi
101
102 # Checks for available audio and MIDI systems / drivers
103 # (we throw an error if there's not at least one system for audio output and MIDI input available)
104 have_midi_input_driver="false"
105 have_audio_output_driver="false"
106
107 AC_CHECK_HEADER(alsa/asoundlib.h,
108 AC_CHECK_LIB(asound, main,
109 have_alsa=1
110 ,
111 have_alsa=0
112 )
113 ,
114 have_alsa=0
115 )
116 if test "$have_alsa" = "1"; then
117 have_midi_input_driver="true"
118 have_audio_output_driver="true";
119 fi
120 AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")
121 AC_DEFINE_UNQUOTED(HAVE_ALSA,$have_alsa,[Define to 1 if you have ALSA installed.])
122
123 echo -n "checking Alsa version... "
124 AC_LANG_SAVE
125 AC_LANG_C
126 AC_TRY_RUN([
127 #include <alsa/asoundlib.h>
128 void main(void) {
129 /* ensure backward compatibility */
130 #if !defined(SND_LIB_MAJOR) && defined(SOUNDLIB_VERSION_MAJOR)
131 #define SND_LIB_MAJOR SOUNDLIB_VERSION_MAJOR
132 #endif
133 exit(SND_LIB_MAJOR);
134 }
135 ],
136 alsa_major=0,
137 alsa_major=$?,
138 alsa_major=0
139 )
140 AC_TRY_RUN([
141 #include <alsa/asoundlib.h>
142 void main(void) {
143 /* ensure backward compatibility */
144 #if !defined(SND_LIB_MINOR) && defined(SOUNDLIB_VERSION_MINOR)
145 #define SND_LIB_MINOR SOUNDLIB_VERSION_MINOR
146 #endif
147 exit(SND_LIB_MINOR);
148 }
149 ],
150 alsa_minor=0,
151 alsa_minor=$?,
152 alsa_minor=0
153 )
154 AC_TRY_RUN([
155 #include <alsa/asoundlib.h>
156 void main(void) {
157 /* ensure backward compatibility */
158 #if !defined(SND_LIB_SUBMINOR) && defined(SOUNDLIB_VERSION_SUBMINOR)
159 #define SND_LIB_SUBMINOR SOUNDLIB_VERSION_SUBMINOR
160 #endif
161 exit(SND_LIB_SUBMINOR);
162 }
163 ],
164 alsa_subminor=0,
165 alsa_subminor=$?,
166 alsa_subminor=0
167 )
168 AC_LANG_RESTORE
169 echo "$alsa_major.$alsa_minor.$alsa_subminor";
170 AC_DEFINE_UNQUOTED(ALSA_MAJOR,$alsa_major,[Define to the major version number of your Alsa installation.])
171 AC_DEFINE_UNQUOTED(ALSA_MINOR,$alsa_minor,[Define to the minor version number of your Alsa installation.])
172 AC_DEFINE_UNQUOTED(ALSA_SUBMINOR,$alsa_subminor,[Define to the subminor version number of your Alsa installation.])
173
174 # JACK
175 PKG_CHECK_MODULES(JACK, jack, HAVE_JACK=true, HAVE_JACK=false)
176 AC_SUBST(JACK_LIBS)
177 AC_SUBST(JACK_CFLAGS)
178 if test $HAVE_JACK = false; then
179 HAVE_JACK=0;
180 else
181 HAVE_JACK=1
182 have_audio_output_driver="true";
183 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)
184 fi
185 AM_CONDITIONAL(HAVE_JACK, test $HAVE_JACK = 1)
186 AC_DEFINE_UNQUOTED(HAVE_JACK,$HAVE_JACK,[Define to 1 if you have JACK installed.])
187
188 # MidiShare (Linux, OS X, Windows)
189 AC_CHECK_HEADER(MidiShare.h,
190 AC_CHECK_LIB(MidiShare, MidiCountEvs,
191 have_midishare=1,
192 have_midishare=0
193 )
194 ,
195 have_midishare=0
196 )
197 if test "$have_midishare" = "1"; then
198 have_midi_input_driver="true"
199 fi
200 AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")
201 AC_DEFINE_UNQUOTED(HAVE_MIDISHARE,$have_midishare,[Define to 1 if you have MidiShare installed.])
202
203 # CoreMIDI (OS X)
204 AC_CHECK_HEADER(CoreMIDI/CoreMIDI.h,
205 have_coremidi=1,
206 have_coremidi=0
207 )
208 if test "$have_coremidi" = "1"; then
209 have_midi_input_driver="true"
210 fi
211 AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")
212 AC_DEFINE_UNQUOTED(HAVE_COREMIDI,$have_coremidi,[Define to 1 if you have CoreMIDI installed.])
213
214 # Check presence of libgig
215 libgig_version="2.0.1"
216 PKG_CHECK_MODULES(GIG, gig >= $libgig_version, HAVE_GIG=true, HAVE_GIG=false)
217 if test "$HAVE_GIG" = "false"; then
218 echo "Required libgig version not found!"
219 echo "You need to have libgig version ${libgig_version} installed!"
220 exit -1;
221 fi
222 AC_SUBST(GIG_CFLAGS)
223 AC_SUBST(GIG_LIBS)
224
225 # SQLITE3
226 PKG_CHECK_MODULES(SQLITE3, sqlite3, HAVE_SQLITE3=true, HAVE_SQLITE3=false)
227 AC_SUBST(SQLITE3_LIBS)
228 AC_SUBST(SQLITE3_CFLAGS)
229 if test $HAVE_SQLITE3 = false; then
230 HAVE_SQLITE3=0;
231 else
232 HAVE_SQLITE3=1
233 fi
234 AM_CONDITIONAL(HAVE_SQLITE3, test $HAVE_SQLITE3 = 1)
235 AC_DEFINE_UNQUOTED(HAVE_SQLITE3,$HAVE_SQLITE3,[Define to 1 if you have SQLITE3 installed.])
236
237 if test "$have_midi_input_driver" = "false"; then
238 echo "No supported MIDI input system found!"
239 echo "Sorry, LinuxSampler only supports the following MIDI drivers at the moment:"
240 echo "ALSA, MIDIShare, CoreMIDI."
241 echo "If you think you have one of those available on your system, make sure you"
242 echo "also have the respective development (header) files installed."
243 exit -1;
244 fi
245 if test "$have_audio_output_driver" = "false"; then
246 echo "No supported audio output system found!"
247 echo "Sorry, LinuxSampler only supports ALSA and JACK as audio output driver at the moment!"
248 exit -1;
249 fi
250
251
252 ###########################################################################
253 # Handle Configuration Options
254
255 # TODO: should we use AC_ARG_VAR(variable, description) instead?
256
257 AC_ARG_ENABLE(asm,
258 [ --disable-asm
259 Disable hand-crafted assembly optimizations
260 (default=on). LinuxSampler provides CPU specific
261 assembly optimizations for the most important
262 synthesis algorithms. You usually don't want to
263 disable that.],
264 [config_asm="no"],
265 [config_asm="yes"]
266 )
267 if test "$config_asm" = "yes"; then
268 AC_DEFINE_UNQUOTED(CONFIG_ASM, 1, [Define to 1 if you want to enable hand-crafted asm optimizations.])
269 fi
270
271 AC_ARG_ENABLE(dev-mode,
272 [ --enable-dev-mode
273 Enable development mode (default=no). In that mode
274 we do some extra sanity checks here and there.
275 This helps to spot possible problems, but reduces
276 efficiency a bit],
277 [config_dev_mode="yes"],
278 [config_dev_mode="no"]
279 )
280 if test "$config_dev_mode" = "yes"; then
281 AC_DEFINE_UNQUOTED(CONFIG_DEVMODE, 1, [Define to 1 if you want to enable development mode.])
282 fi
283
284 AC_ARG_ENABLE(debug-level,
285 [ --enable-debug-level
286 Specify verbosity of console messages (default=1).
287 The higher the value, the higher will be verbosity.
288 A value of 0 means no console output at all.
289 There's not really an upper limit but the usual
290 level of all messages is currently somewhere less
291 than 10.],
292 [config_debug_level="${enableval}"],
293 [config_debug_level="1"]
294 )
295 AC_DEFINE_UNQUOTED(CONFIG_DEBUG_LEVEL, $config_debug_level, [Define console verbosity.])
296
297 AC_ARG_ENABLE(rt-exceptions,
298 [ --enable-rt-exceptions
299 Enable exceptions in the realtime thread
300 (default=no). If this is enabled, exceptions will
301 be thrown on critical errors in the realtime
302 context as well. Otherwise if disabled
303 segmentation faults will be forced by the
304 application on critical errors.],
305 [config_rt_exceptions="yes"],
306 [config_rt_exceptions="no"]
307 )
308 if test "$config_rt_exceptions" = "yes"; then
309 AC_DEFINE_UNQUOTED(CONFIG_RT_EXCEPTIONS, 1, [Define to 1 to allow exceptions in the realtime context.])
310 fi
311
312 AC_ARG_ENABLE(preload-samples,
313 [ --enable-preload-samples
314 Due to seeking and latency issues with hard drives
315 we have to cache a small part of samples' head in
316 RAM (default=32768). The higher this value the
317 more memory will be occupied for each sample, but
318 the safer this will be in regards of possible
319 droputs. A 'good' value depends on the running
320 system and usage dependant factors.],
321 [config_preload_samples="${enableval}"],
322 [config_preload_samples="32768"]
323 )
324 AC_DEFINE_UNQUOTED(CONFIG_PRELOAD_SAMPLES, $config_preload_samples, [Define amount of sample points to be cached in RAM.])
325
326 AC_ARG_ENABLE(max-pitch,
327 [ --enable-max-pitch
328 Specify the maximum allowed pitch value in octaves
329 (default=4). To lower memory usage you might want
330 set a smaller value.],
331 [config_max_pitch="${enableval}"],
332 [config_max_pitch="4"]
333 )
334 AC_DEFINE_UNQUOTED(CONFIG_MAX_PITCH, $config_max_pitch, [Define max. allowed pitch.])
335
336 AC_ARG_ENABLE(max-events,
337 [ --enable-max-events
338 Specify the maximum allowed amount of events to be
339 processed per fragment (default=1024).],
340 [config_max_events="${enableval}"],
341 [config_max_events="1024"]
342 )
343 AC_DEFINE_UNQUOTED(CONFIG_MAX_EVENTS_PER_FRAGMENT, $config_max_events, [Define max. allowed events per fragment.])
344
345 AC_ARG_ENABLE(eg-bottom,
346 [ --enable-eg-bottom
347 Bottom limit of envelope generators
348 (default=0.001). Certain kinds of curve types like
349 exponential curves converge against 0 but never
350 reach 0. So we have to define a certain low value
351 after which we should consider all smaller values
352 to be 'almost zero'. The smaller this value, the
353 longer will voices survive in EG's release stage
354 and thus waste voices. If this value is too high
355 will cause click sounds though.],
356 [config_eg_bottom="${enableval}"],
357 [config_eg_bottom="0.001"]
358 )
359 AC_DEFINE_UNQUOTED(CONFIG_EG_BOTTOM, $config_eg_bottom, [Define bottom limit of envelopes.])
360
361 AC_ARG_ENABLE(eg-min-release-time,
362 [ --enable-eg-min-release-time
363 Specify the lowest allowed release time in seconds
364 (default=0.0025). This value will also be used to
365 ramp down voices on voice stealing. This value
366 should always be less than the period time of the
367 used audio driver, as in case of voice stealing
368 the killed voice needs to be completely ramped
369 down in the same fragment.],
370 [config_eg_min_release_time="${enableval}"],
371 [config_eg_min_release_time="0.0025"]
372 )
373 AC_DEFINE_UNQUOTED(CONFIG_EG_MIN_RELEASE_TIME, $config_eg_min_release_time, [Define min. release time.])
374
375 AC_ARG_ENABLE(refill-streams,
376 [ --enable-refill-streams
377 Number of streams that should be refilled in each
378 disk thread cycle (default=4).],
379 [config_refill_streams="${enableval}"],
380 [config_refill_streams="4"]
381 )
382 AC_DEFINE_UNQUOTED(CONFIG_REFILL_STREAMS_PER_RUN, $config_refill_streams, [Define amount of streams to be refilled per cycle.])
383
384 AC_ARG_ENABLE(stream-min-refill,
385 [ --enable-stream-min-refill
386 Minimum refill size for disk streams (default=1024).
387 The disk thread will go to sleep for a while if no
388 stream had to be refilled more than this value in
389 a disk thread cycle.],
390 [config_stream_min_refill="${enableval}"],
391 [config_stream_min_refill="1024"]
392 )
393 AC_DEFINE_UNQUOTED(CONFIG_STREAM_MIN_REFILL_SIZE, $config_stream_min_refill, [Define min. stream refill size.])
394
395 AC_ARG_ENABLE(stream-max-refill,
396 [ --enable-stream-max-refill
397 Maximum refill size for disk streams
398 (default=65536). The disk thread will refill
399 each stream only by a size of this value per
400 disk thread cycle.],
401 [config_stream_max_refill="${enableval}"],
402 [config_stream_max_refill="65536"]
403 )
404 AC_DEFINE_UNQUOTED(CONFIG_STREAM_MAX_REFILL_SIZE, $config_stream_max_refill, [Define max. stream refill size.])
405
406 AC_ARG_ENABLE(stream-size,
407 [ --enable-stream-size
408 Size of each stream's ring buffer in sample points
409 (default=262144).],
410 [config_stream_size="${enableval}"],
411 [config_stream_size="262144"]
412 )
413 AC_DEFINE_UNQUOTED(CONFIG_STREAM_BUFFER_SIZE, $config_stream_size, [Define each stream's ring buffer size.])
414
415 AC_ARG_ENABLE(max-streams,
416 [ --enable-max-streams
417 Maximum amount of disk streams (default=90). This
418 value should always be higher than the maximum
419 amount of voices.],
420 [config_max_streams="${enableval}"],
421 [config_max_streams="90"]
422 )
423 AC_DEFINE_UNQUOTED(CONFIG_MAX_STREAMS, $config_max_streams, [Define max. streams.])
424
425 AC_ARG_ENABLE(max-voices,
426 [ --enable-max-voices
427 Maximum amount of voices (default=64). This value
428 should always be lower than the maximum amount of
429 disk streams.],
430 [config_max_voices="${enableval}"],
431 [config_max_voices="64"]
432 )
433 AC_DEFINE_UNQUOTED(CONFIG_MAX_VOICES, $config_max_voices, [Define max. voices.])
434
435 AC_ARG_ENABLE(voice-steal-algo,
436 [ --enable-voice-steal-algo
437 Voice stealing algorithm to be used. Currently
438 available options:
439 none:
440 Disable voice stealing completely.
441 oldestvoiceonkey (default):
442 Try to kill a voice on the same key first,
443 if no success, proceed with the oldest key.
444 oldestkey:
445 Try to kill a voice from the oldest active
446 key.],
447 [ if test ! "(" "${enableval}" = "none" \
448 -o "${enableval}" = "oldestvoiceonkey" \
449 -o "${enableval}" = "oldestkey" ")" ; then
450 AC_MSG_ERROR([Unknown voice stealing algorithm for parameter --enable-voice-steal-algo])
451 else
452 config_voice_steal_algo="${enableval}"
453 fi
454 ],
455 [config_voice_steal_algo="oldestvoiceonkey"]
456 )
457 AC_DEFINE_UNQUOTED(CONFIG_VOICE_STEAL_ALGO, voice_steal_algo_${config_voice_steal_algo}, [Define voice stealing algorithm to be used.])
458
459 AC_ARG_ENABLE(sysex-buffer-size,
460 [ --enable-sysex-buffer-size
461 System Exclusive Message buffer size in kB
462 (default=2048).],
463 [config_sysex_buffer_size="${enableval}"],
464 [config_sysex_buffer_size="2048"]
465 )
466 AC_DEFINE_UNQUOTED(CONFIG_SYSEX_BUFFER_SIZE, $config_sysex_buffer_size, [Define SysEx buffer size.])
467
468 AC_ARG_ENABLE(filter-update-steps,
469 [ --enable-filter-update-steps
470 Amount of sample points after which filter
471 parameters (cutoff, resonance) are going to be
472 updated (default=64). Higher value means less CPU
473 load, but also worse parameter resolution, this
474 value will be aligned to a power of two.],
475 [config_filter_update_steps="${enableval}"],
476 [config_filter_update_steps="64"]
477 )
478 AC_DEFINE_UNQUOTED(CONFIG_FILTER_UPDATE_STEPS, $config_filter_update_steps, [Define amount of steps to refresh filter coefficients.])
479
480 AC_ARG_ENABLE(force-filter,
481 [ --enable-force-filter
482 If enabled will force filter to be used even if
483 no usage was define in instrument patch files.
484 (default=no).],
485 [config_force_filter="yes"],
486 [config_force_filter="no"]
487 )
488 if test "$config_force_filter" = "yes"; then
489 AC_DEFINE_UNQUOTED(CONFIG_FORCE_FILTER, 1, [Define to 1 to force filter usage.])
490 fi
491
492 AC_ARG_ENABLE(filter-cutoff-min,
493 [ --enable-filter-cutoff-min
494 Minimum filter cutoff frequency in Hz
495 (default=100.0).],
496 [config_filter_cutoff_min="${enableval}"],
497 [config_filter_cutoff_min="100.0"]
498 )
499 AC_DEFINE_UNQUOTED(CONFIG_FILTER_CUTOFF_MIN, ${config_filter_cutoff_min}f, [Define min. filter cutoff frequency.])
500
501 AC_ARG_ENABLE(filter-cutoff-max,
502 [ --enable-filter-cutoff-max
503 Maximum filter cutoff frequency in Hz
504 (default=10000.0).],
505 [config_filter_cutoff_max="${enableval}"],
506 [config_filter_cutoff_max="10000.0"]
507 )
508 AC_DEFINE_UNQUOTED(CONFIG_FILTER_CUTOFF_MAX, ${config_filter_cutoff_max}f, [Define max. filter cutoff frequency.])
509
510 AC_ARG_ENABLE(override-cutoff-ctrl,
511 [ --enable-override-cutoff-ctrl
512 Override filter cutoff MIDI controller (default=no).
513 Note: you have to define the MIDI controller number
514 here, it's not a boolean parameter type! If this
515 option is used, controller number given by
516 instrument patch will be ignored and instead this
517 supplied value will be used.],
518 [config_override_cutoff_ctrl="${enableval}"],
519 [config_override_cutoff_ctrl="no"]
520 )
521 if test ! "$config_override_cutoff_ctrl" = "no"; then
522 AC_DEFINE_UNQUOTED(CONFIG_OVERRIDE_CUTOFF_CTRL, $config_override_cutoff_ctrl, [Define to a MIDI controller number to override cutoff control.])
523 fi
524
525 AC_ARG_ENABLE(override-resonance-ctrl,
526 [ --enable-override-resonance-ctrl
527 Override filter resonance MIDI controller
528 (default=no). Note: you have to define the MIDI
529 controller number here, it's not a boolean
530 parameter type! If this option is used, controller
531 number given by instrument patch will be ignored
532 and instead this supplied value will be used.],
533 [config_override_resonance_ctrl="${enableval}"],
534 [config_override_resonance_ctrl="no"]
535 )
536 if test ! "$config_override_resonance_ctrl" = "no"; then
537 AC_DEFINE_UNQUOTED(CONFIG_OVERRIDE_RESONANCE_CTRL, $config_override_resonance_ctrl, [Define to a MIDI controller number to override resonance control.])
538 fi
539
540 AC_ARG_ENABLE(override-filter-type,
541 [ --enable-override-filter-type
542 Override filter type (default=no). Options:
543 hp: for highpass
544 bp: for bandpass
545 br: for bandreject
546 lp: for lowpass
547 lpt: for lowpass turbo],
548 [ if test "${enableval}" = "hp" ; then
549 config_override_filter_type="::gig::vcf_type_highpass"
550 elif test "${enableval}" = "bp" ; then
551 config_override_filter_type="::gig::vcf_type_bandpass"
552 elif test "${enableval}" = "br" ; then
553 config_override_filter_type="::gig::vcf_type_bandreject"
554 elif test "${enableval}" = "lp" ; then
555 config_override_filter_type="::gig::vcf_type_lowpass"
556 elif test "${enableval}" = "lpt" ; then
557 config_override_filter_type="::gig::vcf_type_lowpassturbo"
558 elif test ! "${enableval}" = "no"; then
559 AC_MSG_ERROR([Unknown filter type for parameter --enable-override-filter-type])
560 fi
561 ],
562 [config_override_filter_type="no"]
563 )
564 if test ! "$config_override_filter_type" = "no"; then
565 AC_DEFINE_UNQUOTED(CONFIG_OVERRIDE_FILTER_TYPE, $config_override_filter_type, [Define to a filter type to always force that filter type.])
566 fi
567
568 AC_ARG_ENABLE(gs-checksum,
569 [ --enable-gs-checksum
570 Enable Roland General Synth SysEx checksum check
571 (default=no). If this is enabled, all GS SysEx
572 messages which do not provide a correct checksum
573 will be ignored. This is disabled by default as
574 not all devices honor GS checksums.],
575 [config_assert_gs_sysex_checksum="yes"],
576 [config_assert_gs_sysex_checksum="no"]
577 )
578 if test "config_assert_gs_sysex_checksum" = "yes"; then
579 AC_DEFINE_UNQUOTED(CONFIG_ASSERT_GS_SYSEX_CHECKSUM, 1, [Define to 1 if you want to enable GS SysEx check.])
580 fi
581
582
583 ###########################################################################
584 # Create Build Files
585
586 AM_CONFIG_HEADER(config.h)
587 AM_INIT_AUTOMAKE(linuxsampler, "$LINUXSAMPLER_RELEASE_MAJOR.$LINUXSAMPLER_RELEASE_MINOR.$LINUXSAMPLER_RELEASE_BUILD")
588
589 AC_LANG_CPLUSPLUS
590 AC_PROG_CXX
591
592 # some gcc 4.0 versions need -msse for SSE register allocations
593 if test "$config_asm" = "yes"; then
594 if test "$def_arch_x86" = 1; then
595 CXXFLAGS="$CXXFLAGS -msse"
596 fi
597 fi
598
599 # autoconf 2.59/libtool 1.5.12 bug? work-around. Without a check like
600 # this, the dlfcn.h check in am_prog_libtool may fail.
601 AC_CHECK_HEADER(stdlib.h)
602
603 AC_OUTPUT( \
604 Makefile \
605 man/Makefile \
606 man/linuxsampler.1 \
607 src/Makefile \
608 src/network/Makefile \
609 src/engines/Makefile \
610 src/engines/gig/Makefile \
611 src/engines/common/Makefile \
612 src/common/Makefile src/lib/Makefile \
613 src/lib/fileloader/Makefile \
614 src/lib/fileloader/libgig/Makefile \
615 src/testcases/Makefile \
616 src/drivers/Makefile \
617 src/drivers/audio/Makefile \
618 src/drivers/midi/Makefile \
619 linuxsampler.spec \
620 debian/Makefile \
621 Artwork/Makefile \
622 scripts/Makefile \
623 osx/Makefile \
624 osx/LinuxSampler.xcode/Makefile \
625 Documentation/Makefile \
626 Documentation/Engines/Makefile \
627 Documentation/Engines/gig/Makefile \
628 linuxsampler.pc \
629 Doxyfile \
630 )
631
632
633 ###########################################################################
634 # Output All Configuration Options
635
636 echo ""
637 echo "#####################################################################"
638 echo "# LinuxSampler Configuration #"
639 echo "#-------------------------------------------------------------------#"
640 echo "# Assembly Optimizations: ${config_asm}"
641 echo "# Development Mode: ${config_dev_mode}"
642 echo "# Debug Level: ${config_debug_level}"
643 echo "# Use Exceptions in RT Context: ${config_rt_exceptions}"
644 echo "# Preload Samples: ${config_preload_samples}"
645 echo "# Maximum Pitch: ${config_max_pitch} (octaves)"
646 echo "# Maximum Events: ${config_max_events}"
647 echo "# Envelope Bottom Level: ${config_eg_bottom} (linear)"
648 echo "# Envelope Minimum Release Time: ${config_eg_min_release_time} s"
649 echo "# Streams to be refilled per Disk Thread Cycle: ${config_refill_streams}"
650 echo "# Minimum Stream Refill Size: ${config_stream_min_refill}"
651 echo "# Maximum Stream Refill Size: ${config_stream_max_refill}"
652 echo "# Stream Size: ${config_stream_size}"
653 echo "# Maximum Disk Streams: ${config_max_streams}"
654 echo "# Maximum Voices: ${config_max_voices}"
655 echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"
656 echo "# SysEx Buffer Size: ${config_sysex_buffer_size} Byte"
657 echo "# Filter Update Steps: ${config_filter_update_steps}"
658 echo "# Force Filter Usage: ${config_force_filter}"
659 echo "# Filter Cutoff Minimum: ${config_filter_cutoff_min} Hz"
660 echo "# Filter Cutoff Maximum: ${config_filter_cutoff_max} Hz"
661 echo "# Override Filter Cutoff Controller: ${config_override_cutoff_ctrl}"
662 echo "# Override Filter Resonance Controller: ${config_override_resonance_ctrl}"
663 echo "# Override Filter Type: ${config_override_filter_type}"
664 echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"
665 echo "#-------------------------------------------------------------------#"
666 echo "# Read './configure --help' or file 'configure.in' for details. #"
667 echo "#####################################################################"
668 echo ""
669 echo "Good. Now type 'make' to compile, followed by 'make install' as root."
670 echo ""

  ViewVC Help
Powered by ViewVC