1 dnl TiMidity++ -- MIDI to WAVE converter and player
2 dnl Copyright (C) 1999-2002 Masanao Izumo <mo@goice.co.jp>
3 dnl Copyright (C) 1995 Tuukka Toivonen <tt@cgs.fi>
5 dnl This program is free software; you can redistribute it and/or modify
6 dnl it under the terms of the GNU General Public License as published by
7 dnl the Free Software Foundation; either version 2 of the License, or
8 dnl (at your option) any later version.
10 dnl This program is distributed in the hope that it will be useful,
11 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
12 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 dnl GNU General Public License for more details.
15 dnl You should have received a copy of the GNU General Public License
16 dnl along with this program; if not, write to the Free Software
17 dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 dnl configure.in created from configure.scan
20 dnl by URABE, Shyouhei <root@mput.dip.jp> on 2002.07.06
23 dnl CFLAGS - Flags for compile.
24 dnl CPPFLAGS - Flags for cpp
25 dnl LDFLAGS - Flags for linker
26 dnl ac_cpp: $CPP $CPPFLAGS
27 dnl ac_compile: ${CC-cc} -c $CFLAGS $CPPFLAGS
28 dnl ac_link: ${CC-cc} -o * $CFLAGS $CPPFLAGS $LDFLAGS *.c $LIBS
29 dnl EXTRACFLAGS - Extra flags to compile. Adds to CFLAGS.
30 dnl EXTRADEFS - Extra define macros. Adds to CPPFLAGS.
31 dnl EXTRALIBS - Extra libraries Adds to LIBS.
32 dnl SYSEXTRAS - Additional source codes to compile.
33 dnl lib_*_opt - Optional libraries. Adds to LIBS.
35 dnl - add to -L LDFLAGS
37 dnl - add to -I CPPFLAGS
38 dnl MSYS - `yes' if cygnus or Mingw windows environment.
41 dnl tcltk_dep - make dependencies for tcl/tk interface
43 dnl so - File extension of shared object library.
44 dnl SHLD - Linker to make shared object library.
45 dnl SHLDFLAGS - Link flags to link shared object library.
46 dnl SHCFLAGS - Additional flags to compile shared object library.
49 # This is a autoscan-generated configure.scan.
52 # "AC_INIT(timidity/timidity.c)" is obsolate yet.
53 AC_INIT([TiMidity++],[2.14.0],[timidity-talk@lists.sourceforge.net],[TiMidity++])
54 AC_CONFIG_AUX_DIR([autoconf])
56 AM_INIT_AUTOMAKE([gnu dist-bzip2])
57 AC_CONFIG_SRCDIR([timidity/timidity.c])
58 AC_CONFIG_HEADERS([config.h interface.h])
61 SHELL=${CONFIG_SHELL-"/bin/sh"}
62 TCLSH=${TCLSH-"tclsh"}
64 dnl to use contains() macro (see autoconf/acinclude.m4)
67 # Check for compiler options -- such as debug flags.
69 dnl "--enable-debug" turnes -g on.
70 AC_MSG_CHECKING(if --enable-debug option specified)
72 AS_HELP_STRING([--enable-debug], [Build a debugging version.]),
73 [timidity_cv_debug="yes"], [timidity_cv_debug="no"])
74 if test "x$timidity_cv_debug" = "xyes"; then
75 AC_DEFINE(DEBUG,1,Define to 1 if you are in debug mode)
78 if test "x$timidity_cv_debug" = "xno"; then
79 AC_DEFINE(NDEBUG,1,Define to 1 if you are NOT in debug mode)
81 AC_MSG_RESULT($timidity_cv_debug)
83 if test "x$CFLAGS" = "x"; then
87 dnl --with-x turns on if `--with-x' is NOT specified.
88 if test "x$with_x" = x; then
94 # Checking gcc environment
95 for i in `echo $LIBRARY_PATH|sed -e 's,:, ,g'`; do
96 LDFLAGS="$LDFLAGS -L${i}"
98 for i in `echo $C_INCLUDE_PATH|sed -e 's,:, ,g'`; do
99 CPPFLAGS="$CPPFLAGS -I${i}"
102 # add $prefix if specified.
103 if test "x$prefix" != xNONE -a "x$prefix" != "x$ac_default_prefix" -a "x$prefix" != "x/usr"; then
104 LDFLAGS="-L$prefix/lib $LDFLAGS"
105 SHLDFLAGS="-L$prefix/lib $SHLDFLAGS"
106 CPPFLAGS="-I$prefix/include $CPPFLAGS"
109 dnl add --with-includes, --with-libraries
110 AC_ARG_WITH(includes,
111 AS_HELP_STRING([--with-includes=DIR], [Specify include directories (colon separated)]),
113 for i in `echo "$withval"|sed -e 's,:, ,g'`; do
116 CPPFLAGS="$j$CPPFLAGS"
119 AC_ARG_WITH(libraries,
120 AS_HELP_STRING([--with-libraries=DIR], [Specify library directories (colon separated)]),
122 for i in `echo "$withval"|sed -e 's,:, ,g'`; do
129 dnl a bit hairly yet.(20020718:mput)
130 dnl CPPFLAGS="$CPPFLAGS \$(DEF_PKGDATADIR) \$(DEF_PKGLIBDIR) \$(DEF_DEFAULT_PATH)"
131 AC_ARG_WITH(default-path,
132 AS_HELP_STRING([--with-default-path=DIR], [Where timidity.cfg is (PREFIX/share/timidity)]),
133 [pkgdatadir=$withval],
135 if test "x$prefix" != "xNONE"; then
136 pkgdatadir='${prefix}/share/timidity'
138 pkgdatadir='/usr/local/share/timidity'
141 tmpdefpath="`eval \"echo ${pkgdatadir}\"`"
142 AC_DEFINE_UNQUOTED(DEFAULT_PATH,"$tmpdefpath",place to install patches)
143 AC_DEFINE(PKGDATADIR,DEFAULT_PATH,a compatibility matter. ignore it.)
145 AC_ARG_WITH(module-dir,
146 AS_HELP_STRING([--with-module-dir=DIR], [Where to install interfaces (PREFIX/lib/timidity)]),
147 [pkglibdir=$withval],
149 if test "x$prefix" != "xNONE"; then
150 pkglibdir='${prefix}/lib/timidity'
152 pkglibdir='/usr/local/lib/timidity'
155 tmplibdir="`eval \"echo ${pkglibdir}\"`"
156 AC_DEFINE_UNQUOTED(PKGLIBDIR,"$tmplibdir",place to install modules)
158 AC_ARG_WITH(xaw-resource-prefix,
159 AS_HELP_STRING([--with-xaw-resource-prefix=DIR], [What prefix to install X resource files to (optional, used by Xaw/Motif interfaces)]),
160 [xawresdir=$withval], [])
161 AM_CONDITIONAL(XAW_INSTALL_RESOURCE_FILES, test "x$xawresdir" != "x")
164 # Checks for programs.
167 AC_PROG_GCC_TRADITIONAL
172 CHECK_COMPILER_OPTION(rdynamic)
174 if test "x$NOCFLAGS" = "xyes"; then
175 if test "x$GCC" = "xyes"; then
182 # Checks for target dependencies
185 AS_HELP_STRING([--with-elf], [create ELF shared object instead of AOUT]),
186 [ ELFFORMAT=$withval ], [ ELFFORMAT="yes" ])
189 # AS_HELP_STRING([--with-simd], [create SIMD friendly binary (default is no) ]),
190 # [ SIMD=$withval ], [ SIMD="no" ])
195 test -n "$SHLD" || SHLD="ld -b"
199 dnl IRIX cc needs -signed option
200 case ".$CC" in .cc*) EXTRACFLAGS="-signed";; esac
201 test -n "$SHLD" || SHLD="cc -shared -all"
205 test -n "$SHLD" || SHLD="$CC -shared -nostartfiles"
210 dnl EXTRALIBS="$EXTRALIBS -lxpg4"
211 test -n "$SHLD" || SHLD="ld -Bshareable"
215 if test "$ELFFORMAT" = yes; then
216 test -n "$SHLD" || SHLD="ld -Bshareable"
219 SHLDFLAGS="-L/usr/X11R6/lib/aout $SHLDFLAGS"
220 test -n "$SHLD" || SHLD="env OBJFORMAT=aout ld -shared"
222 dnl EXTRALIBS="$EXTRALIBS -lxpg4"
227 # EXTRALIBS="$EXTRALIBS -lxpg4"
228 # test -n "$SHLD" || SHLD="ld -Bshareable"
232 *-*-cygwin*|*-*-mingw*)
233 EXTRADEFS="-D__W32__"
237 # test -n "$SHLD" || SHLD="tlink32 -Tpd"
238 test -n "$SHLD" || SHLD="BCC32 -WD"
240 BORLANDC_LDFLAGS="kernel32.lib winspool.lib comdlg32.lib advapi32.lib oleaut32.lib uuid.lib odbc32.lib ws2_32.lib user32.lib shell32.lib cw32mt.lib"
241 BORLANDC_START='C0X32.OBJ'
242 CFLAGS="$CFLAGS -tWM -VM"
243 EXTRADEFS="$EXTRADEFS -D_WINDOWS -DWIN32"
246 test -n "$SHLD" || SHLD="polink -DLL"
249 *" -MT "*) NODEF="-nodefaultlib:pocrt.lib -nodefaultlib:crt.lib -defaultlib:crtmt.lib" ;;
250 *" -MD "*) NODEF="-nodefaultlib:crtmt.lib -nodefaultlib:crt.lib -defaultlib:pocrt.lib" ;;
251 *) CFLAGS="$CFLAGS -MT"; NODEF="-nodefaultlib:pocrt.lib -nodefaultlib:crtmt.lib -defaultlib:crt.lib" ;;
253 POCC_LDFLAGS="$NODEF winmm.lib ws2_32.lib user32.lib kernel32.lib shell32.lib gdi32.lib comctl32.lib comdlg32.lib ole32.lib advapi32.lib oldnames.lib"
254 CFLAGS="$CFLAGS -Ze -D__POCC__OLDNAMES"
255 EXTRADEFS="$EXTRADEFS -D_WINDOWS -DWIN32"
258 test -n "$SHLD" || SHLD="dmc -WD"
260 DMC_LDFLAGS="winmm.lib ws2_32.lib user32.lib kernel32.lib shell32.lib gdi32.lib comctl32.lib comdlg32.lib ole32.lib advapi32.lib"
261 CFLAGS="$CFLAGS -mn -j0"
263 EXTRADEFS="$EXTRADEFS -D_WINDOWS -DWIN32"
265 "xwcc386_w.sh "*|xwcc386)
267 CFLAGS="$CFLAGS -br -bm -5s -zk0 -zp=16 -w=4 -D_WINDOWS -DWIN32 -DINCLUDE_WINDOWS_H"
270 EXTRALIBS="$EXTRALIBS kernel32.lib winspool.lib comdlg32.lib advapi32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ws2_32.lib user32.lib shell32.lib"
273 test -n "$SHLD" || SHLD="link -dll"
276 *" -MT "*) NODEF="-nodefaultlib:msvcrt.lib -nodefaultlib:msvcrtd.lib -nodefaultlib:libcmtd.lib -nodefaultlib:libc.lib -nodefaultlib:libcd.lib" ;;
277 *" -MD "*) NODEF="-nodefaultlib:libcmt.lib -nodefaultlib:libcmtd.lib -nodefaultlib:msvcrtd.lib -nodefaultlib:libc.lib -nodefaultlib:libcd.lib" ;;
278 *" -MTd "*) NODEF="-nodefaultlib:msvcrt.lib -nodefaultlib:msvcrtd.lib -nodefaultlib:libcmt.lib -nodefaultlib:libc.lib -nodefaultlib:libcd.lib" ;;
279 *" -MDd "*) NODEF="-nodefaultlib:libcmt.lib -nodefaultlib:libcmtd.lib -nodefaultlib:msvcrt.lib -nodefaultlib:libc.lib -nodefaultlib:libcd.lib" ;;
280 *) CFLAGS="$CFLAGS -MT"; NODEF="-nodefaultlib:msvcrt.lib -nodefaultlib:msvcrtd.lib -nodefaultlib:libcmtd.lib -nodefaultlib:libc.lib -nodefaultlib:libcd.lib" ;;
282 VCPP_LDFLAGS="-nologo -incremental:no $NODEF kernel32.lib winspool.lib comdlg32.lib advapi32.lib oleaut32.lib uuid.lib ws2_32.lib user32.lib shell32.lib"
283 CFLAGS="$CFLAGS -nologo -Zp16 -W3 -GX -Ob2"
284 EXTRADEFS="$EXTRADEFS -DNDEBUG -D_WINDOWS -DWIN32 -DMBCS -D_MT -YX -FD -c"
286 x*gcc*) test -n "$SHLD" || SHLD="gcc -mdll"; MINGWGCC=yes ;;
287 *) test -n "$SHLD" || SHLD="unknown" ;;
291 lib_user32_test=-luser32
295 test -n "$SHLD" || SHLD="ld -Bdynamic -G"
299 EXTRADEFS="-DSOLARIS"
300 test -n "$SHLD" || SHLD="/usr/ccs/bin/ld -G"
304 test -n "$SHLD" || SHLD="/usr/ccs/bin/ld -G"
308 if test "x$SIMD" = "xyes"; then
309 AC_DEFINE(USE_ALTIVEC,1,Define to 1 if you use altivec)
310 # EXTRACFLAGS="$EXTRACFLAGS -faltivec -mabi=altivec -maltivec" # for GCC3.
311 EXTRACFLAGS="$EXTRACFLAGS -faltivec"
313 AC_DEFINE(USE_ALTIVEC,0,Define to 1 if you use altivec)
315 CPPFLAGS="$CPPFLAGS -no-cpp-precomp"
316 LDOPTS="-dynamic -undefined suppress -flat_namespace $LDOPTS"
317 test -n "$SHLD" || SHLD="$CC -dynamic -bundle -undefined suppress -flat_namespace $LDFLAGS"
322 if test "x$GCC" = xyes; then
325 SHLD="ld -Bdynamic -G"
332 dnl AC_EXEEX # obsolate
334 # Checks for libraries.
336 AC_CHECK_LIB(socket,socket)
337 AC_CHECK_LIB(dl,dlopen,lib_dl_opt=-ldl)
338 AC_CHECK_LIB(objc,NSLinkModule,lib_dl_opt=-lobjc) # Mac OS X need this.
339 if test "x$VCPP" != "xyes" && test "x$BORLANDC" != "xyes" && test "x$WATCOM_C" != "xyes" && test "x$POCC" != "xyes"; then
340 AC_CHECK_LIB(xpg4,setlocale) # Mac OS X (and maybe NetBSD) need this.
342 AC_CHECK_FUNCS(gethostbyname,,[ AC_CHECK_LIB(nsl,gethostbyname) ])
345 dnl Xft for trace window
347 AS_HELP_STRING([--enable-xft], [Enable use of Xft in X trace mode]))
350 [ --with-xawlib=lib Try to link to these xaw widget libraries by the
351 order specified by the comma separated value list:
356 default is --with-xawlib=xaw3d,xaw],
357 [ with_xawlib="$withval" ], [ with_xawlib="xaw3d,xaw" ])
360 if test "x$with_x" = xyes; then
361 if test "x$have_x" = xno; then
362 if test "x$x_config_flag" = xyes; then
363 AC_MSG_ERROR(Could not configure X)
365 AC_MSG_WARN(Could not configure X)
369 if test "x$with_x" = xyes -a "x$have_x" = xyes; then
370 if test "x$x_libraries" != x; then
371 ldflags_x_opt="-L$x_libraries"
372 LDFLAGS="$LDFLAGS $ldflags_x_opt"
373 SHLDFLAGS="$SHLDFLAGS $ldflags_x_opt"
377 if test "x$x_includes" != x; then
378 CPPFLAGS="$CPPFLAGS -I$x_includes"
381 AC_CHECK_LIB(X11,XOpenDisplay,
382 AC_DEFINE(HAVE_LIBX11,1,Define to 1 if you have the `X11' library (-lX11).))
383 AC_MSG_CHECKING(X11 version 6)
384 AC_CACHE_VAL(timidity_cv_x11_version_6,
385 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[
386 #if XlibSpecificationRelease < 6
389 ]])],[timidity_cv_x11_version_6=yes],[timidity_cv_x11_version_6=no]))
390 if test "$timidity_cv_x11_version_6" = "yes"; then
391 AC_MSG_RESULT(6 or newer)
392 dnl AC_DEFINE(HAVE_X11R6)
394 AC_MSG_RESULT(before 6)
397 dnl checking order required
399 AC_CHECK_LIB(Xext,XShapeCombineMask,have_xext=yes; LIBS="-lXext $LIBS",have_xext=no)
400 AC_CHECK_LIB(ICE,IceConnectionNumber)
401 AC_CHECK_LIB(SM,SmcOpenConnection,have_xprelibs=yes; LIBS="-lSM $LIBS",have_xprelibs=no)
402 AC_CHECK_LIB(Xt,XtVaAppInitialize,have_xt=yes; LIBS="-lXt $LIBS",have_xt=no)
403 AC_CHECK_LIB(Xmu,XmuInternAtom,LIBS="-lXmu $LIBS")
404 AC_CHECK_FUNCS(XmuRegisterExternalAgent)
405 if test "x$enable_xft" = "xyes"; then
406 AC_CHECK_LIB(Xft,XftInit,
407 AC_DEFINE(HAVE_LIBXFT,1,Define to 1 if you have the 'Xft' library.),
410 for i in `echo $with_xawlib | sed 's/,/ /g'`; do
413 AC_CHECK_LIB(Xaw,XawInitializeWidgetSet,have_xaw=yes,have_xaw=no)
416 AC_CHECK_LIB(Xaw3d,XawInitializeWidgetSet,
418 AC_CHECK_HEADER(X11/Xaw3d/Tip.h,
419 AC_DEFINE(HAVE_XAW3D_TIP,1,Define to 1 if you have the <X11/Xaw3d/Tip.h> header file.),
426 AC_CHECK_LIB(neXtaw,XawInitializeWidgetSet,have_xaw=next,have_xaw=no)
429 AC_CHECK_LIB(Xpm,XpmCreatePixmapFromData)
430 AC_CHECK_LIB(XawPlus,XawInitializeWidgetSet,have_xaw=plus,have_xaw=no)
436 if test "x$have_xaw" != "xno"; then break; fi
438 AC_CHECK_LIB(Xm,XmCreateForm,have_xm=yes,have_xm=no)
439 AC_CHECK_FUNCS(XShmCreatePixmap)
442 dnl End of X configure
444 # Checks for header files.
448 if test "x$WATCOM_C" != xyes ; then
492 if test "x$DMC" != xyes ; then
499 [X11/extensions/XShm.h X11/Xmu/ExtAgent.h],[],[],[
500 #ifdef HAVE_X11_XLIB_H
501 #include <X11/Xlib.h>
504 AC_CHECK_HEADER(string.h,, [ AC_DEFINE(NO_STRING_H,1,Define to 1 if you do not have <string.h>.)])
506 # Checks for typedefs, structures, and compiler characteristics.
507 if test "x$WATCOM_C" != xyes ; then
517 if test "x$DMC" != xyes ; then
520 if test "x$POCC" != xyes ; then
525 dnl keyword "volatile" check
526 AC_CACHE_CHECK(volatile declaration,timidity_cv_type_volatile,
527 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [[volatile int x]])],[timidity_cv_type_volatile=yes],[timidity_cv_type_volatile=no]))
528 if test $timidity_cv_type_volatile = no; then
529 AC_DEFINE(NO_VOLATILE,1,Define to 1 if you cannot use volatile keyword)
532 dnl union usenum check
533 AC_CACHE_CHECK(union semun declaration,timidity_cv_type_union_semun,
534 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
535 #include <sys/types.h>
538 ]], [[union semun x]])],[timidity_cv_type_union_semun=yes],[timidity_cv_type_union_semun=no]))
539 if test $timidity_cv_type_union_semun = yes; then
540 AC_DEFINE(HAVE_UNION_SEMUN,1,Define to 1 if you use semun keyword)
543 dnl Cygnus and Mingw memory struct optiontest
544 if test "x$MSYS" = xyes ; then
548 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
549 if test -z "$ac_cv_prog_CC"; then
552 our_gcc="$ac_cv_prog_CC"
554 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
556 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
557 msnative_struct='-fnative-struct'
561 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
562 msnative_struct='-mms-bitfields'
566 if test x"$msnative_struct" = x ; then
567 AC_MSG_RESULT([no way])
568 AC_MSG_WARN([produced binary will be incompatible with windows' GUI ])
570 CFLAGS="$CFLAGS $msnative_struct"
571 CPPFLAGS="$CPPFLAGS $msnative_struct"
572 AC_MSG_RESULT([${msnative_struct}])
579 dnl Cygnus Mingw32 mmsystem check
580 if test "x$MSYS" = xyes ; then
581 AC_CACHE_CHECK(Cygwin new mmsystem,timidity_cv_header_new_mmsystem,
582 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
584 #include <mmsystem.h>
585 ]], [[return WOM_OPEN != 0x3BB]])],[timidity_cv_header_new_mmsystem=yes],[timidity_cv_header_new_mmsystem=no]))
586 if test $timidity_cv_header_new_mmsystem = yes; then
587 AC_DEFINE(HAVE_NEW_MMSYSTEM,1,Define to 1 if you have <mmsystem.h> file)
591 # Checks for library functions.
592 AC_FUNC_ERROR_AT_LINE
593 if test "x$DMC" != xyes ; then
597 if test "x$DMC" != xyes ; then
600 AC_FUNC_SETVBUF_REVERSED
602 if test "x$VCPP" != xyes && test "x$BORLANDC" != xyes && test "x$WATCOM_C" != "xyes" && test "x$POCC" != "xyes"; then
642 if test "x$VCPP" = xyes; then
643 AC_DEFINE(RETSIGTYPE,int)
644 AC_DEFINE(HAVE_GETCWD,1)
646 if test "x$POCC" = xyes; then
647 AC_DEFINE(HAVE_GETCWD,1)
648 AC_DEFINE(HAVE_GETHOSTBYNAME,1)
649 AC_DEFINE(HAVE_POPEN,1)
650 AC_DEFINE(HAVE_SELECT,1)
651 AC_DEFINE(HAVE_SNPRINTF,1)
652 AC_DEFINE(HAVE_STRDUP,1)
653 AC_DEFINE(HAVE_STRERROR,1)
654 AC_DEFINE(HAVE_STRCASECMP,1)
655 AC_DEFINE(HAVE_STRSTR,1)
656 AC_DEFINE(HAVE_SOCKET,1)
657 AC_DEFINE(HAVE_VSNPRINTF,1)
658 AC_DEFINE(HAVE_GETOPT,1)
659 AC_DEFINE(TIMID_VERSION,[$(PACKAGE_VERSION)],[for windows gui])
661 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes; then
662 AC_DEFINE(HAVE_GETHOSTBYNAME,1)
663 AC_DEFINE(HAVE_POPEN,1)
664 AC_DEFINE(popen,_popen,[for VC])
665 AC_DEFINE(pclose,_pclose,[for VC])
666 AC_DEFINE(HAVE_SELECT,1)
667 AC_DEFINE(HAVE_SNPRINTF,1)
668 AC_DEFINE(HAVE_STRDUP,1)
669 AC_DEFINE(HAVE_STRERROR,1)
670 AC_DEFINE(HAVE_STRNCASECMP,1)
671 AC_DEFINE(HAVE_STRSTR,1)
672 AC_DEFINE(snprintf,_snprintf,[for VC])
673 AC_DEFINE(HAVE_SOCKET,1)
674 AC_DEFINE(HAVE_VSNPRINTF,1)
675 dnl AC_DEFINE(vsnprintf,_vsnprintf,[for VC])
676 AC_DEFINE(TIMID_VERSION,[$(PACKAGE_VERSION)],[for windows gui])
679 AC_CHECK_FUNC(getopt_long,
680 AC_DEFINE([HAVE_GETOPT_LONG],1,[Define to 1 if you have `getopt_long' function])
681 tm_cv_needgetopt="no",
682 tm_cv_needgetopt="yes")
683 AM_CONDITIONAL([NEEDGETOPT], test "x$tm_cv_needgetopt" = "xyes")
685 AC_CHECK_FUNC(open_memstream, [
686 AC_DEFINE([HAVE_OPEN_MEMSTREAM],1,[Define to 1 if you have `open_memstream' function])
690 dnl *** va_copy checks (from GLIB)
693 AC_CACHE_CHECK([for an implementation of va_copy()],lib_cv_va_copy,[
694 AC_RUN_IFELSE([AC_LANG_SOURCE([[
696 void f (int i, ...) {
697 va_list args1, args2;
699 va_copy (args2, args1);
700 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
702 va_end (args1); va_end (args2);
708 [lib_cv_va_copy=yes],
709 [lib_cv_va_copy=no],[])
712 AC_CACHE_CHECK([for an implementation of __va_copy()],lib_cv___va_copy,[
713 AC_RUN_IFELSE([AC_LANG_SOURCE([[
715 void f (int i, ...) {
716 va_list args1, args2;
718 __va_copy (args2, args1);
719 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
721 va_end (args1); va_end (args2);
727 [lib_cv___va_copy=yes],
728 [lib_cv___va_copy=no],[])
731 if test "x$lib_cv_va_copy" = "xyes"; then
733 else if test "x$lib_cv___va_copy" = "xyes"; then
734 va_copy_func=__va_copy
738 if test -n "$va_copy_func"; then
739 AC_DEFINE_UNQUOTED(VA_COPY,$va_copy_func,[A 'va_copy' style function])
742 AC_CACHE_CHECK([whether va_lists can be copied by value],lib_cv_va_val_copy,[
743 AC_RUN_IFELSE([AC_LANG_SOURCE([[
745 void f (int i, ...) {
746 va_list args1, args2;
749 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
751 va_end (args1); va_end (args2);
757 [lib_cv_va_val_copy=yes],
758 [lib_cv_va_val_copy=no],[])
761 if test "x$lib_cv_va_val_copy" = "xno"; then
762 AC_DEFINE(VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values])
765 # Checks on cygnus and MSYS
766 if test "x$MSYS" = xyes ; then
767 case "$ac_cv_header_dirent_dirent_h$ac_cv_header_dirent_sys_ndir_h$ac_cv_header_dirent_sys_dir_h$ac_cv_header_dirent_ndir_h" in
769 AC_CHECK_FUNC(opendir,,
770 [ EXTRADEFS="$EXTRADEFS -D__W32READDIR__"
773 *)EXTRADEFS="$EXTRADEFS -D__W32READDIR__"
777 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
778 EXTRALIBS="$EXTRALIBS ws2_32.lib"
779 EXTRADEFS="$EXTRADEFS -DWINSOCK"
781 AC_CHECK_FUNC(socket,,
782 WAPI_CHECK_LIB(ws2_32,WSAStartup,
783 [#include <winsock.h>],
785 [ EXTRALIBS="$EXTRALIBS -lws2_32"
786 EXTRADEFS="$EXTRADEFS -DWINSOCK" ]
792 # Checks on extra paths
795 AC_ARG_WITH(tcl-includes,
796 AS_HELP_STRING([--with-tcl-includes=DIR], [Tcl include file path]),
797 [ if test ! -d $withval; then
798 AC_MSG_WARN($withval is not found.)
800 tcl_include_dir="-I$withval"
802 AC_ARG_WITH(tcl-libs,
803 AS_HELP_STRING([--with-tcl-libs=DIR], [Tcl library file path]),
804 [ if test ! -d $withval; then
805 AC_MSG_WARN($withval is not found.)
807 tcl_libdir="-L$withval" ])
808 AC_ARG_WITH(tk-includes,
809 AS_HELP_STRING([--with-tk-includes=DIR], [Tk include file path]),
810 [ if test ! -d $withval; then
811 AC_MSG_WARN($withval is not found.)
813 tk_includes="-I$withval" ])
815 AS_HELP_STRING([--with-tk-libs=DIR], [Tk library file path]),
816 [ if test ! -d $withval; then
817 AC_MSG_WARN($withval is not found.)
819 tk_libdir="-L$withval" ])
822 AC_ARG_WITH(offix-includes,
823 AS_HELP_STRING([--with-offix-includes=DIR], [Offix include file path]),
824 [ if test ! -d $withval; then
825 AC_MSG_WARN($withval is not found.)
827 offix_include_dir="-I$withval" ])
828 AC_ARG_WITH(offix-libs,
829 AS_HELP_STRING([--with-offix-libs=DIR], [Offix include file path]),
830 [ if test ! -d $withval; then
831 AC_MSG_WARN($withval is not found.)
833 offix_lib_dir="-L$withval" ])
839 dnl default(d): auto selection
840 dnl oss(d): OSS /dev/dsp
841 dnl alsa(d): ALSA pcm device
842 dnl sun(d): SunOS /dev/audio
843 dnl hpux(d): HPUX /dev/audio
844 dnl irix(d): IRIX audio
845 dnl mme(d): OSF/1 MME
846 dnl sb_dsp(d): BSD/OS 2.0 /dev/sb_dsp
847 dnl w32(d): Windows MMS
848 dnl darwin(d): Mac OS X pcm device
849 dnl alsa(s): ALSA pcm device
850 dnl alib(A): HPUX network audio (Alib)
851 dnl nas(n): Network Audio System
854 dnl portaudio(p) PortAudio
855 dnl npipe(N) Windows named pipe;
856 dnl vorbis(v): Ogg Vorbis
857 dnl flac(F): FLAC / OggFLAC
858 dnl speex(S): Ogg Speex
859 dnl gogo(g): MP3 GOGO
863 audio_targets='default oss alsa sun hpux irix mme sb_dsp w32 alib nas arts esd vorbis flac gogo portaudio npipe jack ao'
865 AC_ARG_WITH(nas-library,
866 AS_HELP_STRING([--with-nas-library=library], [NAS absolute library path(Don't use -laudio)]))
867 AC_ARG_WITH(nas-includes,
868 AS_HELP_STRING([--with-nas-includes=DIR], [NAS include files are in dir]))
872 [ --enable-audio[=mode_list] Enable audio (Specify comma separated mode list):
873 default: Automatically select audio device.
875 sun: SunOS /dev/audio
876 hpux: HPUX /dev/audio
877 irix: IRIX audio library
879 sb_dsp: BSD/OS 2.0 /dev/sb_dsp
881 darwin: Darwin CoreAudio
882 alsa: ALSA pcm device
883 alib: HPUX network audio (Alib)
884 nas: NAS - Network Audio System
886 esd: EsounD - Enlightened Sound Daemon
888 npipe: Named Pipe(windows)
894 gogo: MP3 GOGO (Only Windows is supported)
896 [ enable_audio=$enableval
897 have_audio_opt=yes ],
902 test "x$enable_audio" = xyes && enable_audio=default
904 if test "x$enable_audio" != xno; then
905 for i in `echo $enable_audio | sed 's/,/ /g'`; do
906 eval "au_enable_$i=yes"
910 dnl Turn on default output mode
912 AC_ARG_WITH(default-output,
913 AS_HELP_STRING([--with-default-output=<mode>],
914 [Specify default output mode (optional):
915 (default|alsa|alib|arts|nas|
916 esd|wav|au|aiff|list|vorbis|flac|speex|
917 gogo|portaudio|npipe|jack|ao)]),
918 [ if test "$enable_audio" != no; then
919 DEFAULT_PLAYMODE=$withval
920 eval "au_enable_$DEFAULT_PLAYMODE=yes"
922 AC_MSG_WARN([--with-default-output=$withval: audio is not enabled])
925 dnl compatibility matters.
926 dnl AC_ARG_ENABLE(esd,
927 dnl [ --enable-esd EsounD (Obsoleted. Use --enable-audio=esd)],
928 dnl [ au_enable_esd=$enableval ])
929 dnl AC_ARG_ENABLE(nas,
930 dnl [ --enable-nas NAS (Obsoleted. Use --enable-audio=nas)],
931 dnl [ au_enable_nas=$enableval ])
932 dnl AC_ARG_ENABLE(alsa,
933 dnl [ --enable-alsa ALSA (Obsoleted. Use --enable-audio=alsa)],
934 dnl [ au_enable_alsa=$enableval ])
936 dnl target-specific defaults
937 if test "x$au_enable_default" = xyes; then
939 *-*-linux*|*-*-freebsd*)
945 *-*-bsdi2.1|*-*-bsdi3.?|*-*-bsdi4.?)
979 AC_MSG_WARN(No --enable-audio=default audio for $target)
985 # Each audio mode's configurations
987 AC_MSG_CHECKING(enable_audio=oss)
988 if test "x$au_enable_oss" = xyes; then
989 EXTRADEFS="$EXTRADEFS -DAU_OSS"
990 SYSEXTRAS="$SYSEXTRAS oss_a.c"
991 if test "x$ac_cv_header_sys_soundcard_h" = xyes; then
992 AC_MSG_RESULT(yes - <sys/soundcard.h>)
996 dnl <linux/soundcard.h> or <machine/soundcard.h>
1000 if test "x$ac_cv_header_soundcard_h" = xyes; then
1001 AC_MSG_RESULT(yes - <soundcard.h>)
1003 AC_MSG_WARN(<sys/soundcard.h> is not found)
1008 AC_CHECK_LIB(ossaudio,open)
1010 dnl Why OpenBSD use /dev/audio instead of /dev/dsp for OSS
1013 if test ! -e "/dev/dsp"; then
1014 oss_device=/dev/audio
1023 AC_MSG_CHECKING(enable_audio=sun)
1024 if test "x$au_enable_sun" = xyes; then
1027 if test -f /usr/demo/SOUND/libaudio.a; then
1028 EXTRALIBS="$EXTRALIBS /usr/demo/SOUND/libaudio.a"
1031 AC_MSG_RESULT(Notice: libaudio.a is not found [(ignore)])
1035 if test -f /usr/demo/SOUND/lib/libaudio.a; then
1036 EXTRALIBS="$EXTRALIBS /usr/demo/SOUND/lib/libaudio.a"
1039 AC_MSG_RESULT(Notice: libaudio.a is not found [(ignore)])
1042 *) AC_MSG_RESULT(yes)
1045 EXTRADEFS="$EXTRADEFS -DAU_SUN"
1046 SYSEXTRAS="$SYSEXTRAS sun_a.c"
1052 AC_MSG_CHECKING(enable_audio=hpux)
1053 if test "x$au_enable_hpux" = xyes; then
1055 *-*-hpux*) AC_MSG_RESULT(yes) ;;
1056 *) AC_MSG_WARN(may not work on $target) ;;
1058 EXTRADEFS="$EXTRADEFS -DAU_HPUX_AUDIO"
1059 SYSEXTRAS="$SYSEXTRAS hpux_d_a.c"
1065 AC_MSG_CHECKING(enable_audio=irix)
1066 if test "x$au_enable_irix" = xyes; then
1068 *-sgi-irix5*|*-sgi-irix6.2)
1069 EXTRADEFS="$EXTRADEFS -DAU_AUDRIV -DSGI_OLDAL"
1073 EXTRADEFS="$EXTRADEFS -DAU_AUDRIV -DSGI_NEWAL"
1076 *) AC_MSG_WARN(may not work on $target) ;;
1078 SYSEXTRAS="$SYSEXTRAS audriv_a.c audriv_al.c"
1079 EXTRALIBS="$EXTRASLIBS -laudio"
1085 AC_MSG_CHECKING(enable_audio=mme)
1086 if test "x$au_enable_mme" = xyes; then
1088 *-dec-*) AC_MSG_RESULT(yes) ;;
1089 *) AC_MSG_WARN(may not work on $target) ;;
1091 EXTRADEFS="$EXTRADEFS -DAU_DEC -DAU_AUDRIV"
1092 SYSEXTRAS="$SYSEXTRAS audriv_a.c audriv_mme.c"
1093 CPPFLAGS="$CPPFLAGS -I/usr/opt/MME210/include"
1094 EXTRALIBS="$EXTRALIBS /usr/opt/MME220/lib/libmme.a"
1100 AC_MSG_CHECKING(enable_audio=sb_dsp)
1101 if test "x$au_enable_sb_dsp" = xyes; then
1103 *-*-bsdi2.0) AC_MSG_RESULT(yes) ;;
1104 *) AC_MSG_WARN(may not work on $target) ;;
1106 EXTRADEFS="$EXTRADEFS -DAU_BSDI -DDEFAULT_RATE=22500"
1107 SYSEXTRAS="$SYSEXTRAS bsd20_a.c"
1113 AC_MSG_CHECKING(enable_audio=w32)
1114 if test "x$au_enable_w32" = xyes; then
1123 AC_MSG_WARN(may not work on $target)
1126 SYSEXTRAS="$SYSEXTRAS w32_a.c"
1127 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
1128 EXTRALIBS="$EXTRALIBS winmm.lib"
1130 EXTRALIBS="$EXTRALIBS -lwinmm"
1132 EXTRADEFS="$EXTRADEFS -DAU_W32"
1137 dnl Mac OS X / darwin-x86
1138 AC_MSG_CHECKING(enable_audio=darwin)
1139 if test "x$au_enable_darwin" = xyes; then
1140 EXTRADEFS="$EXTRADEFS -DAU_DARWIN"
1141 SYSEXTRAS="$SYSEXTRAS darwin_a.c"
1142 EXTRALIBS="$EXTRALIBS -framework CoreAudio"
1143 dnl just say yes or no :-P
1146 AC_MSG_RESULT(yes);;
1148 AC_MSG_WARN(may not work on $target)
1156 dnl alsa - Advanced Linux Sound Architecture
1157 AC_MSG_CHECKING(enable_audio=alsa)
1158 if test "x$au_enable_alsa" = xyes; then
1159 AC_MSG_RESULT([yes, configuring alsa])
1162 KEEPLDFLAGS=$LDFLAGS
1164 if test "x$alsa_found" = "xyes" ; then
1165 dnl AC_MSG_RESULT(yes)
1166 EXTRADEFS="$EXTRADEFS -DAU_ALSA"
1167 SYSEXTRAS="$SYSEXTRAS alsa_a.c"
1168 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$ALSA_CFLAGS)
1169 LIBS="$LIBS $ALSA_LIBS"
1170 AC_CHECK_FUNCS(snd_seq_port_info_set_timestamping)
1172 AC_MSG_WARN(Couldn't configure alsa.)
1175 LDFLAGS=$KEEPLDFLAGS
1182 AC_MSG_CHECKING(enable_audio=alib)
1183 if test "x$au_enable_alib" = xyes; then
1185 *-*-hpux*) AC_MSG_RESULT(yes) ;;
1186 *) AC_MSG_WARN(may not work on $target) ;;
1188 SYSEXTRAS="$SYSEXTRAS hpux_a.c"
1189 EXTRADEFS="$EXTRADEFS -DAU_HPUX_ALIB"
1190 if test -d /opt/audio/include; then
1191 CPPFLAGS="$CPPFLAGS -I/opt/audio/include"
1193 if test -d /opt/audio/lib; then
1194 EXTRALIBS="$EXTRALIBS -L/opt/audio/lib"
1196 EXTRALIBS="$EXTRALIBS -lAlib"
1202 AC_MSG_CHECKING(enable_audio=nas)
1203 if test "x$au_enable_nas" = xyes; then
1204 if test "x$with_x" != xyes; then
1205 AC_MSG_ERROR(nas: --with-x option must be specified)
1207 EXTRADEFS="$EXTRADEFS -DAU_NAS"
1208 SYSEXTRAS="$SYSEXTRAS nas_a.c"
1210 dnl -laudio conflicts another audio library,
1211 dnl so I specify NAS library with absolete path.
1213 if test "x$with_nas_library" != x; then
1214 AC_MSG_RESULT($with_nas_library);
1215 EXTRALIBS="$EXTRALIBS $with_nas_library"
1218 MY_SEARCH_LIBS(AuOpenServer,
1219 [$x_libraries/libaudio.a \
1220 /usr/lib/libaudio.so \
1221 /usr/lib/libaudio.a ],
1222 [ AC_MSG_RESULT(NAS: $timidity_cv_search_AuOpenServer)
1223 EXTRALIBS="$EXTRALIBS $timidity_cv_search_AuOpenServer"],
1224 [AC_MSG_WARN(NAS library is not found.)])
1226 test "x$with_nas_includes" != x && CPPFLAGS="$CPPFLAGS -I$with_nas_includes"
1228 if test "x$have_xext" = xyes; then
1231 if test "x$have_xprelibs" = xyes; then
1232 lib_xprelibs_opt='-lSM -lICE'
1239 AC_MSG_CHECKING(enable_audio=arts)
1240 if test "x$au_enable_arts" = xyes; then
1241 AC_MSG_RESULT([yes, configuring aRts])
1242 dnl **** Check for aRts Sound Server ****
1243 AC_PATH_PROG(ARTSCCONFIG, artsc-config)
1244 if test x$ARTSCCONFIG != x -a x$ARTSCCONFIG != x'"$ARTSCCONFIG"';
1247 for i in `$ARTSCCONFIG --cflags`
1250 -I*) ARTSC_CFLAGS="$ARTSC_CFLAGS $i";;
1253 ARTSC_LIBS=`$ARTSCCONFIG --libs`
1254 save_CFLAGS="$CFLAGS"
1255 CFLAGS="$CFLAGS $ARTSC_CFLAGS"
1256 AC_TRY_COMPILE([#include <artsc.h>],[arts_stream_t stream;],
1257 [AC_SUBST(ARTSLIBS, $ARTSC_LIBS)
1258 AC_SUBST(ARTSINCL, $ARTSC_CFLAGS)
1259 AC_DEFINE(HAVE_ARTS, 1, [Define if you have ARTS sound server])
1262 CFLAGS="$save_CFLAGS"
1265 if test "$have_arts" = "yes"; then
1266 dnl AC_MSG_RESULT(aRts: Enabled)
1267 EXTRADEFS="$EXTRADEFS -DAU_ARTS"
1268 SYSEXTRAS="$SYSEXTRAS aRts_a.c"
1269 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$ARTSC_CFLAGS)
1270 LIBS="$LIBS $ARTSC_LIBS"
1272 AC_MSG_WARN(aRts: Couldn't configure)
1279 AC_MSG_CHECKING(enable_audio=esd)
1280 if test "x$au_enable_esd" = xyes; then
1281 AC_MSG_RESULT([yes, configuring esd])
1284 KEEPLDFLAGS=$LDFLAGS
1288 LDFLAGS=$KEEPLDFLAGS
1289 if test "x$no_esd" = x; then
1290 dnl AC_MSG_RESULT(EsounD: Enabled)
1291 EXTRADEFS="$EXTRADEFS -DAU_ESD"
1292 SYSEXTRAS="$SYSEXTRAS esd_a.c"
1293 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$ESD_CFLAGS)
1294 LIBS="$LIBS $ESD_LIBS"
1296 AC_MSG_WARN(EsounD: Couldn't configure)
1303 AC_MSG_CHECKING(enable_audio=portaudio)
1304 if test "x$au_enable_portaudio" = xyes; then
1306 if test "x$MSYS" = xyes ; then
1307 SYSEXTRAS="$SYSEXTRAS portaudio_a.c w32_portaudio_dll.c"
1308 EXTRALIBS="$EXTRALIBS -lportaudio"
1309 EXTRADEFS="$EXTRADEFS -DAU_PORTAUDIO -DAU_PORTAUDIO_DLL"
1311 SYSEXTRAS="$SYSEXTRAS portaudio_a.c"
1312 EXTRALIBS="$EXTRALIBS -lportaudio"
1313 EXTRADEFS="$EXTRADEFS -DAU_PORTAUDIO"
1319 dnl npipe (windows named pipe)
1320 AC_MSG_CHECKING(enable_audio=npipe)
1321 if test "x$au_enable_npipe" = xyes; then
1323 SYSEXTRAS="$SYSEXTRAS npipe_a.c"
1324 EXTRADEFS="$EXTRADEFS -DAU_NPIPE"
1331 AC_MSG_CHECKING(enable_audio=jack)
1332 if test "x$au_enable_jack" = xyes; then
1334 SYSEXTRAS="$SYSEXTRAS jack_a.c"
1335 EXTRALIBS="$EXTRALIBS $(pkg-config --libs jack)"
1336 EXTRADEFS="$EXTRADEFS -DAU_JACK $(pkg-config --cflags jack)"
1342 AC_MSG_CHECKING(enable_audio=ao)
1343 if test "x$au_enable_ao" = xyes; then
1344 AC_MSG_RESULT([yes, configuring ao])
1346 if test "x$no_ao" = "x" ; then
1347 # AC_MSG_RESULT(yes)
1348 EXTRADEFS="$EXTRADEFS -DAU_AO"
1349 SYSEXTRAS="$SYSEXTRAS ao_a.c"
1350 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$AO_CFLAGS)
1351 LIBS="$LIBS $AO_LIBS"
1353 AC_MSG_WARN(Couldn't configure libao.)
1360 AC_MSG_CHECKING(enable_audio=vorbis)
1361 if test "x$au_enable_vorbis" = xyes; then
1362 AC_MSG_RESULT([yes, configuring vorbis])
1363 if test "x$MSYS" = "xyes" && test "x$MINGWGCC" != "xyes" ; then
1364 AC_CHECK_HEADER(vorbis/vorbisenc.h,, [
1365 EXTRADEFS="-DAU_VORBIS_DLL $EXTRADEFS"
1366 SYSEXTRAS="$SYSEXTRAS w32g_vorbisenc_dll.c w32g_vorbis_dll.c w32g_ogg_dll.c"
1372 SYSEXTRAS="$SYSEXTRAS vorbis_a.c"
1373 EXTRADEFS="$EXTRADEFS -DAU_VORBIS $OGG_CFLAGS $VORBIS_CFLAGS"
1374 EXTRALIBS="$EXTRALIBS $VORBIS_LIBS $VORBISENC_LIBS $OGG_LIBS"
1375 if test "x$MSYS" = "xyes" && test "x$MINGWGCC" = "xyes" ; then
1376 EXTRADEFS="-DAU_VORBIS_DLL $EXTRADEFS"
1377 SYSEXTRAS="$SYSEXTRAS w32g_vorbisenc_dll.c w32g_vorbis_dll.c w32g_ogg_dll.c"
1380 AC_MSG_WARN([Unable to configure vorbis, but ogg is there (???)])
1383 AC_MSG_WARN(Unable to configure vorbis!)
1391 dnl libFLAC - Free Lossless Audio Codec
1392 if test "x$MSYS" = xyes ; then
1393 AC_MSG_CHECKING(enable_audio=flac)
1394 if test "x$au_enable_flac" = xyes; then
1395 AC_MSG_RESULT([yes, configuring flac])
1396 SYSEXTRAS="$SYSEXTRAS flac_a.c w32_libFLAC_dll.c w32_libOggFLAC_dll.c"
1397 AC_CHECK_HEADER(FLAC/all.h, [
1398 EXTRADEFS="$EXTRADEFS -DAU_FLAC -DAU_FLAC_DLL"
1400 AC_CHECK_HEADER(OggFLAC/all.h, [
1401 EXTRADEFS="$EXTRADEFS -DAU_OGGFLAC -DAU_OGGFLAC_DLL"
1403 dnl AM_PATH_LIBFLAC([
1404 dnl EXTRADEFS="$EXTRADEFS -DAU_FLAC -DAU_FLAC_DLL"
1405 dnl EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBFLAC_CFLAGS)
1406 dnl LIBS="$LIBS $LIBFLAC_LIBS"
1408 dnl AM_PATH_LIBOGGFLAC([
1409 dnl EXTRADEFS="$EXTRADEFS -DAU_OGGFLAC -DAU_OGGFLAC_DLL"
1410 dnl EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBOGGFLAC_CFLAGS)
1411 dnl LIBS="$LIBS $LIBOGGFLAC_LIBS"
1417 AC_MSG_CHECKING(enable_audio=flac)
1418 if test "x$au_enable_flac" = xyes; then
1419 AC_MSG_RESULT([yes, configuring flac])
1420 SYSEXTRAS="$SYSEXTRAS flac_a.c"
1422 EXTRADEFS="$EXTRADEFS -DAU_FLAC"
1423 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBFLAC_CFLAGS)
1424 LIBS="$LIBS $LIBFLAC_LIBS"
1426 AM_PATH_LIBOGGFLAC([
1427 EXTRADEFS="$EXTRADEFS -DAU_OGGFLAC"
1428 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBOGGFLAC_CFLAGS)
1429 LIBS="$LIBS $LIBOGGFLAC_LIBS"
1436 AC_MSG_CHECKING(enable_audio=speex)
1437 if test "x$au_enable_speex" = xyes; then
1438 AC_CACHE_VAL(timidity_cv_have_speex,
1440 #include <speex/speex.h>
1441 #include <ogg/ogg.h>
1446 [have_speex=yes], [have_speex=no])])
1447 AC_MSG_RESULT($have_speex)
1448 if test "x$have_speex" = xyes; then
1449 SYSEXTRAS="$SYSEXTRAS speex_a.c"
1450 EXTRALIBS="$EXTRALIBS -lspeex -logg"
1451 EXTRADEFS="$EXTRADEFS -DAU_SPEEX"
1457 dnl Win32 Gogo-no-coder
1458 AC_MSG_CHECKING(enable_audio=gogo)
1459 if test "x$au_enable_gogo" = xyes; then
1460 if test "x$MSYS" = "xyes"; then
1461 AC_MSG_RESULT(yes, configuring gogo)
1463 AC_MSG_WARN(May be gogo is not supported. You need hack the gogo_a.c)
1465 AC_CHECK_HEADER(gogo/gogo.h, [
1468 SYSEXTRAS="$SYSEXTRAS gogo_a.c w32_gogo.c"
1469 EXTRADEFS="$EXTRADEFS -DAU_GOGO -DAU_GOGO_DLL"
1470 dnl EXTRALIBS="$EXTRALIBS -lgogo"
1475 dnl Pseudo audio device (Undocumented).
1476 if test "x$au_enable_none" = xyes; then
1477 EXTRADEFS="$EXTRADEFS -DAU_NONE -DAU_AUDRIV"
1478 SYSEXTRAS="$SYSEXTRAS audriv_a.c audriv_none.c"
1481 dnl TIMIDITY_OUTPUT_ID
1483 AC_MSG_CHECKING(default output mode)
1484 if test "x$DEFAULT_PLAYMODE" = x; then
1485 DEFAULT_PLAYMODE=`echo $enable_audio | sed 's/,.*//'`
1487 case ".$DEFAULT_PLAYMODE" in
1488 .default) TIMIDITY_OUTPUT_ID=d ;;
1489 .oss) TIMIDITY_OUTPUT_ID=d ;;
1490 .alsa) TIMIDITY_OUTPUT_ID=s ;;
1491 .sun) TIMIDITY_OUTPUT_ID=d ;;
1492 .hpux) TIMIDITY_OUTPUT_ID=d ;;
1493 .irix) TIMIDITY_OUTPUT_ID=d ;;
1494 .mme) TIMIDITY_OUTPUT_ID=d ;;
1495 .sb_dsp) TIMIDITY_OUTPUT_ID=d ;;
1496 .darwin) TIMIDITY_OUTPUT_ID=d ;;
1497 .w32) TIMIDITY_OUTPUT_ID=d ;;
1498 .alib) TIMIDITY_OUTPUT_ID=A ;;
1499 .nas) TIMIDITY_OUTPUT_ID=n ;;
1500 .arts) TIMIDITY_OUTPUT_ID=R ;;
1501 .esd) TIMIDITY_OUTPUT_ID=e ;;
1502 .portaudio) TIMIDITY_OUTPUT_ID=p ;;
1503 .npipe) TIMIDITY_OUTPUT_ID=N ;;
1504 .wav) TIMIDITY_OUTPUT_ID=w ;;
1505 .au) TIMIDITY_OUTPUT_ID=u ;;
1506 .aiff) TIMIDITY_OUTPUT_ID=a ;;
1507 .list) TIMIDITY_OUTPUT_ID=l ;;
1508 .vorbis) TIMIDITY_OUTPUT_ID=v ;;
1509 .flac) TIMIDITY_OUTPUT_ID=F ;;
1510 .speex) TIMIDITY_OUTPUT_ID=S ;;
1511 .gogo) TIMIDITY_OUTPUT_ID=g ;;
1512 .jack) TIMIDITY_OUTPUT_ID=j ;;
1513 .ao) TIMIDITY_OUTPUT_ID=O ;;
1514 *) TIMIDITY_OUTPUT_ID= ;;
1516 AC_MSG_RESULT($DEFAULT_PLAYMODE/$TIMIDITY_OUTPUT_ID)
1523 interface_targets='dynamic ncurses slang motif tcltk emacs vt100 xaw xskin gtk alsaseq winsyn winsyng portmidisyng npsyn'
1525 AC_ARG_ENABLE(interface,
1526 AS_HELP_STRING([--enable-interface=[interface_list]], [Comma separated interface list]),
1527 [ for i in `echo $enableval | sed 's/,/ /g'`; do
1528 eval "enable_$i=yes"
1531 # Dynamic link configuration
1532 AC_ARG_ENABLE(dynamic,
1533 AS_HELP_STRING([--enable-dynamic], [Enable dynamic link interface (default is no)])
1534 AS_HELP_STRING([--enable-dynamic=dynamic_list] [Comma separated dynamic interface list]),
1535 [ dnl --enable-dynamic=yes to --enable-dynamic=dynamic
1536 if test "x$enable_dynamic" = xyes; then
1537 enable_dynamic=dynamic
1538 elif test "x$enable_dynamic" != xno; then
1539 for i in `echo $enableval | sed 's/,/ /g'`; do
1540 eval "enable_$i=dynamic"
1545 for i in $interface_targets; do
1546 eval "join_targets=$join_targets\$enable_$i"
1549 case ".$join_targets" in
1550 .*dynamic*) NEEDDLOPEN=yes;;
1554 dnl check -fpic option for gcc
1555 if test "x$GCC" = xyes; then SHCFLAGS="$SHCFLAGS -fPIC"; fi
1556 case "x$enable_ump" in xyes|xdynamic) EXTRACFLAGS="$EXTRACFLAGS -DXP_UNIX $SHCFLAGS";; esac
1558 dnl Which type of dynamic loader?
1559 if test "$NEEDDLOPEN" = "yes"; then
1562 WAPI_CHECK_FUNC(LoadLibrary,,[LoadLibrary(0);],have_dl=w32)
1563 test $wapi_cv_func_LoadLibrary = yes && have_dl=w32
1565 if test "$have_dl" = "no"; then
1566 AC_CHECK_FUNC(shl_load,have_dl=hpux)
1568 if test "$have_dl" = "no"; then
1569 dnl darwin has both dyld and libdl: in case user installed dlcompat.
1570 dnl dyld is recommended because libdl is a wrapper for dyld.
1571 AC_CHECK_FUNC(NSLinkModule,have_dl=dyld)
1573 if test "$have_dl" = "no" -a "x$ac_cv_lib_dl_dlopen" = xyes; then
1576 if test "$have_dl" = "no"; then
1577 AC_CHECK_FUNC(dlopen,have_dl=dlopen)
1579 if test "$have_dl" = "no"; then
1580 AC_CHECK_FUNC(dld_init,have_dl=dld)
1582 if test "$have_dl" = "no"; then
1583 AC_CHECK_LIB(dld,dld_init,have_dl=dld;lib_dl_opt=-ldld)
1586 AC_MSG_CHECKING(dynamic link method)
1589 AC_MSG_RESULT(use dl_dlopen.c)
1590 SYSEXTRAS="$SYSEXTRAS dl_dlopen.c"
1591 CHECK_DLSYM_UNDERSCORE(AC_DEFINE(DLSYM_NEEDS_UNDERSCORE,1,Define to 1 if you have to add "_" to every identifiers.))
1594 AC_MSG_RESULT(use dl_dld.c)
1595 SYSEXTRAS="$SYSEXTRAS dl_dld.c"
1598 AC_MSG_RESULT(use dl_hpux.c)
1599 SYSEXTRAS="$SYSEXTRAS dl_hpux.c"
1600 LDFLAGS="$LDFLAGS -Wl,-E $LDFLAGS"
1603 AC_MSG_RESULT(use dl_w32.c)
1604 SYSEXTRAS="$SYSEXTRAS dl_w32.c"
1607 AC_MSG_RESULT(use dl_dyld.c)
1608 SYSEXTRAS="$SYSEXTRAS dl_dyld.c"
1612 AC_MSG_WARN(no method to open a shared object)
1617 if test "$NEEDDLOPEN" = "yes"; then
1618 MY_DEFINE(IA_DYNAMIC)
1619 AC_DEFINE_UNQUOTED(SHARED_LIB_EXT,".$so", shared library extention)
1621 dnl EXTRADEFS="$EXTRADEFS \$(DEF_SHLIB_DIR)"
1622 if test "x$GCC" = xyes; then
1623 if test "x$timidity_cv_ccoption_rdynamic" = xyes; then
1624 timidity_LDFLAGS="-rdynamic"
1626 timidity_LDFLAGS="-Wl,--export-dynamic"
1631 AM_CONDITIONAL(NEEDDLOPEN, test "$NEEDDLOPEN" = "yes")
1635 AS_HELP_STRING([--enable-xdnd], [Enable xdnd support (default is no)]),
1636 [ if test "$enableval" = "yes"; then
1637 AC_DEFINE(XDND,1,Define to 1 if you want xdnd support.)
1642 AM_CONDITIONAL(ENABLE_XDND, test "x$enable_xdnd" = "xyes")
1645 dnl Each interface section
1649 AM_CONDITIONAL(ENABLE_NCURSES, false)
1650 CONFIG_INTERFACE(ncurses,NCURSES,n,
1651 AS_HELP_STRING([--enable-ncurses], [Enable ncurses interface (default is no)]),
1652 [ AC_CHECK_HEADERS(ncurses.h ncurses/curses.h curses.h)
1654 dnl #include <ncurses/curses.h> is failure on Plamo Linux 1.3/ncurses 1.9.9e
1655 dnl because <ncurses/curses.h> includes <unctrl.h>:
1656 dnl /usr/include/ncurses/curses.h:34: unctrl.h: No such file or directory
1657 dnl But surely there is unctl.h at /usr/include/ncurses/unctrl.h.
1658 dnl configure must check ncurses header with -I/usr/include/ncurses option.
1660 case "$ac_cv_header_curses_h$ac_cv_header_ncurses_curses_h$ac_cv_header_ncurses_h" in
1662 *) for i in /usr/include /usr/local/include; do
1663 if test -f "$i/ncurses/curses.h" -a -f "$i/ncurses/unctrl.h"; then
1664 AC_MSG_WARN(ncurses test is failure. Please check config.h and common.makefile later)
1665 CPPFLAGS="$CPPFLAGS -I$i/ncurses"
1672 AC_CHECK_LIB(ncurses,initscr,lib_curses_opt=-lncurses,
1673 [ dnl checking pdcurses
1674 AC_CHECK_LIB(curses,PDC_set_ctrl_break,
1675 [ lib_curses_opt=-lcurses
1676 AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
1677 lib_user32_opt="$lib_user32_test"
1679 [ dnl checking libpdcurses
1680 AC_CHECK_LIB(pdcurses,PDC_set_ctrl_break,
1681 [ lib_curses_opt=-lpdcurses
1682 AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
1683 lib_user32_opt="$lib_user32_test"
1685 [ dnl OpenBSD use -lcurses instead of -lncurses.
1688 AC_CHECK_LIB(curses,initscr,lib_curses_opt=-lcurses,
1689 [ AC_MSG_WARN(ncurses interface is not enabled)
1690 enable_ncurses=no ])
1693 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
1694 lib_curses_opt=libpdcurses.lib
1695 AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
1697 AC_MSG_WARN(ncurses interface is not enabled)
1707 [ LIBS="$LIBS $lib_curses_opt"
1710 EXTRALIBS="$EXTRALIBS -lmytinfo"
1713 INTERFACE_SRCS="$INTERFACE_SRCS ncurs_c.c"
1715 [ n_so_libs="$lib_curses_opt"
1718 EXTRALIBS="$EXTRALIBS -lmytinfo"
1723 AM_CONDITIONAL(ENABLE_SLANG, false)
1724 CONFIG_INTERFACE(slang,SLANG,s,
1725 AS_HELP_STRING([--enable-slang], [Enable slang interface (default is no)]),
1726 [ AC_CHECK_LIB(slang,SLang_init_tty,:,
1728 AC_MSG_WARN(slang interface is not enabled)
1730 AC_CHECK_HEADERS(slang/slang.h slang.h)
1734 AC_CHECK_LIB(termcap,initscr,
1735 [ LIBS="$LIBS -lslang -ltermcap"
1736 INTERFACE_SRCS="$INTERFACE_SRCS slang_c.c"
1738 [ AC_MSG_WARN(slang interface is not enabled)
1743 LIBS="$LIBS -lslang"
1744 INTERFACE_SRCS="$INTERFACE_SRCS slang_c.c"
1748 [ s_so_libs="-lslang"
1749 AC_CHECK_LIB(termcap,initscr,s_so_libs="$s_so_libs -ltermcap")
1753 AM_CONDITIONAL(ENABLE_MOTIF, false)
1754 CONFIG_INTERFACE(motif,MOTIF,m,
1755 AS_HELP_STRING([--enable-motif], [Enable motif interface (default is no)]),
1756 [ if test "x$with_x" != xyes; then
1757 AC_MSG_ERROR(motif: --with-x option must be specified)
1759 if test "x$have_xm" != xyes; then
1760 AC_MSG_WARN(Motif library is not found.)
1767 if test "x$have_xprelibs" = xyes; then
1768 lib_xprelibs_opt='-lSM -lICE'
1770 INTERFACE_SRCS="$INTERFACE_SRCS motif_c.c motif_i.c motif_p.c"
1772 [ if test x$have_xprelibs = xyes; then
1773 m_so_libs="-lXext -lSM -lICE"
1775 m_so_libs="$ldflags_x_opt -lXm -lXt $m_so_libs -lX11"
1779 AM_CONDITIONAL(ENABLE_TCLTK, false)
1780 CONFIG_INTERFACE(tcltk,TCLTK,k,
1781 AS_HELP_STRING([--enable-tcltk], [Enable tcltk interface (default is no)]),
1782 [ if test "x$with_x" != xyes; then
1783 AC_MSG_ERROR(tcltk: --with-x option must be specified)
1787 KEEPCPPFLAGS=$CPPFLAGS
1788 KEEPLDFLAGS=$LDFLAGS
1791 CPPFLAGS="$tcl_include_dir $tk_includes $CPPFLAGS"
1792 LDFLAGS="$tcl_libdir $tk_libdir $LDFLAGS"
1793 LIBS="$LIBS $lib_dl_opt"
1797 for l in tcl tcl8.5 tcl8.4 tcl84 tcl8.3 tcl8.0jp tcl7.6jp tcl80jp tcl76jp tcl8.0 tcl7.6 tcl80 tcl76; do
1798 case "x$tcl_lib" in x) AC_CHECK_LIB($l,Tcl_Init,tcl_lib=-l$l);; esac
1800 LIBS="$LIBS $tcl_lib"
1801 for l in tk tk8.5 tk8.4 tcl84 tk8.3 tk8.0jp tk4.2jp tk80jp tk42jp tk8.0 tk4.2 tk80 tk42; do
1802 case "x$tk_lib" in x) AC_CHECK_LIB($l,Tk_Init,tk_lib=-l$l);; esac
1806 if test "x$tcl_lib" = x -o "x$tk_lib" = x; then
1807 CPPFLAGS=$KEEPCPPFLAGS
1808 LDFLAGS=$KEEPLDFLAGS
1810 AC_MSG_WARN(tcl/tk is not enable)
1812 tcltk_dep='tclIndex'
1815 [ LIBS="$tk_lib $tcl_lib -lX11 $LIBS"
1818 EXTRALIBS="$EXTRALIBS -lipc"
1821 INTERFACE_SRCS="$INTERFACE_SRCS tk_c.c"
1823 [ k_so_libs="$tcl_libdir $tk_libdir $tcl_lib $tk_lib $lib_dl_opt"
1826 k_so_libs="$k_so_libs -lipc"
1829 k_so_libs="$k_so_libs -lX11 -lm"
1831 AM_CONDITIONAL(ENABLE_DYNAMIC_TCLTK, test "x$enable_tcltk" = "xdynamic")
1834 AM_CONDITIONAL(ENABLE_EMACS, false)
1835 CONFIG_INTERFACE(emacs,EMACS,e,
1836 AS_HELP_STRING([--enable-emacs], [Enable emacs interface (default is no)]),
1838 [ ELFILES="$ELFILES timidity.el"
1839 INTERFACE_SRCS="$INTERFACE_SRCS emacs_c.c"
1841 [ AM_CONDITIONAL(ENABLE_EMACS, true)
1842 ELFILES="$ELFILES timidity.el" ])
1845 AM_CONDITIONAL(ENABLE_VT100, false)
1846 CONFIG_INTERFACE(vt100,VT100,T,
1847 AS_HELP_STRING([--enable-vt100], [Enable VT100 interface (default is no)]),
1849 [ INTERFACE_SRCS="$INTERFACE_SRCS vt100_c.c vt100.c" ])
1852 AM_CONDITIONAL(ENABLE_XAW, false)
1853 CONFIG_INTERFACE(xaw,XAW,a,
1854 AS_HELP_STRING([--enable-xaw], [Enable athena interface (default is no)]),
1855 [ if test "x$with_x" != xyes; then
1856 AC_MSG_ERROR(xaw: --with-x option must be specified)
1858 if test "x$have_xaw" = "xno"; then
1859 AC_MSG_WARN(X Athena Widget library is not found.)
1862 [ dnl Add -lXext -lSM -lICE -lXmu -lXt {-lXaw|-lXaw3d}
1863 if test "x$have_xext" = xyes; then
1866 if test "x$have_xprelibs" = xyes; then
1867 lib_xprelibs_opt='-lSM -lICE'
1871 if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
1872 XFT_CFLAGS="$(pkg-config --cflags xft)";
1873 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
1874 lib_xft_opt="-lXft";
1881 AC_DEFINE(XAW3D,1,Define to 1 if you use libXaw3d.)
1885 AC_DEFINE(XAWPLUS,1,Define to 1 if you use libXawPlus.)
1886 lib_xaw_opt="-lXpm -lXawPlus"
1889 AC_DEFINE(NEXTAW,1,Define to 1 if you use libneXtaw.)
1890 lib_xaw_opt=-lneXtaw
1893 INTERFACE_SRCS="$INTERFACE_SRCS xaw_c.c xaw_i.c x_trace.c $XDND_SRCS"
1895 [ if test "x$have_xext" = xyes; then
1896 a_so_libs="-lXext -lX11"
1902 a_so_libs="$a_so_libs -lcc_dynamic"
1905 if test "x$have_xprelibs" = xyes; then
1906 a_so_libs="-lSM -lICE $a_so_libs"
1910 a_so_libs="-lXaw -lXmu -lXt $a_so_libs"
1913 AC_DEFINE(XAW3D,1,Define to 1 if you use libXaw3d.)
1914 a_so_libs="-lXaw3d -lXmu -lXt $a_so_libs"
1917 AC_DEFINE(XAWPLUS,1,Define to 1 if you use libXawPlus.)
1918 a_so_libs="-lXawPlus -lXpm -lXmu -lXt $a_so_libs"
1921 AC_DEFINE(NEXTAW,1,Define to 1 if you use libneXtaw.)
1922 a_so_libs="-lneXtaw -lXmu -lXt $a_so_libs"
1925 if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
1926 XFT_CFLAGS="$(pkg-config --cflags xft)";
1927 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
1928 a_so_libs="$a_so_libs -lXft";
1930 a_so_libs="$ldflags_x_opt $a_so_libs"
1932 AM_CONDITIONAL(ENABLE_DYNAMIC_XAW, test "x$enable_xaw" = "xdynamic")
1935 AM_CONDITIONAL(ENABLE_XSKIN, false)
1936 CONFIG_INTERFACE(xskin,XSKIN,i,
1937 AS_HELP_STRING([--enable-xskin], [Enable X skin interface (default is no)]),
1938 [ if test "x$with_x" != xyes; then
1939 AC_MSG_ERROR(xskin: --with-x option must be specified)
1942 [ INTERFACE_SRCS="$INTERFACE_SRCS xskin_c.c xskin_i.c xskin_loadBMP.c xskin_spectrum.c" ],
1943 [ i_so_libs="$ldflags_x_opt -lX11" ])
1946 AM_CONDITIONAL(ENABLE_GTK, false)
1947 CONFIG_INTERFACE(gtk, GTK, g,
1948 AS_HELP_STRING([--enable-gtk], [Enable GTK+ interface (default is no)]),
1949 [ AM_PATH_GTK_2_0(2.0.0,
1950 [AC_DEFINE(HAVE_GTK_2,1,Define to 1 if you have GTK+ 2.x)],
1951 [AM_PATH_GTK(1.1.3,,enable_gtk=no)]) ],
1952 [ LIBS="$LIBS $GTK_LIBS"
1953 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$GTK_CFLAGS)
1954 INTERFACE_SRCS="$INTERFACE_SRCS gtk_c.c gtk_i.c gtk_p.c"
1956 [ if test "x$GCC" = xyes; then
1957 dnl Do not include -rdynamic option in $g_so_libs.
1958 for i in $GTK_LIBS; do
1961 *) g_so_libs="$g_so_libs $i" ;;
1965 g_so_libs="$GTK_LIBS"
1967 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$GTK_CFLAGS) ])
1969 dnl TiMidity Network MIDI Server
1970 AM_CONDITIONAL(ENABLE_SERVER, false)
1971 CONFIG_INTERFACE(server,SERVER,r,
1972 AS_HELP_STRING([--enable-server], [Enable server interface (default is no)]),
1974 [ INTERFACE_SRCS="$INTERFACE_SRCS server_c.c"
1975 AC_CHECK_HEADERS(sys/soundcard.h)
1978 dnl TiMidity ALSA sequencer server
1979 AM_CONDITIONAL(ENABLE_ALSASEQ, false)
1980 CONFIG_INTERFACE(alsaseq,ALSASEQ,A,
1981 AS_HELP_STRING([--enable-alsaseq], [Enable ALSA sequencer server interface
1983 [ INTERFACE_SRCS="$INTERFACE_SRCS alsaseq_c.c"
1987 [ MY_DEFINE(IA_ALSASEQ)
1990 dnl TiMidity Windows synthesizer server
1991 AM_CONDITIONAL(ENABLE_WINSYN, false)
1992 CONFIG_INTERFACE(winsyn,WINSYN,W,
1993 AS_HELP_STRING([--enable-winsyn], [Enable Windows Synthesizer interface
1996 [ WINSYN="yes"; INTERFACE_SRCS="$INTERFACE_SRCS winsyn_c.c rtsyn_common.c rtsyn_winmm.c" ])
1998 dnl TiMidity PortMIDI synthesizer server
1999 AM_CONDITIONAL(ENABLE_PORTMIDISYN, false)
2000 CONFIG_INTERFACE(portmidisyn,PORTMIDISYN,P,
2001 AS_HELP_STRING([--enable-portmidisyn], [Enable PortMIDI Synthesizer interface
2004 [ INTERFACE_SRCS="$INTERFACE_SRCS portmidisyn_c.c rtsyn_common.c rtsyn_portmidi.c" ])
2006 dnl TiMidity Windows synthesizer server
2007 AM_CONDITIONAL(ENABLE_NPSYN, false)
2008 CONFIG_INTERFACE(npsyn,NPSYN,W,
2009 AS_HELP_STRING([--enable-npsyn], [Enable Windows Named Pipe Synthesizer interface
2012 [ NPSYN="yes"; INTERFACE_SRCS="$INTERFACE_SRCS npsyn_c.c rtsyn_common.c rtsyn_npipe.c" ])
2016 dnl TiMidity Windows GUI synthesizer server
2017 AM_CONDITIONAL(ENABLE_W32G_SYN, false)
2018 CONFIG_INTERFACE(winsyng,W32G_SYN,W,
2019 AS_HELP_STRING([--enable-winsyng], [Enable Windows GUI Synthesizer interface
2024 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
2025 INTERFACE_SRCS="$INTERFACE_SRCS w32g_ini.c w32g_pref.c w32g_syn.c w32g_utl.c winsyn_c.c rtsyn_common.c rtsyn_winmm.c"
2026 lib_w32gui_opt='gdi32.lib comctl32.lib comdlg32.lib ole32.lib'
2027 lib_user32_opt='user32.lib'
2028 if test "x$VCPP" = xyes; then
2029 VCPP_LDFLAGS="$VCPP_LDFLAGS -subsystem:windows "
2031 if test "x$BORLANDC" = xyes; then
2032 BORLANDC_START='C0W32.OBJ'
2033 CFLAGS="$CFLAGS -tW"
2034 lib_w32gui_opt="-aa $lib_w32gui_opt"
2036 if test "x$WATCOM_C" = xyes; then
2037 CFLAGS="$CFLAGS -bw"
2038 WATCOM_LDFLAGS="$WATCOM_LDFLAGS SYS nt_win"
2040 if test "x$DMC" = xyes; then
2042 lib_w32gui_opt="$lib_w32gui_opt -L/exet:nt/su:windows:4.0"
2044 if test "x$POCC" = xyes; then
2045 POCC_LDFLAGS="$POCC_LDFLAGS -subsystem:windows "
2048 lib_w32gui_opt='-lgdi32 -lcomctl32 -lcomdlg32 -lole32'
2049 lib_user32_opt='-luser32'
2050 LDFLAGS="-mwindows $LDFLAGS"
2051 INTERFACE_SRCS="$INTERFACE_SRCS w32g_ini.c w32g_pref.c w32g_syn_escaped.c w32g_utl.c winsyn_c.c rtsyn_common.c rtsyn_winmm.c"
2057 AM_CONDITIONAL(ENABLE_W32GUI, false)
2058 CONFIG_INTERFACE(w32gui, W32GUI, w,
2059 AS_HELP_STRING([--enable-w32gui], [Enable Windows GUI interface (default is no)]),
2063 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
2064 INTERFACE_SRCS="$INTERFACE_SRCS w32g_c.c w32g_ini.c w32g_i.c w32g_playlist.c w32g_utl.c w32g_pref.c w32g_subwin.c w32g_subwin2.c w32g_subwin3.c w32g_ut2.c w32g_dib.c wrdt_w32g.c w32g_mag.c"
2065 lib_w32gui_opt='gdi32.lib comctl32.lib comdlg32.lib ole32.lib'
2066 lib_user32_opt='user32.lib'
2067 if test "x$VCPP" = xyes; then
2068 VCPP_LDFLAGS="$VCPP_LDFLAGS -subsystem:windows "
2070 if test "x$BORLANDC" = xyes; then
2071 BORLANDC_START='C0W32.OBJ'
2072 CFLAGS="$CFLAGS -tW"
2073 lib_w32gui_opt="-aa $lib_w32gui_opt"
2075 if test "x$WATCOM_C" = xyes; then
2076 CFLAGS="$CFLAGS -bw"
2077 WATCOM_LDFLAGS="$WATCOM_LDFLAGS SYS nt_win"
2079 if test "x$DMC" = xyes; then
2080 lib_w32gui_opt="$lib_w32gui_opt -L/SU:window"
2083 if test "x$POCC" = xyes; then
2084 POCC_LDFLAGS="$POCC_LDFLAGS -subsystem:windows "
2087 lib_w32gui_opt='-lgdi32 -lcomctl32 -lcomdlg32 -lole32'
2088 lib_user32_opt='-luser32'
2089 LDFLAGS="-mwindows $LDFLAGS"
2090 INTERFACE_SRCS="$INTERFACE_SRCS w32g_c.c w32g_ini.c w32g_i.c w32g_playlist.c w32g_utl.c w32g_pref.c w32g_subwin_escaped.c w32g_subwin2.c w32g_subwin3.c w32g_ut2.c w32g_dib.c wrdt_w32g.c w32g_mag.c"
2094 dnl UMP configuration
2095 AM_CONDITIONAL(ENABLE_PLUGIN, false)
2096 CONFIG_INTERFACE(ump, PLUGIN, p,
2097 AS_HELP_STRING([--enable-ump], [UMP configuration (default is no)]),
2098 [ if test ! -d ump; then
2099 AC_MSG_ERROR(UMP Package is not exists. Can't configure it.)
2101 AC_CHECK_HEADER(X11/xpm.h,,AC_MSG_ERROR([UMP Package needs xpm.h[,] but could not find it.]))
2102 AC_CHECK_LIB(Xpm,XpmCreatePixmapFromData,:,AC_MSG_ERROR([UMP Package needs libXpm.a[,] but could not find it.]))
2103 if test "x$have_xext" = xyes; then
2106 if test "x$have_xprelibs" = xyes; then
2107 lib_xprelibs_opt='-lSM -lICE'
2113 dnl Window Driver interface
2114 AC_ARG_ENABLE(windrv,
2115 AS_HELP_STRING([--enable-windrv], [Windows Driver interface(requires winsyn) ]),
2116 [ if test "$enableval" = "yes"; then
2117 if test "x$VCPP" != "xyes" && test "x$MINGWGCC" != "xyes" && test "x$BORLANDC" != "xyes" && test "x$WATCOM_C" != "xyes" && test "x$DMC" != "xyes" && test "x$POCC" != "xyes"; then
2118 AC_MSG_ERROR(windrv: Only Support VC++ or Mingw or Borland C or Open Watcom PellesC and Digital Mars)
2119 elif test "x$WINSYN" != "xyes"; then
2120 AC_MSG_ERROR(windrv: Driver must have winsyn interface)
2122 AC_DEFINE(WINDRV,1,Define to 1 if you cpmpile windos driver.)
2124 if test "x$WATCOM_C" = "xyes"; then DLLFLAG="-bd" ;fi
2125 if test "x$DMC" = "xyes"; then DLLFLAG="-WD" ;fi
2126 CFLAGS="$CFLAGS -DANOTHER_MAIN "
2129 CFLAGS="$CFLAGS $DLLFLAG "
2132 dnl this rely on CFLAGS and LIBS
2133 AC_ARG_ENABLE(offix,
2134 AS_HELP_STRING([--enable-offix], [Enable offix support (default is no)]),
2135 [ if test "$enableval" = "yes"; then
2136 KEEPCPPFLAGS=$CPPFLAGS
2138 KEEPLDFLAGS=$LDFLAGS
2139 CPPFLAGS="$CPPFLAGS $offix_include_dir"
2140 LDFLAGS="$LDFLAGS $offix_lib_dir"
2141 LIBS="$LIBS $lib_xmu_opt $lib_xt_opt $lib_xprelibs_opt $lib_xext_opt -lX11"
2142 AC_CHECK_LIB(Dnd,DndInitialize,[
2144 lib_offix_opt="-lDnd"
2145 AC_DEFINE(OFFIX,1,Define to 1 if you need offix support)
2147 [ LDFLAGS=$KEEPLDFLAGS
2148 CPPFLAGS=$KEEPCPPFLAGS
2155 AC_ARG_ENABLE(network,
2156 AS_HELP_STRING([--enable-network], [Enable network support (default is no)]),
2157 [ if test "$enableval" = "yes"; then
2158 AC_DEFINE(SUPPORT_SOCKET,1,Define to 1 if you need network support)
2160 AM_CONDITIONAL(ENABLE_NETWORK, test "x$enable_network" = "xyes")
2162 dnl Sound Spectrogram Viewer
2163 AC_ARG_ENABLE(spectrogram,
2164 AS_HELP_STRING([--enable-spectrogram], [Enable Sound Spectrogram Viewer (default is no)]),
2165 [ if test "$enableval" = "yes"; then
2166 if test "x$with_x" != xyes; then
2167 AC_MSG_ERROR(spectrogram: --with-x option must be specified)
2169 AC_DEFINE(SUPPORT_SOUNDSPEC,1,Define to 1 if you need spectrogram vewer.)
2171 AM_CONDITIONAL(ENABLE_SOUND_SPEC, test "x$enable_spectrogram" = "xyes")
2173 dnl Wave Spline Interpolations
2174 AC_ARG_ENABLE(spline,
2175 AS_HELP_STRING([--enable-spline=[method]],
2176 [Specify spline method. one of no,linear,cubic,lagrange,newton,gauss (default is linear)]),
2177 [ case "x$enableval" in
2179 AC_DEFINE(DEFAULT_RESAMPLATION,resample_linear,Define resampler.)
2182 AC_DEFINE(DEFAULT_RESAMPLATION,resample_cspline,Define resampler.)
2185 AC_DEFINE(DEFAULT_RESAMPLATION,resample_lagrange,Define resampler.)
2188 AC_DEFINE(DEFAULT_RESAMPLATION,resample_newton,Define resampler.)
2191 AC_DEFINE(DEFAULT_RESAMPLATION,resample_gauss,Define resampler.)
2194 AC_DEFINE(DEFAULT_RESAMPLATION,resample_none,Define resampler.)
2197 AC_MSG_ERROR(Invalid method of --enable-spline)
2203 AS_HELP_STRING([--enable-wrd], [Enable WRD interface for X (default is no)]),
2204 [ if test "$enableval" = "yes"; then
2205 if test "x$with_x" = xyes; then
2208 AC_MSG_ERROR(wrd: --with-x option must be specified)
2210 AC_DEFINE(WRDT_X,1,Define to 1 if you need wrd support for X.)
2211 enable_sherry_wrd=yes
2212 AC_CHECK_LIB(z,zlibVersion,:,enable_sherry_wrd=no)
2213 AC_CHECK_HEADER(png.h,,enable_sherry_wrd=no)
2214 AC_CHECK_LIB(png,png_init_io,:,enable_sherry_wrd=no,-lz)
2215 if test "$enable_sherry_wrd" = yes; then
2216 AC_DEFINE(ENABLE_SHERRY,1,Define to 1 if you enable Sherry WRD)
2220 AC_MSG_WARN([Sherry WRD is disabled: png.h, libpng.a, libz.a are required])
2222 if test "x$have_xext" = xyes; then
2228 dnl end of interfaces
2235 AM_CONDITIONAL(ENABLE_WRD, test "x$enable_wrd" = "xyes")
2236 AM_CONDITIONAL(W32G_GUI, test "x$W32G_GUI" = xyes)
2237 AM_CONDITIONAL(WINDRV, test "x$WINDRV" = xyes)
2238 AM_CONDITIONAL(MSYS, test "x$MSYS" = xyes)
2239 AM_CONDITIONAL(VCPP, test "x$VCPP" = xyes)
2240 AM_CONDITIONAL(POCC, test "x$POCC" = xyes)
2241 AM_CONDITIONAL(BORLANDC, test "x$BORLANDC" = xyes)
2242 AM_CONDITIONAL(WATCOM_C, test "x$WATCOM_C" = xyes)
2243 AM_CONDITIONAL(DMC, test "x$DMC" = xyes)
2244 AM_CONDITIONAL(MINGWGCC, test "x$MINGWGCC" = xyes)
2246 AM_CONDITIONAL(W32READDIR, test "x$W32READDIR" = "xyes")
2248 SET_UNIQ_WORDS(LDFLAGS,$LDFLAGS)
2249 SET_UNIQ_WORDS(SHLDFLAGS,$SHLDFLAGS)
2250 SET_UNIQ_WORDS(CFLAGS,$EXTRACFLAGS $CFLAGS)
2251 SET_UNIQ_WORDS(CPPFLAGS,$CPPFLAGS $EXTRADEFS)
2253 if test "x$oss_device" != x; then
2254 AC_DEFINE_UNQUOTED(OSS_DEVICE,"$oss_device", oss device name)
2257 if test "x$TIMIDITY_OUTPUT_ID" != x; then
2258 AC_DEFINE_UNQUOTED(TIMIDITY_OUTPUT_ID,"$TIMIDITY_OUTPUT_ID", the output specification)
2261 if test "x$au_enable_nas" = "xyes" -o \
2262 "x$enable_motif" = "xyes" -o \
2263 "x$enable_tcltk" = "xyes" -o \
2264 "x$enable_xaw" = "xyes" -o \
2265 "x$enable_xskin" = "xyes" -o \
2266 "x$enable_spectrogram" = "xyes"; then
2267 dnl Order of X-library is: -lXdnd -lXm -lXaw -lXft -lXmu -lXt -lSM -lICE -lXext -lX11
2268 LIBS="$lib_offix_opt $lib_xm_opt $lib_xaw_opt $lib_xft_opt $lib_xmu_opt $lib_xt_opt $lib_xprelibs_opt $lib_xext_opt -lX11 $LIBS"
2270 LIBS="$LIBS $lib_dl_opt $lib_png_opt $lib_zip_opt $lib_user32_opt $lib_w32gui_opt $EXTRALIBS"
2271 SHLD="$SHLD $SHLDFLAGS"
2273 AC_SUBST(BORLANDC_START)
2274 AC_SUBST(BORLANDC_LDFLAGS)
2276 AC_SUBST(timidity_LDFLAGS)
2277 AC_SUBST(WATCOM_LDFLAGS)
2278 AC_SUBST(DMC_LDFLAGS)
2279 AC_SUBST(VCPP_LDFLAGS)
2280 AC_SUBST(POCC_LDFLAGS)
2287 AC_SUBST(dynamic_targets)
2292 AC_SUBST(program_transform_name)
2293 AC_SUBST(INTERFACE_SRCS)
2294 AC_SUBST(pkgdatadir)
2304 doc/ja_JP.eucJP/Makefile
2306 interface/motif_bitmaps/Makefile
2307 interface/bitmaps/Makefile
2308 interface/pixmaps/Makefile