?? alsa.m4
字號:
dnl Configure Paths for Alsadnl Some modifications by Richard Boulton <richard-alsa@tartarus.org>dnl Christopher Lansdown <lansdoct@cs.alfred.edu>dnl Jaroslav Kysela <perex@suse.cz>dnl Modified for TiMidity++ by URABE, Shyouhei <root@mput.dip.jp>dnl Original : alsa.m4,v 1.22 2002/05/27 11:14:20 tiwai Expdnl This version: alsa.m4, 2002/10/08 22:30:18 JSTdnl AM_PATH_ALSA([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])dnl Test for libasound, and define ALSA_CFLAGS and ALSA_LIBS as appropriate.dnl enables arguments --with-alsa-prefix=dnl --with-alsa-enc-prefix=dnl --disable-alsatest (this has no effect, as yet)dnldnl For backwards compatibility, if ACTION_IF_NOT_FOUND is not specified,dnl and the alsa libraries are not found, a fatal AC_MSG_ERROR() will result.dnlAC_DEFUN(AM_PATH_ALSA,[dnl Save the original CFLAGS, LDFLAGS, and LIBSalsa_save_CFLAGS="$CFLAGS"alsa_save_LDFLAGS="$LDFLAGS"alsa_save_LIBS="$LIBS"alsa_found=yesdnldnl Get the cflags and libraries for alsadnlAC_ARG_WITH(alsa-prefix,[ --with-alsa-prefix=PFX Prefix where Alsa library is installed(optional)],[alsa_prefix="$withval"], [alsa_prefix=""])AC_ARG_WITH(alsa-inc-prefix,[ --with-alsa-inc-prefix=PFX Prefix where include libraries are (optional)],[alsa_inc_prefix="$withval"], [alsa_inc_prefix=""])dnl FIXME: this is not yet implementedAC_ARG_ENABLE(alsatest,[ --disable-alsatest Do not try to compile and run a test Alsa program],[enable_alsatest=no],[enable_alsatest=yes])dnl Add any special include directoriesAC_MSG_CHECKING(for ALSA CFLAGS)if test "$alsa_inc_prefix" != "" ; then ALSA_CFLAGS="$ALSA_CFLAGS -I$alsa_inc_prefix" CFLAGS="$CFLAGS -I$alsa_inc_prefix"fiAC_MSG_RESULT($ALSA_CFLAGS)dnl add any special lib dirsAC_MSG_CHECKING(for ALSA LDFLAGS)if test "$alsa_prefix" != "" ; then ALSA_LIBS="$ALSA_LIBS -L$alsa_prefix" LDFLAGS="$LDFLAGS $ALSA_LIBS"fidnl add the alsa libraryALSA_LIBS="$ALSA_LIBS -lasound -lm -ldl -lpthread"LIBS=`echo $LIBS | sed 's/-lm//'`LIBS=`echo $LIBS | sed 's/-ldl//'`LIBS=`echo $LIBS | sed 's/-lpthread//'`LIBS=`echo $LIBS | sed 's/ //'`LIBS="$ALSA_LIBS $LIBS"AC_MSG_RESULT($ALSA_LIBS)dnl Check for a working version of libasound that is of the right version.min_alsa_version=ifelse([$1], ,0.1.1,$1)AC_MSG_CHECKING(for libasound headers version >= $min_alsa_version)no_alsa="" alsa_min_major_version=`echo $min_alsa_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` alsa_min_minor_version=`echo $min_alsa_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` alsa_min_micro_version=`echo $min_alsa_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`dnl This is the test program.AC_DEFUN([MPUT_ALSA_TRY],[/* ensure backward compatibility */#if !defined(SND_LIB_MAJOR) && defined(SOUNDLIB_VERSION_MAJOR)#define SND_LIB_MAJOR SOUNDLIB_VERSION_MAJOR#endif#if !defined(SND_LIB_MINOR) && defined(SOUNDLIB_VERSION_MINOR)#define SND_LIB_MINOR SOUNDLIB_VERSION_MINOR#endif#if !defined(SND_LIB_SUBMINOR) && defined(SOUNDLIB_VERSION_SUBMINOR)#define SND_LIB_SUBMINOR SOUNDLIB_VERSION_SUBMINOR#endif# if(SND_LIB_MAJOR > $alsa_min_major_version) exit(0);# else# if(SND_LIB_MAJOR < $alsa_min_major_version)# error not present# endif# if(SND_LIB_MINOR > $alsa_min_minor_version) exit(0);# else# if(SND_LIB_MINOR < $alsa_min_minor_version)# error not present# endif# if(SND_LIB_SUBMINOR < $alsa_min_micro_version)# error not present# endif# endif# endifexit(0);])dnl macro MPUT_ALSA_TRYAC_LANG_SAVEAC_LANG_CAC_TRY_COMPILE([#include <alsa/asoundlib.h>], MPUT_ALSA_TRY(), [AC_MSG_RESULT(found.)], [AC_TRY_COMPILE([#include <sys/asoundlib.h>], MPUT_ALSA_TRY(), [AC_MSG_RESULT(found.)], [AC_MSG_RESULT(not present.) ifelse([$3], ,[AC_MSG_RESULT(libasound was not found anywhere.)]) alsa_found=no]) ifelse([$3], ,[AC_MSG_RESULT(Sufficiently new version of libasound not found.)])])AC_LANG_RESTOREdnl Now that we know we have the right version, why not see if wednl have the library and not just the headers.AC_CHECK_LIB([asound],[snd_ctl_open], , [ifelse([$3], ,[AC_MSG_RESULT(No linkable libasound was found.)]) alsa_found=no])if test "x$alsa_found" = "xyes" ; then ifelse([$2], , :, [$2]) LIBS=`echo $LIBS | sed 's/-lasound//g'` LIBS=`echo $LIBS | sed 's/ //'` LIBS="-lasound $LIBS"else ifelse([$3], , :, [$3]) CFLAGS="$alsa_save_CFLAGS" LDFLAGS="$alsa_save_LDFLAGS" LIBS="$alsa_save_LIBS" ALSA_CFLAGS="" ALSA_LIBS=""fidnl That should be it. Now just export out symbols:AC_SUBST(ALSA_CFLAGS)AC_SUBST(ALSA_LIBS)])
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -