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
526 dnl keyword "volatile" check
527 AC_CACHE_CHECK(volatile declaration,timidity_cv_type_volatile,
528 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [[volatile int x]])],[timidity_cv_type_volatile=yes],[timidity_cv_type_volatile=no]))
529 if test $timidity_cv_type_volatile = no; then
530 AC_DEFINE(NO_VOLATILE,1,Define to 1 if you cannot use volatile keyword)
533 dnl union usenum check
534 AC_CACHE_CHECK(union semun declaration,timidity_cv_type_union_semun,
535 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
536 #include <sys/types.h>
539 ]], [[union semun x]])],[timidity_cv_type_union_semun=yes],[timidity_cv_type_union_semun=no]))
540 if test $timidity_cv_type_union_semun = yes; then
541 AC_DEFINE(HAVE_UNION_SEMUN,1,Define to 1 if you use semun keyword)
544 dnl Cygnus and Mingw memory struct optiontest
545 if test "x$MSYS" = xyes ; then
549 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
550 if test -z "$ac_cv_prog_CC"; then
553 our_gcc="$ac_cv_prog_CC"
555 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
557 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
558 msnative_struct='-fnative-struct'
562 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
563 msnative_struct='-mms-bitfields'
567 if test x"$msnative_struct" = x ; then
568 AC_MSG_RESULT([no way])
569 AC_MSG_WARN([produced binary will be incompatible with windows' GUI ])
571 CFLAGS="$CFLAGS $msnative_struct"
572 CPPFLAGS="$CPPFLAGS $msnative_struct"
573 AC_MSG_RESULT([${msnative_struct}])
580 dnl Cygnus Mingw32 mmsystem check
581 if test "x$MSYS" = xyes ; then
582 AC_CACHE_CHECK(Cygwin new mmsystem,timidity_cv_header_new_mmsystem,
583 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
585 #include <mmsystem.h>
586 ]], [[return WOM_OPEN != 0x3BB]])],[timidity_cv_header_new_mmsystem=yes],[timidity_cv_header_new_mmsystem=no]))
587 if test $timidity_cv_header_new_mmsystem = yes; then
588 AC_DEFINE(HAVE_NEW_MMSYSTEM,1,Define to 1 if you have <mmsystem.h> file)
592 # Checks for library functions.
593 AC_FUNC_ERROR_AT_LINE
594 if test "x$DMC" != xyes ; then
598 if test "x$DMC" != xyes ; then
601 AC_FUNC_SETVBUF_REVERSED
603 if test "x$VCPP" != xyes && test "x$BORLANDC" != xyes && test "x$WATCOM_C" != "xyes" && test "x$POCC" != "xyes"; then
643 if test "x$VCPP" = xyes; then
644 AC_DEFINE(RETSIGTYPE,int)
645 AC_DEFINE(HAVE_GETCWD,1)
647 if test "x$POCC" = xyes; then
648 AC_DEFINE(HAVE_GETCWD,1)
649 AC_DEFINE(HAVE_GETHOSTBYNAME,1)
650 AC_DEFINE(HAVE_POPEN,1)
651 AC_DEFINE(HAVE_SELECT,1)
652 AC_DEFINE(HAVE_SNPRINTF,1)
653 AC_DEFINE(HAVE_STRDUP,1)
654 AC_DEFINE(HAVE_STRERROR,1)
655 AC_DEFINE(HAVE_STRCASECMP,1)
656 AC_DEFINE(HAVE_STRSTR,1)
657 AC_DEFINE(HAVE_SOCKET,1)
658 AC_DEFINE(HAVE_VSNPRINTF,1)
659 AC_DEFINE(HAVE_GETOPT,1)
660 AC_DEFINE(TIMID_VERSION,[$(PACKAGE_VERSION)],[for windows gui])
662 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes; then
663 AC_DEFINE(HAVE_GETHOSTBYNAME,1)
664 AC_DEFINE(HAVE_POPEN,1)
665 AC_DEFINE(popen,_popen,[for VC])
666 AC_DEFINE(pclose,_pclose,[for VC])
667 AC_DEFINE(HAVE_SELECT,1)
668 AC_DEFINE(HAVE_SNPRINTF,1)
669 AC_DEFINE(HAVE_STRDUP,1)
670 AC_DEFINE(HAVE_STRERROR,1)
671 AC_DEFINE(HAVE_STRNCASECMP,1)
672 AC_DEFINE(HAVE_STRSTR,1)
673 AC_DEFINE(snprintf,_snprintf,[for VC])
674 AC_DEFINE(HAVE_SOCKET,1)
675 AC_DEFINE(HAVE_VSNPRINTF,1)
676 dnl AC_DEFINE(vsnprintf,_vsnprintf,[for VC])
677 AC_DEFINE(TIMID_VERSION,[$(PACKAGE_VERSION)],[for windows gui])
680 AC_CHECK_FUNC(getopt_long,
681 AC_DEFINE([HAVE_GETOPT_LONG],1,[Define to 1 if you have `getopt_long' function])
682 tm_cv_needgetopt="no",
683 tm_cv_needgetopt="yes")
684 AM_CONDITIONAL([NEEDGETOPT], test "x$tm_cv_needgetopt" = "xyes")
686 AC_CHECK_FUNC(open_memstream, [
687 AC_DEFINE([HAVE_OPEN_MEMSTREAM],1,[Define to 1 if you have `open_memstream' function])
691 dnl *** va_copy checks (from GLIB)
694 AC_CACHE_CHECK([for an implementation of va_copy()],lib_cv_va_copy,[
695 AC_RUN_IFELSE([AC_LANG_SOURCE([[
697 void f (int i, ...) {
698 va_list args1, args2;
700 va_copy (args2, args1);
701 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
703 va_end (args1); va_end (args2);
709 [lib_cv_va_copy=yes],
710 [lib_cv_va_copy=no],[])
713 AC_CACHE_CHECK([for an implementation of __va_copy()],lib_cv___va_copy,[
714 AC_RUN_IFELSE([AC_LANG_SOURCE([[
716 void f (int i, ...) {
717 va_list args1, args2;
719 __va_copy (args2, args1);
720 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
722 va_end (args1); va_end (args2);
728 [lib_cv___va_copy=yes],
729 [lib_cv___va_copy=no],[])
732 if test "x$lib_cv_va_copy" = "xyes"; then
734 else if test "x$lib_cv___va_copy" = "xyes"; then
735 va_copy_func=__va_copy
739 if test -n "$va_copy_func"; then
740 AC_DEFINE_UNQUOTED(VA_COPY,$va_copy_func,[A 'va_copy' style function])
743 AC_CACHE_CHECK([whether va_lists can be copied by value],lib_cv_va_val_copy,[
744 AC_RUN_IFELSE([AC_LANG_SOURCE([[
746 void f (int i, ...) {
747 va_list args1, args2;
750 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
752 va_end (args1); va_end (args2);
758 [lib_cv_va_val_copy=yes],
759 [lib_cv_va_val_copy=no],[])
762 if test "x$lib_cv_va_val_copy" = "xno"; then
763 AC_DEFINE(VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values])
766 # Checks on cygnus and MSYS
767 if test "x$MSYS" = xyes ; then
768 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
770 AC_CHECK_FUNC(opendir,,
771 [ EXTRADEFS="$EXTRADEFS -D__W32READDIR__"
774 *)EXTRADEFS="$EXTRADEFS -D__W32READDIR__"
778 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
779 EXTRALIBS="$EXTRALIBS ws2_32.lib"
780 EXTRADEFS="$EXTRADEFS -DWINSOCK"
782 AC_CHECK_FUNC(socket,,
783 WAPI_CHECK_LIB(ws2_32,WSAStartup,
784 [#include <winsock.h>],
786 [ EXTRALIBS="$EXTRALIBS -lws2_32"
787 EXTRADEFS="$EXTRADEFS -DWINSOCK" ]
793 # Checks on extra paths
796 AC_ARG_WITH(tcl-includes,
797 AS_HELP_STRING([--with-tcl-includes=DIR], [Tcl include file path]),
798 [ if test ! -d $withval; then
799 AC_MSG_WARN($withval is not found.)
801 tcl_include_dir="-I$withval"
803 AC_ARG_WITH(tcl-libs,
804 AS_HELP_STRING([--with-tcl-libs=DIR], [Tcl library file path]),
805 [ if test ! -d $withval; then
806 AC_MSG_WARN($withval is not found.)
808 tcl_libdir="-L$withval" ])
809 AC_ARG_WITH(tk-includes,
810 AS_HELP_STRING([--with-tk-includes=DIR], [Tk include file path]),
811 [ if test ! -d $withval; then
812 AC_MSG_WARN($withval is not found.)
814 tk_includes="-I$withval" ])
816 AS_HELP_STRING([--with-tk-libs=DIR], [Tk library file path]),
817 [ if test ! -d $withval; then
818 AC_MSG_WARN($withval is not found.)
820 tk_libdir="-L$withval" ])
823 AC_ARG_WITH(offix-includes,
824 AS_HELP_STRING([--with-offix-includes=DIR], [Offix include file path]),
825 [ if test ! -d $withval; then
826 AC_MSG_WARN($withval is not found.)
828 offix_include_dir="-I$withval" ])
829 AC_ARG_WITH(offix-libs,
830 AS_HELP_STRING([--with-offix-libs=DIR], [Offix include file path]),
831 [ if test ! -d $withval; then
832 AC_MSG_WARN($withval is not found.)
834 offix_lib_dir="-L$withval" ])
840 dnl default(d): auto selection
841 dnl oss(d): OSS /dev/dsp
842 dnl alsa(d): ALSA pcm device
843 dnl sun(d): SunOS /dev/audio
844 dnl hpux(d): HPUX /dev/audio
845 dnl irix(d): IRIX audio
846 dnl mme(d): OSF/1 MME
847 dnl sb_dsp(d): BSD/OS 2.0 /dev/sb_dsp
848 dnl w32(d): Windows MMS
849 dnl darwin(d): Mac OS X pcm device
850 dnl alsa(s): ALSA pcm device
851 dnl alib(A): HPUX network audio (Alib)
852 dnl nas(n): Network Audio System
855 dnl portaudio(p) PortAudio
856 dnl npipe(N) Windows named pipe;
857 dnl vorbis(v): Ogg Vorbis
858 dnl flac(F): FLAC / OggFLAC
859 dnl speex(S): Ogg Speex
860 dnl gogo(g): MP3 GOGO
864 audio_targets='default oss alsa sun hpux irix mme sb_dsp w32 alib nas arts esd vorbis flac gogo portaudio npipe jack ao'
866 AC_ARG_WITH(nas-library,
867 AS_HELP_STRING([--with-nas-library=library], [NAS absolute library path(Don't use -laudio)]))
868 AC_ARG_WITH(nas-includes,
869 AS_HELP_STRING([--with-nas-includes=DIR], [NAS include files are in dir]))
873 [ --enable-audio[=mode_list] Enable audio (Specify comma separated mode list):
874 default: Automatically select audio device.
876 sun: SunOS /dev/audio
877 hpux: HPUX /dev/audio
878 irix: IRIX audio library
880 sb_dsp: BSD/OS 2.0 /dev/sb_dsp
882 darwin: Darwin CoreAudio
883 alsa: ALSA pcm device
884 alib: HPUX network audio (Alib)
885 nas: NAS - Network Audio System
887 esd: EsounD - Enlightened Sound Daemon
889 npipe: Named Pipe(windows)
895 gogo: MP3 GOGO (Only Windows is supported)
897 [ enable_audio=$enableval
898 have_audio_opt=yes ],
903 test "x$enable_audio" = xyes && enable_audio=default
905 if test "x$enable_audio" != xno; then
906 for i in `echo $enable_audio | sed 's/,/ /g'`; do
907 eval "au_enable_$i=yes"
911 dnl Turn on default output mode
913 AC_ARG_WITH(default-output,
914 AS_HELP_STRING([--with-default-output=<mode>],
915 [Specify default output mode (optional):
916 (default|alsa|alib|arts|nas|
917 esd|wav|au|aiff|list|vorbis|flac|speex|
918 gogo|portaudio|npipe|jack|ao)]),
919 [ if test "$enable_audio" != no; then
920 DEFAULT_PLAYMODE=$withval
921 eval "au_enable_$DEFAULT_PLAYMODE=yes"
923 AC_MSG_WARN([--with-default-output=$withval: audio is not enabled])
926 dnl compatibility matters.
927 dnl AC_ARG_ENABLE(esd,
928 dnl [ --enable-esd EsounD (Obsoleted. Use --enable-audio=esd)],
929 dnl [ au_enable_esd=$enableval ])
930 dnl AC_ARG_ENABLE(nas,
931 dnl [ --enable-nas NAS (Obsoleted. Use --enable-audio=nas)],
932 dnl [ au_enable_nas=$enableval ])
933 dnl AC_ARG_ENABLE(alsa,
934 dnl [ --enable-alsa ALSA (Obsoleted. Use --enable-audio=alsa)],
935 dnl [ au_enable_alsa=$enableval ])
937 dnl target-specific defaults
938 if test "x$au_enable_default" = xyes; then
940 *-*-linux*|*-*-freebsd*)
946 *-*-bsdi2.1|*-*-bsdi3.?|*-*-bsdi4.?)
980 AC_MSG_WARN(No --enable-audio=default audio for $target)
986 # Each audio mode's configurations
988 AC_MSG_CHECKING(enable_audio=oss)
989 if test "x$au_enable_oss" = xyes; then
990 EXTRADEFS="$EXTRADEFS -DAU_OSS"
991 SYSEXTRAS="$SYSEXTRAS oss_a.c"
992 if test "x$ac_cv_header_sys_soundcard_h" = xyes; then
993 AC_MSG_RESULT(yes - <sys/soundcard.h>)
997 dnl <linux/soundcard.h> or <machine/soundcard.h>
1001 if test "x$ac_cv_header_soundcard_h" = xyes; then
1002 AC_MSG_RESULT(yes - <soundcard.h>)
1004 AC_MSG_WARN(<sys/soundcard.h> is not found)
1009 AC_CHECK_LIB(ossaudio,open)
1011 dnl Why OpenBSD use /dev/audio instead of /dev/dsp for OSS
1014 if test ! -e "/dev/dsp"; then
1015 oss_device=/dev/audio
1024 AC_MSG_CHECKING(enable_audio=sun)
1025 if test "x$au_enable_sun" = xyes; then
1028 if test -f /usr/demo/SOUND/libaudio.a; then
1029 EXTRALIBS="$EXTRALIBS /usr/demo/SOUND/libaudio.a"
1032 AC_MSG_RESULT(Notice: libaudio.a is not found [(ignore)])
1036 if test -f /usr/demo/SOUND/lib/libaudio.a; then
1037 EXTRALIBS="$EXTRALIBS /usr/demo/SOUND/lib/libaudio.a"
1040 AC_MSG_RESULT(Notice: libaudio.a is not found [(ignore)])
1043 *) AC_MSG_RESULT(yes)
1046 EXTRADEFS="$EXTRADEFS -DAU_SUN"
1047 SYSEXTRAS="$SYSEXTRAS sun_a.c"
1053 AC_MSG_CHECKING(enable_audio=hpux)
1054 if test "x$au_enable_hpux" = xyes; then
1056 *-*-hpux*) AC_MSG_RESULT(yes) ;;
1057 *) AC_MSG_WARN(may not work on $target) ;;
1059 EXTRADEFS="$EXTRADEFS -DAU_HPUX_AUDIO"
1060 SYSEXTRAS="$SYSEXTRAS hpux_d_a.c"
1066 AC_MSG_CHECKING(enable_audio=irix)
1067 if test "x$au_enable_irix" = xyes; then
1069 *-sgi-irix5*|*-sgi-irix6.2)
1070 EXTRADEFS="$EXTRADEFS -DAU_AUDRIV -DSGI_OLDAL"
1074 EXTRADEFS="$EXTRADEFS -DAU_AUDRIV -DSGI_NEWAL"
1077 *) AC_MSG_WARN(may not work on $target) ;;
1079 SYSEXTRAS="$SYSEXTRAS audriv_a.c audriv_al.c"
1080 EXTRALIBS="$EXTRASLIBS -laudio"
1086 AC_MSG_CHECKING(enable_audio=mme)
1087 if test "x$au_enable_mme" = xyes; then
1089 *-dec-*) AC_MSG_RESULT(yes) ;;
1090 *) AC_MSG_WARN(may not work on $target) ;;
1092 EXTRADEFS="$EXTRADEFS -DAU_DEC -DAU_AUDRIV"
1093 SYSEXTRAS="$SYSEXTRAS audriv_a.c audriv_mme.c"
1094 CPPFLAGS="$CPPFLAGS -I/usr/opt/MME210/include"
1095 EXTRALIBS="$EXTRALIBS /usr/opt/MME220/lib/libmme.a"
1101 AC_MSG_CHECKING(enable_audio=sb_dsp)
1102 if test "x$au_enable_sb_dsp" = xyes; then
1104 *-*-bsdi2.0) AC_MSG_RESULT(yes) ;;
1105 *) AC_MSG_WARN(may not work on $target) ;;
1107 EXTRADEFS="$EXTRADEFS -DAU_BSDI -DDEFAULT_RATE=22500"
1108 SYSEXTRAS="$SYSEXTRAS bsd20_a.c"
1114 AC_MSG_CHECKING(enable_audio=w32)
1115 if test "x$au_enable_w32" = xyes; then
1124 AC_MSG_WARN(may not work on $target)
1127 SYSEXTRAS="$SYSEXTRAS w32_a.c"
1128 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
1129 EXTRALIBS="$EXTRALIBS winmm.lib"
1131 EXTRALIBS="$EXTRALIBS -lwinmm"
1133 EXTRADEFS="$EXTRADEFS -DAU_W32"
1138 dnl Mac OS X / darwin-x86
1139 AC_MSG_CHECKING(enable_audio=darwin)
1140 if test "x$au_enable_darwin" = xyes; then
1141 EXTRADEFS="$EXTRADEFS -DAU_DARWIN"
1142 SYSEXTRAS="$SYSEXTRAS darwin_a.c"
1143 EXTRALIBS="$EXTRALIBS -framework CoreAudio"
1144 dnl just say yes or no :-P
1147 AC_MSG_RESULT(yes);;
1149 AC_MSG_WARN(may not work on $target)
1157 dnl alsa - Advanced Linux Sound Architecture
1158 AC_MSG_CHECKING(enable_audio=alsa)
1159 if test "x$au_enable_alsa" = xyes; then
1160 AC_MSG_RESULT([yes, configuring alsa])
1163 KEEPLDFLAGS=$LDFLAGS
1165 if test "x$alsa_found" = "xyes" ; then
1166 dnl AC_MSG_RESULT(yes)
1167 EXTRADEFS="$EXTRADEFS -DAU_ALSA"
1168 SYSEXTRAS="$SYSEXTRAS alsa_a.c"
1169 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$ALSA_CFLAGS)
1170 LIBS="$LIBS $ALSA_LIBS"
1171 AC_CHECK_FUNCS(snd_seq_port_info_set_timestamping)
1173 AC_MSG_WARN(Couldn't configure alsa.)
1176 LDFLAGS=$KEEPLDFLAGS
1183 AC_MSG_CHECKING(enable_audio=alib)
1184 if test "x$au_enable_alib" = xyes; then
1186 *-*-hpux*) AC_MSG_RESULT(yes) ;;
1187 *) AC_MSG_WARN(may not work on $target) ;;
1189 SYSEXTRAS="$SYSEXTRAS hpux_a.c"
1190 EXTRADEFS="$EXTRADEFS -DAU_HPUX_ALIB"
1191 if test -d /opt/audio/include; then
1192 CPPFLAGS="$CPPFLAGS -I/opt/audio/include"
1194 if test -d /opt/audio/lib; then
1195 EXTRALIBS="$EXTRALIBS -L/opt/audio/lib"
1197 EXTRALIBS="$EXTRALIBS -lAlib"
1203 AC_MSG_CHECKING(enable_audio=nas)
1204 if test "x$au_enable_nas" = xyes; then
1205 if test "x$with_x" != xyes; then
1206 AC_MSG_ERROR(nas: --with-x option must be specified)
1208 EXTRADEFS="$EXTRADEFS -DAU_NAS"
1209 SYSEXTRAS="$SYSEXTRAS nas_a.c"
1211 dnl -laudio conflicts another audio library,
1212 dnl so I specify NAS library with absolete path.
1214 if test "x$with_nas_library" != x; then
1215 AC_MSG_RESULT($with_nas_library);
1216 EXTRALIBS="$EXTRALIBS $with_nas_library"
1219 MY_SEARCH_LIBS(AuOpenServer,
1220 [$x_libraries/libaudio.a \
1221 /usr/lib/libaudio.so \
1222 /usr/lib/libaudio.a ],
1223 [ AC_MSG_RESULT(NAS: $timidity_cv_search_AuOpenServer)
1224 EXTRALIBS="$EXTRALIBS $timidity_cv_search_AuOpenServer"],
1225 [AC_MSG_WARN(NAS library is not found.)])
1227 test "x$with_nas_includes" != x && CPPFLAGS="$CPPFLAGS -I$with_nas_includes"
1229 if test "x$have_xext" = xyes; then
1232 if test "x$have_xprelibs" = xyes; then
1233 lib_xprelibs_opt='-lSM -lICE'
1240 AC_MSG_CHECKING(enable_audio=arts)
1241 if test "x$au_enable_arts" = xyes; then
1242 AC_MSG_RESULT([yes, configuring aRts])
1243 dnl **** Check for aRts Sound Server ****
1244 AC_PATH_PROG(ARTSCCONFIG, artsc-config)
1245 if test x$ARTSCCONFIG != x -a x$ARTSCCONFIG != x'"$ARTSCCONFIG"';
1248 for i in `$ARTSCCONFIG --cflags`
1251 -I*) ARTSC_CFLAGS="$ARTSC_CFLAGS $i";;
1254 ARTSC_LIBS=`$ARTSCCONFIG --libs`
1255 save_CFLAGS="$CFLAGS"
1256 CFLAGS="$CFLAGS $ARTSC_CFLAGS"
1257 AC_TRY_COMPILE([#include <artsc.h>],[arts_stream_t stream;],
1258 [AC_SUBST(ARTSLIBS, $ARTSC_LIBS)
1259 AC_SUBST(ARTSINCL, $ARTSC_CFLAGS)
1260 AC_DEFINE(HAVE_ARTS, 1, [Define if you have ARTS sound server])
1263 CFLAGS="$save_CFLAGS"
1266 if test "$have_arts" = "yes"; then
1267 dnl AC_MSG_RESULT(aRts: Enabled)
1268 EXTRADEFS="$EXTRADEFS -DAU_ARTS"
1269 SYSEXTRAS="$SYSEXTRAS aRts_a.c"
1270 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$ARTSC_CFLAGS)
1271 LIBS="$LIBS $ARTSC_LIBS"
1273 AC_MSG_WARN(aRts: Couldn't configure)
1280 AC_MSG_CHECKING(enable_audio=esd)
1281 if test "x$au_enable_esd" = xyes; then
1282 AC_MSG_RESULT([yes, configuring esd])
1285 KEEPLDFLAGS=$LDFLAGS
1289 LDFLAGS=$KEEPLDFLAGS
1290 if test "x$no_esd" = x; then
1291 dnl AC_MSG_RESULT(EsounD: Enabled)
1292 EXTRADEFS="$EXTRADEFS -DAU_ESD"
1293 SYSEXTRAS="$SYSEXTRAS esd_a.c"
1294 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$ESD_CFLAGS)
1295 LIBS="$LIBS $ESD_LIBS"
1297 AC_MSG_WARN(EsounD: Couldn't configure)
1304 AC_MSG_CHECKING(enable_audio=portaudio)
1305 if test "x$au_enable_portaudio" = xyes; then
1307 if test "x$MSYS" = xyes ; then
1308 SYSEXTRAS="$SYSEXTRAS portaudio_a.c w32_portaudio_dll.c"
1309 EXTRALIBS="$EXTRALIBS -lportaudio"
1310 EXTRADEFS="$EXTRADEFS -DAU_PORTAUDIO -DAU_PORTAUDIO_DLL"
1312 SYSEXTRAS="$SYSEXTRAS portaudio_a.c"
1313 EXTRALIBS="$EXTRALIBS -lportaudio"
1314 EXTRADEFS="$EXTRADEFS -DAU_PORTAUDIO"
1320 dnl npipe (windows named pipe)
1321 AC_MSG_CHECKING(enable_audio=npipe)
1322 if test "x$au_enable_npipe" = xyes; then
1324 SYSEXTRAS="$SYSEXTRAS npipe_a.c"
1325 EXTRADEFS="$EXTRADEFS -DAU_NPIPE"
1332 AC_MSG_CHECKING(enable_audio=jack)
1333 if test "x$au_enable_jack" = xyes; then
1335 SYSEXTRAS="$SYSEXTRAS jack_a.c"
1336 EXTRALIBS="$EXTRALIBS $(pkg-config --libs jack)"
1337 EXTRADEFS="$EXTRADEFS -DAU_JACK $(pkg-config --cflags jack)"
1343 AC_MSG_CHECKING(enable_audio=ao)
1344 if test "x$au_enable_ao" = xyes; then
1345 AC_MSG_RESULT([yes, configuring ao])
1347 if test "x$no_ao" = "x" ; then
1348 # AC_MSG_RESULT(yes)
1349 EXTRADEFS="$EXTRADEFS -DAU_AO"
1350 SYSEXTRAS="$SYSEXTRAS ao_a.c"
1351 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$AO_CFLAGS)
1352 LIBS="$LIBS $AO_LIBS"
1354 AC_MSG_WARN(Couldn't configure libao.)
1361 AC_MSG_CHECKING(enable_audio=vorbis)
1362 if test "x$au_enable_vorbis" = xyes; then
1363 AC_MSG_RESULT([yes, configuring vorbis])
1364 if test "x$MSYS" = "xyes" && test "x$MINGWGCC" != "xyes" ; then
1365 AC_CHECK_HEADER(vorbis/vorbisenc.h,, [
1366 EXTRADEFS="-DAU_VORBIS_DLL $EXTRADEFS"
1367 SYSEXTRAS="$SYSEXTRAS w32g_vorbisenc_dll.c w32g_vorbis_dll.c w32g_ogg_dll.c"
1373 SYSEXTRAS="$SYSEXTRAS vorbis_a.c"
1374 EXTRADEFS="$EXTRADEFS -DAU_VORBIS $OGG_CFLAGS $VORBIS_CFLAGS"
1375 EXTRALIBS="$EXTRALIBS $VORBIS_LIBS $VORBISENC_LIBS $OGG_LIBS"
1376 if test "x$MSYS" = "xyes" && test "x$MINGWGCC" = "xyes" ; then
1377 EXTRADEFS="-DAU_VORBIS_DLL $EXTRADEFS"
1378 SYSEXTRAS="$SYSEXTRAS w32g_vorbisenc_dll.c w32g_vorbis_dll.c w32g_ogg_dll.c"
1381 AC_MSG_WARN([Unable to configure vorbis, but ogg is there (???)])
1384 AC_MSG_WARN(Unable to configure vorbis!)
1392 dnl libFLAC - Free Lossless Audio Codec
1393 if test "x$MSYS" = xyes ; then
1394 AC_MSG_CHECKING(enable_audio=flac)
1395 if test "x$au_enable_flac" = xyes; then
1396 AC_MSG_RESULT([yes, configuring flac])
1397 SYSEXTRAS="$SYSEXTRAS flac_a.c w32_libFLAC_dll.c w32_libOggFLAC_dll.c"
1398 AC_CHECK_HEADER(FLAC/all.h, [
1399 EXTRADEFS="$EXTRADEFS -DAU_FLAC -DAU_FLAC_DLL"
1401 AC_CHECK_HEADER(OggFLAC/all.h, [
1402 EXTRADEFS="$EXTRADEFS -DAU_OGGFLAC -DAU_OGGFLAC_DLL"
1404 dnl AM_PATH_LIBFLAC([
1405 dnl EXTRADEFS="$EXTRADEFS -DAU_FLAC -DAU_FLAC_DLL"
1406 dnl EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBFLAC_CFLAGS)
1407 dnl LIBS="$LIBS $LIBFLAC_LIBS"
1409 dnl AM_PATH_LIBOGGFLAC([
1410 dnl EXTRADEFS="$EXTRADEFS -DAU_OGGFLAC -DAU_OGGFLAC_DLL"
1411 dnl EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBOGGFLAC_CFLAGS)
1412 dnl LIBS="$LIBS $LIBOGGFLAC_LIBS"
1418 AC_MSG_CHECKING(enable_audio=flac)
1419 if test "x$au_enable_flac" = xyes; then
1420 AC_MSG_RESULT([yes, configuring flac])
1421 SYSEXTRAS="$SYSEXTRAS flac_a.c"
1423 EXTRADEFS="$EXTRADEFS -DAU_FLAC"
1424 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBFLAC_CFLAGS)
1425 LIBS="$LIBS $LIBFLAC_LIBS"
1427 AM_PATH_LIBOGGFLAC([
1428 EXTRADEFS="$EXTRADEFS -DAU_OGGFLAC"
1429 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$LIBOGGFLAC_CFLAGS)
1430 LIBS="$LIBS $LIBOGGFLAC_LIBS"
1437 AC_MSG_CHECKING(enable_audio=speex)
1438 if test "x$au_enable_speex" = xyes; then
1439 AC_CACHE_VAL(timidity_cv_have_speex,
1441 #include <speex/speex.h>
1442 #include <ogg/ogg.h>
1447 [have_speex=yes], [have_speex=no])])
1448 AC_MSG_RESULT($have_speex)
1449 if test "x$have_speex" = xyes; then
1450 SYSEXTRAS="$SYSEXTRAS speex_a.c"
1451 EXTRALIBS="$EXTRALIBS -lspeex -logg"
1452 EXTRADEFS="$EXTRADEFS -DAU_SPEEX"
1458 dnl Win32 Gogo-no-coder
1459 AC_MSG_CHECKING(enable_audio=gogo)
1460 if test "x$au_enable_gogo" = xyes; then
1461 if test "x$MSYS" = "xyes"; then
1462 AC_MSG_RESULT(yes, configuring gogo)
1464 AC_MSG_WARN(May be gogo is not supported. You need hack the gogo_a.c)
1466 AC_CHECK_HEADER(gogo/gogo.h, [
1469 SYSEXTRAS="$SYSEXTRAS gogo_a.c w32_gogo.c"
1470 EXTRADEFS="$EXTRADEFS -DAU_GOGO -DAU_GOGO_DLL"
1471 dnl EXTRALIBS="$EXTRALIBS -lgogo"
1476 dnl Pseudo audio device (Undocumented).
1477 if test "x$au_enable_none" = xyes; then
1478 EXTRADEFS="$EXTRADEFS -DAU_NONE -DAU_AUDRIV"
1479 SYSEXTRAS="$SYSEXTRAS audriv_a.c audriv_none.c"
1482 dnl TIMIDITY_OUTPUT_ID
1484 AC_MSG_CHECKING(default output mode)
1485 if test "x$DEFAULT_PLAYMODE" = x; then
1486 DEFAULT_PLAYMODE=`echo $enable_audio | sed 's/,.*//'`
1488 case ".$DEFAULT_PLAYMODE" in
1489 .default) TIMIDITY_OUTPUT_ID=d ;;
1490 .oss) TIMIDITY_OUTPUT_ID=d ;;
1491 .alsa) TIMIDITY_OUTPUT_ID=s ;;
1492 .sun) TIMIDITY_OUTPUT_ID=d ;;
1493 .hpux) TIMIDITY_OUTPUT_ID=d ;;
1494 .irix) TIMIDITY_OUTPUT_ID=d ;;
1495 .mme) TIMIDITY_OUTPUT_ID=d ;;
1496 .sb_dsp) TIMIDITY_OUTPUT_ID=d ;;
1497 .darwin) TIMIDITY_OUTPUT_ID=d ;;
1498 .w32) TIMIDITY_OUTPUT_ID=d ;;
1499 .alib) TIMIDITY_OUTPUT_ID=A ;;
1500 .nas) TIMIDITY_OUTPUT_ID=n ;;
1501 .arts) TIMIDITY_OUTPUT_ID=R ;;
1502 .esd) TIMIDITY_OUTPUT_ID=e ;;
1503 .portaudio) TIMIDITY_OUTPUT_ID=p ;;
1504 .npipe) TIMIDITY_OUTPUT_ID=N ;;
1505 .wav) TIMIDITY_OUTPUT_ID=w ;;
1506 .au) TIMIDITY_OUTPUT_ID=u ;;
1507 .aiff) TIMIDITY_OUTPUT_ID=a ;;
1508 .list) TIMIDITY_OUTPUT_ID=l ;;
1509 .vorbis) TIMIDITY_OUTPUT_ID=v ;;
1510 .flac) TIMIDITY_OUTPUT_ID=F ;;
1511 .speex) TIMIDITY_OUTPUT_ID=S ;;
1512 .gogo) TIMIDITY_OUTPUT_ID=g ;;
1513 .jack) TIMIDITY_OUTPUT_ID=j ;;
1514 .ao) TIMIDITY_OUTPUT_ID=O ;;
1515 *) TIMIDITY_OUTPUT_ID= ;;
1517 AC_MSG_RESULT($DEFAULT_PLAYMODE/$TIMIDITY_OUTPUT_ID)
1524 interface_targets='dynamic ncurses slang motif tcltk emacs vt100 xaw xskin gtk alsaseq winsyn winsyng portmidisyng npsyn'
1526 AC_ARG_ENABLE(interface,
1527 AS_HELP_STRING([--enable-interface=[interface_list]], [Comma separated interface list]),
1528 [ for i in `echo $enableval | sed 's/,/ /g'`; do
1529 eval "enable_$i=yes"
1532 # Dynamic link configuration
1533 AC_ARG_ENABLE(dynamic,
1534 AS_HELP_STRING([--enable-dynamic], [Enable dynamic link interface (default is no)])
1535 AS_HELP_STRING([--enable-dynamic=dynamic_list] [Comma separated dynamic interface list]),
1536 [ dnl --enable-dynamic=yes to --enable-dynamic=dynamic
1537 if test "x$enable_dynamic" = xyes; then
1538 enable_dynamic=dynamic
1539 elif test "x$enable_dynamic" != xno; then
1540 for i in `echo $enableval | sed 's/,/ /g'`; do
1541 eval "enable_$i=dynamic"
1546 for i in $interface_targets; do
1547 eval "join_targets=$join_targets\$enable_$i"
1550 case ".$join_targets" in
1551 .*dynamic*) NEEDDLOPEN=yes;;
1555 dnl check -fpic option for gcc
1556 if test "x$GCC" = xyes; then SHCFLAGS="$SHCFLAGS -fPIC"; fi
1557 case "x$enable_ump" in xyes|xdynamic) EXTRACFLAGS="$EXTRACFLAGS -DXP_UNIX $SHCFLAGS";; esac
1559 dnl Which type of dynamic loader?
1560 if test "$NEEDDLOPEN" = "yes"; then
1563 WAPI_CHECK_FUNC(LoadLibrary,,[LoadLibrary(0);],have_dl=w32)
1564 test $wapi_cv_func_LoadLibrary = yes && have_dl=w32
1566 if test "$have_dl" = "no"; then
1567 AC_CHECK_FUNC(shl_load,have_dl=hpux)
1569 if test "$have_dl" = "no"; then
1570 dnl darwin has both dyld and libdl: in case user installed dlcompat.
1571 dnl dyld is recommended because libdl is a wrapper for dyld.
1572 AC_CHECK_FUNC(NSLinkModule,have_dl=dyld)
1574 if test "$have_dl" = "no" -a "x$ac_cv_lib_dl_dlopen" = xyes; then
1577 if test "$have_dl" = "no"; then
1578 AC_CHECK_FUNC(dlopen,have_dl=dlopen)
1580 if test "$have_dl" = "no"; then
1581 AC_CHECK_FUNC(dld_init,have_dl=dld)
1583 if test "$have_dl" = "no"; then
1584 AC_CHECK_LIB(dld,dld_init,have_dl=dld;lib_dl_opt=-ldld)
1587 AC_MSG_CHECKING(dynamic link method)
1590 AC_MSG_RESULT(use dl_dlopen.c)
1591 SYSEXTRAS="$SYSEXTRAS dl_dlopen.c"
1592 CHECK_DLSYM_UNDERSCORE(AC_DEFINE(DLSYM_NEEDS_UNDERSCORE,1,Define to 1 if you have to add "_" to every identifiers.))
1595 AC_MSG_RESULT(use dl_dld.c)
1596 SYSEXTRAS="$SYSEXTRAS dl_dld.c"
1599 AC_MSG_RESULT(use dl_hpux.c)
1600 SYSEXTRAS="$SYSEXTRAS dl_hpux.c"
1601 LDFLAGS="$LDFLAGS -Wl,-E $LDFLAGS"
1604 AC_MSG_RESULT(use dl_w32.c)
1605 SYSEXTRAS="$SYSEXTRAS dl_w32.c"
1608 AC_MSG_RESULT(use dl_dyld.c)
1609 SYSEXTRAS="$SYSEXTRAS dl_dyld.c"
1613 AC_MSG_WARN(no method to open a shared object)
1618 if test "$NEEDDLOPEN" = "yes"; then
1619 MY_DEFINE(IA_DYNAMIC)
1620 AC_DEFINE_UNQUOTED(SHARED_LIB_EXT,".$so", shared library extention)
1622 dnl EXTRADEFS="$EXTRADEFS \$(DEF_SHLIB_DIR)"
1623 if test "x$GCC" = xyes; then
1624 if test "x$timidity_cv_ccoption_rdynamic" = xyes; then
1625 timidity_LDFLAGS="-rdynamic"
1627 timidity_LDFLAGS="-Wl,--export-dynamic"
1632 AM_CONDITIONAL(NEEDDLOPEN, test "$NEEDDLOPEN" = "yes")
1636 AS_HELP_STRING([--enable-xdnd], [Enable xdnd support (default is no)]),
1637 [ if test "$enableval" = "yes"; then
1638 AC_DEFINE(XDND,1,Define to 1 if you want xdnd support.)
1643 AM_CONDITIONAL(ENABLE_XDND, test "x$enable_xdnd" = "xyes")
1646 dnl Each interface section
1650 AM_CONDITIONAL(ENABLE_NCURSES, false)
1651 CONFIG_INTERFACE(ncurses,NCURSES,n,
1652 AS_HELP_STRING([--enable-ncurses], [Enable ncurses interface (default is no)]),
1653 [ AC_CHECK_HEADERS(ncurses.h ncurses/curses.h curses.h)
1655 dnl #include <ncurses/curses.h> is failure on Plamo Linux 1.3/ncurses 1.9.9e
1656 dnl because <ncurses/curses.h> includes <unctrl.h>:
1657 dnl /usr/include/ncurses/curses.h:34: unctrl.h: No such file or directory
1658 dnl But surely there is unctl.h at /usr/include/ncurses/unctrl.h.
1659 dnl configure must check ncurses header with -I/usr/include/ncurses option.
1661 case "$ac_cv_header_curses_h$ac_cv_header_ncurses_curses_h$ac_cv_header_ncurses_h" in
1663 *) for i in /usr/include /usr/local/include; do
1664 if test -f "$i/ncurses/curses.h" -a -f "$i/ncurses/unctrl.h"; then
1665 AC_MSG_WARN(ncurses test is failure. Please check config.h and common.makefile later)
1666 CPPFLAGS="$CPPFLAGS -I$i/ncurses"
1673 AC_CHECK_LIB(ncurses,initscr,lib_curses_opt=-lncurses,
1674 [ dnl checking pdcurses
1675 AC_CHECK_LIB(curses,PDC_set_ctrl_break,
1676 [ lib_curses_opt=-lcurses
1677 AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
1678 lib_user32_opt="$lib_user32_test"
1679 AC_CHECK_LIB(curses, vwprintw,
1680 AC_DEFINE(HAVE_VWPRINTW, 1,
1681 [Define to 1 if you have the `vwprintw' function.]))
1683 [ dnl checking libpdcurses
1684 AC_CHECK_LIB(pdcurses,PDC_set_ctrl_break,
1685 [ lib_curses_opt=-lpdcurses
1686 AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
1687 lib_user32_opt="$lib_user32_test"
1688 AC_CHECK_LIB(pdcurses, vwprintw,
1689 AC_DEFINE(HAVE_VWPRINTW, 1,
1690 [Define to 1 if you have the `vwprintw' function.]))
1692 [ dnl OpenBSD use -lcurses instead of -lncurses.
1695 AC_CHECK_LIB(curses,initscr,lib_curses_opt=-lcurses,
1696 [ AC_MSG_WARN(ncurses interface is not enabled)
1697 enable_ncurses=no ])
1700 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
1701 lib_curses_opt=libpdcurses.lib
1702 AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
1703 AC_CHECK_LIB(pdcurses, vwprintw,
1704 AC_DEFINE(HAVE_VWPRINTW, 1,
1705 [Define to 1 if you have the `vwprintw' function.]))
1707 AC_MSG_WARN(ncurses interface is not enabled)
1717 [ LIBS="$LIBS $lib_curses_opt"
1720 EXTRALIBS="$EXTRALIBS -lmytinfo"
1723 INTERFACE_SRCS="$INTERFACE_SRCS ncurs_c.c"
1725 [ n_so_libs="$lib_curses_opt"
1728 EXTRALIBS="$EXTRALIBS -lmytinfo"
1733 AM_CONDITIONAL(ENABLE_SLANG, false)
1734 CONFIG_INTERFACE(slang,SLANG,s,
1735 AS_HELP_STRING([--enable-slang], [Enable slang interface (default is no)]),
1736 [ AC_CHECK_LIB(slang,SLang_init_tty,:,
1738 AC_MSG_WARN(slang interface is not enabled)
1740 AC_CHECK_HEADERS(slang/slang.h slang.h)
1744 AC_CHECK_LIB(termcap,initscr,
1745 [ LIBS="$LIBS -lslang -ltermcap"
1746 INTERFACE_SRCS="$INTERFACE_SRCS slang_c.c"
1748 [ AC_MSG_WARN(slang interface is not enabled)
1753 LIBS="$LIBS -lslang"
1754 INTERFACE_SRCS="$INTERFACE_SRCS slang_c.c"
1758 [ s_so_libs="-lslang"
1759 AC_CHECK_LIB(termcap,initscr,s_so_libs="$s_so_libs -ltermcap")
1763 AM_CONDITIONAL(ENABLE_MOTIF, false)
1764 CONFIG_INTERFACE(motif,MOTIF,m,
1765 AS_HELP_STRING([--enable-motif], [Enable motif interface (default is no)]),
1766 [ if test "x$with_x" != xyes; then
1767 AC_MSG_ERROR(motif: --with-x option must be specified)
1769 if test "x$have_xm" != xyes; then
1770 AC_MSG_WARN(Motif library is not found.)
1777 if test "x$have_xprelibs" = xyes; then
1778 lib_xprelibs_opt='-lSM -lICE'
1780 INTERFACE_SRCS="$INTERFACE_SRCS motif_c.c motif_i.c motif_p.c"
1782 [ if test x$have_xprelibs = xyes; then
1783 m_so_libs="-lXext -lSM -lICE"
1785 m_so_libs="$ldflags_x_opt -lXm -lXt $m_so_libs -lX11"
1789 AM_CONDITIONAL(ENABLE_TCLTK, false)
1790 CONFIG_INTERFACE(tcltk,TCLTK,k,
1791 AS_HELP_STRING([--enable-tcltk], [Enable tcltk interface (default is no)]),
1792 [ if test "x$with_x" != xyes; then
1793 AC_MSG_ERROR(tcltk: --with-x option must be specified)
1797 KEEPCPPFLAGS=$CPPFLAGS
1798 KEEPLDFLAGS=$LDFLAGS
1801 CPPFLAGS="$tcl_include_dir $tk_includes $CPPFLAGS"
1802 LDFLAGS="$tcl_libdir $tk_libdir $LDFLAGS"
1803 LIBS="$LIBS $lib_dl_opt"
1807 for l in tcl tcl8.5 tcl8.4 tcl84 tcl8.3 tcl8.0jp tcl7.6jp tcl80jp tcl76jp tcl8.0 tcl7.6 tcl80 tcl76; do
1808 case "x$tcl_lib" in x) AC_CHECK_LIB($l,Tcl_Init,tcl_lib=-l$l);; esac
1810 LIBS="$LIBS $tcl_lib"
1811 for l in tk tk8.5 tk8.4 tcl84 tk8.3 tk8.0jp tk4.2jp tk80jp tk42jp tk8.0 tk4.2 tk80 tk42; do
1812 case "x$tk_lib" in x) AC_CHECK_LIB($l,Tk_Init,tk_lib=-l$l);; esac
1816 if test "x$tcl_lib" = x -o "x$tk_lib" = x; then
1817 CPPFLAGS=$KEEPCPPFLAGS
1818 LDFLAGS=$KEEPLDFLAGS
1820 AC_MSG_WARN(tcl/tk is not enable)
1822 tcltk_dep='tclIndex'
1825 [ LIBS="$tk_lib $tcl_lib -lX11 $LIBS"
1828 EXTRALIBS="$EXTRALIBS -lipc"
1831 INTERFACE_SRCS="$INTERFACE_SRCS tk_c.c"
1833 [ k_so_libs="$tcl_libdir $tk_libdir $tcl_lib $tk_lib $lib_dl_opt"
1836 k_so_libs="$k_so_libs -lipc"
1839 k_so_libs="$k_so_libs -lX11 -lm"
1841 AM_CONDITIONAL(ENABLE_DYNAMIC_TCLTK, test "x$enable_tcltk" = "xdynamic")
1844 AM_CONDITIONAL(ENABLE_EMACS, false)
1845 CONFIG_INTERFACE(emacs,EMACS,e,
1846 AS_HELP_STRING([--enable-emacs], [Enable emacs interface (default is no)]),
1848 [ ELFILES="$ELFILES timidity.el"
1849 INTERFACE_SRCS="$INTERFACE_SRCS emacs_c.c"
1851 [ AM_CONDITIONAL(ENABLE_EMACS, true)
1852 ELFILES="$ELFILES timidity.el" ])
1855 AM_CONDITIONAL(ENABLE_VT100, false)
1856 CONFIG_INTERFACE(vt100,VT100,T,
1857 AS_HELP_STRING([--enable-vt100], [Enable VT100 interface (default is no)]),
1859 [ INTERFACE_SRCS="$INTERFACE_SRCS vt100_c.c vt100.c" ])
1862 AM_CONDITIONAL(ENABLE_XAW, false)
1863 CONFIG_INTERFACE(xaw,XAW,a,
1864 AS_HELP_STRING([--enable-xaw], [Enable athena interface (default is no)]),
1865 [ if test "x$with_x" != xyes; then
1866 AC_MSG_ERROR(xaw: --with-x option must be specified)
1868 if test "x$have_xaw" = "xno"; then
1869 AC_MSG_WARN(X Athena Widget library is not found.)
1872 [ dnl Add -lXext -lSM -lICE -lXmu -lXt {-lXaw|-lXaw3d}
1873 if test "x$have_xext" = xyes; then
1876 if test "x$have_xprelibs" = xyes; then
1877 lib_xprelibs_opt='-lSM -lICE'
1881 if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
1882 XFT_CFLAGS="$(pkg-config --cflags xft)";
1883 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
1884 lib_xft_opt="-lXft";
1891 AC_DEFINE(XAW3D,1,Define to 1 if you use libXaw3d.)
1895 AC_DEFINE(XAWPLUS,1,Define to 1 if you use libXawPlus.)
1896 lib_xaw_opt="-lXpm -lXawPlus"
1899 AC_DEFINE(NEXTAW,1,Define to 1 if you use libneXtaw.)
1900 lib_xaw_opt=-lneXtaw
1903 INTERFACE_SRCS="$INTERFACE_SRCS xaw_c.c xaw_i.c x_trace.c $XDND_SRCS"
1905 [ if test "x$have_xext" = xyes; then
1906 a_so_libs="-lXext -lX11"
1912 a_so_libs="$a_so_libs -lcc_dynamic"
1915 if test "x$have_xprelibs" = xyes; then
1916 a_so_libs="-lSM -lICE $a_so_libs"
1920 a_so_libs="-lXaw -lXmu -lXt $a_so_libs"
1923 AC_DEFINE(XAW3D,1,Define to 1 if you use libXaw3d.)
1924 a_so_libs="-lXaw3d -lXmu -lXt $a_so_libs"
1927 AC_DEFINE(XAWPLUS,1,Define to 1 if you use libXawPlus.)
1928 a_so_libs="-lXawPlus -lXpm -lXmu -lXt $a_so_libs"
1931 AC_DEFINE(NEXTAW,1,Define to 1 if you use libneXtaw.)
1932 a_so_libs="-lneXtaw -lXmu -lXt $a_so_libs"
1935 if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
1936 XFT_CFLAGS="$(pkg-config --cflags xft)";
1937 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
1938 a_so_libs="$a_so_libs -lXft";
1940 a_so_libs="$ldflags_x_opt $a_so_libs"
1942 AM_CONDITIONAL(ENABLE_DYNAMIC_XAW, test "x$enable_xaw" = "xdynamic")
1945 AM_CONDITIONAL(ENABLE_XSKIN, false)
1946 CONFIG_INTERFACE(xskin,XSKIN,i,
1947 AS_HELP_STRING([--enable-xskin], [Enable X skin interface (default is no)]),
1948 [ if test "x$with_x" != xyes; then
1949 AC_MSG_ERROR(xskin: --with-x option must be specified)
1952 [ INTERFACE_SRCS="$INTERFACE_SRCS xskin_c.c xskin_i.c xskin_loadBMP.c xskin_spectrum.c" ],
1953 [ i_so_libs="$ldflags_x_opt -lX11" ])
1956 AM_CONDITIONAL(ENABLE_GTK, false)
1957 CONFIG_INTERFACE(gtk, GTK, g,
1958 AS_HELP_STRING([--enable-gtk], [Enable GTK+ interface (default is no)]),
1959 [ AM_PATH_GTK_2_0(2.0.0,
1960 [AC_DEFINE(HAVE_GTK_2,1,Define to 1 if you have GTK+ 2.x)],
1961 [AM_PATH_GTK(1.1.3,,enable_gtk=no)]) ],
1962 [ LIBS="$LIBS $GTK_LIBS"
1963 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$GTK_CFLAGS)
1964 INTERFACE_SRCS="$INTERFACE_SRCS gtk_c.c gtk_i.c gtk_p.c"
1966 [ if test "x$GCC" = xyes; then
1967 dnl Do not include -rdynamic option in $g_so_libs.
1968 for i in $GTK_LIBS; do
1971 *) g_so_libs="$g_so_libs $i" ;;
1975 g_so_libs="$GTK_LIBS"
1977 EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$GTK_CFLAGS) ])
1979 dnl TiMidity Network MIDI Server
1980 AM_CONDITIONAL(ENABLE_SERVER, false)
1981 CONFIG_INTERFACE(server,SERVER,r,
1982 AS_HELP_STRING([--enable-server], [Enable server interface (default is no)]),
1984 [ INTERFACE_SRCS="$INTERFACE_SRCS server_c.c"
1985 AC_CHECK_HEADERS(sys/soundcard.h)
1988 dnl TiMidity ALSA sequencer server
1989 AM_CONDITIONAL(ENABLE_ALSASEQ, false)
1990 CONFIG_INTERFACE(alsaseq,ALSASEQ,A,
1991 AS_HELP_STRING([--enable-alsaseq], [Enable ALSA sequencer server interface
1993 [ INTERFACE_SRCS="$INTERFACE_SRCS alsaseq_c.c"
1997 [ MY_DEFINE(IA_ALSASEQ)
2000 dnl TiMidity Windows synthesizer server
2001 AM_CONDITIONAL(ENABLE_WINSYN, false)
2002 CONFIG_INTERFACE(winsyn,WINSYN,W,
2003 AS_HELP_STRING([--enable-winsyn], [Enable Windows Synthesizer interface
2006 [ WINSYN="yes"; INTERFACE_SRCS="$INTERFACE_SRCS winsyn_c.c rtsyn_common.c rtsyn_winmm.c" ])
2008 dnl TiMidity PortMIDI synthesizer server
2009 AM_CONDITIONAL(ENABLE_PORTMIDISYN, false)
2010 CONFIG_INTERFACE(portmidisyn,PORTMIDISYN,P,
2011 AS_HELP_STRING([--enable-portmidisyn], [Enable PortMIDI Synthesizer interface
2014 [ INTERFACE_SRCS="$INTERFACE_SRCS portmidisyn_c.c rtsyn_common.c rtsyn_portmidi.c" ])
2016 dnl TiMidity Windows synthesizer server
2017 AM_CONDITIONAL(ENABLE_NPSYN, false)
2018 CONFIG_INTERFACE(npsyn,NPSYN,W,
2019 AS_HELP_STRING([--enable-npsyn], [Enable Windows Named Pipe Synthesizer interface
2022 [ NPSYN="yes"; INTERFACE_SRCS="$INTERFACE_SRCS npsyn_c.c rtsyn_common.c rtsyn_npipe.c" ])
2026 dnl TiMidity Windows GUI synthesizer server
2027 AM_CONDITIONAL(ENABLE_W32G_SYN, false)
2028 CONFIG_INTERFACE(winsyng,W32G_SYN,W,
2029 AS_HELP_STRING([--enable-winsyng], [Enable Windows GUI Synthesizer interface
2034 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
2035 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"
2036 lib_w32gui_opt='gdi32.lib comctl32.lib comdlg32.lib ole32.lib'
2037 lib_user32_opt='user32.lib'
2038 if test "x$VCPP" = xyes; then
2039 VCPP_LDFLAGS="$VCPP_LDFLAGS -subsystem:windows "
2041 if test "x$BORLANDC" = xyes; then
2042 BORLANDC_START='C0W32.OBJ'
2043 CFLAGS="$CFLAGS -tW"
2044 lib_w32gui_opt="-aa $lib_w32gui_opt"
2046 if test "x$WATCOM_C" = xyes; then
2047 CFLAGS="$CFLAGS -bw"
2048 WATCOM_LDFLAGS="$WATCOM_LDFLAGS SYS nt_win"
2050 if test "x$DMC" = xyes; then
2052 lib_w32gui_opt="$lib_w32gui_opt -L/exet:nt/su:windows:4.0"
2054 if test "x$POCC" = xyes; then
2055 POCC_LDFLAGS="$POCC_LDFLAGS -subsystem:windows "
2058 lib_w32gui_opt='-lgdi32 -lcomctl32 -lcomdlg32 -lole32'
2059 lib_user32_opt='-luser32'
2060 LDFLAGS="-mwindows $LDFLAGS"
2061 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"
2067 AM_CONDITIONAL(ENABLE_W32GUI, false)
2068 CONFIG_INTERFACE(w32gui, W32GUI, w,
2069 AS_HELP_STRING([--enable-w32gui], [Enable Windows GUI interface (default is no)]),
2073 if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
2074 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"
2075 lib_w32gui_opt='gdi32.lib comctl32.lib comdlg32.lib ole32.lib'
2076 lib_user32_opt='user32.lib'
2077 if test "x$VCPP" = xyes; then
2078 VCPP_LDFLAGS="$VCPP_LDFLAGS -subsystem:windows "
2080 if test "x$BORLANDC" = xyes; then
2081 BORLANDC_START='C0W32.OBJ'
2082 CFLAGS="$CFLAGS -tW"
2083 lib_w32gui_opt="-aa $lib_w32gui_opt"
2085 if test "x$WATCOM_C" = xyes; then
2086 CFLAGS="$CFLAGS -bw"
2087 WATCOM_LDFLAGS="$WATCOM_LDFLAGS SYS nt_win"
2089 if test "x$DMC" = xyes; then
2090 lib_w32gui_opt="$lib_w32gui_opt -L/SU:window"
2093 if test "x$POCC" = xyes; then
2094 POCC_LDFLAGS="$POCC_LDFLAGS -subsystem:windows "
2097 lib_w32gui_opt='-lgdi32 -lcomctl32 -lcomdlg32 -lole32'
2098 lib_user32_opt='-luser32'
2099 LDFLAGS="-mwindows $LDFLAGS"
2100 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"
2104 dnl UMP configuration
2105 AM_CONDITIONAL(ENABLE_PLUGIN, false)
2106 CONFIG_INTERFACE(ump, PLUGIN, p,
2107 AS_HELP_STRING([--enable-ump], [UMP configuration (default is no)]),
2108 [ if test ! -d ump; then
2109 AC_MSG_ERROR(UMP Package is not exists. Can't configure it.)
2111 AC_CHECK_HEADER(X11/xpm.h,,AC_MSG_ERROR([UMP Package needs xpm.h[,] but could not find it.]))
2112 AC_CHECK_LIB(Xpm,XpmCreatePixmapFromData,:,AC_MSG_ERROR([UMP Package needs libXpm.a[,] but could not find it.]))
2113 if test "x$have_xext" = xyes; then
2116 if test "x$have_xprelibs" = xyes; then
2117 lib_xprelibs_opt='-lSM -lICE'
2123 dnl Window Driver interface
2124 AC_ARG_ENABLE(windrv,
2125 AS_HELP_STRING([--enable-windrv], [Windows Driver interface(requires winsyn) ]),
2126 [ if test "$enableval" = "yes"; then
2127 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
2128 AC_MSG_ERROR(windrv: Only Support VC++ or Mingw or Borland C or Open Watcom PellesC and Digital Mars)
2129 elif test "x$WINSYN" != "xyes"; then
2130 AC_MSG_ERROR(windrv: Driver must have winsyn interface)
2132 AC_DEFINE(WINDRV,1,Define to 1 if you cpmpile windos driver.)
2134 if test "x$WATCOM_C" = "xyes"; then DLLFLAG="-bd" ;fi
2135 if test "x$DMC" = "xyes"; then DLLFLAG="-WD" ;fi
2136 CFLAGS="$CFLAGS -DANOTHER_MAIN "
2139 CFLAGS="$CFLAGS $DLLFLAG "
2142 dnl this rely on CFLAGS and LIBS
2143 AC_ARG_ENABLE(offix,
2144 AS_HELP_STRING([--enable-offix], [Enable offix support (default is no)]),
2145 [ if test "$enableval" = "yes"; then
2146 KEEPCPPFLAGS=$CPPFLAGS
2148 KEEPLDFLAGS=$LDFLAGS
2149 CPPFLAGS="$CPPFLAGS $offix_include_dir"
2150 LDFLAGS="$LDFLAGS $offix_lib_dir"
2151 LIBS="$LIBS $lib_xmu_opt $lib_xt_opt $lib_xprelibs_opt $lib_xext_opt -lX11"
2152 AC_CHECK_LIB(Dnd,DndInitialize,[
2154 lib_offix_opt="-lDnd"
2155 AC_DEFINE(OFFIX,1,Define to 1 if you need offix support)
2157 [ LDFLAGS=$KEEPLDFLAGS
2158 CPPFLAGS=$KEEPCPPFLAGS
2165 AC_ARG_ENABLE(network,
2166 AS_HELP_STRING([--enable-network], [Enable network support (default is no)]),
2167 [ if test "$enableval" = "yes"; then
2168 AC_DEFINE(SUPPORT_SOCKET,1,Define to 1 if you need network support)
2170 AM_CONDITIONAL(ENABLE_NETWORK, test "x$enable_network" = "xyes")
2172 dnl Sound Spectrogram Viewer
2173 AC_ARG_ENABLE(spectrogram,
2174 AS_HELP_STRING([--enable-spectrogram], [Enable Sound Spectrogram Viewer (default is no)]),
2175 [ if test "$enableval" = "yes"; then
2176 if test "x$with_x" != xyes; then
2177 AC_MSG_ERROR(spectrogram: --with-x option must be specified)
2179 AC_DEFINE(SUPPORT_SOUNDSPEC,1,Define to 1 if you need spectrogram vewer.)
2181 AM_CONDITIONAL(ENABLE_SOUND_SPEC, test "x$enable_spectrogram" = "xyes")
2183 dnl Wave Spline Interpolations
2184 AC_ARG_ENABLE(spline,
2185 AS_HELP_STRING([--enable-spline=[method]],
2186 [Specify spline method. one of no,linear,cubic,lagrange,newton,gauss (default is linear)]),
2187 [ case "x$enableval" in
2189 AC_DEFINE(DEFAULT_RESAMPLATION,resample_linear,Define resampler.)
2192 AC_DEFINE(DEFAULT_RESAMPLATION,resample_cspline,Define resampler.)
2195 AC_DEFINE(DEFAULT_RESAMPLATION,resample_lagrange,Define resampler.)
2198 AC_DEFINE(DEFAULT_RESAMPLATION,resample_newton,Define resampler.)
2201 AC_DEFINE(DEFAULT_RESAMPLATION,resample_gauss,Define resampler.)
2204 AC_DEFINE(DEFAULT_RESAMPLATION,resample_none,Define resampler.)
2207 AC_MSG_ERROR(Invalid method of --enable-spline)
2213 AS_HELP_STRING([--enable-wrd], [Enable WRD interface for X (default is no)]),
2214 [ if test "$enableval" = "yes"; then
2215 if test "x$with_x" = xyes; then
2218 AC_MSG_ERROR(wrd: --with-x option must be specified)
2220 AC_DEFINE(WRDT_X,1,Define to 1 if you need wrd support for X.)
2221 enable_sherry_wrd=yes
2222 AC_CHECK_LIB(z,zlibVersion,:,enable_sherry_wrd=no)
2223 AC_CHECK_HEADER(png.h,,enable_sherry_wrd=no)
2224 AC_CHECK_LIB(png,png_init_io,:,enable_sherry_wrd=no,-lz)
2225 if test "$enable_sherry_wrd" = yes; then
2226 AC_DEFINE(ENABLE_SHERRY,1,Define to 1 if you enable Sherry WRD)
2230 AC_MSG_WARN([Sherry WRD is disabled: png.h, libpng.a, libz.a are required])
2232 if test "x$have_xext" = xyes; then
2238 dnl end of interfaces
2245 AM_CONDITIONAL(ENABLE_WRD, test "x$enable_wrd" = "xyes")
2246 AM_CONDITIONAL(W32G_GUI, test "x$W32G_GUI" = xyes)
2247 AM_CONDITIONAL(WINDRV, test "x$WINDRV" = xyes)
2248 AM_CONDITIONAL(MSYS, test "x$MSYS" = xyes)
2249 AM_CONDITIONAL(VCPP, test "x$VCPP" = xyes)
2250 AM_CONDITIONAL(POCC, test "x$POCC" = xyes)
2251 AM_CONDITIONAL(BORLANDC, test "x$BORLANDC" = xyes)
2252 AM_CONDITIONAL(WATCOM_C, test "x$WATCOM_C" = xyes)
2253 AM_CONDITIONAL(DMC, test "x$DMC" = xyes)
2254 AM_CONDITIONAL(MINGWGCC, test "x$MINGWGCC" = xyes)
2256 AM_CONDITIONAL(W32READDIR, test "x$W32READDIR" = "xyes")
2258 SET_UNIQ_WORDS(LDFLAGS,$LDFLAGS)
2259 SET_UNIQ_WORDS(SHLDFLAGS,$SHLDFLAGS)
2260 SET_UNIQ_WORDS(CFLAGS,$EXTRACFLAGS $CFLAGS)
2261 SET_UNIQ_WORDS(CPPFLAGS,$CPPFLAGS $EXTRADEFS)
2263 if test "x$oss_device" != x; then
2264 AC_DEFINE_UNQUOTED(OSS_DEVICE,"$oss_device", oss device name)
2267 if test "x$TIMIDITY_OUTPUT_ID" != x; then
2268 AC_DEFINE_UNQUOTED(TIMIDITY_OUTPUT_ID,"$TIMIDITY_OUTPUT_ID", the output specification)
2271 if test "x$au_enable_nas" = "xyes" -o \
2272 "x$enable_motif" = "xyes" -o \
2273 "x$enable_tcltk" = "xyes" -o \
2274 "x$enable_xaw" = "xyes" -o \
2275 "x$enable_xskin" = "xyes" -o \
2276 "x$enable_spectrogram" = "xyes"; then
2277 dnl Order of X-library is: -lXdnd -lXm -lXaw -lXft -lXmu -lXt -lSM -lICE -lXext -lX11
2278 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"
2280 LIBS="$LIBS $lib_dl_opt $lib_png_opt $lib_zip_opt $lib_user32_opt $lib_w32gui_opt $EXTRALIBS"
2281 SHLD="$SHLD $SHLDFLAGS"
2283 AC_SUBST(BORLANDC_START)
2284 AC_SUBST(BORLANDC_LDFLAGS)
2286 AC_SUBST(timidity_LDFLAGS)
2287 AC_SUBST(WATCOM_LDFLAGS)
2288 AC_SUBST(DMC_LDFLAGS)
2289 AC_SUBST(VCPP_LDFLAGS)
2290 AC_SUBST(POCC_LDFLAGS)
2297 AC_SUBST(dynamic_targets)
2302 AC_SUBST(program_transform_name)
2303 AC_SUBST(INTERFACE_SRCS)
2304 AC_SUBST(pkgdatadir)
2314 doc/ja_JP.eucJP/Makefile
2316 interface/motif_bitmaps/Makefile
2317 interface/bitmaps/Makefile
2318 interface/pixmaps/Makefile