/[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 1360 by schoenebeck, Sun Sep 30 20:04:11 2007 UTC revision 2360 by persson, Thu Aug 16 17:01:35 2012 UTC
# Line 3  AC_INIT(configure.in) Line 3  AC_INIT(configure.in)
3  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
4  # LinuxSampler's / liblinuxsampler's "official" release version:  # LinuxSampler's / liblinuxsampler's "official" release version:
5    
6  LINUXSAMPLER_RELEASE_MAJOR=0  LINUXSAMPLER_RELEASE_MAJOR=1
7  LINUXSAMPLER_RELEASE_MINOR=4  LINUXSAMPLER_RELEASE_MINOR=0
8  LINUXSAMPLER_RELEASE_BUILD=0.7cvs  LINUXSAMPLER_RELEASE_BUILD=0.svn18
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 24  LINUXSAMPLER_RELEASE_BUILD=0.7cvs Line 24  LINUXSAMPLER_RELEASE_BUILD=0.7cvs
24  #  6. If any interfaces have been removed since the last public release, then set age  #  6. If any interfaces have been removed since the last public release, then set age
25  #     to 0.  #     to 0.
26    
27  LIBLINUXSAMPLER_LT_CURRENT=0  LIBLINUXSAMPLER_LT_CURRENT=3
28  LIBLINUXSAMPLER_LT_REVISION=0  LIBLINUXSAMPLER_LT_REVISION=0
29  LIBLINUXSAMPLER_LT_AGE=0  LIBLINUXSAMPLER_LT_AGE=0
30  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"
# Line 33  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT Line 33  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT
33  # the LSCP specification version this LinuSampler release complies with:  # the LSCP specification version this LinuSampler release complies with:
34    
35  LSCP_RELEASE_MAJOR=1  LSCP_RELEASE_MAJOR=1
36  LSCP_RELEASE_MINOR=2  LSCP_RELEASE_MINOR=5
37    
38  AC_DEFINE_UNQUOTED(LSCP_RELEASE_MAJOR, ${LSCP_RELEASE_MAJOR}, [LSCP spec major version this release complies with.])  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.])  AC_DEFINE_UNQUOTED(LSCP_RELEASE_MINOR, ${LSCP_RELEASE_MINOR}, [LSCP spec minor version this release complies with.])
40    
41    AC_PROG_CXX
42    AC_LIBTOOL_WIN32_DLL
43  AM_PROG_LIBTOOL  AM_PROG_LIBTOOL
44    
45  AC_SUBST(SHLIB_VERSION_ARG)  AC_SUBST(SHLIB_VERSION_ARG)
46  AC_SUBST(SHARED_VERSION_INFO)  AC_SUBST(SHARED_VERSION_INFO)
47    
48  AC_C_BIGENDIAN  module=yes eval LIB_EXT=$shrext_cmds
49  AC_CANONICAL_SYSTEM  AC_SUBST(LIB_EXT)
50    
51  AC_SUBST(target)  AC_C_BIGENDIAN
52  AC_SUBST(target_alias)  AC_CANONICAL_HOST
 AC_SUBST(target_cpu)  
 AC_SUBST(target_os)  
 AC_SUBST(target_vendor)  
53    
54    PKG_PROG_PKG_CONFIG
55    
56  ###########################################################################  ###########################################################################
57  # General Checks  # General Checks
58    
59    AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
60    
61  AC_MSG_CHECKING([whether x86 architecture])  AC_MSG_CHECKING([whether x86 architecture])
62  def_arch_x86=0  def_arch_x86=0
63  case $target_cpu in  case $host_cpu in
64    "i386" | "i486" | "i586" | "i686" | "i786")    "i386" | "i486" | "i586" | "i686" | "i786" | "x86_64")
65      echo "yes"      echo "yes"
66      def_arch_x86=1;;      def_arch_x86=1;;
67    *)    *)
# Line 71  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x8 Line 73  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x8
73  # (only if the user did not provide one)  # (only if the user did not provide one)
74  CXX_CPU_SWITCH=  CXX_CPU_SWITCH=
75  if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then  if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then
76    if test "$def_arch_x86" = 1; then    if test "$def_arch_x86" = 1 -a "$host_cpu" != "x86_64"; then
77      CXX_CPU_SWITCH="-march=$target_cpu"      CXX_CPU_SWITCH="-march=$host_cpu"
78    elif test "$target_cpu" = "ppc"; then    elif test "$target_cpu" = "ppc"; then
79      CXX_CPU_SWITCH="-arch=$target_cpu"      CXX_CPU_SWITCH="-arch=$host_cpu"
80    fi    fi
81  fi  fi
82  AC_SUBST([CXX_CPU_SWITCH])  AC_SUBST([CXX_CPU_SWITCH])
83    
84    mac=no
85    linux=no
86    case "$host" in
87        *-*-darwin*)
88            mac=yes
89            ;;
90        *-*-linux*)
91            linux=yes
92            ;;
93    esac
94    AM_CONDITIONAL(LINUX, test "$linux" = yes)
95    AM_CONDITIONAL(MAC, test "$mac" = yes)
96    
97    # check if we're on MS Windows
98    AC_CHECK_HEADERS(
99        mmsystem.h,
100        have_windows=1,
101        have_windows=0,
102        [#include <windef.h>]
103    )
104    AM_CONDITIONAL(HAVE_WINDOWS, test $have_windows = "1")
105    
106  AC_MSG_CHECKING([whether UNIX98 compatible])  AC_MSG_CHECKING([whether UNIX98 compatible])
107  AC_LANG_SAVE  AC_LANG_SAVE
108  AC_LANG_C  AC_LANG_C
# Line 101  have_unix98="no" Line 125  have_unix98="no"
125  )  )
126  AC_LANG_RESTORE  AC_LANG_RESTORE
127  AC_MSG_RESULT([$have_unix98])  AC_MSG_RESULT([$have_unix98])
128  if test "$have_unix98" = "no"; then  if test "$have_unix98" = "no" -a "have_windows" = "0"; then
129      if test "x$HAVE_UNIX98" = "x"; then      if test "x$HAVE_UNIX98" = "x"; then
130          echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"          echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"
131          echo "pthread_mutexattr_settype() call in Mutex.cpp. You may want to run          echo "pthread_mutexattr_settype() call in Mutex.cpp. You may want to run
# Line 114  fi Line 138  fi
138  # check for <features.h>  # check for <features.h>
139  AC_CHECK_HEADERS(features.h)  AC_CHECK_HEADERS(features.h)
140    
141    # test for POSIX thread library
142    m4_ifdef([m4_include(m4/pthread.m4)],,
143                 [sinclude([m4/pthread.m4])])
144    ACX_PTHREAD
145    LIBS="$PTHREAD_LIBS $LIBS"
146    CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
147    CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
148    CC="$PTHREAD_CC"
149    
150    # check for a bug in NPTL-enabled glibc
151    # (see Gentoo bug report #194076)
152    AC_ARG_ENABLE(nptl-bug-check,
153      [  --disable-nptl-bug-check
154                              Disable check for a bug in certain NPTL-enabled
155                              glibc versions that caused crashs.],
156      [config_check_nptl_bug="$enableval"],
157      [config_check_nptl_bug="yes"]
158    )
159    if test "$config_check_nptl_bug" = "yes"; then
160        m4_ifdef([m4_include(m4/nptl_bug.m4)],,
161                 [sinclude([m4/nptl_bug.m4])])
162        ACX_NPTL_GLIBC_BUG([
163            echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
164            echo "You seem to have a buggy PTHREAD library! LinuxSampler would"
165            echo "probably crash due to this. Please report us the system you are"
166            echo "using and/or file a bug report to the bug tracking system of"
167            echo "your distribution."
168            echo "If you have a NPTL-enabled glibc AND it was compiled for TLS as"
169            echo "well, you can try to circumvent this problem for now by setting"
170            echo "the environment variable LD_ASSUME_KERNEL=\"2.4.1\" , which"
171            echo "should cause this test to pass."
172            echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
173            AC_MSG_ERROR([possibly NPTL glibc bug detected])
174        ])
175    else
176        echo "NPTL glibc bug check disabled"
177    fi
178    
179    # FIXME: this is actually a dependency of libgig, not of LS directly, why
180    # isn't it hidden by libgig?
181    AC_CHECK_HEADERS(uuid/uuid.h)
182    AC_SEARCH_LIBS(uuid_generate, uuid)
183    
184    
185    
186  ###########################################################################  ###########################################################################
187  # Checks for available audio and MIDI systems / drivers  # Checks for available audio and MIDI systems / drivers
# Line 201  else Line 269  else
269  fi  fi
270  AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")  AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")
271  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.])
272    config_have_alsa="no"
273    if test $have_alsa = "1"; then
274        config_have_alsa="yes"
275    fi
276    
277  # JACK  # JACK
278  AC_ARG_ENABLE(jack-driver,  AC_ARG_ENABLE(jack-driver,
# Line 216  if test "$config_jack_driver" = "yes"; t Line 288  if test "$config_jack_driver" = "yes"; t
288      if test $have_jack = "1"; then      if test $have_jack = "1"; then
289          AC_SUBST(JACK_LIBS)          AC_SUBST(JACK_LIBS)
290          AC_SUBST(JACK_CFLAGS)          AC_SUBST(JACK_CFLAGS)
291          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)          linuxsampler_save_LIBS=$LIBS
292            LIBS="$JACK_LIBS $LIBS"
293            AC_CHECK_FUNCS(jack_client_name_size jack_client_open)
294            LIBS=$linuxsampler_save_LIBS
295          have_audio_output_driver="true";          have_audio_output_driver="true";
296      fi      fi
297  else  else
# Line 224  else Line 299  else
299  fi  fi
300  AM_CONDITIONAL(HAVE_JACK, test $have_jack = "1")  AM_CONDITIONAL(HAVE_JACK, test $have_jack = "1")
301  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.])
302    config_have_jack="no"
303    if test $have_jack = "1"; then
304        config_have_jack="yes"
305    fi
306    
307    # JACK MIDI
308    have_jack_midi=0
309    if test $have_jack = "1"; then
310        linuxsampler_save_CFLAGS=$CFLAGS
311        linuxsampler_save_LIBS=$LIBS
312        CFLAGS="$JACK_CFLAGS $CFLAGS"
313        LIBS="$JACK_LIBS $LIBS"
314        AC_CHECK_HEADER(jack/midiport.h, have_jack_midi=1, have_jack_midi=0)
315        if test $have_jack_midi = "1"; then
316            AC_CHECK_FUNCS(jack_midi_get_event_count)
317            AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <jack/midiport.h>]], [[
318                jack_midi_clear_buffer(0, 0);
319            ]])], [AC_DEFINE(JACK_MIDI_FUNCS_NEED_NFRAMES, 1,
320                      [Define to 1 if you have the old jack midi functions that need an nframes argument.])])
321            have_midi_input_driver="true"
322        fi
323        CFLAGS=$linuxsampler_save_CFLAGS
324        LIBS=$linuxsampler_save_LIBS
325    fi
326    AM_CONDITIONAL(HAVE_JACK_MIDI, test $have_jack_midi = "1")
327    AC_DEFINE_UNQUOTED(HAVE_JACK_MIDI, $have_jack_midi,
328                       [Define to 1 if you have JACK with MIDI support installed.])
329    config_have_jack_midi="no"
330    if test $have_jack_midi = "1"; then
331        config_have_jack_midi="yes"
332    fi
333    
334  # ARTS  # ARTS
335  AC_ARG_ENABLE(arts-driver,  AC_ARG_ENABLE(arts-driver,
# Line 246  else Line 352  else
352  fi  fi
353  AM_CONDITIONAL(HAVE_ARTS, test "$have_arts" = "1")  AM_CONDITIONAL(HAVE_ARTS, test "$have_arts" = "1")
354  AC_DEFINE_UNQUOTED(HAVE_ARTS,$have_arts,[Define to 1 if you have aRts installed.])  AC_DEFINE_UNQUOTED(HAVE_ARTS,$have_arts,[Define to 1 if you have aRts installed.])
355    config_have_arts="no"
356    if test $have_arts = "1"; then
357        config_have_arts="yes"
358    fi
359    
360    # ASIO AUDIO (Win32)
361    AC_ARG_ENABLE(asiosdk-dir,
362      [  --enable-asiosdk-dir
363                              Directory where the ASIO SDK is located, this automatically
364                              enables the compilation of the ASIO audio output driver.],
365      [config_asiosdk_dir="${enableval}"],
366      [config_asiosdk_dir="."]
367    )
368    AC_SUBST(config_asiosdk_dir)
369    
370    AC_ARG_ENABLE(asio-driver,
371      [  --disable-asio-driver
372                              Disable support for the Windows ASIO driver.],
373      [config_asio_driver="$enableval"],
374      [config_asio_driver="yes"]
375    )
376    have_asio=0
377    ASIOSDK_BASEDIR=
378    if test "$config_asio_driver" = "yes"; then
379        asiosdk_headerfile=$config_asiosdk_dir/ASIOSDK2/common/asio.h
380        echo -n "checking for ASIO headerfile: $asiosdk_headerfile ...."
381        if test -e $asiosdk_headerfile ; then
382            echo yes
383            have_asio=1
384            ASIOSDK_BASEDIR="$config_asiosdk_dir"
385        else
386            echo no
387            have_asio=0
388        fi
389        if test "$have_asio" = "1"; then
390            have_audio_output_driver="true"
391        fi
392    else
393        echo "Windows ASIO support disabled by configure script parameter"
394    fi
395    AC_SUBST(ASIOSDK_BASEDIR)
396    AM_CONDITIONAL(HAVE_ASIO, test $have_asio = "1")
397    AC_DEFINE_UNQUOTED(HAVE_ASIO,$have_asio,[Define to 1 if you have ASIO installed.])
398    config_have_asio="no"
399    if test $have_asio = "1"; then
400        config_have_asio="yes"
401    fi
402    
403  # MidiShare (Linux, OS X, Windows)  # MidiShare (Linux, OS X, Windows)
404  AC_ARG_ENABLE(midishare-driver,  AC_ARG_ENABLE(midishare-driver,
# Line 272  else Line 425  else
425  fi  fi
426  AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")  AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")
427  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.])
428    config_have_midishare="no"
429    if test $have_midishare = "1"; then
430        config_have_midishare="yes"
431    fi
432    
433  # CoreMIDI (OS X)  # CoreMIDI (OS X)
434  AC_ARG_ENABLE(coremidi-driver,  AC_ARG_ENABLE(coremidi-driver,
# Line 294  else Line 451  else
451  fi  fi
452  AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")  AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")
453  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.])
454    config_have_coremidi="no"
455    if test $have_coremidi = "1"; then
456        config_have_coremidi="yes"
457    fi
458    
459    # CoreAudio (OS X)
460    AC_ARG_ENABLE(coreaudio-driver,
461      [  --disable-coreaudio-driver
462                              Disable support for the Apple CoreAudio system.],
463      [config_coreaudio_driver="$enableval"],
464      [config_coreaudio_driver="yes"]
465    )
466    have_coreaudio=0
467    if test "$config_coreaudio_driver" = "yes"; then
468        AC_CHECK_HEADER(CoreAudio/CoreAudio.h,
469            have_coreaudio=1,
470            have_coreaudio=0
471        )
472        if test "$have_coreaudio" = "1"; then
473            have_audio_output_driver="true"
474        fi
475    else
476        echo "CoreAudio support disabled by configure script parameter"
477    fi
478    AM_CONDITIONAL(HAVE_COREAUDIO, test $have_coreaudio = "1")
479    AC_DEFINE_UNQUOTED(HAVE_COREAUDIO,$have_coreaudio,[Define to 1 if you have CoreAudio installed.])
480    config_have_coreaudio="no"
481    if test $have_coreaudio = "1"; then
482        config_have_coreaudio="yes"
483    fi
484    
485    # MME MIDI (Win32)
486    AC_ARG_ENABLE(mmemidi-driver,
487      [  --disable-mmemidi-driver
488                              Disable support for the Windows MME MIDI system.],
489      [config_mmemidi_driver="$enableval"],
490      [config_mmemidi_driver="yes"]
491    )
492    have_mmemidi=0
493    if test "$config_mmemidi_driver" = "yes"; then
494        AC_CHECK_HEADERS(mmsystem.h,
495            have_mmemidi=1,
496            have_mmemidi=0
497        )
498        if test "$have_mmemidi" = "1"; then
499            have_midi_input_driver="true"
500        fi
501    else
502        echo "MME MIDI support disabled by configure script parameter"
503    fi
504    AM_CONDITIONAL(HAVE_MME_MIDI, test $have_mmemidi = "1")
505    AC_DEFINE_UNQUOTED(HAVE_MME_MIDI,$have_mmemidi,[Define to 1 if you have MME MIDI installed.])
506    config_have_mme="no"
507    if test $have_mmemidi = "1"; then
508        config_have_mme="yes"
509    fi
510    
511    # DSSI
512    AC_CHECK_HEADERS(dssi.h,
513            config_have_dssi="yes",
514            config_have_dssi="no")
515    AM_CONDITIONAL(HAVE_DSSI, test $config_have_dssi = "yes")
516    
517    # LV2
518    PKG_CHECK_MODULES(LV2, lv2 >= 1.0.0, config_have_lv2="yes", config_have_lv2="no")
519    AC_SUBST(LV2_CFLAGS)
520    AC_SUBST(LV2_LIBS)
521    AM_CONDITIONAL(HAVE_LV2, test $config_have_lv2 = "yes")
522    
523    # VST
524    AC_ARG_ENABLE(vstsdk-dir,
525      [  --enable-vstsdk-dir
526                              Directory where the VST SDK is located.
527                              This automatically enables the compilation
528                              of the VST plugin.],
529      [VSTSDK_DIR="${enableval}"],
530      [VSTSDK_DIR=]
531    )
532    AC_SUBST(VSTSDK_DIR)
533    AM_CONDITIONAL(HAVE_VST, test "x$VSTSDK_DIR" != "x")
534    config_have_vst="no"
535    if test "x$VSTSDK_DIR" != "x"; then
536        config_have_vst="yes"
537    fi
538    
539    # AU
540    AC_CHECK_HEADERS(AudioUnit/AudioUnit.h,
541            config_have_au="yes",
542            config_have_au="no")
543    AM_CONDITIONAL(HAVE_AU, test $config_have_au = "yes")
544    AM_CONDITIONAL(HAVE_AUFLAGS, test "$AUFLAGS" != "")
545    
546    if test $config_have_au = "yes" ; then
547        if test "x$DEVELOPER_EXTRAS_DIR" = "x" ; then
548            if test -d /Developer/Extras ; then
549                DEVELOPER_EXTRAS_DIR=/Developer/Extras
550            else      
551                DEVELOPER_EXTRAS_DIR=/Developer/Examples
552            fi
553        fi
554        AC_SUBST(DEVELOPER_EXTRAS_DIR)
555    fi
556    
557    if test "x$MAC_PLUGIN_INSTALL_DIR" = "x" ; then
558        MAC_PLUGIN_INSTALL_DIR=/Library/Audio/Plug-Ins
559    fi
560    AC_SUBST(MAC_PLUGIN_INSTALL_DIR)
561    
562    # have we found at least one MIDI input and one audio output driver ?
563    if test "$have_midi_input_driver" = "false"; then
564        echo "No supported MIDI input system found!"
565        echo "Sorry, LinuxSampler only supports the following MIDI drivers at the moment:"
566        echo "ALSA, JACK, MIDIShare, CoreMIDI, MME."
567        echo "If you think you have one of those available on your system, make sure you"
568        echo "also have the respective development (header) files installed."
569        exit -1;
570    fi
571    if test "$have_audio_output_driver" = "false"; then
572        echo "No supported audio output system found!"
573        echo "Sorry, LinuxSampler only supports ALSA, JACK, ARTS and ASIO as audio output"
574        echo "driver at the moment!"
575        exit -1;
576    fi
577    
578    
579    
580    ###########################################################################
581    # Checks for various DLL libraries
582    
583  # Check presence of libgig  # Check presence of libgig
584  libgig_version="3.1.1"  libgig_version="3.3.0"
585  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)
586  if test "$HAVE_GIG" = "false"; then  if test "$HAVE_GIG" = "false"; then
587      echo "Required libgig version not found!"      echo "Required libgig version not found!"
# Line 308  fi Line 593  fi
593  AC_SUBST(GIG_CFLAGS)  AC_SUBST(GIG_CFLAGS)
594  AC_SUBST(GIG_LIBS)  AC_SUBST(GIG_LIBS)
595    
596  # Check presence of sqlite3  # SF2 Engine (requires libgig)
597  sqlite_version="3.3"  AC_ARG_ENABLE(sf2-engine,
598  PKG_CHECK_MODULES(SQLITE3, sqlite3 >= $sqlite_version, HAVE_SQLITE3=true, HAVE_SQLITE3=false)    [  --disable-sf2-engine
599  AC_SUBST(SQLITE3_LIBS)                            Disable compilation of the SF2 engine.
600  AC_SUBST(SQLITE3_CFLAGS)                            You need to have libgig installed.],
601  if test $HAVE_SQLITE3 = false; then    [config_sf2_engine="$enableval"],
602      HAVE_SQLITE3=0;    [config_sf2_engine="yes"]
603      instruments_db_support="no"  )
604      echo "*** Required sqlite version not found!"  HAVE_SF2=0;
605      echo "*** You need to have sqlite version ${sqlite_version} or higher"  if test "$config_sf2_engine" = "yes"; then
606      echo "*** for instruments database support to be enabled."      HAVE_SF2=1
     echo "*** Support for instruments DB will be disabled!"  
607  else  else
608      HAVE_SQLITE3=1      echo "SF2 engine disabled by configure script parameter"
609      instruments_db_support="yes"  fi
610    AM_CONDITIONAL(HAVE_SF2, test $HAVE_SF2 = 1)
611    AC_DEFINE_UNQUOTED(HAVE_SF2,$HAVE_SF2,[Define to 1 if you want SF2 engine and have libsf2 installed.])
612    config_have_sf2="no"
613    if test $HAVE_SF2 = "1"; then
614        config_have_sf2="yes"
615  fi  fi
 AM_CONDITIONAL(HAVE_SQLITE3, test $HAVE_SQLITE3 = 1)  
 AC_DEFINE_UNQUOTED(HAVE_SQLITE3,$HAVE_SQLITE3,[Define to 1 if you have SQLITE3 installed.])  
616    
617  if test "$have_midi_input_driver" = "false"; then  # Check presence of libsndfile
618      echo "No supported MIDI input system found!"  libsndfile_version="1.0"
619      echo "Sorry, LinuxSampler only supports the following MIDI drivers at the moment:"  PKG_CHECK_MODULES(SNDFILE, sndfile >= $libsndfile_version, HAVE_SNDFILE=true, HAVE_SNDFILE=false)
620      echo "ALSA, MIDIShare, CoreMIDI."  if test "$HAVE_SNDFILE" = "false"; then
621      echo "If you think you have one of those available on your system, make sure you"      echo "Required libsndfile version not found!"
622      echo "also have the respective development (header) files installed."      echo "You need to have libsndfile version ${libsndfile_version} installed!"
623      exit -1;      exit -1;
624    else
625        echo "yes, found libsndfile $libsndfile_version"
626  fi  fi
627  if test "$have_audio_output_driver" = "false"; then  AC_SUBST(SNDFILE_CFLAGS)
628      echo "No supported audio output system found!"  AC_SUBST(SNDFILE_LIBS)
629      echo "Sorry, LinuxSampler only supports ALSA and JACK as audio output driver at the moment!"  
630      exit -1;  # Check for Vorbis support in libsndfile
631    linuxsampler_save_CFLAGS=$CFLAGS
632    CFLAGS="$SNDFILE_CFLAGS $CFLAGS"
633    AC_CHECK_DECLS([SF_FORMAT_VORBIS], [], [], [[#include <sndfile.h>]])
634    
635    # Check for loop functionality in libsndfile
636    AC_CHECK_MEMBERS([SF_INSTRUMENT.loops],,
637                     [AC_MSG_WARN([Your version of libsndfile does not support
638        reading of loop information. LinuxSampler will not be able to
639        extract loop information from sample files.])],
640                     [#include <sndfile.h>])
641    CFLAGS=$linuxsampler_save_CFLAGS
642    
643    # Instruments DB feature (requires SQLite 3.3)
644    AC_ARG_ENABLE(instruments-db,
645      [  --disable-instruments-db
646                              Disable compilation of the sampler's instruments
647                              database feature. You need to have SQLite 3.3
648                              or younger installed for this feature.],
649      [config_instruments_db="$enableval"],
650      [config_instruments_db="yes"]
651    )
652    HAVE_SQLITE3=0;
653    if test "$config_instruments_db" = "yes"; then
654        # Check presence of sqlite3
655        sqlite_version="3.3"
656        PKG_CHECK_MODULES(SQLITE3, sqlite3 >= $sqlite_version, HAVE_SQLITE3=true, HAVE_SQLITE3=false)
657        AC_SUBST(SQLITE3_LIBS)
658        AC_SUBST(SQLITE3_CFLAGS)
659        if test $HAVE_SQLITE3 = false; then
660            HAVE_SQLITE3=0
661            config_instruments_db="no"
662            echo "*** Required sqlite version not found!"
663            echo "*** You need to have sqlite version ${sqlite_version} or higher"
664            echo "*** for instruments database support to be enabled."
665            echo "*** Support for instruments DB will be disabled!"
666        else
667            HAVE_SQLITE3=1
668        fi
669    else
670        echo "Instruments DB feature disabled by configure script parameter"
671  fi  fi
672    AM_CONDITIONAL(HAVE_SQLITE3, test $HAVE_SQLITE3 = 1)
673    AC_DEFINE_UNQUOTED(HAVE_SQLITE3,$HAVE_SQLITE3,[Define to 1 if you want the instruments DB feature and have SQLITE3 installed.])
674    
675    
676    
677  ###########################################################################  ###########################################################################
# Line 363  if test "$config_asm" = "yes"; then Line 695  if test "$config_asm" = "yes"; then
695  fi  fi
696    
697  AC_ARG_ENABLE(dev-mode,  AC_ARG_ENABLE(dev-mode,
698    [  --disable-dev-mode    [  --enable-dev-mode
699                            Disable development mode (default=on). In that mode                            Enable development mode (default=off). In that mode
700                            we do some extra sanity checks here and there.                            we do some extra sanity checks here and there.
701                            This helps to spot possible problems, but reduces                            This helps to spot possible problems, but reduces
702                            efficiency a bit],                            efficiency a bit],
703    [config_dev_mode="$enableval"],    [config_dev_mode="$enableval"],
704    [config_dev_mode="yes"]    [config_dev_mode="no"]
705  )  )
706  if test "$config_dev_mode" = "yes"; then  if test "$config_dev_mode" = "yes"; then
707    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 403  if test "$config_rt_exceptions" = "yes"; Line 735  if test "$config_rt_exceptions" = "yes";
735    AC_DEFINE_UNQUOTED(CONFIG_RT_EXCEPTIONS, 1, [Define to 1 to allow exceptions in the realtime context.])    AC_DEFINE_UNQUOTED(CONFIG_RT_EXCEPTIONS, 1, [Define to 1 to allow exceptions in the realtime context.])
736  fi  fi
737    
738    config_pthread_testcancel="$mac"
739    AC_ARG_ENABLE(pthread-testcancel,
740      [  --enable-pthread-testcancel
741                              Enable pthread_testcancel() calls and avoid
742                              asynchronous cancel of pthreads (default=yes
743                              for Mac targets, no otherwise).],
744      [config_pthread_testcancel="$enableval"],
745      [])
746    if test "$config_pthread_testcancel" = "yes"; then
747      AC_DEFINE_UNQUOTED(CONFIG_PTHREAD_TESTCANCEL, 1, [Define to 1 to enable pthread_testcancel() calls.])
748    fi
749    
750  AC_ARG_ENABLE(preload-samples,  AC_ARG_ENABLE(preload-samples,
751    [  --enable-preload-samples    [  --enable-preload-samples
752                            Due to seeking and latency issues with hard drives                            Due to seeking and latency issues with hard drives
# Line 508  AC_DEFINE_UNQUOTED(CONFIG_STREAM_BUFFER_ Line 852  AC_DEFINE_UNQUOTED(CONFIG_STREAM_BUFFER_
852    
853  AC_ARG_ENABLE(max-streams,  AC_ARG_ENABLE(max-streams,
854    [  --enable-max-streams    [  --enable-max-streams
855                            Maximum amount of disk streams (default=90). This                            Initial maximum amount of disk streams
856                            value should always be higher than the maximum                            (default=90). This value can be changed at
857                            amount of voices.],                            runtime. It should always be higher than the
858                              maximum amount of voices.],
859    [config_max_streams="${enableval}"],    [config_max_streams="${enableval}"],
860    [config_max_streams="90"]    [config_max_streams="90"]
861  )  )
862  AC_DEFINE_UNQUOTED(CONFIG_MAX_STREAMS, $config_max_streams, [Define max. streams.])  AC_DEFINE_UNQUOTED(CONFIG_DEFAULT_MAX_STREAMS, $config_max_streams, [Define initial max. streams.])
863    
864  AC_ARG_ENABLE(max-voices,  AC_ARG_ENABLE(max-voices,
865    [  --enable-max-voices    [  --enable-max-voices
866                            Maximum amount of voices (default=64). This value                            Initial maximum amount of voices (default=64).
867                            should always be lower than the maximum amount of                            This value can be changed at runtime. It should
868                            disk streams.],                            always be lower than the maximum amount of disk
869                              streams.],
870    [config_max_voices="${enableval}"],    [config_max_voices="${enableval}"],
871    [config_max_voices="64"]    [config_max_voices="64"]
872  )  )
873  AC_DEFINE_UNQUOTED(CONFIG_MAX_VOICES, $config_max_voices, [Define max. voices.])  AC_DEFINE_UNQUOTED(CONFIG_DEFAULT_MAX_VOICES, $config_max_voices, [Define initial max. voices.])
874    
875  AC_ARG_ENABLE(subfragment-size,  AC_ARG_ENABLE(subfragment-size,
876    [  --enable-subfragment-size    [  --enable-subfragment-size
# Line 826  if test "$config_interpolate_volume" = " Line 1172  if test "$config_interpolate_volume" = "
1172    AC_DEFINE_UNQUOTED(CONFIG_INTERPOLATE_VOLUME, 1, [Define to 1 if you want to enable interpolation of volume modulation.])    AC_DEFINE_UNQUOTED(CONFIG_INTERPOLATE_VOLUME, 1, [Define to 1 if you want to enable interpolation of volume modulation.])
1173  fi  fi
1174    
1175    AC_ARG_ENABLE(master-volume-sysex-by-port,
1176      [  --enable-master-volume-sysex-by-port
1177                              Whether global volume sysex message should be
1178                              applied globally to the whole sampler or only to
1179                              the sampler channels connected to the same MIDI
1180                              input port on which the sysex message arrived on.
1181                              By default global volume sysex messages apply
1182                              globally to the whole sampler, since many MIDI
1183                              devices behave that way.],
1184      [config_master_volume_sysex_by_port="$enableval"],
1185      [config_master_volume_sysex_by_port="no"]
1186    )
1187    if test "$config_master_volume_sysex_by_port" = "yes"; then
1188      AC_DEFINE_UNQUOTED(CONFIG_MASTER_VOLUME_SYSEX_BY_PORT, 1, [Define to 1 if you want global volume sysex message only be applied to the respective MIDI port.])
1189    fi
1190    
1191  AC_ARG_ENABLE(plugin-dir,  AC_ARG_ENABLE(plugin-dir,
1192    [  --enable-plugin-dir    [  --enable-plugin-dir
1193                            Directory where the sampler shall look for potential plugins,                            Directory where the sampler shall look for potential plugins,
# Line 839  AC_ARG_ENABLE(plugin-dir, Line 1201  AC_ARG_ENABLE(plugin-dir,
1201  )  )
1202  AC_SUBST(config_plugin_dir)  AC_SUBST(config_plugin_dir)
1203    
1204    AC_ARG_ENABLE(default-instruments-db-location,
1205      [  --enable-default-instruments-db-location
1206                              Only when instruments DB feature is enabled: file name
1207                              which shall be taken as default location of the
1208                              instruments DB file. This location can still be
1209                              overridden at runtime with a command line switch.
1210                              (default: /var/lib/linuxsampler/instruments.db)],
1211      [config_default_instruments_db_file="${enableval}"],
1212      [config_default_instruments_db_file="/var/lib/linuxsampler/instruments.db"]
1213    )
1214    AC_DEFINE_UNQUOTED(
1215        CONFIG_DEFAULT_INSTRUMENTS_DB_LOCATION,
1216        "$config_default_instruments_db_file",
1217        [Only when instruments DB feature is enabled: default location of the DB file.]
1218    )
1219    AC_SUBST(config_default_instruments_db_file)
1220    
1221    
1222  ###########################################################################  ###########################################################################
1223  # Automatic Benchmarks (to detect the best algorithms for the system)  # Automatic Benchmarks (to detect the best algorithms for the system)
# Line 935  AM_CONFIG_HEADER(config.h) Line 1314  AM_CONFIG_HEADER(config.h)
1314  AM_INIT_AUTOMAKE(linuxsampler, "$LINUXSAMPLER_RELEASE_MAJOR.$LINUXSAMPLER_RELEASE_MINOR.$LINUXSAMPLER_RELEASE_BUILD")  AM_INIT_AUTOMAKE(linuxsampler, "$LINUXSAMPLER_RELEASE_MAJOR.$LINUXSAMPLER_RELEASE_MINOR.$LINUXSAMPLER_RELEASE_BUILD")
1315    
1316  AC_LANG_CPLUSPLUS  AC_LANG_CPLUSPLUS
 AC_PROG_CXX  
   
 # some gcc 4.0 versions need -msse for SSE register allocations  
 if test "$config_asm" = "yes"; then  
   if test "$def_arch_x86" = 1; then  
     CXXFLAGS="$CXXFLAGS -msse"  
   fi  
 fi  
1317    
1318  # autoconf 2.59/libtool 1.5.12 bug? work-around. Without a check like  # autoconf 2.59/libtool 1.5.12 bug? work-around. Without a check like
1319  # this, the dlfcn.h check in am_prog_libtool may fail.  # this, the dlfcn.h check in am_prog_libtool may fail.
# Line 957  AC_OUTPUT( \ Line 1328  AC_OUTPUT( \
1328      src/network/Makefile \      src/network/Makefile \
1329      src/engines/Makefile \      src/engines/Makefile \
1330      src/engines/gig/Makefile \      src/engines/gig/Makefile \
1331        src/engines/sf2/Makefile \
1332        src/engines/sfz/Makefile \
1333      src/engines/common/Makefile \      src/engines/common/Makefile \
1334        src/effects/Makefile \
1335      src/common/Makefile \      src/common/Makefile \
1336      src/testcases/Makefile \      src/testcases/Makefile \
1337      src/drivers/Makefile \      src/drivers/Makefile \
1338      src/drivers/audio/Makefile \      src/drivers/audio/Makefile \
1339      src/drivers/midi/Makefile \      src/drivers/midi/Makefile \
1340        src/plugins/Makefile \
1341        src/hostplugins/Makefile \
1342        src/hostplugins/dssi/Makefile \
1343        src/hostplugins/lv2/Makefile \
1344        src/hostplugins/lv2/manifest.ttl \
1345        src/hostplugins/vst/Makefile \
1346        src/hostplugins/au/Makefile \
1347      linuxsampler.spec \      linuxsampler.spec \
1348      debian/Makefile \      debian/Makefile \
1349      Artwork/Makefile \      Artwork/Makefile \
# Line 990  echo "" Line 1371  echo ""
1371  echo "#####################################################################"  echo "#####################################################################"
1372  echo "# LinuxSampler Configuration                                        #"  echo "# LinuxSampler Configuration                                        #"
1373  echo "#-------------------------------------------------------------------#"  echo "#-------------------------------------------------------------------#"
1374    echo "# Release Version: ${LINUXSAMPLER_RELEASE_MAJOR}.${LINUXSAMPLER_RELEASE_MINOR}.${LINUXSAMPLER_RELEASE_BUILD}"
1375    echo "# LSCP Version: ${LSCP_RELEASE_MAJOR}.${LSCP_RELEASE_MINOR}"
1376    echo "#-------------------------------------------------------------------"
1377  echo "# Assembly Optimizations: ${config_asm}"  echo "# Assembly Optimizations: ${config_asm}"
1378  echo "# Development Mode: ${config_dev_mode}"  echo "# Development Mode: ${config_dev_mode}"
1379  echo "# Debug Level: ${config_debug_level}"  echo "# Debug Level: ${config_debug_level}"
# Line 1003  echo "# Streams to be refilled per Disk Line 1387  echo "# Streams to be refilled per Disk
1387  echo "# Minimum Stream Refill Size: ${config_stream_min_refill}"  echo "# Minimum Stream Refill Size: ${config_stream_min_refill}"
1388  echo "# Maximum Stream Refill Size: ${config_stream_max_refill}"  echo "# Maximum Stream Refill Size: ${config_stream_max_refill}"
1389  echo "# Stream Size: ${config_stream_size}"  echo "# Stream Size: ${config_stream_size}"
1390  echo "# Maximum Disk Streams: ${config_max_streams}"  echo "# Default Maximum Disk Streams: ${config_max_streams}"
1391  echo "# Maximum Voices: ${config_max_voices}"  echo "# Default Maximum Voices: ${config_max_voices}"
1392  echo "# Default Subfragment Size: ${config_subfragment_size}"  echo "# Default Subfragment Size: ${config_subfragment_size}"
1393  echo "# Default Global Volume Attenuation: ${config_global_attenuation_default}"  echo "# Default Global Volume Attenuation: ${config_global_attenuation_default}"
1394  echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"  echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"
# Line 1023  echo "# Override Filter Type: ${config_o Line 1407  echo "# Override Filter Type: ${config_o
1407  echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"  echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"
1408  echo "# Process Muted Channels: ${config_process_muted_channels}"  echo "# Process Muted Channels: ${config_process_muted_channels}"
1409  echo "# Process All-Notes-Off MIDI message: ${config_process_all_notes_off}"  echo "# Process All-Notes-Off MIDI message: ${config_process_all_notes_off}"
1410    echo "# Apply global volume SysEx by MIDI port: ${config_master_volume_sysex_by_port}"
1411  echo "# Interpolate Volume: ${config_interpolate_volume}"  echo "# Interpolate Volume: ${config_interpolate_volume}"
1412  echo "# Instruments database support: ${instruments_db_support}"  echo "# Instruments database support: ${config_instruments_db}"
1413    if test "$config_instruments_db" = "yes"; then
1414    echo "# Instruments DB default location: ${config_default_instruments_db_file}"
1415    fi
1416  echo "# Plugin Path: ${config_plugin_dir}"  echo "# Plugin Path: ${config_plugin_dir}"
1417    echo "#-------------------------------------------------------------------"
1418    echo "# MIDI Input Drivers:"
1419    echo "# ALSA: ${config_have_alsa}, JACK: ${config_have_jack_midi}, CoreMIDI: ${config_have_coremidi}, MME: ${config_have_mme}, MidiShare: ${config_have_midishare}"
1420    echo "#-------------------------------------------------------------------"
1421    echo "# Audio Output Drivers:"
1422    echo "# ALSA: ${config_have_alsa}, JACK: ${config_have_jack}, ARTS: ${config_have_arts}, CoreAudio: ${config_have_coreaudio}, ASIO: ${config_have_asio}"
1423    echo "#-------------------------------------------------------------------"
1424    echo "# Sampler Engines:"
1425    echo "# GIG: yes, SF2: ${config_have_sf2}, SFZ: yes"
1426    echo "#-------------------------------------------------------------------"
1427    echo "# Effect plugin systems for internal effects:"
1428    echo "# LADSPA: yes"
1429    echo "#-------------------------------------------------------------------"
1430    echo "# Building sampler as plugin for following host standards:"
1431    echo "# DSSI: ${config_have_dssi}, LV2: ${config_have_lv2}, VST: ${config_have_vst}, AU: ${config_have_au}"
1432  echo "#-------------------------------------------------------------------#"  echo "#-------------------------------------------------------------------#"
1433  echo "# Read './configure --help' or file 'configure.in' for details.     #"  echo "# Read './configure --help' or file 'configure.in' for details.     #"
1434  echo "#####################################################################"  echo "#####################################################################"

Legend:
Removed from v.1360  
changed lines
  Added in v.2360

  ViewVC Help
Powered by ViewVC