/[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 2535 by schoenebeck, Tue Apr 15 19:35:35 2014 UTC revision 3988 by schoenebeck, Wed Aug 4 18:23:05 2021 UTC
# Line 1  Line 1 
1  #------------------------------------------------------------------------------------  #------------------------------------------------------------------------------------
2  # LinuxSampler's / liblinuxsampler's "official" release version:  # LinuxSampler's / liblinuxsampler's "official" release version:
3    
4  m4_define(linuxsampler_release_major, 1)  m4_define(linuxsampler_release_major, 2)
5  m4_define(linuxsampler_release_minor, 0)  m4_define(linuxsampler_release_minor, 2)
6  m4_define(linuxsampler_release_build, 0.svn38)  m4_define(linuxsampler_release_build, 0.svn6)
   
7    
8  AC_INIT([linuxsampler],[linuxsampler_release_major.linuxsampler_release_minor.linuxsampler_release_build])  AC_INIT([linuxsampler],[linuxsampler_release_major.linuxsampler_release_minor.linuxsampler_release_build])
9  AC_CONFIG_SRCDIR([configure.ac])  AC_CONFIG_SRCDIR([configure.ac])
# Line 26  AC_CONFIG_SRCDIR([configure.ac]) Line 25  AC_CONFIG_SRCDIR([configure.ac])
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=3  LIBLINUXSAMPLER_LT_CURRENT=6
29  LIBLINUXSAMPLER_LT_REVISION=0  LIBLINUXSAMPLER_LT_REVISION=0
30  LIBLINUXSAMPLER_LT_AGE=0  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"
# Line 35  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT Line 34  SHARED_VERSION_INFO="$LIBLINUXSAMPLER_LT
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=6  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  AC_PROG_CC
44  AC_PROG_CXX  AC_PROG_CXX
45  AC_LIBTOOL_WIN32_DLL  AC_LIBTOOL_WIN32_DLL
46  AC_PROG_LIBTOOL  AC_PROG_LIBTOOL
47    AC_PROG_LEX
48  AC_PROG_YACC  AC_PROG_YACC
49    
50  AC_SUBST(SHLIB_VERSION_ARG)  AC_SUBST(SHLIB_VERSION_ARG)
# Line 62  PKG_PROG_PKG_CONFIG Line 63  PKG_PROG_PKG_CONFIG
63    
64  AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)  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 $host_cpu in  case $host_cpu in
# Line 150  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 179  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  # 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  # use different custom parser code for Bison 2.x vs. Bison 3.x generated
# Line 531  AM_CONDITIONAL(HAVE_DSSI, test $config_h Line 637  AM_CONDITIONAL(HAVE_DSSI, test $config_h
637    
638  # LV2  # LV2
639  PKG_CHECK_MODULES(LV2, lv2 >= 1.0.0, 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" != "yes"; then
641        PKG_CHECK_MODULES(LV2, lv2core >= 1.0.0, config_have_lv2="yes", config_have_lv2="no")
642    fi
643  AC_SUBST(LV2_CFLAGS)  AC_SUBST(LV2_CFLAGS)
644  AC_SUBST(LV2_LIBS)  AC_SUBST(LV2_LIBS)
645  AM_CONDITIONAL(HAVE_LV2, test $config_have_lv2 = "yes")  AM_CONDITIONAL(HAVE_LV2, test $config_have_lv2 = "yes")
# Line 596  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.3.0"  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 750  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  config_pthread_testcancel="$mac"  AC_CHECK_FUNC(pthread_testcancel,
863  AC_ARG_ENABLE(pthread-testcancel,    [config_pthread_testcancel="yes"],
864    [  --enable-pthread-testcancel    [config_pthread_testcancel="no"]
865                            Enable pthread_testcancel() calls and avoid  )
                           asynchronous cancel of pthreads (default=yes  
                           for Mac targets, no otherwise).],  
   [config_pthread_testcancel="$enableval"],  
   [])  
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 1324  AC_DEFINE_UNQUOTED(CONFIG_UNSIGNED_TRIAN Line 1429  AC_DEFINE_UNQUOTED(CONFIG_UNSIGNED_TRIAN
1429  # Create Build Files  # Create Build Files
1430    
1431  AC_CONFIG_HEADERS([config.h])  AC_CONFIG_HEADERS([config.h])
 AM_INIT_AUTOMAKE([subdir-objects])  
1432    
1433  AC_LANG([C++])  AC_LANG([C++])
1434    
# Line 1358  AC_CONFIG_FILES([\ Line 1462  AC_CONFIG_FILES([\
1462      src/hostplugins/lv2/manifest.ttl \      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 \      src/shell/Makefile \
1468      linuxsampler.spec \      linuxsampler.spec \
1469      debian/Makefile \      debian/Makefile \

Legend:
Removed from v.2535  
changed lines
  Added in v.3988

  ViewVC Help
Powered by ViewVC