/[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 1876 by schoenebeck, Fri Mar 27 12:16:12 2009 UTC linuxsampler/trunk/configure.ac revision 3967 by schoenebeck, Sun Jun 20 11:09:30 2021 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, 2)
5  LINUXSAMPLER_RELEASE_MINOR=5  m4_define(linuxsampler_release_minor, 2)
6  LINUXSAMPLER_RELEASE_BUILD=1.12cvs  m4_define(linuxsampler_release_build, 0.svn4)
7    
8    AC_INIT([linuxsampler],[linuxsampler_release_major.linuxsampler_release_minor.linuxsampler_release_build])
9    AC_CONFIG_SRCDIR([configure.ac])
10    
11  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
12  # 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.12cvs Line 25  LINUXSAMPLER_RELEASE_BUILD=1.12cvs
25  #  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
26  #     to 0.  #     to 0.
27    
28  LIBLINUXSAMPLER_LT_CURRENT=2  LIBLINUXSAMPLER_LT_CURRENT=6
29  LIBLINUXSAMPLER_LT_REVISION=0  LIBLINUXSAMPLER_LT_REVISION=0
30  LIBLINUXSAMPLER_LT_AGE=1  LIBLINUXSAMPLER_LT_AGE=0
31  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT_CURRENT:$LIBLINUXSAMPLER_LT_REVISION:$LIBLINUXSAMPLER_LT_AGE"
32    
33  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
34  # the LSCP specification version this LinuSampler release complies with:  # the LSCP specification version this LinuSampler release complies with:
35    
36  LSCP_RELEASE_MAJOR=1  LSCP_RELEASE_MAJOR=1
37  LSCP_RELEASE_MINOR=4  LSCP_RELEASE_MINOR=7
38    
39  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.])
40  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.])
41    
42    AM_INIT_AUTOMAKE([subdir-objects])
43    AC_PROG_CC
44  AC_PROG_CXX  AC_PROG_CXX
45  AC_LIBTOOL_WIN32_DLL  AC_LIBTOOL_WIN32_DLL
46  AM_PROG_LIBTOOL  AC_PROG_LIBTOOL
47    AC_PROG_LEX
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    # make sure C++14 is supported by compiler
67    # (add CXXFLAGS if required [e.g. -std=c++14])
68    m4_ifdef([m4_include(m4/ax_cxx_compile_stdcxx.m4)],,
69                 [sinclude([m4/ax_cxx_compile_stdcxx.m4])])
70    AX_CXX_COMPILE_STDCXX(14, [], mandatory)
71    
72  AC_MSG_CHECKING([whether x86 architecture])  AC_MSG_CHECKING([whether x86 architecture])
73  def_arch_x86=0  def_arch_x86=0
74  case $target_cpu in  case $host_cpu in
75    "i386" | "i486" | "i586" | "i686" | "i786" | "x86_64")    "i386" | "i486" | "i586" | "i686" | "i786" | "x86_64")
76      echo "yes"      echo "yes"
77      def_arch_x86=1;;      def_arch_x86=1;;
# Line 74  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x8 Line 84  AC_DEFINE_UNQUOTED(ARCH_X86,$def_arch_x8
84  # (only if the user did not provide one)  # (only if the user did not provide one)
85  CXX_CPU_SWITCH=  CXX_CPU_SWITCH=
86  if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then  if ! echo "X $CXXFLAGS " | grep -q -- " \(-march=\|-mcpu=\|-mtune=\|-arch=\)" ; then
87    if test "$def_arch_x86" = 1 -a "$target_cpu" != "x86_64"; then    if test "$def_arch_x86" = 1 -a "$host_cpu" != "x86_64"; then
88      CXX_CPU_SWITCH="-march=$target_cpu"      CXX_CPU_SWITCH="-march=$host_cpu"
89    elif test "$target_cpu" = "ppc"; then    elif test "$target_cpu" = "ppc"; then
90      CXX_CPU_SWITCH="-arch=$target_cpu"      CXX_CPU_SWITCH="-arch=$host_cpu"
91    fi    fi
92  fi  fi
93  AC_SUBST([CXX_CPU_SWITCH])  AC_SUBST([CXX_CPU_SWITCH])
94    
95    mac=no
96    linux=no
97    case "$host" in
98        *-*-darwin*)
99            mac=yes
100            ;;
101        *-*-linux*)
102            linux=yes
103            ;;
104    esac
105    AM_CONDITIONAL(LINUX, test "$linux" = yes)
106    AM_CONDITIONAL(MAC, test "$mac" = yes)
107    
108  # check if we're on MS Windows  # check if we're on MS Windows
109  AC_CHECK_HEADERS(  AC_CHECK_HEADERS(
110      mmsystem.h,      mmsystem.h,
111      have_windows=1,      have_windows=1,
112      have_windows=0      have_windows=0,
113        [#include <windef.h>]
114  )  )
115  AM_CONDITIONAL(HAVE_WINDOWS, test $have_windows = "1")  AM_CONDITIONAL(HAVE_WINDOWS, test $have_windows = "1")
116    
117  AC_MSG_CHECKING([whether UNIX98 compatible])  AC_MSG_CHECKING([whether UNIX98 compatible])
118  AC_LANG_SAVE  AC_LANG_PUSH([C])
119  AC_LANG_C  AC_RUN_IFELSE([AC_LANG_SOURCE([[
 AC_TRY_RUN([  
120  #ifndef _GNU_SOURCE  #ifndef _GNU_SOURCE
121  #define _GNU_SOURCE 1  #define _GNU_SOURCE 1
122  #endif  #endif
# Line 105  exit(0); /* UNIX98 compatible */ Line 128  exit(0); /* UNIX98 compatible */
128  exit(-1); /* not UNIX98 compatible */  exit(-1); /* not UNIX98 compatible */
129  #endif  #endif
130  }  }
131  ],  ]])],
132  have_unix98="yes",  have_unix98="yes",
133  have_unix98="no",  have_unix98="no",
134  have_unix98="no"  have_unix98="no"
135  )  )
136  AC_LANG_RESTORE  AC_LANG_POP([C])
137  AC_MSG_RESULT([$have_unix98])  AC_MSG_RESULT([$have_unix98])
138  if test "$have_unix98" = "no" -a "have_windows" = "0"; then  if test "$have_unix98" = "no" -a "$have_windows" = "0" -a "$mac" = "no" ; then
139      if test "x$HAVE_UNIX98" = "x"; then      if test "x$HAVE_UNIX98" = "x"; then
140          echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"          echo "LinuxSampler only runs on UNIX98 compatible systems, which is mandatory for"
141          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"
142          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"
143          echo "have a UNIX98 compatible system."          echo "have a UNIX98 compatible system."
144          exit -1;          exit -1;
145      fi      fi
# Line 134  CFLAGS="$CFLAGS $PTHREAD_CFLAGS" Line 157  CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
157  CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"  CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
158  CC="$PTHREAD_CC"  CC="$PTHREAD_CC"
159    
160    
161    # check for compiler's pragma diagnostic capabilities
162    m4_ifdef([m4_include(m4/pragma_diagnostics.m4)],,
163                 [sinclude([m4/pragma_diagnostics.m4])])
164    ACX_CXX_PRAGMA_DIAGNOSTICS
165    
166    
167  # check for a bug in NPTL-enabled glibc  # check for a bug in NPTL-enabled glibc
168  # (see Gentoo bug report #194076)  # (see Gentoo bug report #194076)
169  AC_ARG_ENABLE(nptl-bug-check,  AC_ARG_ENABLE(nptl-bug-check,
# Line 163  else Line 193  else
193      echo "NPTL glibc bug check disabled"      echo "NPTL glibc bug check disabled"
194  fi  fi
195    
196  # FIXME: this is actually a dependency of libgig, not of LS directly, why  
197  # isn't it hidden by libgig?  # check whether C++ compiler supports "designated initializers"
198  AC_CHECK_HEADERS(uuid/uuid.h)  echo -n "Checking whether C++ compiler supports designated initializers (partly)... "
199  AC_SEARCH_LIBS(uuid_generate, uuid)  AC_LANG_PUSH([C++])
200    AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
201        #include <stdlib.h>
202        struct Foo {
203            int   a;
204            float b;
205            bool  c;
206            char  d;
207        };
208        static void bar(Foo o) {
209        }
210        int main() {
211            bar({
212              .a = 2,
213              .b = 4.3f,
214              .c = true,
215              .d = 'z'
216            });
217            return 0;
218        }
219        ]])],
220        [cxx_designated_init_partly="yes"],
221        [cxx_designated_init_partly="no"]
222    )
223    AC_LANG_POP([C++])
224    if test $cxx_designated_init_partly = "yes"; then
225        echo "yes"
226    else
227        echo "NO"
228        echo '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
229        echo '!                                                             !'
230        echo '! ERROR: Selected C++ compiler does not support designated    !'
231        echo '! initializers at all, not even partly!                       !'
232        echo '!                                                             !'
233        echo '! Please either update your C++ compiler or select a          !'
234        echo '! different compiler (e.g. GCC >= 8 or clang >= 5). If you    !'
235        echo '! have several C++ compilers installed on your machine, you   !'
236        echo '! can easily select a different compiler by environment       !'
237        echo '! variable, e.g. to compile with clang instead:               !'
238        echo '!                                                             !'
239        echo '! CXX=clang++ CC=clang ./configure && make                    !'
240        echo '!                                                             !'
241        echo '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
242        exit -1
243    fi
244    echo -n "Checking whether C++ compiler fully supports designated initializers... "
245    AC_LANG_PUSH([C++])
246    AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
247        #include <stdlib.h>
248        struct Foo {
249            int   a;
250            float b;
251            bool  c;
252            char  d;
253        };
254        static void bar(Foo o) {
255        }
256        int main() {
257            bar({
258              .d = 'z',
259              .a = 2
260            });
261            return 0;
262        }
263        ]])],
264        [cxx_designated_init_fully="yes"],
265        [cxx_designated_init_fully="no"]
266    )
267    AC_LANG_POP([C++])
268    if test $cxx_designated_init_fully = "yes"; then
269        echo "yes"
270    else
271        echo 'NO'
272        echo '***************************************************************'
273        echo '*                                                             *'
274        echo '* WARNING: Selected C++ compiler does not fully support       *'
275        echo '* designated initializers (only partly)!                      *'
276        echo '*                                                             *'
277        echo '* You will be able to compile LinuxSampler, but you will not  *'
278        echo '* be able to compile the test cases. Consider updating your   *'
279        echo '* C++ compiler or switching to a different compiler. Chances  *'
280        echo '* are that LinuxSampler will soon no longer support your      *'
281        echo '* compiler.                                                   *'
282        echo '*                                                             *'
283        echo '* If you have several C++ compilers installed on your machine,*'
284        echo '* you can easily select a different compiler by environment   *'
285        echo '* variable, e.g. to compile with clang instead:               *'
286        echo '*                                                             *'
287        echo '* CXX=clang++ CC=clang ./configure && make                    *'
288        echo '*                                                             *'
289        echo '***************************************************************'
290    fi
291    
292    
293    # In case Bison is available, determine the exact version, since we need to
294    # use different custom parser code for Bison 2.x vs. Bison 3.x generated
295    # parser yacc tables.
296    if echo "$YACC" | grep -q bison; then
297        # NOTE: m4 removes [], that's why it needs to be escaped
298        bison_version=[`$YACC --version | head -n 1 | sed -e 's/[^0-9.]*\([-0-9.]\+\)$/\1/'`]
299        bison_version_major=`echo $bison_version | cut -d. -f1`
300        bison_version_minor=`echo $bison_version | cut -d. -f2`
301        AC_DEFINE_UNQUOTED(HAVE_BISON_MAJ,$bison_version_major,[Define to the major version of the GNU Bison program installed.])
302        AC_DEFINE_UNQUOTED(HAVE_BISON_MIN,$bison_version_minor,[Define to the minor version of the GNU Bison program installed.])
303    fi
304    
305    
306    
# Line 202  if test "$config_alsa_driver" = "yes"; t Line 336  if test "$config_alsa_driver" = "yes"; t
336      fi      fi
337    
338      echo -n "checking Alsa version... "      echo -n "checking Alsa version... "
339      AC_LANG_SAVE      AC_LANG_PUSH([C])
340      AC_LANG_C      AC_RUN_IFELSE([AC_LANG_SOURCE([[
     AC_TRY_RUN([  
341          #include <alsa/asoundlib.h>          #include <alsa/asoundlib.h>
342          void main(void) {          void main(void) {
343              /* ensure backward compatibility */              /* ensure backward compatibility */
# Line 213  if test "$config_alsa_driver" = "yes"; t Line 346  if test "$config_alsa_driver" = "yes"; t
346              #endif              #endif
347              exit(SND_LIB_MAJOR);              exit(SND_LIB_MAJOR);
348          }          }
349      ],      ]])],
350      alsa_major=0,      alsa_major=0,
351      alsa_major=$?,      alsa_major=$?,
352      alsa_major=0      alsa_major=0
353      )      )
354      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
355          #include <alsa/asoundlib.h>          #include <alsa/asoundlib.h>
356          void main(void) {          void main(void) {
357              /* ensure backward compatibility */              /* ensure backward compatibility */
# Line 227  if test "$config_alsa_driver" = "yes"; t Line 360  if test "$config_alsa_driver" = "yes"; t
360              #endif              #endif
361              exit(SND_LIB_MINOR);              exit(SND_LIB_MINOR);
362          }          }
363      ],      ]])],
364      alsa_minor=0,      alsa_minor=0,
365      alsa_minor=$?,      alsa_minor=$?,
366      alsa_minor=0      alsa_minor=0
367      )      )
368      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
369          #include <alsa/asoundlib.h>          #include <alsa/asoundlib.h>
370          void main(void) {          void main(void) {
371              /* ensure backward compatibility */              /* ensure backward compatibility */
# Line 241  if test "$config_alsa_driver" = "yes"; t Line 374  if test "$config_alsa_driver" = "yes"; t
374              #endif              #endif
375              exit(SND_LIB_SUBMINOR);              exit(SND_LIB_SUBMINOR);
376          }          }
377      ],      ]])],
378      alsa_subminor=0,      alsa_subminor=0,
379      alsa_subminor=$?,      alsa_subminor=$?,
380      alsa_subminor=0      alsa_subminor=0
381      )      )
382      AC_LANG_RESTORE      AC_LANG_POP([C])
383      echo "$alsa_major.$alsa_minor.$alsa_subminor";      echo "$alsa_major.$alsa_minor.$alsa_subminor";
384      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.])
385      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 277  if test "$config_jack_driver" = "yes"; t Line 410  if test "$config_jack_driver" = "yes"; t
410          AC_SUBST(JACK_CFLAGS)          AC_SUBST(JACK_CFLAGS)
411          linuxsampler_save_LIBS=$LIBS          linuxsampler_save_LIBS=$LIBS
412          LIBS="$JACK_LIBS $LIBS"          LIBS="$JACK_LIBS $LIBS"
413          AC_CHECK_FUNCS(jack_client_name_size jack_client_open)          AC_CHECK_FUNCS(jack_client_name_size jack_client_open \
414                           jack_on_info_shutdown)
415          LIBS=$linuxsampler_save_LIBS          LIBS=$linuxsampler_save_LIBS
416          have_audio_output_driver="true";          have_audio_output_driver="true";
417      fi      fi
# Line 502  AC_CHECK_HEADERS(dssi.h, Line 636  AC_CHECK_HEADERS(dssi.h,
636  AM_CONDITIONAL(HAVE_DSSI, test $config_have_dssi = "yes")  AM_CONDITIONAL(HAVE_DSSI, test $config_have_dssi = "yes")
637    
638  # LV2  # LV2
639  PKG_CHECK_MODULES(LV2, lv2core, config_have_lv2="yes", config_have_lv2="no")  PKG_CHECK_MODULES(LV2, lv2 >= 1.0.0, config_have_lv2="yes", config_have_lv2="no")
640  if test $config_have_lv2 = "no"; then  if test "$config_have_lv2" != "yes"; then
641      AC_CHECK_HEADER(lv2.h, config_have_lv2="yes", config_have_lv2="no")      PKG_CHECK_MODULES(LV2, lv2core >= 1.0.0, config_have_lv2="yes", config_have_lv2="no")
642  fi  fi
643    AC_SUBST(LV2_CFLAGS)
644    AC_SUBST(LV2_LIBS)
645  AM_CONDITIONAL(HAVE_LV2, test $config_have_lv2 = "yes")  AM_CONDITIONAL(HAVE_LV2, test $config_have_lv2 = "yes")
646    
647  # VST  # VST
# Line 531  AC_CHECK_HEADERS(AudioUnit/AudioUnit.h, Line 667  AC_CHECK_HEADERS(AudioUnit/AudioUnit.h,
667  AM_CONDITIONAL(HAVE_AU, test $config_have_au = "yes")  AM_CONDITIONAL(HAVE_AU, test $config_have_au = "yes")
668  AM_CONDITIONAL(HAVE_AUFLAGS, test "$AUFLAGS" != "")  AM_CONDITIONAL(HAVE_AUFLAGS, test "$AUFLAGS" != "")
669    
670    if test $config_have_au = "yes" ; then
671        if test "x$DEVELOPER_EXTRAS_DIR" = "x" ; then
672            if test -d /Developer/Extras ; then
673                DEVELOPER_EXTRAS_DIR=/Developer/Extras
674            else      
675                DEVELOPER_EXTRAS_DIR=/Developer/Examples
676            fi
677        fi
678        AC_SUBST(DEVELOPER_EXTRAS_DIR)
679    fi
680    
681    if test "x$MAC_PLUGIN_INSTALL_DIR" = "x" ; then
682        MAC_PLUGIN_INSTALL_DIR=/Library/Audio/Plug-Ins
683    fi
684    AC_SUBST(MAC_PLUGIN_INSTALL_DIR)
685    
686  # 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 ?
687  if test "$have_midi_input_driver" = "false"; then  if test "$have_midi_input_driver" = "false"; then
# Line 554  fi Line 705  fi
705  # Checks for various DLL libraries  # Checks for various DLL libraries
706    
707  # Check presence of libgig  # Check presence of libgig
708  libgig_version="3.2.1"  libgig_version="4.3.0"
709  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)
710  if test "$HAVE_GIG" = "false"; then  if test "$HAVE_GIG" = "false"; then
711      echo "Required libgig version not found!"      echo "Required libgig version not found!"
# Line 566  fi Line 717  fi
717  AC_SUBST(GIG_CFLAGS)  AC_SUBST(GIG_CFLAGS)
718  AC_SUBST(GIG_LIBS)  AC_SUBST(GIG_LIBS)
719    
720    # SF2 Engine (requires libgig)
721    AC_ARG_ENABLE(sf2-engine,
722      [  --disable-sf2-engine
723                              Disable compilation of the SF2 engine.
724                              You need to have libgig installed.],
725      [config_sf2_engine="$enableval"],
726      [config_sf2_engine="yes"]
727    )
728    HAVE_SF2=0;
729    if test "$config_sf2_engine" = "yes"; then
730        HAVE_SF2=1
731    else
732        echo "SF2 engine disabled by configure script parameter"
733    fi
734    AM_CONDITIONAL(HAVE_SF2, test $HAVE_SF2 = 1)
735    AC_DEFINE_UNQUOTED(HAVE_SF2,$HAVE_SF2,[Define to 1 if you want SF2 engine and have libsf2 installed.])
736    config_have_sf2="no"
737    if test $HAVE_SF2 = "1"; then
738        config_have_sf2="yes"
739    fi
740    
741    # Check presence of libsndfile
742    libsndfile_version="1.0"
743    PKG_CHECK_MODULES(SNDFILE, sndfile >= $libsndfile_version, HAVE_SNDFILE=true, HAVE_SNDFILE=false)
744    if test "$HAVE_SNDFILE" = "false"; then
745        echo "Required libsndfile version not found!"
746        echo "You need to have libsndfile version ${libsndfile_version} installed!"
747        exit -1;
748    else
749        echo "yes, found libsndfile $libsndfile_version"
750    fi
751    AC_SUBST(SNDFILE_CFLAGS)
752    AC_SUBST(SNDFILE_LIBS)
753    
754    # Check for Vorbis and FLAC support in libsndfile
755    linuxsampler_save_CFLAGS=$CFLAGS
756    CFLAGS="$SNDFILE_CFLAGS $CFLAGS"
757    AC_CHECK_DECLS([SF_FORMAT_VORBIS, SF_FORMAT_FLAC], [], [], [[#include <sndfile.h>]])
758    
759    # Check for loop functionality in libsndfile
760    AC_CHECK_MEMBERS([SF_INSTRUMENT.loops],,
761                     [AC_MSG_WARN([Your version of libsndfile does not support
762        reading of loop information. LinuxSampler will not be able to
763        extract loop information from sample files.])],
764                     [#include <sndfile.h>])
765    CFLAGS=$linuxsampler_save_CFLAGS
766    
767  # Instruments DB feature (requires SQLite 3.3)  # Instruments DB feature (requires SQLite 3.3)
768  AC_ARG_ENABLE(instruments-db,  AC_ARG_ENABLE(instruments-db,
769    [  --disable-instruments-db    [  --disable-instruments-db
# Line 661  if test "$config_rt_exceptions" = "yes"; Line 859  if test "$config_rt_exceptions" = "yes";
859    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.])
860  fi  fi
861    
862  AC_ARG_ENABLE(pthread-testcancel,  AC_CHECK_FUNC(pthread_testcancel,
863    [  --enable-pthread-testcancel    [config_pthread_testcancel="yes"],
                           Enable pthread_testcancel() calls and avoid asynchronous  
                           cancel of pthreads (default=no).],  
   [config_pthread_testcancel="$enableval"],  
864    [config_pthread_testcancel="no"]    [config_pthread_testcancel="no"]
865  )  )
866  if test "$config_pthread_testcancel" = "yes"; then  if test "$config_pthread_testcancel" = "yes"; then
867    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 if pthread_testcancel() is available.])
868  fi  fi
869    
870  AC_ARG_ENABLE(preload-samples,  AC_ARG_ENABLE(preload-samples,
# Line 1147  AC_SUBST(config_default_instruments_db_f Line 1342  AC_SUBST(config_default_instruments_db_f
1342  ###########################################################################  ###########################################################################
1343  # Automatic Benchmarks (to detect the best algorithms for the system)  # Automatic Benchmarks (to detect the best algorithms for the system)
1344    
 AC_LANG_SAVE  
   
1345  if test "$config_signed_triang_algo" = "benchmark"; then  if test "$config_signed_triang_algo" = "benchmark"; then
1346      echo -n "benchmarking for the best (signed) triangular oscillator algorithm... "      echo -n "benchmarking for the best (signed) triangular oscillator algorithm... "
1347      AC_LANG_CPLUSPLUS      AC_LANG_PUSH([C++])
1348      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
1349              #define SIGNED 1              #define SIGNED 1
1350              #define SILENT 1              #define SILENT 1
1351              #include "${srcdir}/benchmarks/triang.cpp"              #include "${srcdir}/benchmarks/triang.cpp"
1352          ],          ]])],
1353          triang_signed=0,          triang_signed=0,
1354          triang_signed=$?,          triang_signed=$?,
1355          triang_signed=0          triang_signed=0
1356      )      )
1357        AC_LANG_POP([C++])
1358      if test "$triang_signed" = "2"; then      if test "$triang_signed" = "2"; then
1359          config_signed_triang_algo="intmath"          config_signed_triang_algo="intmath"
1360          echo "integer math"          echo "integer math"
# Line 1191  AC_DEFINE_UNQUOTED(CONFIG_SIGNED_TRIANG_ Line 1385  AC_DEFINE_UNQUOTED(CONFIG_SIGNED_TRIANG_
1385    
1386  if test "$config_unsigned_triang_algo" = "benchmark"; then  if test "$config_unsigned_triang_algo" = "benchmark"; then
1387      echo -n "benchmarking for the best (unsigned) triangular oscillator algorithm... "      echo -n "benchmarking for the best (unsigned) triangular oscillator algorithm... "
1388      AC_LANG_CPLUSPLUS      AC_LANG_PUSH([C++])
1389      AC_TRY_RUN([      AC_RUN_IFELSE([AC_LANG_SOURCE([[
1390              #define SIGNED 0              #define SIGNED 0
1391              #define SILENT 1              #define SILENT 1
1392              #include "${srcdir}/benchmarks/triang.cpp"              #include "${srcdir}/benchmarks/triang.cpp"
1393          ],          ]])],
1394          triang_unsigned=0,          triang_unsigned=0,
1395          triang_unsigned=$?,          triang_unsigned=$?,
1396          triang_unsigned=0          triang_unsigned=0
1397      )      )
1398        AC_LANG_POP([C++])
1399      if test "$triang_unsigned" = "2"; then      if test "$triang_unsigned" = "2"; then
1400          config_unsigned_triang_algo="intmath"          config_unsigned_triang_algo="intmath"
1401          echo "integer math"          echo "integer math"
# Line 1229  else Line 1424  else
1424  fi  fi
1425  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.])
1426    
 AC_LANG_RESTORE  
   
1427    
1428  ###########################################################################  ###########################################################################
1429  # Create Build Files  # Create Build Files
1430    
1431  AM_CONFIG_HEADER(config.h)  AC_CONFIG_HEADERS([config.h])
 AM_INIT_AUTOMAKE(linuxsampler, "$LINUXSAMPLER_RELEASE_MAJOR.$LINUXSAMPLER_RELEASE_MINOR.$LINUXSAMPLER_RELEASE_BUILD")  
1432    
1433  AC_LANG_CPLUSPLUS  AC_LANG([C++])
   
 # 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  
1434    
1435  # 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
1436  # this, the dlfcn.h check in am_prog_libtool may fail.  # this, the dlfcn.h check in am_prog_libtool may fail.
1437  AC_CHECK_HEADER(stdlib.h)  AC_CHECK_HEADER(stdlib.h)
1438    
1439  AC_OUTPUT( \  AC_CONFIG_FILES([\
1440      Makefile \      Makefile \
1441      man/Makefile \      man/Makefile \
1442      man/linuxsampler.1 \      man/linuxsampler.1 \
1443        man/lscp.1 \
1444      src/Makefile \      src/Makefile \
1445      src/db/Makefile \      src/db/Makefile \
1446      src/network/Makefile \      src/network/Makefile \
1447      src/engines/Makefile \      src/engines/Makefile \
1448      src/engines/gig/Makefile \      src/engines/gig/Makefile \
1449        src/engines/sf2/Makefile \
1450        src/engines/sfz/Makefile \
1451      src/engines/common/Makefile \      src/engines/common/Makefile \
1452      src/effects/Makefile \      src/effects/Makefile \
1453      src/common/Makefile \      src/common/Makefile \
# Line 1271  AC_OUTPUT( \ Line 1459  AC_OUTPUT( \
1459      src/hostplugins/Makefile \      src/hostplugins/Makefile \
1460      src/hostplugins/dssi/Makefile \      src/hostplugins/dssi/Makefile \
1461      src/hostplugins/lv2/Makefile \      src/hostplugins/lv2/Makefile \
1462        src/hostplugins/lv2/manifest.ttl \
1463      src/hostplugins/vst/Makefile \      src/hostplugins/vst/Makefile \
1464      src/hostplugins/au/Makefile \      src/hostplugins/au/Makefile \
1465        src/scriptvm/Makefile \
1466        src/scriptvm/editor/Makefile \
1467        src/shell/Makefile \
1468      linuxsampler.spec \      linuxsampler.spec \
1469      debian/Makefile \      debian/Makefile \
1470      Artwork/Makefile \      Artwork/Makefile \
# Line 1284  AC_OUTPUT( \ Line 1476  AC_OUTPUT( \
1476      Documentation/Engines/gig/Makefile \      Documentation/Engines/gig/Makefile \
1477      linuxsampler.pc \      linuxsampler.pc \
1478      Doxyfile \      Doxyfile \
1479  )  ])
1480    AC_OUTPUT
1481    
1482  # resolve all nested variables in '${config_plugin_dir}'  # resolve all nested variables in '${config_plugin_dir}'
1483  # (merely for providing a human readable summary below)  # (merely for providing a human readable summary below)
# Line 1300  echo "" Line 1493  echo ""
1493  echo "#####################################################################"  echo "#####################################################################"
1494  echo "# LinuxSampler Configuration                                        #"  echo "# LinuxSampler Configuration                                        #"
1495  echo "#-------------------------------------------------------------------#"  echo "#-------------------------------------------------------------------#"
1496  echo "# Release Version: ${LINUXSAMPLER_RELEASE_MAJOR}.${LINUXSAMPLER_RELEASE_MINOR}.${LINUXSAMPLER_RELEASE_BUILD}"  echo "# Release Version: ${VERSION}"
1497  echo "# LSCP Version: ${LSCP_RELEASE_MAJOR}.${LSCP_RELEASE_MINOR}"  echo "# LSCP Version: ${LSCP_RELEASE_MAJOR}.${LSCP_RELEASE_MINOR}"
1498  echo "#-------------------------------------------------------------------"  echo "#-------------------------------------------------------------------"
1499  echo "# Assembly Optimizations: ${config_asm}"  echo "# Assembly Optimizations: ${config_asm}"
# Line 1350  echo "#--------------------------------- Line 1543  echo "#---------------------------------
1543  echo "# Audio Output Drivers:"  echo "# Audio Output Drivers:"
1544  echo "# ALSA: ${config_have_alsa}, JACK: ${config_have_jack}, ARTS: ${config_have_arts}, CoreAudio: ${config_have_coreaudio}, ASIO: ${config_have_asio}"  echo "# ALSA: ${config_have_alsa}, JACK: ${config_have_jack}, ARTS: ${config_have_arts}, CoreAudio: ${config_have_coreaudio}, ASIO: ${config_have_asio}"
1545  echo "#-------------------------------------------------------------------"  echo "#-------------------------------------------------------------------"
1546    echo "# Sampler Engines:"
1547    echo "# GIG: yes, SF2: ${config_have_sf2}, SFZ: yes"
1548    echo "#-------------------------------------------------------------------"
1549    echo "# Effect plugin systems for internal effects:"
1550    echo "# LADSPA: yes"
1551    echo "#-------------------------------------------------------------------"
1552  echo "# Building sampler as plugin for following host standards:"  echo "# Building sampler as plugin for following host standards:"
1553  echo "# DSSI: ${config_have_dssi}, LV2: ${config_have_lv2}, VST: ${config_have_vst}, AU: ${config_have_au}"  echo "# DSSI: ${config_have_dssi}, LV2: ${config_have_lv2}, VST: ${config_have_vst}, AU: ${config_have_au}"
1554  echo "#-------------------------------------------------------------------#"  echo "#-------------------------------------------------------------------#"

Legend:
Removed from v.1876  
changed lines
  Added in v.3967

  ViewVC Help
Powered by ViewVC