diff --git a/configure.ac b/configure.ac index 5b155a8..12687e1 100644 --- a/configure.ac +++ b/configure.ac @@ -13,13 +13,33 @@ if test "$libxmp_path" != ""; then LIBS="${LIBS} -L${libxmp_path}/lib" fi +AC_DEFUN([AC_CHECK_DEFINED],[ + AS_VAR_PUSHDEF([ac_var],[ac_cv_defined_$1])dnl + AC_CACHE_CHECK([for $1 defined], ac_var, + AC_TRY_COMPILE(,[ + #ifdef $1 + int ok; + #else + choke me + #endif + ],AS_VAR_SET(ac_var, yes),AS_VAR_SET(ac_var, no))) + AS_IF([test AS_VAR_GET(ac_var) != "no"], [$2], [$3])dnl + AS_VAR_POPDEF([ac_var])dnl +]) + AC_CHECK_HEADERS(xmp.h getopt.h signal.h termios.h) -AC_CHECK_HEADER(windows.h,,[ +system=unknown + +AC_CHECK_DEFINED(_WIN32,[system=win32]) +AC_CHECK_DEFINED(__BEOS__,[system=beos]) +AC_CHECK_DEFINED(__HAIKU__,[system=beos]) + +if test "$system" = "unknown"; then AC_CHECK_HEADER(CoreAudio/CoreAudio.h,,[ AC_CHECK_HEADERS(sys/soundcard.h alsa/asoundlib.h sndio.h sys/audioio.h) ]) -]) +fi if test "${ac_cv_header_xmp_h}" = "yes"; then AC_CHECK_LIB(xmp,xmp_player_start,, @@ -28,38 +48,44 @@ else AC_MSG_ERROR(Can't find libxmp header files) fi -if test -f /system/Tracker; then +case "$system" in +beos) AC_DEFINE(SOUND_BEOS) DRIVERS="${DRIVERS} sound_beos.o" LIBS="${LIBS} -lmedia -lbe" -elif test "${ac_cv_header_windows_h}" = "yes"; then + ;; +win32) AC_DEFINE(SOUND_WIN32) DRIVERS="${DRIVERS} sound_win32.o" LIBS="${LIBS} -lwinmm" -elif test "${ac_cv_header_CoreAudio_CoreAudio_h}" = "yes"; then - AC_DEFINE(SOUND_COREAUDIO) - DRIVERS="${DRIVERS} sound_coreaudio.o" - LIBS="${LIBS} -framework AudioToolbox -framework AudioUnit -framework CoreServices" -else - if test "${ac_cv_header_sndio_h}" = "yes"; then - AC_DEFINE(SOUND_SNDIO) - DRIVERS="${DRIVERS} sound_sndio.o" - LIBS="${LIBS} -lsndio" - fi - if test "${ac_cv_header_sys_audioio_h}" = "yes"; then - AC_DEFINE(SOUND_BSD) - DRIVERS="${DRIVERS} sound_bsd.o" - fi - if test "${ac_cv_header_sys_soundcard_h}" = "yes"; then - AC_DEFINE(SOUND_OSS) - DRIVERS="${DRIVERS} sound_oss.o" - fi - if test "${ac_cv_header_alsa_asoundlib_h}" = "yes"; then - AC_DEFINE(SOUND_ALSA) - DRIVERS="${DRIVERS} sound_alsa.o" - LIBS="${LIBS} -lasound" + ;; +*) + if test "${ac_cv_header_CoreAudio_CoreAudio_h}" = "yes"; then + AC_DEFINE(SOUND_COREAUDIO) + DRIVERS="${DRIVERS} sound_coreaudio.o" + LIBS="${LIBS} -framework AudioToolbox -framework AudioUnit -framework CoreServices" + else + if test "${ac_cv_header_sndio_h}" = "yes"; then + AC_DEFINE(SOUND_SNDIO) + DRIVERS="${DRIVERS} sound_sndio.o" + LIBS="${LIBS} -lsndio" + fi + if test "${ac_cv_header_sys_audioio_h}" = "yes"; then + AC_DEFINE(SOUND_BSD) + DRIVERS="${DRIVERS} sound_bsd.o" + fi + if test "${ac_cv_header_sys_soundcard_h}" = "yes"; then + AC_DEFINE(SOUND_OSS) + DRIVERS="${DRIVERS} sound_oss.o" + fi + if test "${ac_cv_header_alsa_asoundlib_h}" = "yes"; then + AC_DEFINE(SOUND_ALSA) + DRIVERS="${DRIVERS} sound_alsa.o" + LIBS="${LIBS} -lasound" + fi fi -fi + ;; +esac dnl XMP_TRY_COMPILE(,,,,,) define(XMP_TRY_COMPILE,[