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

Diff of /linuxsampler/trunk/configure.ac

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

linuxsampler/trunk/configure.in revision 1649 by nagata, Fri Jan 25 15:06:02 2008 UTC linuxsampler/trunk/configure.ac revision 2578 by persson, Sat May 24 06:43:45 2014 UTC
# Line 1  Line 1 
 AC_INIT(configure.in)  
   
1  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
2  # LinuxSampler's / liblinuxsampler's "official" release version:  # LinuxSampler's / liblinuxsampler's "official" release version:
3    
4  LINUXSAMPLER_RELEASE_MAJOR=0  m4_define(linuxsampler_release_major, 1)
5  LINUXSAMPLER_RELEASE_MINOR=5  m4_define(linuxsampler_release_minor, 0)
6  LINUXSAMPLER_RELEASE_BUILD=1  m4_define(linuxsampler_release_build, 0.svn40)
7    
8    
9    AC_INIT([linuxsampler],[linuxsampler_release_major.linuxsampler_release_minor.linuxsampler_release_build])
10    AC_CONFIG_SRCDIR([configure.ac])
11    
12  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
13  # 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=1 Line 26  LINUXSAMPLER_RELEASE_BUILD=1
26  #  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
27  #     to 0.  #     to 0.
28    
29  LIBLINUXSAMPLER_LT_CURRENT=2  LIBLINUXSAMPLER_LT_CURRENT=3
30  LIBLINUXSAMPLER_LT_REVISION=0  LIBLINUXSAMPLER_LT_REVISION=0
31  LIBLINUXSAMPLER_LT_AGE=1  LIBLINUXSAMPLER_LT_AGE=0
32  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"
33    
34  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
35  # the LSCP specification version this LinuSampler release complies with:  # the LSCP specification version this LinuSampler release complies with:
36    
37  LSCP_RELEASE_MAJOR=1  LSCP_RELEASE_MAJOR=1
38  LSCP_RELEASE_MINOR=3  LSCP_RELEASE_MINOR=6
39    
40  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.])
41  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.])
42    
43  AM_PROG_LIBTOOL  AM_INIT_AUTOMAKE([subdir-objects])
44    AC_PROG_CC
45    AC_PROG_CXX
46    AC_LIBTOOL_WIN32_DLL
47    AC_PROG_LIBTOOL
48    AC_PROG_YACC
49    
50  AC_SUBST(SHLIB_VERSION_ARG)  AC_SUBST(SHLIB_VERSION_ARG)
51  AC_SUBST(SHARED_VERSION_INFO)  AC_SUBST(SHARED_VERSION_INFO)
52    
53  AC_C_BIGENDIAN  module=yes eval LIB_EXT=$shrext_cmds
54  AC_CANONICAL_SYSTEM  AC_SUBST(LIB_EXT)
55    
56  AC_SUBST(target)  AC_C_BIGENDIAN
57  AC_SUBST(target_alias)  AC_CANONICAL_HOST
 AC_SUBST(target_cpu)  
 AC_SUBST(target_os)  
 AC_SUBST(target_vendor)  
58    
59  PKG_PROG_PKG_CONFIG  PKG_PROG_PKG_CONFIG
60    
61  ###########################################################################  ###########################################################################
62  # General Checks  # General Checks
63    
64    AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
65    
66  AC_MSG_CHECKING([whether x86 architecture])  AC_MSG_CHECKING([whether x86 architecture])
67  def_arch_x86=0  def_arch_x86=0
68  case $target_cpu in  case $host_cpu in
69    "i386" | "i486" | "i586" | "i686" | "i786")    "i386" | "i486" | "i586" | "i686" | "i786" | "x86_64")
70      echo "yes"      echo "yes"
71      def_arch_x86=1;;      def_arch_x86=1;;
72    *)    *)
# Line 72  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x8 Line 78  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x8
78  # (only if the user did not provide one)  # (only if the user did not provide one)
79  CXX_CPU_SWITCH=  CXX_CPU_SWITCH=
80  if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then  if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then
81    if test "$def_arch_x86" = 1; then    if test "$def_arch_x86" = 1 -a "$host_cpu" != "x86_64"; then
82      CXX_CPU_SWITCH="-march=$target_cpu"      CXX_CPU_SWITCH="-march=$host_cpu"
83    elif test "$target_cpu" = "ppc"; then    elif test "$target_cpu" = "ppc"; then
84      CXX_CPU_SWITCH="-arch=$target_cpu"      CXX_CPU_SWITCH="-arch=$host_cpu"
85    fi    fi
86  fi  fi
87  AC_SUBST([CXX_CPU_SWITCH])  AC_SUBST([CXX_CPU_SWITCH])
88    
89    mac=no
90    linux=no
91    case "$host" in
92        *-*-darwin*)
93            mac=yes
94            ;;
95        *-*-linux*)
96            linux=yes
97            ;;
98    esac
99    AM_CONDITIONAL(LINUX, test "$linux" = yes)
100    AM_CONDITIONAL(MAC, test "$mac" = yes)
101    
102  # check if we're on MS Windows  # check if we're on MS Windows
103  AC_CHECK_HEADERS(  AC_CHECK_HEADERS(
104      mmsystem.h,      mmsystem.h,
105      have_windows=1,      have_windows=1,
106      have_windows=0      have_windows=0,
107        [#include <windef.h>]
108  )  )
109  AM_CONDITIONAL(HAVE_WINDOWS, test $have_windows = "1")  AM_CONDITIONAL(HAVE_WINDOWS, test $have_windows = "1")
110    
111  AC_MSG_CHECKING([whether UNIX98 compatible])  AC_MSG_CHECKING([whether UNIX98 compatible])
112  AC_LANG_SAVE  AC_LANG_PUSH([C])
113  AC_LANG_C  AC_RUN_IFELSE([AC_LANG_SOURCE([[
 AC_TRY_RUN([  
114  #ifndef _GNU_SOURCE  #ifndef _GNU_SOURCE
115  #define _GNU_SOURCE 1  #define _GNU_SOURCE 1
116  #endif  #endif
# Line 103  exit(0); /* UNIX98 compatible */ Line 122  exit(0); /* UNIX98 compatible */
122  exit(-1); /* not UNIX98 compatible */  exit(-1); /* not UNIX98 compatible */
123  #endif  #endif
124  }  }
125  ],  ]])],
126  have_unix98="yes",  have_unix98="yes",
127  have_unix98="no",  have_unix98="no",
128  have_unix98="no"  have_unix98="no"
129  )  )
130  AC_LANG_RESTORE  AC_LANG_POP([C])
131  AC_MSG_RESULT([$have_unix98])  AC_MSG_RESULT([$have_unix98])
132  if test "$have_unix98" = "no" -a "have_windows" = "0"; then  if test "$have_unix98" = "no" -a "$have_windows" = "0" -a "$mac" = "no" ; then
133      if test "x$HAVE_UNIX98" = "x"; then      if test "x$HAVE_UNIX98" = "x"; then
134          echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"          echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"
135          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"
136          echo "./configure with environment variable HAVE_UNIX98=1 in case you think you          echo "./configure with environment variable HAVE_UNIX98=1 in case you think you"
137          echo "have a UNIX98 compatible system."          echo "have a UNIX98 compatible system."
138          exit -1;          exit -1;
139      fi      fi
# Line 161  else Line 180  else
180      echo "NPTL glibc bug check disabled"      echo "NPTL glibc bug check disabled"
181  fi  fi
182    
183    # FIXME: this is actually a dependency of libgig, not of LS directly, why
184    # isn't it hidden by libgig?
185    AC_CHECK_HEADERS(uuid/uuid.h)
186    AC_SEARCH_LIBS(uuid_generate, uuid)
187    
188    # In case Bison is available, determine the exact version, since we need to
189    # use different custom parser code for Bison 2.x vs. Bison 3.x generated
190    # parser yacc tables.
191    if echo "$YACC" | grep -q bison; then
192        # NOTE: m4 removes [], that's why it needs to be escaped
193        bison_version=[`$YACC --version | head -n 1 | sed -e 's/[^0-9.]*\([-0-9.]\+\)$/\1/'`]
194        bison_version_major=`echo $bison_version | cut -d. -f1`
195        bison_version_minor=`echo $bison_version | cut -d. -f2`
196        AC_DEFINE_UNQUOTED(HAVE_BISON_MAJ,$bison_version_major,[Define to the major version of the GNU Bison program installed.])
197        AC_DEFINE_UNQUOTED(HAVE_BISON_MIN,$bison_version_minor,[Define to the minor version of the GNU Bison program installed.])
198    fi
199    
200    
201    
202  ###########################################################################  ###########################################################################
# Line 195  if test "$config_alsa_driver" = "yes"; t Line 231  if test "$config_alsa_driver" = "yes"; t
231      fi      fi
232    
233      echo -n "checking Alsa version... "      echo -n "checking Alsa version... "
234      AC_LANG_SAVE      AC_LANG_PUSH([C])
235      AC_LANG_C      AC_RUN_IFELSE([AC_LANG_SOURCE([[
     AC_TRY_RUN([  
236          #include <alsa/asoundlib.h>          #include <alsa/asoundlib.h>
237          void main(void) {          void main(void) {
238              /* ensure backward compatibility */              /* ensure backward compatibility */
# Line 206  if test "$config_alsa_driver" = "yes"; t Line 241  if test "$config_alsa_driver" = "yes"; t
241              #endif              #endif
242              exit(SND_LIB_MAJOR);              exit(SND_LIB_MAJOR);
243          }          }
244      ],      ]])],
245      alsa_major=0,      alsa_major=0,
246      alsa_major=$?,      alsa_major=$?,
247      alsa_major=0      alsa_major=0
248      )      )
249      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
250          #include <alsa/asoundlib.h>          #include <alsa/asoundlib.h>
251          void main(void) {          void main(void) {
252              /* ensure backward compatibility */              /* ensure backward compatibility */
# Line 220  if test "$config_alsa_driver" = "yes"; t Line 255  if test "$config_alsa_driver" = "yes"; t
255              #endif              #endif
256              exit(SND_LIB_MINOR);              exit(SND_LIB_MINOR);
257          }          }
258      ],      ]])],
259      alsa_minor=0,      alsa_minor=0,
260      alsa_minor=$?,      alsa_minor=$?,
261      alsa_minor=0      alsa_minor=0
262      )      )
263      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
264          #include <alsa/asoundlib.h>          #include <alsa/asoundlib.h>
265          void main(void) {          void main(void) {
266              /* ensure backward compatibility */              /* ensure backward compatibility */
# Line 234  if test "$config_alsa_driver" = "yes"; t Line 269  if test "$config_alsa_driver" = "yes"; t
269              #endif              #endif
270              exit(SND_LIB_SUBMINOR);              exit(SND_LIB_SUBMINOR);
271          }          }
272      ],      ]])],
273      alsa_subminor=0,      alsa_subminor=0,
274      alsa_subminor=$?,      alsa_subminor=$?,
275      alsa_subminor=0      alsa_subminor=0
276      )      )
277      AC_LANG_RESTORE      AC_LANG_POP([C])
278      echo "$alsa_major.$alsa_minor.$alsa_subminor";      echo "$alsa_major.$alsa_minor.$alsa_subminor";
279      AC_DEFINE_UNQUOTED(ALSA_MAJOR,$alsa_major,[Define to the major version number of your Alsa installation.])      AC_DEFINE_UNQUOTED(ALSA_MAJOR,$alsa_major,[Define to the major version number of your Alsa installation.])
280      AC_DEFINE_UNQUOTED(ALSA_MINOR,$alsa_minor,[Define to the minor version number of your Alsa installation.])      AC_DEFINE_UNQUOTED(ALSA_MINOR,$alsa_minor,[Define to the minor version number of your Alsa installation.])
# Line 249  else Line 284  else
284  fi  fi
285  AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")  AM_CONDITIONAL(HAVE_ALSA, test $have_alsa = "1")
286  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.])
287    config_have_alsa="no"
288    if test $have_alsa = "1"; then
289        config_have_alsa="yes"
290    fi
291    
292  # JACK  # JACK
293  AC_ARG_ENABLE(jack-driver,  AC_ARG_ENABLE(jack-driver,
# Line 264  if test "$config_jack_driver" = "yes"; t Line 303  if test "$config_jack_driver" = "yes"; t
303      if test $have_jack = "1"; then      if test $have_jack = "1"; then
304          AC_SUBST(JACK_LIBS)          AC_SUBST(JACK_LIBS)
305          AC_SUBST(JACK_CFLAGS)          AC_SUBST(JACK_CFLAGS)
306          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
307            LIBS="$JACK_LIBS $LIBS"
308            AC_CHECK_FUNCS(jack_client_name_size jack_client_open \
309                           jack_on_info_shutdown)
310            LIBS=$linuxsampler_save_LIBS
311          have_audio_output_driver="true";          have_audio_output_driver="true";
312      fi      fi
313  else  else
# Line 272  else Line 315  else
315  fi  fi
316  AM_CONDITIONAL(HAVE_JACK, test $have_jack = "1")  AM_CONDITIONAL(HAVE_JACK, test $have_jack = "1")
317  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.])
318    config_have_jack="no"
319    if test $have_jack = "1"; then
320        config_have_jack="yes"
321    fi
322    
323    # JACK MIDI
324    have_jack_midi=0
325    if test $have_jack = "1"; then
326        linuxsampler_save_CFLAGS=$CFLAGS
327        linuxsampler_save_LIBS=$LIBS
328        CFLAGS="$JACK_CFLAGS $CFLAGS"
329        LIBS="$JACK_LIBS $LIBS"
330        AC_CHECK_HEADER(jack/midiport.h, have_jack_midi=1, have_jack_midi=0)
331        if test $have_jack_midi = "1"; then
332            AC_CHECK_FUNCS(jack_midi_get_event_count)
333            AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <jack/midiport.h>]], [[
334                jack_midi_clear_buffer(0, 0);
335            ]])], [AC_DEFINE(JACK_MIDI_FUNCS_NEED_NFRAMES, 1,
336                      [Define to 1 if you have the old jack midi functions that need an nframes argument.])])
337            have_midi_input_driver="true"
338        fi
339        CFLAGS=$linuxsampler_save_CFLAGS
340        LIBS=$linuxsampler_save_LIBS
341    fi
342    AM_CONDITIONAL(HAVE_JACK_MIDI, test $have_jack_midi = "1")
343    AC_DEFINE_UNQUOTED(HAVE_JACK_MIDI, $have_jack_midi,
344                       [Define to 1 if you have JACK with MIDI support installed.])
345    config_have_jack_midi="no"
346    if test $have_jack_midi = "1"; then
347        config_have_jack_midi="yes"
348    fi
349    
350  # ARTS  # ARTS
351  AC_ARG_ENABLE(arts-driver,  AC_ARG_ENABLE(arts-driver,
# Line 294  else Line 368  else
368  fi  fi
369  AM_CONDITIONAL(HAVE_ARTS, test "$have_arts" = "1")  AM_CONDITIONAL(HAVE_ARTS, test "$have_arts" = "1")
370  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.])
371    config_have_arts="no"
372    if test $have_arts = "1"; then
373        config_have_arts="yes"
374    fi
375    
376  # ASIO AUDIO (Win32)  # ASIO AUDIO (Win32)
377  AC_ARG_ENABLE(asiosdk-dir,  AC_ARG_ENABLE(asiosdk-dir,
# Line 333  fi Line 411  fi
411  AC_SUBST(ASIOSDK_BASEDIR)  AC_SUBST(ASIOSDK_BASEDIR)
412  AM_CONDITIONAL(HAVE_ASIO, test $have_asio = "1")  AM_CONDITIONAL(HAVE_ASIO, test $have_asio = "1")
413  AC_DEFINE_UNQUOTED(HAVE_ASIO,$have_asio,[Define to 1 if you have ASIO installed.])  AC_DEFINE_UNQUOTED(HAVE_ASIO,$have_asio,[Define to 1 if you have ASIO installed.])
414    config_have_asio="no"
415    if test $have_asio = "1"; then
416        config_have_asio="yes"
417    fi
418    
419  # MidiShare (Linux, OS X, Windows)  # MidiShare (Linux, OS X, Windows)
420  AC_ARG_ENABLE(midishare-driver,  AC_ARG_ENABLE(midishare-driver,
# Line 359  else Line 441  else
441  fi  fi
442  AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")  AM_CONDITIONAL(HAVE_MIDISHARE, test $have_midishare = "1")
443  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.])
444    config_have_midishare="no"
445    if test $have_midishare = "1"; then
446        config_have_midishare="yes"
447    fi
448    
449  # CoreMIDI (OS X)  # CoreMIDI (OS X)
450  AC_ARG_ENABLE(coremidi-driver,  AC_ARG_ENABLE(coremidi-driver,
# Line 381  else Line 467  else
467  fi  fi
468  AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")  AM_CONDITIONAL(HAVE_COREMIDI, test $have_coremidi = "1")
469  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.])
470    config_have_coremidi="no"
471    if test $have_coremidi = "1"; then
472        config_have_coremidi="yes"
473    fi
474    
475    # CoreAudio (OS X)
476    AC_ARG_ENABLE(coreaudio-driver,
477      [  --disable-coreaudio-driver
478                              Disable support for the Apple CoreAudio system.],
479      [config_coreaudio_driver="$enableval"],
480      [config_coreaudio_driver="yes"]
481    )
482    have_coreaudio=0
483    if test "$config_coreaudio_driver" = "yes"; then
484        AC_CHECK_HEADER(CoreAudio/CoreAudio.h,
485            have_coreaudio=1,
486            have_coreaudio=0
487        )
488        if test "$have_coreaudio" = "1"; then
489            have_audio_output_driver="true"
490        fi
491    else
492        echo "CoreAudio support disabled by configure script parameter"
493    fi
494    AM_CONDITIONAL(HAVE_COREAUDIO, test $have_coreaudio = "1")
495    AC_DEFINE_UNQUOTED(HAVE_COREAUDIO,$have_coreaudio,[Define to 1 if you have CoreAudio installed.])
496    config_have_coreaudio="no"
497    if test $have_coreaudio = "1"; then
498        config_have_coreaudio="yes"
499    fi
500    
501  # MME MIDI (Win32)  # MME MIDI (Win32)
502  AC_ARG_ENABLE(mmemidi-driver,  AC_ARG_ENABLE(mmemidi-driver,
# Line 403  else Line 519  else
519  fi  fi
520  AM_CONDITIONAL(HAVE_MME_MIDI, test $have_mmemidi = "1")  AM_CONDITIONAL(HAVE_MME_MIDI, test $have_mmemidi = "1")
521  AC_DEFINE_UNQUOTED(HAVE_MME_MIDI,$have_mmemidi,[Define to 1 if you have MME MIDI installed.])  AC_DEFINE_UNQUOTED(HAVE_MME_MIDI,$have_mmemidi,[Define to 1 if you have MME MIDI installed.])
522    config_have_mme="no"
523    if test $have_mmemidi = "1"; then
524        config_have_mme="yes"
525    fi
526    
527    # DSSI
528    AC_CHECK_HEADERS(dssi.h,
529            config_have_dssi="yes",
530            config_have_dssi="no")
531    AM_CONDITIONAL(HAVE_DSSI, test $config_have_dssi = "yes")
532    
533    # LV2
534    PKG_CHECK_MODULES(LV2, lv2 >= 1.0.0, config_have_lv2="yes", config_have_lv2="no")
535    AC_SUBST(LV2_CFLAGS)
536    AC_SUBST(LV2_LIBS)
537    AM_CONDITIONAL(HAVE_LV2, test $config_have_lv2 = "yes")
538    
539    # VST
540    AC_ARG_ENABLE(vstsdk-dir,
541      [  --enable-vstsdk-dir
542                              Directory where the VST SDK is located.
543                              This automatically enables the compilation
544                              of the VST plugin.],
545      [VSTSDK_DIR="${enableval}"],
546      [VSTSDK_DIR=]
547    )
548    AC_SUBST(VSTSDK_DIR)
549    AM_CONDITIONAL(HAVE_VST, test "x$VSTSDK_DIR" != "x")
550    config_have_vst="no"
551    if test "x$VSTSDK_DIR" != "x"; then
552        config_have_vst="yes"
553    fi
554    
555    # AU
556    AC_CHECK_HEADERS(AudioUnit/AudioUnit.h,
557            config_have_au="yes",
558            config_have_au="no")
559    AM_CONDITIONAL(HAVE_AU, test $config_have_au = "yes")
560    AM_CONDITIONAL(HAVE_AUFLAGS, test "$AUFLAGS" != "")
561    
562    if test $config_have_au = "yes" ; then
563        if test "x$DEVELOPER_EXTRAS_DIR" = "x" ; then
564            if test -d /Developer/Extras ; then
565                DEVELOPER_EXTRAS_DIR=/Developer/Extras
566            else      
567                DEVELOPER_EXTRAS_DIR=/Developer/Examples
568            fi
569        fi
570        AC_SUBST(DEVELOPER_EXTRAS_DIR)
571    fi
572    
573    if test "x$MAC_PLUGIN_INSTALL_DIR" = "x" ; then
574        MAC_PLUGIN_INSTALL_DIR=/Library/Audio/Plug-Ins
575    fi
576    AC_SUBST(MAC_PLUGIN_INSTALL_DIR)
577    
578  # have we found at least one MIDI input and one audio output driver ?  # have we found at least one MIDI input and one audio output driver ?
579  if test "$have_midi_input_driver" = "false"; then  if test "$have_midi_input_driver" = "false"; then
580      echo "No supported MIDI input system found!"      echo "No supported MIDI input system found!"
581      echo "Sorry, LinuxSampler only supports the following MIDI drivers at the moment:"      echo "Sorry, LinuxSampler only supports the following MIDI drivers at the moment:"
582      echo "ALSA, MIDIShare, CoreMIDI."      echo "ALSA, JACK, MIDIShare, CoreMIDI, MME."
583      echo "If you think you have one of those available on your system, make sure you"      echo "If you think you have one of those available on your system, make sure you"
584      echo "also have the respective development (header) files installed."      echo "also have the respective development (header) files installed."
585      exit -1;      exit -1;
586  fi  fi
587  if test "$have_audio_output_driver" = "false"; then  if test "$have_audio_output_driver" = "false"; then
588      echo "No supported audio output system found!"      echo "No supported audio output system found!"
589      echo "Sorry, LinuxSampler only supports ALSA, JACK and ARTS as audio output"      echo "Sorry, LinuxSampler only supports ALSA, JACK, ARTS and ASIO as audio output"
590      echo "driver at the moment!"      echo "driver at the moment!"
591      exit -1;      exit -1;
592  fi  fi
# Line 426  fi Line 597  fi
597  # Checks for various DLL libraries  # Checks for various DLL libraries
598    
599  # Check presence of libgig  # Check presence of libgig
600  libgig_version="3.2.1"  libgig_version="3.3.0"
601  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)
602  if test "$HAVE_GIG" = "false"; then  if test "$HAVE_GIG" = "false"; then
603      echo "Required libgig version not found!"      echo "Required libgig version not found!"
# Line 438  fi Line 609  fi
609  AC_SUBST(GIG_CFLAGS)  AC_SUBST(GIG_CFLAGS)
610  AC_SUBST(GIG_LIBS)  AC_SUBST(GIG_LIBS)
611    
612    # SF2 Engine (requires libgig)
613    AC_ARG_ENABLE(sf2-engine,
614      [  --disable-sf2-engine
615                              Disable compilation of the SF2 engine.
616                              You need to have libgig installed.],
617      [config_sf2_engine="$enableval"],
618      [config_sf2_engine="yes"]
619    )
620    HAVE_SF2=0;
621    if test "$config_sf2_engine" = "yes"; then
622        HAVE_SF2=1
623    else
624        echo "SF2 engine disabled by configure script parameter"
625    fi
626    AM_CONDITIONAL(HAVE_SF2, test $HAVE_SF2 = 1)
627    AC_DEFINE_UNQUOTED(HAVE_SF2,$HAVE_SF2,[Define to 1 if you want SF2 engine and have libsf2 installed.])
628    config_have_sf2="no"
629    if test $HAVE_SF2 = "1"; then
630        config_have_sf2="yes"
631    fi
632    
633    # Check presence of libsndfile
634    libsndfile_version="1.0"
635    PKG_CHECK_MODULES(SNDFILE, sndfile >= $libsndfile_version, HAVE_SNDFILE=true, HAVE_SNDFILE=false)
636    if test "$HAVE_SNDFILE" = "false"; then
637        echo "Required libsndfile version not found!"
638        echo "You need to have libsndfile version ${libsndfile_version} installed!"
639        exit -1;
640    else
641        echo "yes, found libsndfile $libsndfile_version"
642    fi
643    AC_SUBST(SNDFILE_CFLAGS)
644    AC_SUBST(SNDFILE_LIBS)
645    
646    # Check for Vorbis and FLAC support in libsndfile
647    linuxsampler_save_CFLAGS=$CFLAGS
648    CFLAGS="$SNDFILE_CFLAGS $CFLAGS"
649    AC_CHECK_DECLS([SF_FORMAT_VORBIS, SF_FORMAT_FLAC], [], [], [[#include <sndfile.h>]])
650    
651    # Check for loop functionality in libsndfile
652    AC_CHECK_MEMBERS([SF_INSTRUMENT.loops],,
653                     [AC_MSG_WARN([Your version of libsndfile does not support
654        reading of loop information. LinuxSampler will not be able to
655        extract loop information from sample files.])],
656                     [#include <sndfile.h>])
657    CFLAGS=$linuxsampler_save_CFLAGS
658    
659  # Instruments DB feature (requires SQLite 3.3)  # Instruments DB feature (requires SQLite 3.3)
660  AC_ARG_ENABLE(instruments-db,  AC_ARG_ENABLE(instruments-db,
661    [  --disable-instruments-db    [  --disable-instruments-db
# Line 533  if test "$config_rt_exceptions" = "yes"; Line 751  if test "$config_rt_exceptions" = "yes";
751    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.])
752  fi  fi
753    
754    config_pthread_testcancel="$mac"
755  AC_ARG_ENABLE(pthread-testcancel,  AC_ARG_ENABLE(pthread-testcancel,
756    [  --enable-pthread-testcancel    [  --enable-pthread-testcancel
757                            Enable pthread_testcancel() calls and avoid asynchronous                            Enable pthread_testcancel() calls and avoid
758                            cancel of pthreads (default=no).],                            asynchronous cancel of pthreads (default=yes
759                              for Mac targets, no otherwise).],
760    [config_pthread_testcancel="$enableval"],    [config_pthread_testcancel="$enableval"],
761    [config_pthread_testcancel="no"]    [])
 )  
762  if test "$config_pthread_testcancel" = "yes"; then  if test "$config_pthread_testcancel" = "yes"; then
763    AC_DEFINE_UNQUOTED(CONFIG_PTHREAD_TESTCANCEL, 1, [Define to 1 to enable pthread_testcancel() calls.])    AC_DEFINE_UNQUOTED(CONFIG_PTHREAD_TESTCANCEL, 1, [Define to 1 to enable pthread_testcancel() calls.])
764  fi  fi
# Line 649  AC_DEFINE_UNQUOTED(CONFIG_STREAM_BUFFER_ Line 868  AC_DEFINE_UNQUOTED(CONFIG_STREAM_BUFFER_
868    
869  AC_ARG_ENABLE(max-streams,  AC_ARG_ENABLE(max-streams,
870    [  --enable-max-streams    [  --enable-max-streams
871                            Maximum amount of disk streams (default=90). This                            Initial maximum amount of disk streams
872                            value should always be higher than the maximum                            (default=90). This value can be changed at
873                            amount of voices.],                            runtime. It should always be higher than the
874                              maximum amount of voices.],
875    [config_max_streams="${enableval}"],    [config_max_streams="${enableval}"],
876    [config_max_streams="90"]    [config_max_streams="90"]
877  )  )
878  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.])
879    
880  AC_ARG_ENABLE(max-voices,  AC_ARG_ENABLE(max-voices,
881    [  --enable-max-voices    [  --enable-max-voices
882                            Maximum amount of voices (default=64). This value                            Initial maximum amount of voices (default=64).
883                            should always be lower than the maximum amount of                            This value can be changed at runtime. It should
884                            disk streams.],                            always be lower than the maximum amount of disk
885                              streams.],
886    [config_max_voices="${enableval}"],    [config_max_voices="${enableval}"],
887    [config_max_voices="64"]    [config_max_voices="64"]
888  )  )
889  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.])
890    
891  AC_ARG_ENABLE(subfragment-size,  AC_ARG_ENABLE(subfragment-size,
892    [  --enable-subfragment-size    [  --enable-subfragment-size
# Line 967  if test "$config_interpolate_volume" = " Line 1188  if test "$config_interpolate_volume" = "
1188    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.])
1189  fi  fi
1190    
1191    AC_ARG_ENABLE(master-volume-sysex-by-port,
1192      [  --enable-master-volume-sysex-by-port
1193                              Whether global volume sysex message should be
1194                              applied globally to the whole sampler or only to
1195                              the sampler channels connected to the same MIDI
1196                              input port on which the sysex message arrived on.
1197                              By default global volume sysex messages apply
1198                              globally to the whole sampler, since many MIDI
1199                              devices behave that way.],
1200      [config_master_volume_sysex_by_port="$enableval"],
1201      [config_master_volume_sysex_by_port="no"]
1202    )
1203    if test "$config_master_volume_sysex_by_port" = "yes"; then
1204      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.])
1205    fi
1206    
1207  AC_ARG_ENABLE(plugin-dir,  AC_ARG_ENABLE(plugin-dir,
1208    [  --enable-plugin-dir    [  --enable-plugin-dir
1209                            Directory where the sampler shall look for potential plugins,                            Directory where the sampler shall look for potential plugins,
# Line 1001  AC_SUBST(config_default_instruments_db_f Line 1238  AC_SUBST(config_default_instruments_db_f
1238  ###########################################################################  ###########################################################################
1239  # Automatic Benchmarks (to detect the best algorithms for the system)  # Automatic Benchmarks (to detect the best algorithms for the system)
1240    
 AC_LANG_SAVE  
   
1241  if test "$config_signed_triang_algo" = "benchmark"; then  if test "$config_signed_triang_algo" = "benchmark"; then
1242      echo -n "benchmarking for the best (signed) triangular oscillator algorithm... "      echo -n "benchmarking for the best (signed) triangular oscillator algorithm... "
1243      AC_LANG_CPLUSPLUS      AC_LANG_PUSH([C++])
1244      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
1245              #define SIGNED 1              #define SIGNED 1
1246              #define SILENT 1              #define SILENT 1
1247              #include "${srcdir}/benchmarks/triang.cpp"              #include "${srcdir}/benchmarks/triang.cpp"
1248          ],          ]])],
1249          triang_signed=0,          triang_signed=0,
1250          triang_signed=$?,          triang_signed=$?,
1251          triang_signed=0          triang_signed=0
1252      )      )
1253        AC_LANG_POP([C++])
1254      if test "$triang_signed" = "2"; then      if test "$triang_signed" = "2"; then
1255          config_signed_triang_algo="intmath"          config_signed_triang_algo="intmath"
1256          echo "integer math"          echo "integer math"
# Line 1045  AC_DEFINE_UNQUOTED(CONFIG_SIGNED_TRIANG_ Line 1281  AC_DEFINE_UNQUOTED(CONFIG_SIGNED_TRIANG_
1281    
1282  if test "$config_unsigned_triang_algo" = "benchmark"; then  if test "$config_unsigned_triang_algo" = "benchmark"; then
1283      echo -n "benchmarking for the best (unsigned) triangular oscillator algorithm... "      echo -n "benchmarking for the best (unsigned) triangular oscillator algorithm... "
1284      AC_LANG_CPLUSPLUS      AC_LANG_PUSH([C++])
1285      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
1286              #define SIGNED 0              #define SIGNED 0
1287              #define SILENT 1              #define SILENT 1
1288              #include "${srcdir}/benchmarks/triang.cpp"              #include "${srcdir}/benchmarks/triang.cpp"
1289          ],          ]])],
1290          triang_unsigned=0,          triang_unsigned=0,
1291          triang_unsigned=$?,          triang_unsigned=$?,
1292          triang_unsigned=0          triang_unsigned=0
1293      )      )
1294        AC_LANG_POP([C++])
1295      if test "$triang_unsigned" = "2"; then      if test "$triang_unsigned" = "2"; then
1296          config_unsigned_triang_algo="intmath"          config_unsigned_triang_algo="intmath"
1297          echo "integer math"          echo "integer math"
# Line 1083  else Line 1320  else
1320  fi  fi
1321  AC_DEFINE_UNQUOTED(CONFIG_UNSIGNED_TRIANG_ALGO, ${triang_unsigned}, [Define unsigned triangular wave algorithm to be used.])  AC_DEFINE_UNQUOTED(CONFIG_UNSIGNED_TRIANG_ALGO, ${triang_unsigned}, [Define unsigned triangular wave algorithm to be used.])
1322    
 AC_LANG_RESTORE  
   
1323    
1324  ###########################################################################  ###########################################################################
1325  # Create Build Files  # Create Build Files
1326    
1327  AM_CONFIG_HEADER(config.h)  AC_CONFIG_HEADERS([config.h])
 AM_INIT_AUTOMAKE(linuxsampler, "$LINUXSAMPLER_RELEASE_MAJOR.$LINUXSAMPLER_RELEASE_MINOR.$LINUXSAMPLER_RELEASE_BUILD")  
1328    
1329  AC_LANG_CPLUSPLUS  AC_LANG([C++])
 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  
1330    
1331  # 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
1332  # this, the dlfcn.h check in am_prog_libtool may fail.  # this, the dlfcn.h check in am_prog_libtool may fail.
1333  AC_CHECK_HEADER(stdlib.h)  AC_CHECK_HEADER(stdlib.h)
1334    
1335  AC_OUTPUT( \  AC_CONFIG_FILES([\
1336      Makefile \      Makefile \
1337      man/Makefile \      man/Makefile \
1338      man/linuxsampler.1 \      man/linuxsampler.1 \
1339        man/lscp.1 \
1340      src/Makefile \      src/Makefile \
1341      src/db/Makefile \      src/db/Makefile \
1342      src/network/Makefile \      src/network/Makefile \
1343      src/engines/Makefile \      src/engines/Makefile \
1344      src/engines/gig/Makefile \      src/engines/gig/Makefile \
1345        src/engines/sf2/Makefile \
1346        src/engines/sfz/Makefile \
1347      src/engines/common/Makefile \      src/engines/common/Makefile \
1348        src/effects/Makefile \
1349      src/common/Makefile \      src/common/Makefile \
1350      src/testcases/Makefile \      src/testcases/Makefile \
1351      src/drivers/Makefile \      src/drivers/Makefile \
1352      src/drivers/audio/Makefile \      src/drivers/audio/Makefile \
1353      src/drivers/midi/Makefile \      src/drivers/midi/Makefile \
1354      src/plugins/Makefile \      src/plugins/Makefile \
1355        src/hostplugins/Makefile \
1356        src/hostplugins/dssi/Makefile \
1357        src/hostplugins/lv2/Makefile \
1358        src/hostplugins/lv2/manifest.ttl \
1359        src/hostplugins/vst/Makefile \
1360        src/hostplugins/au/Makefile \
1361        src/shell/Makefile \
1362      linuxsampler.spec \      linuxsampler.spec \
1363      debian/Makefile \      debian/Makefile \
1364      Artwork/Makefile \      Artwork/Makefile \
# Line 1133  AC_OUTPUT( \ Line 1370  AC_OUTPUT( \
1370      Documentation/Engines/gig/Makefile \      Documentation/Engines/gig/Makefile \
1371      linuxsampler.pc \      linuxsampler.pc \
1372      Doxyfile \      Doxyfile \
1373  )  ])
1374    AC_OUTPUT
1375    
1376  # resolve all nested variables in '${config_plugin_dir}'  # resolve all nested variables in '${config_plugin_dir}'
1377  # (merely for providing a human readable summary below)  # (merely for providing a human readable summary below)
# Line 1149  echo "" Line 1387  echo ""
1387  echo "#####################################################################"  echo "#####################################################################"
1388  echo "# LinuxSampler Configuration                                        #"  echo "# LinuxSampler Configuration                                        #"
1389  echo "#-------------------------------------------------------------------#"  echo "#-------------------------------------------------------------------#"
1390    echo "# Release Version: ${VERSION}"
1391    echo "# LSCP Version: ${LSCP_RELEASE_MAJOR}.${LSCP_RELEASE_MINOR}"
1392    echo "#-------------------------------------------------------------------"
1393  echo "# Assembly Optimizations: ${config_asm}"  echo "# Assembly Optimizations: ${config_asm}"
1394  echo "# Development Mode: ${config_dev_mode}"  echo "# Development Mode: ${config_dev_mode}"
1395  echo "# Debug Level: ${config_debug_level}"  echo "# Debug Level: ${config_debug_level}"
# Line 1162  echo "# Streams to be refilled per Disk Line 1403  echo "# Streams to be refilled per Disk
1403  echo "# Minimum Stream Refill Size: ${config_stream_min_refill}"  echo "# Minimum Stream Refill Size: ${config_stream_min_refill}"
1404  echo "# Maximum Stream Refill Size: ${config_stream_max_refill}"  echo "# Maximum Stream Refill Size: ${config_stream_max_refill}"
1405  echo "# Stream Size: ${config_stream_size}"  echo "# Stream Size: ${config_stream_size}"
1406  echo "# Maximum Disk Streams: ${config_max_streams}"  echo "# Default Maximum Disk Streams: ${config_max_streams}"
1407  echo "# Maximum Voices: ${config_max_voices}"  echo "# Default Maximum Voices: ${config_max_voices}"
1408  echo "# Default Subfragment Size: ${config_subfragment_size}"  echo "# Default Subfragment Size: ${config_subfragment_size}"
1409  echo "# Default Global Volume Attenuation: ${config_global_attenuation_default}"  echo "# Default Global Volume Attenuation: ${config_global_attenuation_default}"
1410  echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"  echo "# Voice Stealing Algorithm: ${config_voice_steal_algo}"
# Line 1182  echo "# Override Filter Type: ${config_o Line 1423  echo "# Override Filter Type: ${config_o
1423  echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"  echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}"
1424  echo "# Process Muted Channels: ${config_process_muted_channels}"  echo "# Process Muted Channels: ${config_process_muted_channels}"
1425  echo "# Process All-Notes-Off MIDI message: ${config_process_all_notes_off}"  echo "# Process All-Notes-Off MIDI message: ${config_process_all_notes_off}"
1426    echo "# Apply global volume SysEx by MIDI port: ${config_master_volume_sysex_by_port}"
1427  echo "# Interpolate Volume: ${config_interpolate_volume}"  echo "# Interpolate Volume: ${config_interpolate_volume}"
1428  echo "# Instruments database support: ${config_instruments_db}"  echo "# Instruments database support: ${config_instruments_db}"
1429  if test "$config_instruments_db" = "yes"; then  if test "$config_instruments_db" = "yes"; then
1430  echo "# Instruments DB default location: ${config_default_instruments_db_file}"  echo "# Instruments DB default location: ${config_default_instruments_db_file}"
1431  fi  fi
1432  echo "# Plugin Path: ${config_plugin_dir}"  echo "# Plugin Path: ${config_plugin_dir}"
1433    echo "#-------------------------------------------------------------------"
1434    echo "# MIDI Input Drivers:"
1435    echo "# ALSA: ${config_have_alsa}, JACK: ${config_have_jack_midi}, CoreMIDI: ${config_have_coremidi}, MME: ${config_have_mme}, MidiShare: ${config_have_midishare}"
1436    echo "#-------------------------------------------------------------------"
1437    echo "# Audio Output Drivers:"
1438    echo "# ALSA: ${config_have_alsa}, JACK: ${config_have_jack}, ARTS: ${config_have_arts}, CoreAudio: ${config_have_coreaudio}, ASIO: ${config_have_asio}"
1439    echo "#-------------------------------------------------------------------"
1440    echo "# Sampler Engines:"
1441    echo "# GIG: yes, SF2: ${config_have_sf2}, SFZ: yes"
1442    echo "#-------------------------------------------------------------------"
1443    echo "# Effect plugin systems for internal effects:"
1444    echo "# LADSPA: yes"
1445    echo "#-------------------------------------------------------------------"
1446    echo "# Building sampler as plugin for following host standards:"
1447    echo "# DSSI: ${config_have_dssi}, LV2: ${config_have_lv2}, VST: ${config_have_vst}, AU: ${config_have_au}"
1448  echo "#-------------------------------------------------------------------#"  echo "#-------------------------------------------------------------------#"
1449  echo "# Read './configure --help' or file 'configure.in' for details.     #"  echo "# Read './configure --help' or file 'configure.in' for details.     #"
1450  echo "#####################################################################"  echo "#####################################################################"

Legend:
Removed from v.1649  
changed lines
  Added in v.2578

  ViewVC Help
Powered by ViewVC