Use XIPH_ as our autoconf macro prefix, rather than borrowing the AM_ namespace
[platform/upstream/libvorbis.git] / vorbis.m4
1 # Configure paths for libvorbis
2 # Jack Moffitt <jack@icecast.org> 10-21-2000
3 # Shamelessly stolen from Owen Taylor and Manish Singh
4 # thomasvs added check for vorbis_bitrate_addblock which is new in rc3
5
6 dnl XIPH_PATH_VORBIS([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
7 dnl Test for libvorbis, and define VORBIS_CFLAGS and VORBIS_LIBS
8 dnl
9 AC_DEFUN(XIPH_PATH_VORBIS,
10 [dnl 
11 dnl Get the cflags and libraries
12 dnl
13 AC_ARG_WITH(vorbis,[  --with-vorbis=PFX   Prefix where libvorbis is installed (optional)], vorbis_prefix="$withval", vorbis_prefix="")
14 AC_ARG_WITH(vorbis-libraries,[  --with-vorbis-libraries=DIR   Directory where libvorbis library is installed (optional)], vorbis_libraries="$withval", vorbis_libraries="")
15 AC_ARG_WITH(vorbis-includes,[  --with-vorbis-includes=DIR   Directory where libvorbis header files are installed (optional)], vorbis_includes="$withval", vorbis_includes="")
16 AC_ARG_ENABLE(vorbistest, [  --disable-vorbistest       Do not try to compile and run a test Vorbis program],, enable_vorbistest=yes)
17
18   if test "x$vorbis_libraries" != "x" ; then
19     VORBIS_LIBS="-L$vorbis_libraries"
20   elif test "x$vorbis_prefix" != "x" ; then
21     VORBIS_LIBS="-L$vorbis_prefix/lib"
22   elif test "x$prefix" != "xNONE"; then
23     VORBIS_LIBS="-L$prefix/lib"
24   fi
25
26   VORBIS_LIBS="$VORBIS_LIBS -lvorbis -lm"
27   VORBISFILE_LIBS="-lvorbisfile"
28   VORBISENC_LIBS="-lvorbisenc"
29
30   if test "x$vorbis_includes" != "x" ; then
31     VORBIS_CFLAGS="-I$vorbis_includes"
32   elif test "x$vorbis_prefix" != "x" ; then
33     VORBIS_CFLAGS="-I$vorbis_prefix/include"
34   elif test "x$prefix" != "xNONE"; then
35     VORBIS_CFLAGS="-I$prefix/include"
36   fi
37
38
39   AC_MSG_CHECKING(for Vorbis)
40   no_vorbis=""
41
42
43   if test "x$enable_vorbistest" = "xyes" ; then
44     ac_save_CFLAGS="$CFLAGS"
45     ac_save_LIBS="$LIBS"
46     CFLAGS="$CFLAGS $VORBIS_CFLAGS $OGG_CFLAGS"
47     LIBS="$LIBS $VORBIS_LIBS $VORBISENC_LIBS $OGG_LIBS"
48 dnl
49 dnl Now check if the installed Vorbis is sufficiently new.
50 dnl
51       rm -f conf.vorbistest
52       AC_TRY_RUN([
53 #include <stdio.h>
54 #include <stdlib.h>
55 #include <string.h>
56 #include <vorbis/codec.h>
57
58 int main ()
59 {
60     vorbis_block        vb;
61     vorbis_dsp_state    vd;
62     vorbis_info         vi;
63
64     vorbis_info_init (&vi);
65     vorbis_encode_init (&vi, 2, 44100, -1, 128, -1);
66     vorbis_analysis_init (&vd, &vi);
67     vorbis_block_init (&vd, &vb);
68     /* this function was added in 1.0rc3, so this is what we're testing for */
69     vorbis_bitrate_addblock (&vb);
70
71     system("touch conf.vorbistest");
72     return 0;
73 }
74
75 ],, no_vorbis=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
76        CFLAGS="$ac_save_CFLAGS"
77        LIBS="$ac_save_LIBS"
78   fi
79
80   if test "x$no_vorbis" = "x" ; then
81      AC_MSG_RESULT(yes)
82      ifelse([$1], , :, [$1])     
83   else
84      AC_MSG_RESULT(no)
85      if test -f conf.vorbistest ; then
86        :
87      else
88        echo "*** Could not run Vorbis test program, checking why..."
89        CFLAGS="$CFLAGS $VORBIS_CFLAGS"
90        LIBS="$LIBS $VORBIS_LIBS $OGG_LIBS"
91        AC_TRY_LINK([
92 #include <stdio.h>
93 #include <vorbis/codec.h>
94 ],     [ return 0; ],
95        [ echo "*** The test program compiled, but did not run. This usually means"
96        echo "*** that the run-time linker is not finding Vorbis or finding the wrong"
97        echo "*** version of Vorbis. If it is not finding Vorbis, you'll need to set your"
98        echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
99        echo "*** to the installed location  Also, make sure you have run ldconfig if that"
100        echo "*** is required on your system"
101        echo "***"
102        echo "*** If you have an old version installed, it is best to remove it, although"
103        echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
104        [ echo "*** The test program failed to compile or link. See the file config.log for the"
105        echo "*** exact error that occured. This usually means Vorbis was incorrectly installed"
106        echo "*** or that you have moved Vorbis since it was installed." ])
107        CFLAGS="$ac_save_CFLAGS"
108        LIBS="$ac_save_LIBS"
109      fi
110      VORBIS_CFLAGS=""
111      VORBIS_LIBS=""
112      VORBISFILE_LIBS=""
113      VORBISENC_LIBS=""
114      ifelse([$2], , :, [$2])
115   fi
116   AC_SUBST(VORBIS_CFLAGS)
117   AC_SUBST(VORBIS_LIBS)
118   AC_SUBST(VORBISFILE_LIBS)
119   AC_SUBST(VORBISENC_LIBS)
120   rm -f conf.vorbistest
121 ])