diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-01-05 00:01:18 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-01-05 00:01:18 +0000 |
commit | 42995d7bf396933ee60c5f89c354ea89cf13df0d (patch) | |
tree | cfdcea0ac57420e7baf570bfe435e107bb842541 /configure.in.in | |
download | arts-42995d7bf396933ee60c5f89c354ea89cf13df0d.tar.gz arts-42995d7bf396933ee60c5f89c354ea89cf13df0d.zip |
Copy of aRts for Trinity modifications
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/dependencies/arts@1070145 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'configure.in.in')
-rw-r--r-- | configure.in.in | 851 |
1 files changed, 851 insertions, 0 deletions
diff --git a/configure.in.in b/configure.in.in new file mode 100644 index 0000000..2cb7d6f --- /dev/null +++ b/configure.in.in @@ -0,0 +1,851 @@ +# Original Author was [email protected] +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl right now: install aRts in the same prefix as KDE3.x currently +KDE_SET_PREFIX_CORE + +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM + +dnl Version (we /might/ want to use libtool versioning, too) +ARTS_MAJOR_VERSION=1 +ARTS_MINOR_VERSION=5 +ARTS_MICRO_VERSION=10 +ARTS_VERSION=$ARTS_MAJOR_VERSION.$ARTS_MINOR_VERSION.$ARTS_MICRO_VERSION + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(arts, $ARTS_VERSION) dnl searches for some needed programs + +AC_PROG_INSTALL + +dnl generate the config header +AM_CONFIG_HEADER(config.h) dnl at the distribution this done + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_LIBLTDL_CONVENIENCE + +AC_ENABLE_SHARED(yes) +AC_ENABLE_STATIC(no) +KDE_PROG_LIBTOOL + +AC_LANG_SAVE +AC_LANG_C +KDE_LIB_LTDL +AC_LANG_RESTORE + +# this checks for --with-extra-libs +KDE_CHECK_EXTRA_LIBS +KDE_MISC_TESTS +dnl KDE_CHECK_LIBDL +dnl AC_PROG_LIBTOOL +KDE_CHECK_QT_DIRECT +KDE_ENABLE_HIDDEN_VISIBILITY + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files, GNU_GETTEXT for the sources +dnl AM_KDE_WITH_NLS +dnl AM_KDE_GNU_GETTEXT + +dnl Checks for header files. +KDE_CHECK_STL +AC_HEADER_DIRENT +AC_HEADER_STDC +AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/cdefs.h fnmatch.h sysent.h strings.h sys/stat.h sys/select.h sys/socket.h linux/socket.h socketbits.h sigaction.h paths.h malloc.h monetary.h sys/param.h limits.h sys/mnttab.h mntent.h fstab.h) + +KDE_CHECK_HEADERS(sys/soundcard.h) + +dnl Checks for libraries. +AC_BASE_PATH_KDE([don't test]) dnl arts is a special case +AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for FreeBSD +AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for FreeBSD +AC_CHECK_FUNC(sem_init, , AC_CHECK_LIB(rt, sem_init, [LIBSEM="-lrt"])) + +AM_CONDITIONAL(HAVE_LIBJPEG, test -n "$LIBJPEG" ) +AM_CONDITIONAL(HAVE_LIBPNG, test -n "$LIBPNG" ) +AM_CONDITIONAL(HAVE_LIBTIFF, test -n "$LIBTIFF") + +# configure would do this very late. Too late for us! +test "x$prefix" = xNONE && prefix=$ac_default_prefix + +AC_DEFINE_UNQUOTED(KDEDIR, "$prefix", [The prefix to use as fallback]) + +ac_cpp_safe=$ac_cpp +ac_cpp='$CXXCPP $CPPFLAGS $X_INCLUDES' +KDE_CHECK_HEADERS(X11/ICE/ICElib.h) +ac_cpp=$ac_cpp_safe + +dnl Checks for typedefs, structures, and compiler characteristics. +AC_HEADER_TIME +AC_C_BIGENDIAN + +dnl check if the compiler has bool +AC_CHECK_BOOL +dnl AC_CHECK_GNU_EXTENSIONS + +dnl Checks for library functions. +AC_CHECK_FUNCS(socket snprintf vsnprintf seteuid setegid random strfmon stpcpy mkstemp setmntent gettimeofday vasprintf) +AC_FUNC_VFORK +AC_CHECK_USLEEP +AC_CHECK_SETENV +AC_CHECK_GETHOSTNAME +AC_CHECK_RANDOM +AC_CHECK_S_ISSOCK +AC_CHECK_SOCKLEN_T + +dnl output files +AC_SUBST(x_includes) +AC_SUBST(x_libraries) +AC_SUBST(LIBSOCKET) +AC_SUBST(LIBCOMPAT) +AC_SUBST(LIBUTIL) +AC_SUBST(LIBSEM) +AC_SUBST(LIBICE) + +all_includes="$all_includes $INCLTDL" +AC_SUBST(all_includes) + +AC_SUBST(EXTRA_SUBDIRS) + +topdir=`cd $srcdir && pwd` +ac_configure_args="$ac_configure_args --with-auxdir=$topdir/admin" + +CXXFLAGS="$CXXFLAGS $USE_RTTI" + +dnl---------------------------------------------------------------------------- +dnl aRts specific configure tests +dnl +dnl Check for libaudioio (which can be used to get solaris audio support) +AC_DEFUN([AC_CHECK_LIBAUDIOIO], +[ + ac_ldflags_save="$LDFLAGS" + ac_CPPFLAGS_save="$CPPFLAGS" + LDFLAGS="$all_libraries $LDFLAGS" + CPPFLAGS="$CPPFLAGS $all_includes" + arts_libaudioio_found=no + AC_LANG_SAVE + AC_LANG_C + kde_have_libaudioio=no + AC_CHECK_HEADER(libaudioio.h, + [ + kde_have_libaudioio=yes + ]) + if test "x$kde_have_libaudioio" = "xyes"; then + AC_CHECK_LIB(audioio,AudioIOGetVersion,[ + dnl LDFLAGS in case it's in KDEDIR/lib + LIBAUDIOIO="$LDFLAGS -laudioio" + AC_DEFINE(HAVE_LIBAUDIOIO, 1, + [Define if you have libaudioIO (required if you want to have libaudioio support)]) + arts_libaudioio_found=yes + ]) + fi + AC_SUBST(LIBAUDIOIO) + AC_LANG_RESTORE + CPPFLAGS="$ac_CPPFLAGS_save" + LDFLAGS="$ac_ldflags_save" +]) + +dnl aRts specific configure tests +dnl +dnl Check for libaudio (which can be used to get network audio support) +AC_DEFUN([AC_CHECK_LIBAUDIONAS], +[ + ac_ldflags_save="$LDFLAGS" + ac_CPPFLAGS_save="$CPPFLAGS" + LDFLAGS="$all_libraries $LDFLAGS" + CPPFLAGS="$CPPFLAGS $all_includes" + + AC_LANG_SAVE + AC_LANG_C + arts_libaudionas_include=no + AC_CHECK_HEADER(audio/audiolib.h, + [ + arts_libaudionas_include=yes + ]) + if test "x$arts_libaudionas_include" = "xyes"; then + AC_CHECK_LIB(audio,AuOpenServer,[ + dnl LDFLAGS in case it's in KDEDIR/lib + LIBAUDIONAS="-laudio -lXt" + LIBAUDIONAS_LDFLAGS="$LDFLAGS" + AC_DEFINE(HAVE_LIBAUDIONAS, 1, + [Define if you have libaudio (required if you want to have NAS support)]) + ]) + fi + AC_SUBST(LIBAUDIONAS) + AC_SUBST(LIBAUDIONAS_LDFLAGS) + AC_LANG_RESTORE + CPPFLAGS="$ac_CPPFLAGS_save" + LDFLAGS="$ac_ldflags_save" +]) + +dnl Check for libesd (for EsounD support) +AC_DEFUN([AC_CHECK_LIBESD], +[ + ac_ldflags_save="$LDFLAGS" + ac_CPPFLAGS_save="$CPPFLAGS" + LDFLAGS="$all_libraries $LDFLAGS" + CPPFLAGS="$CPPFLAGS $all_includes" + + AC_LANG_SAVE + AC_LANG_C + arts_libaudionas_include=no + AC_CHECK_HEADER(esd.h, + [ + arts_libesd_include=yes + ]) + if test "x$arts_libesd_include" = "xyes"; then + AC_CHECK_LIB(esd,esd_open_sound,[ + dnl LDFLAGS in case it's in KDEDIR/lib + LIBESD="-lesd" + LIBESD_LDFLAGS="$LDFLAGS" + AC_DEFINE(HAVE_LIBESD, 1, + [Define if you have libesd (required if you want EsounD support)]) + ]) + fi + AC_SUBST(LIBESD) + AC_SUBST(LIBESD_LDFLAGS) + AC_LANG_RESTORE + CPPFLAGS="$ac_CPPFLAGS_save" + LDFLAGS="$ac_ldflags_save" +]) + +dnl libaudiofile is used for loading wave files +AC_DEFUN([AC_CHECK_LIBAUDIOFILE], +[ + ac_ldflags_save="$LDFLAGS" + ac_CPPFLAGS_save="$CPPFLAGS" + LDFLAGS="$all_libraries $LDFLAGS" + CPPFLAGS="$CPPFLAGS $all_includes" + arts_audiolib_found=no + dnl WAV reading + AC_LANG_SAVE + AC_LANG_C + kde_has_audio_lib=no + AC_CHECK_HEADER(audiofile.h, + [ + kde_has_audio_lib=yes + ]) + if test "x$kde_has_audio_lib" = "xyes"; then + KDE_CHECK_LIB(audiofile,afOpenFile,[ + dnl LDFLAGS in case it's in KDEDIR/lib + LIBAUDIOFILE="-laudiofile" + LIBAUDIOFILE_LDFLAGS="$LDFLAGS" + AC_DEFINE(HAVE_LIBAUDIOFILE, 1, + [Define if you have libaudiofile (required for playing wavs with aRts)]) + arts_audiolib_found=yes + ]) + fi + AC_SUBST(LIBAUDIOFILE) + AC_SUBST(LIBAUDIOFILE_LDFLAGS) + AC_LANG_RESTORE + CPPFLAGS="$ac_CPPFLAGS_save" + LDFLAGS="$ac_ldflags_save" +]) + + +dnl check if sgi libaudio is present +AC_DEFUN([AC_CHECK_SGILIBAUDIO], +[ + ac_ldflags_save="$LDFLAGS" + ac_CPPFLAGS_save="$CPPFLAGS" + LDFLAGS="$all_libraries $LDFLAGS" + CPPFLAGS="$CPPFLAGS $all_includes" + + dnl SGI libaudio (required on IRIX) + AC_LANG_SAVE + AC_LANG_C + arts_dmedia_include=no + AC_CHECK_HEADER(dmedia/audio.h, + [ + arts_dmedia_include=yes + ]) + if test "x$arts_dmedia_include" = "xyes"; then + KDE_CHECK_LIB(audio,alOpenPort,[ + SGILIBAUDIO="-laudio" + AC_DEFINE(HAVE_SGILIBAUDIO, 1, + [Define if you have libaudio (required for sound i/o on IRIX)]) + ]) + fi + AC_SUBST(SGILIBAUDIO) + AC_LANG_RESTORE + CPPFLAGS="$ac_CPPFLAGS_save" + LDFLAGS="$ac_ldflags_save" +]) + +dnl check if we want to build MAS support +AC_DEFUN([AC_CHECK_LIBMAS], +[ +AC_PATH_PROG(MAS_CONFIG, mas-config, no) + +if test "$MAS_CONFIG" != "no"; then + AC_DEFINE(HAVE_LIBMAS, 1, + [Define if you have libmas (required if you want MAS support)]) + MAS_CFLAGS="`$MAS_CONFIG --cflags`" + tmp_mas_libs="`$MAS_CONFIG --libs` -lmas_jrtp" + MAS_LDFLAGS="`for i in $tmp_mas_libs; do echo $i; done |grep ^-L`" + MAS_LDFLAGS="$MAS_LDFLAGS `for i in $tmp_mas_libs; do echo $i; done |grep ^-L |sed s/^-L/-R/g`" + LIBMAS="$MAS_LDFLAGS" + for i in $tmp_mas_libs; do LIBMAS="$LIBMAS `echo $i |grep ^-l`"; done +fi +AC_SUBST(MAS_CFLAGS) +AC_SUBST(MAS_LDFLAGS) +AC_SUBST(LIBMAS) + +]) + +dnl Posix realtime scheduling - this is helpful if you want arts to run with +dnl higher priority than everthing else + +AC_DEFUN([ARTS_TRY_LINK_POSIX_REALTIME], +[ +AC_TRY_LINK([ +#include <sched.h> +], +[ +sched_getscheduler(0); +], +arts_realtime_sched=yes, +arts_realtime_sched=no) +]) + +AC_DEFUN([AC_CHECK_REALTIME_SCHED], +[ +AC_MSG_CHECKING([for posix realtime scheduling support]) +save_LIBS="$LIBS" +LIBPOSIX4="" +ARTS_TRY_LINK_POSIX_REALTIME +if test "x$arts_realtime_sched" = "xno"; then + LIBS="$LIBS -lposix4" + ARTS_TRY_LINK_POSIX_REALTIME + if test "x$arts_realtime_sched" = "xyes"; then + LIBPOSIX4="-lposix4" + fi +fi +LIBS="$save_LIBS" +AC_SUBST(LIBPOSIX4) +AC_MSG_RESULT($arts_realtime_sched) + +if test "x$arts_realtime_sched" = "xyes"; then + AC_DEFINE(HAVE_REALTIME_SCHED,1, + [Define if your system supports realtime scheduling]) +fi +]) + +dnl Type of the ioctl function test - after some tries, it seems that this +dnl not required for Linux vs. FreeBSD (for which this test was written), and +dnl that only the Linux documentation claims that it has an "int" as second +dnl argument. But maybe there will pop up systems for which the signature +dnl differs, later. + +AC_DEFUN([AC_CHECK_IOCTL_TYPE], +[ + AC_MSG_CHECKING([ioctl type]) + AC_CACHE_VAL(ac_cv_ioctl_type, + [ + AC_LANG_SAVE + AC_LANG_C + + AC_TRY_COMPILE( + [ + #include <unistd.h> + #include <sys/ioctl.h> + int ioctl(int d, int request,...); + ], + [ + ], + ac_cv_ioctl_type=1) + AC_TRY_COMPILE( + [ + #include <unistd.h> + #include <sys/ioctl.h> + int ioctl(int d, unsigned long request,...); + ], + [ + ], + ac_cv_ioctl_type=2) + AC_TRY_COMPILE( + [ + #include <unistd.h> + #include <sys/ioctl.h> + int ioctl(int d, unsigned long int request,...); + ], + [ + ], + ac_cv_ioctl_type=3) + AC_LANG_RESTORE + ]) + AC_MSG_RESULT($ac_cv_ioctl_type) + + +if test "$ac_cv_ioctl_type" = "1"; then + AC_DEFINE(HAVE_IOCTL_INT_INT_DOTS,1, + [Define if ioctl is declared as int ioctl(int d, int request,...)]) +fi +if test "$ac_cv_ioctl_type" = "2"; then + AC_DEFINE(HAVE_IOCTL_INT_ULONG_DOTS,2, + [Define if ioctl is declared as int ioctl(int d, unsigned long request,...)]) +fi +if test "$ac_cv_ioctl_type" = "3"; then + AC_DEFINE(HAVE_IOCTL_INT_ULONGINT_DOTS,3, + [Define if ioctl is declared as int ioctl(int d, unsigned long int request,...)]) +fi +]) + +dnl check whether we can do rouding using asm optimization + +AC_DEFUN([AC_CHECK_X86_FLOAT_INT], +[ +AC_MSG_CHECKING([for x86 float to int conversions]) +AC_CACHE_VAL(ac_cv_x86_float_int, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_LINK([ +#if defined(__i386__) +static inline long QRound (float inval) +{ + long ret; + __asm__ ("fistpl %0" : "=m" (ret) : "t" (inval) : "st"); + return ret; +} +#else +error +#endif +], +[ +long i = QRound(41.93); /* should be 42 */ +], +ac_cv_x86_float_int=yes, +ac_cv_x86_float_int=no) +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_x86_float_int) +if test "x$ac_cv_x86_float_int" = "xyes"; then + AC_DEFINE(HAVE_X86_FLOAT_INT,1, + [Define if you want to use optimized x86 float to int conversion code]) +fi +]) + +dnl check if the assembler supports SSE instructions +AC_DEFUN([AC_CHECK_X86_SSE], +[ +AC_MSG_CHECKING([for x86 SSE instructions]) +AC_CACHE_VAL(ac_cv_x86_sse, +[ +AC_TRY_COMPILE(, +[ +#if defined(__GNUC__) && defined(__i386__) +__asm__("movups %xmm0, (%esp)"); +#else +/* IRIX's cc treats #error as a warning, make sure it errors out here */ +error Not gcc on x86 +#endif +], +ac_cv_x86_sse=yes, +ac_cv_x86_sse=no) +]) +AC_MSG_RESULT($ac_cv_x86_sse) +if test "x$ac_cv_x86_sse" = "xyes"; then + AC_DEFINE(HAVE_X86_SSE,1, + [Define if your assembler supports x86 SSE instructions]) +fi +]) + +dnl check whether we should try to emulate stdio fopen/fclose via +dnl glibc facilities (this *really* depends on glibc internals) + +AC_DEFUN([AC_CHECK_ARTSDSP_STDIO_EMU], +[ +AC_MSG_CHECKING([for stdio emulation in artsdsp]) +AC_CACHE_VAL(ac_cv_artsdsp_stdio_emu, +[ +AC_LANG_SAVE +AC_LANG_C +AC_TRY_LINK([ +#define _GNU_SOURCE +#include <stdio.h> +], +[ + cookie_io_functions_t fns = { 0, 0, 0, 0 }; + struct fd_cookie *fdc = 0; + FILE *out = fopencookie (fdc,"w", fns); + out->_fileno = 0; +], +ac_cv_artsdsp_stdio_emu=yes, +ac_cv_artsdsp_stdio_emu=no) +]) +AC_LANG_RESTORE +AC_MSG_RESULT($ac_cv_artsdsp_stdio_emu) +if test "x$ac_cv_artsdsp_stdio_emu" = "xyes"; then + AC_DEFINE(HAVE_ARTSDSP_STDIO_EMU,1, + [Define if you want to use glibc facilities to emulate stdio accesses in artsdsp]) +fi +]) + +dnl call the tests +AC_ARG_WITH(libaudioio, + [AC_HELP_STRING(--with-libaudioio, + [enable support for libaudioio @<:@default=check@:>@])], + [], with_libaudioio=check) + +if test "x$with_libaudioio" != xno; then + AC_CHECK_LIBAUDIOIO + + if test "x$with_libaudioio" != xcheck && test -z "$LIBAUDIOIO"; then + AC_MSG_FAILURE([--with-libaudioio was given, but test for libaudioio failed]) + fi +fi + +AC_ARG_WITH(nas, + [AC_HELP_STRING(--with-nas, + [enable support for NAS @<:@default=check@:>@])], + [], with_nas=check) + +if test "x$with_nas" != xno; then + AC_CHECK_LIBAUDIONAS + + if test "x$with_nas" != xcheck && test -z "$LIBAUDIONAS"; then + AC_MSG_FAILURE([--with-nas was given, but test for NAS failed]) + fi +fi + +AC_ARG_WITH(esd, + [AC_HELP_STRING(--with-esd, + [enable support for EsounD @<:@default=check@:>@])], + [], with_esd=check) + +if test "x$with_esd" != xno; then + AC_CHECK_LIBESD + + if test "x$with_esd" != xcheck && test -z "$LIBESD"; then + AC_MSG_FAILURE([--with-esd was given, but test for EsounD failed]) + fi +fi + +AC_ARG_WITH(audiofile, + [AC_HELP_STRING(--with-audiofile, + [enable support for audiofile @<:@default=check@:>@])], + [], with_audiofile=check) + +if test "x$with_audiofile" != xno; then + AC_CHECK_LIBAUDIOFILE + + if test "x$with_audiofile" != xcheck && test -z "$LIBAUDIOFILE"; then + AC_MSG_FAILURE([--with-audiofile was given, but test for audiofile failed]) + fi +fi +AM_CONDITIONAL(HAVE_WAVSUPPORT, test -n "$LIBAUDIOFILE") + +AC_ARG_WITH(sgilibaudio, + [AC_HELP_STRING(--with-sgilibaudio, + [enable support for SGI libaudio @<:@default=check@:>@])], + [], with_sgilibaudio=check) + +if test "x$with_sgilibaudio" != xno; then + AC_CHECK_SGILIBAUDIO + + if test "x$with_sgilibaudio" != xcheck && test -z "$SGILIBAUDIO"; then + AC_MSG_FAILURE([--with-sgilibaudio was given, but test for SGI libaudio failed]) + fi +fi + +AC_ARG_WITH(mas, + [AC_HELP_STRING(--with-mas, + [enable support for MAS @<:@default=check@:>@])], + [], with_mas=check) + +if test "x$with_mas" != xno; then + AC_CHECK_LIBMAS + + if test "x$with_mas" != xcheck && test -z "$LIBMAS"; then + AC_MSG_FAILURE([--with-mas was given, but test for MAS failed]) + fi +fi + +AC_CHECK_REALTIME_SCHED +AC_CHECK_GETDOMAINNAME +AC_CHECK_IOCTL_TYPE +AC_CHECK_X86_FLOAT_INT +AC_CHECK_X86_SSE +AC_CHECK_ARTSDSP_STDIO_EMU +KDE_CHECK_THREADING + +dnl somewhat more deeply nested template code than gcc understands by default +if test "$GXX" = "yes"; then + KDE_CHECK_COMPILER_FLAG(ftemplate-depth-99, + [ + CXXFLAGS="$CXXFLAGS -ftemplate-depth-99" + ]) +fi + +dnl check for ALSA audio support +arts_with_alsa=yes +AC_ARG_WITH(alsa, [ --with-alsa enable aRts ALSA support], +[arts_with_alsa=$withval]) + +if test "$arts_with_alsa" = "yes"; then +AC_DEFUN([AC_CHECK_LIBASOUND], +[ + ac_ldflags_save="$LDFLAGS" + LDFLAGS="$all_libraries $LDFLAGS" + kde_has_asoundlib=no + + AC_CHECK_HEADERS([ sys/asoundlib.h alsa/asoundlib.h ], + [ + kde_has_asoundlib=yes + ]) + + dnl trial and error version check for ALSA 0.5.x / ALSA 0.9.x + AC_LANG_SAVE + AC_LANG_C + if test "x$kde_has_asoundlib" = "xyes"; then + AC_TRY_COMPILE([ + #include "confdefs.h" + #ifdef HAVE_SYS_ASOUNDLIB_H + #include <sys/asoundlib.h> + #endif + #ifdef HAVE_ALSA_ASOUNDLIB_H + #include <alsa/asoundlib.h> + #endif + ],[ + #if (SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9) + /* we have ALSA 0.9.x */ + #else + #error not ALSA 0.9.x + #endif + ], + kde_has_alsa_0_9=yes, + kde_has_alsa_0_9=no) + fi + + if test "x$kde_has_asoundlib" = "xyes"; then + AC_TRY_COMPILE([ + #include "confdefs.h" + #ifdef HAVE_SYS_ASOUNDLIB_H + #include <sys/asoundlib.h> + #endif + #ifdef HAVE_ALSA_ASOUNDLIB_H + #include <alsa/asoundlib.h> + #endif + ],[ + #if (SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0) + /* we have ALSA 1.x */ + #else + #error not ALSA 1.x + #endif + ], + kde_has_alsa_1_0=yes, + kde_has_alsa_1_0=no) + fi + + if test "x$kde_has_asoundlib" = "xyes"; then + AC_TRY_COMPILE([ + #include "confdefs.h" + #ifdef HAVE_SYS_ASOUNDLIB_H + #include <sys/asoundlib.h> + #endif + #ifdef HAVE_ALSA_ASOUNDLIB_H + #include <alsa/asoundlib.h> + #endif + ],[ + #if (SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5) + /* we have ALSA 0.5.x */ + #else + #error not ALSA 0.5.x + #endif + ], + kde_has_alsa_0_5=yes, + kde_has_alsa_0_5=no) + fi + AC_LANG_RESTORE + + if test "x$kde_has_asoundlib" = "xyes"; then + AC_CHECK_LIB(asound,snd_seq_create_simple_port,[ + if test "x$kde_has_alsa_0_5" = "xyes"; then + LIBASOUND="-lasound" + AC_DEFINE(HAVE_LIBASOUND, 1, + [Define if you have libasound.so.1 (required for ALSA 0.5.x support)]) + fi + if test "x$kde_has_alsa_0_9" = "xyes"; then + LIBASOUND="-lasound" + AC_DEFINE(HAVE_LIBASOUND2, 1, + [Define if you have libasound.so.2 (required for ALSA 0.9.x support)]) + AC_CHECK_LIB(asound,snd_pcm_resume,[ + AC_DEFINE(HAVE_SND_PCM_RESUME, 1, + [Define if libasound has snd_pcm_resume()])]) + fi + if test "x$kde_has_alsa_1_0" = "xyes"; then + LIBASOUND="-lasound" + AC_DEFINE(HAVE_LIBASOUND2, 1, + [Define if you have libasound.so.2 (required for ALSA 0.9.x/1.x support)]) + AC_DEFINE(ALSA_PCM_OLD_SW_PARAMS_API, 1, + [Define if you have alsa 1.x]) + AC_DEFINE(ALSA_PCM_OLD_HW_PARAMS_API, 1, + [Define if you have alsa 1.x]) + AC_CHECK_LIB(asound,snd_pcm_resume,[ + AC_DEFINE(HAVE_SND_PCM_RESUME, 1, + [Define if libasound has snd_pcm_resume()])]) + fi + ]) + fi + AC_SUBST(LIBASOUND) + LDFLAGS="$ac_ldflags_save" +]) +AC_CHECK_LIBASOUND +fi + +AC_SUBST(LIBASOUND) + +dnl check for IRIX audio support +AC_MSG_CHECKING([for IRIX]) +if test `uname` = "IRIX" -o `uname` = "IRIX64" ; then + AC_DEFINE(HAVE_IRIX, 1, [Define if you compile under IRIX]) + AC_MSG_RESULT("yes") +else + AC_MSG_RESULT("no") +fi + +dnl check wether we want to use libcsl style sound I/O +AC_ARG_ENABLE(csl, +[ --enable-csl enable libcsl style sound I/O for aRts], +[arts_want_csl="$enableval"],[arts_want_csl="no"]) + +if test "$arts_want_csl" = "yes"; then + LIBCSL="-lcsl" + AC_DEFINE(HAVE_LIBCSL, 1, + [Define if you have libcsl (required if you want to have CSL support)]) +else + LIBCSL="" +fi +AC_SUBST(LIBCSL) + +dnl Check for pkg-config +AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + +if test "$PKG_CONFIG" = "no"; then + AC_MSG_ERROR([ +This package requires pkg-config. +]) +fi + +dnl Check for Glib-2.0 +# GLIB_CFLAGS: cflags for compiling glib dependant sources +# GLIB_LIBADD: glib libraries (-l options) +# GLIB_LDFLAGS: flags containing path to glib libraries (-L options) + +GLIB_PACKAGES="gmodule-2.0 gthread-2.0" +GLIB_VERSION="1.3.3" +AC_MSG_CHECKING(for GLib-2.0 (at least $GLIB_VERSION)) + +if $PKG_CONFIG --atleast-pkgconfig-version 0.15 ; then + if $PKG_CONFIG --atleast-version $GLIB_VERSION $GLIB_PACKAGES >/dev/null 2>&1 ; then + GLIB_CFLAGS="`$PKG_CONFIG --cflags $GLIB_PACKAGES`" + GLIB_LIBADD="`$PKG_CONFIG --libs-only-l --libs-only-other $GLIB_PACKAGES`" + GLIB_LDFLAGS="`$PKG_CONFIG --libs-only-L $GLIB_PACKAGES`" + AC_MSG_RESULT(yes) + fi +else + if $PKG_CONFIG --atleast-version $GLIB_VERSION $GLIB_PACKAGES >/dev/null 2>&1 ; then + GLIB_CFLAGS="`$PKG_CONFIG --cflags $GLIB_PACKAGES`" + GLIB_LIBADD="`$PKG_CONFIG --libs $GLIB_PACKAGES`" + GLIB_LDFLAGS="`$PKG_CONFIG --libs-only-L $GLIB_PACKAGES`" + AC_MSG_RESULT(yes) + AC_MSG_WARN([you may need to run make LDFLAGS=-pthread to compile arts]) + fi +fi + +if test -z "$GLIB_LIBADD"; then + AC_MSG_RESULT(not installed) + AC_ERROR([ + Please install glib-2.0 (see http://www.gtk.org). + ]) + DO_NOT_COMPILE="$DO_NOT_COMPILE gmcop" +fi + +CPPFLAGS="$CPPFLAGS $GLIB_CFLAGS" +CFLAGS="$CFLAGS $GLIB_CFLAGS" + +AC_SUBST(GLIB_CFLAGS) +AC_SUBST(GLIB_LIBADD) +AC_SUBST(GLIB_LDFLAGS) + +AC_ARG_WITH(jack, + [AC_HELP_STRING(--with-jack, + [enable support for Jack @<:@default=check@:>@])], + [], with_jack=check) + +if test "x$with_jack" != xno; then + AC_MSG_CHECKING(for Jack Audio Connection Kit) + if $PKG_CONFIG --atleast-version 0.90 jack >/dev/null 2>&1 ; then + JACK_CFLAGS="`$PKG_CONFIG --cflags jack`" + JACK_LIBADD="`$PKG_CONFIG --libs-only-l jack`" + JACK_LDFLAGS="`$PKG_CONFIG --libs-only-L jack`" + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_LIBJACK, 1, + [Define if you have libjack (required if you want Jack support)]) + else + AC_MSG_RESULT(not installed) + fi + AC_SUBST(JACK_CFLAGS) + AC_SUBST(JACK_LIBADD) + AC_SUBST(JACK_LDFLAGS) + + if test "x$with_jack" != xcheck && test -z "$JACK_LIBADD"; then + AC_MSG_FAILURE([--with-jack was given, but test for Jack failed]) + fi +fi + +dnl OpenBSD requires an -lossaudio and soundcard.h to provide OSS audio I/O +AC_CHECK_HEADERS(soundcard.h) +AC_CHECK_LIB(ossaudio, _oss_ioctl, [LIBOSSAUDIO="-lossaudio"]) +AC_SUBST(LIBOSSAUDIO) + +AM_CONFIG_HEADER(mcop/arts_export.h) +AM_CONFIG_HEADER(artsc/artsc_export.h) + +dnl Don't remove ! +dnl AC_OUTPUT(artsc/artsc-config) + +dnl Check if we are building as part of KDE. Arts can also be built as +dnl a standalone snapshot in which case KDE may not be present and things +dnl that depend on KDE should not be built. +dnl AC_MSG_CHECKING(if building standalone aRts snapshot without KDE) +dnl if test "$DCOPIDL" = ""; then +dnl AC_MSG_RESULT(yes) +dnl ARTS_BUILD_KDE="" +dnl MOC="true" +dnl DCOPIDL="true" +dnl DCOPIDL2CPP="true" +dnl AC_SUBST(MOC) +dnl AC_SUBST(DCOPIDL) +dnl AC_SUBST(DCOPIDL2CPP) +dnl else +dnl AC_MSG_RESULT(no) +dnl if test "x$kde_use_qt_emb" = "xyes"; then +dnl ARTS_BUILD_KDE="qtmcop kde knotify message" +dnl else +dnl ARTS_BUILD_KDE="x11 qtmcop kde knotify message" +dnl fi +dnl fi +dnl AC_SUBST(ARTS_BUILD_KDE) + +MCOPIDL='$(top_builddir)/mcopidl/mcopidl' +AC_SUBST(MCOPIDL) + +AC_SUBST(ARTS_MAJOR_VERSION) +AC_SUBST(ARTS_MINOR_VERSION) +AC_SUBST(ARTS_MICRO_VERSION) +AC_SUBST(ARTS_VERSION) + +dnl Don't remove ! +dnl AC_OUTPUT(artsc/artsdsp) +dnl AC_OUTPUT(soundserver/artsversion-new.h) +dnl AC_OUTPUT(flow/gsl/gslconfig.h) + |