Chris@1: # Configure paths for libvorbis Chris@1: # Jack Moffitt 10-21-2000 Chris@1: # Shamelessly stolen from Owen Taylor and Manish Singh Chris@1: # thomasvs added check for vorbis_bitrate_addblock which is new in rc3 Chris@1: Chris@1: dnl XIPH_PATH_VORBIS([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Chris@1: dnl Test for libvorbis, and define VORBIS_CFLAGS and VORBIS_LIBS Chris@1: dnl Chris@1: AC_DEFUN([XIPH_PATH_VORBIS], Chris@1: [dnl Chris@1: dnl Get the cflags and libraries Chris@1: dnl Chris@1: AC_ARG_WITH(vorbis,AC_HELP_STRING([--with-vorbis=PFX],[Prefix where libvorbis is installed (optional)]), vorbis_prefix="$withval", vorbis_prefix="") Chris@1: AC_ARG_WITH(vorbis-libraries,AC_HELP_STRING([--with-vorbis-libraries=DIR],[Directory where libvorbis library is installed (optional)]), vorbis_libraries="$withval", vorbis_libraries="") Chris@1: AC_ARG_WITH(vorbis-includes,AC_HELP_STRING([--with-vorbis-includes=DIR],[Directory where libvorbis header files are installed (optional)]), vorbis_includes="$withval", vorbis_includes="") Chris@1: AC_ARG_ENABLE(vorbistest,AC_HELP_STRING([--disable-vorbistest],[Do not try to compile and run a test Vorbis program]),, enable_vorbistest=yes) Chris@1: Chris@1: if test "x$vorbis_libraries" != "x" ; then Chris@1: VORBIS_LIBS="-L$vorbis_libraries" Chris@1: elif test "x$vorbis_prefix" = "xno" || test "x$vorbis_prefix" = "xyes" ; then Chris@1: VORBIS_LIBS="" Chris@1: elif test "x$vorbis_prefix" != "x" ; then Chris@1: VORBIS_LIBS="-L$vorbis_prefix/lib" Chris@1: elif test "x$prefix" != "xNONE"; then Chris@1: VORBIS_LIBS="-L$prefix/lib" Chris@1: fi Chris@1: Chris@1: if test "x$vorbis_prefix" != "xno" ; then Chris@1: VORBIS_LIBS="$VORBIS_LIBS -lvorbis -lm" Chris@1: fi Chris@1: VORBISFILE_LIBS="-lvorbisfile" Chris@1: VORBISENC_LIBS="-lvorbisenc" Chris@1: Chris@1: if test "x$vorbis_includes" != "x" ; then Chris@1: VORBIS_CFLAGS="-I$vorbis_includes" Chris@1: elif test "x$vorbis_prefix" = "xno" || test "x$vorbis_prefix" = "xyes" ; then Chris@1: VORBIS_CFLAGS="" Chris@1: elif test "x$vorbis_prefix" != "x" ; then Chris@1: VORBIS_CFLAGS="-I$vorbis_prefix/include" Chris@1: elif test "x$prefix" != "xNONE"; then Chris@1: VORBIS_CFLAGS="-I$prefix/include" Chris@1: fi Chris@1: Chris@1: Chris@1: AC_MSG_CHECKING(for Vorbis) Chris@1: if test "x$vorbis_prefix" = "xno" ; then Chris@1: no_vorbis="disabled" Chris@1: enable_vorbistest="no" Chris@1: else Chris@1: no_vorbis="" Chris@1: fi Chris@1: Chris@1: Chris@1: if test "x$enable_vorbistest" = "xyes" ; then Chris@1: ac_save_CFLAGS="$CFLAGS" Chris@1: ac_save_LIBS="$LIBS" Chris@1: CFLAGS="$CFLAGS $VORBIS_CFLAGS $OGG_CFLAGS" Chris@1: LIBS="$LIBS $VORBIS_LIBS $VORBISENC_LIBS $OGG_LIBS" Chris@1: dnl Chris@1: dnl Now check if the installed Vorbis is sufficiently new. Chris@1: dnl Chris@1: rm -f conf.vorbistest Chris@1: AC_TRY_RUN([ Chris@1: #include Chris@1: #include Chris@1: #include Chris@1: #include Chris@1: #include Chris@1: Chris@1: int main () Chris@1: { Chris@1: vorbis_block vb; Chris@1: vorbis_dsp_state vd; Chris@1: vorbis_info vi; Chris@1: Chris@1: vorbis_info_init (&vi); Chris@1: vorbis_encode_init (&vi, 2, 44100, -1, 128000, -1); Chris@1: vorbis_analysis_init (&vd, &vi); Chris@1: vorbis_block_init (&vd, &vb); Chris@1: /* this function was added in 1.0rc3, so this is what we're testing for */ Chris@1: vorbis_bitrate_addblock (&vb); Chris@1: Chris@1: system("touch conf.vorbistest"); Chris@1: return 0; Chris@1: } Chris@1: Chris@1: ],, no_vorbis=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) Chris@1: CFLAGS="$ac_save_CFLAGS" Chris@1: LIBS="$ac_save_LIBS" Chris@1: fi Chris@1: Chris@1: if test "x$no_vorbis" = "xdisabled" ; then Chris@1: AC_MSG_RESULT(no) Chris@1: ifelse([$2], , :, [$2]) Chris@1: elif test "x$no_vorbis" = "x" ; then Chris@1: AC_MSG_RESULT(yes) Chris@1: ifelse([$1], , :, [$1]) Chris@1: else Chris@1: AC_MSG_RESULT(no) Chris@1: if test -f conf.vorbistest ; then Chris@1: : Chris@1: else Chris@1: echo "*** Could not run Vorbis test program, checking why..." Chris@1: CFLAGS="$CFLAGS $VORBIS_CFLAGS" Chris@1: LIBS="$LIBS $VORBIS_LIBS $OGG_LIBS" Chris@1: AC_TRY_LINK([ Chris@1: #include Chris@1: #include Chris@1: ], [ return 0; ], Chris@1: [ echo "*** The test program compiled, but did not run. This usually means" Chris@1: echo "*** that the run-time linker is not finding Vorbis or finding the wrong" Chris@1: echo "*** version of Vorbis. If it is not finding Vorbis, you'll need to set your" Chris@1: echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" Chris@1: echo "*** to the installed location Also, make sure you have run ldconfig if that" Chris@1: echo "*** is required on your system" Chris@1: echo "***" Chris@1: echo "*** If you have an old version installed, it is best to remove it, although" Chris@1: echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], Chris@1: [ echo "*** The test program failed to compile or link. See the file config.log for the" Chris@1: echo "*** exact error that occured. This usually means Vorbis was incorrectly installed" Chris@1: echo "*** or that you have moved Vorbis since it was installed." ]) Chris@1: CFLAGS="$ac_save_CFLAGS" Chris@1: LIBS="$ac_save_LIBS" Chris@1: fi Chris@1: VORBIS_CFLAGS="" Chris@1: VORBIS_LIBS="" Chris@1: VORBISFILE_LIBS="" Chris@1: VORBISENC_LIBS="" Chris@1: ifelse([$2], , :, [$2]) Chris@1: fi Chris@1: AC_SUBST(VORBIS_CFLAGS) Chris@1: AC_SUBST(VORBIS_LIBS) Chris@1: AC_SUBST(VORBISFILE_LIBS) Chris@1: AC_SUBST(VORBISENC_LIBS) Chris@1: rm -f conf.vorbistest Chris@1: ])