chiark / gitweb /
per-API --without options for configure
authorRichard Kettlewell <rjk@greenend.org.uk>
Sat, 13 Oct 2007 10:23:42 +0000 (11:23 +0100)
committerRichard Kettlewell <rjk@greenend.org.uk>
Sat, 13 Oct 2007 10:23:42 +0000 (11:23 +0100)
configure.ac

index 482505dcec9988bf7de1725d58a48a5cde1fb339..bf0a7b79c76c83ba6cc3a35f9bcd2c27e4114068 100644 (file)
@@ -32,6 +32,11 @@ AC_CANONICAL_HOST
 want_gtk=yes
 want_python=yes
 
 want_gtk=yes
 want_python=yes
 
+# APIs we want
+want_alsa=yes
+want_oss=yes
+want_coreaudio=yes
+
 # Checks for programs.
 AC_PROG_CC
 AC_SET_MAKE
 # Checks for programs.
 AC_PROG_CC
 AC_SET_MAKE
@@ -41,6 +46,19 @@ else
   gcc_werror=""
 fi
 
   gcc_werror=""
 fi
 
+AC_ARG_WITH([alsa],
+           [AS_HELP_STRING([--without-alsa],
+                           [do not build with ALSA support])],
+           [want_alsa=$withval])
+AC_ARG_WITH([oss],
+           [AS_HELP_STRING([--without-oss],
+                           [do not build with OSS support])],
+           [want_oss=$withval])
+AC_ARG_WITH([coreaudio],
+           [AS_HELP_STRING([--without-coreaudio],
+                           [do not build with Core Audio support])],
+           [want_coreaudio=$withval])
+
 AC_MSG_CHECKING([for a known target platform])
 case "$host" in
 *empeg* )
 AC_MSG_CHECKING([for a known target platform])
 case "$host" in
 *empeg* )
@@ -59,8 +77,10 @@ case "$host" in
   ;;
 *-apple-darwin* )
   AC_MSG_RESULT([Mac OS X])
   ;;
 *-apple-darwin* )
   AC_MSG_RESULT([Mac OS X])
-  want_server=no
-  COREAUDIO="-framework CoreAudio"
+  want_server=yes
+  if test $want_coreaudio = yes; then
+    COREAUDIO="-framework CoreAudio"
+  fi
   ;;
 * )
   AC_MSG_RESULT([unknown, winging it])
   ;;
 * )
   AC_MSG_RESULT([unknown, winging it])
@@ -140,8 +160,10 @@ AC_CHECK_LIB(gcrypt, gcry_md_open,
 AC_CHECK_LIB(pcre, pcre_compile,
             [AC_SUBST(LIBPCRE,[-lpcre])],
             [missing_libraries="$missing_libraries libpcre"])
 AC_CHECK_LIB(pcre, pcre_compile,
             [AC_SUBST(LIBPCRE,[-lpcre])],
             [missing_libraries="$missing_libraries libpcre"])
-AC_CHECK_LIB([asound], [snd_pcm_open],
-             [AC_SUBST(LIBASOUND,[-lasound])])
+if test $want_alsa = yes; then
+  AC_CHECK_LIB([asound], [snd_pcm_open],
+               [AC_SUBST(LIBASOUND,[-lasound])])
+fi
 if test $want_server = yes; then
   RJK_CHECK_LIB(db, db_create, [#include <db.h>],
               [AC_SUBST(LIBDB,[-ldb])],
 if test $want_server = yes; then
   RJK_CHECK_LIB(db, db_create, [#include <db.h>],
               [AC_SUBST(LIBDB,[-ldb])],
@@ -196,7 +218,16 @@ RJK_REQUIRE_PCRE_UTF8([-lpcre])
 
 # Checks for header files.
 RJK_FIND_GC_H
 
 # Checks for header files.
 RJK_FIND_GC_H
-AC_CHECK_HEADERS([inttypes.h CoreAudio/AudioHardware.h sys/soundcard.h alsa/asoundlib.h])
+if test $want_oss = yes; then
+  AC_CHECK_HEADERS([sys/soundcard.h])
+fi
+if test $want_alsa = yes; then
+  AC_CHECK_HEADERS([alsa/asoundlib.h])
+fi
+if test $want_coreaudio = yes; then
+  AC_CHECK_HEADERS([CoreAudio/AudioHardware.h])
+fi
+AC_CHECK_HEADERS([inttypes.h])
 # We don't bother checking very standard stuff
 # Compilation will fail if any of these headers are missing, so we
 # check for them here and fail early.
 # We don't bother checking very standard stuff
 # Compilation will fail if any of these headers are missing, so we
 # check for them here and fail early.