Fixed compilation on DevStudio 2003
[opal/cbnco.git] / plugins / configure.ac
blob30929e9cc26c2c45fecb2245b45db4d6d20681cd
1 AC_INIT(configure.ac)
3 AC_PROG_CXX
4 AC_HEADER_STDC
6 dnl ########################################################################
7 dnl set the PREFIX accordingly
8 if test "x$prefix" = "xNONE"; then
9    INSTALLPREFIX="/usr/local"
10 else
11    INSTALLPREFIX="${prefix}"
14 AC_SUBST(INSTALLPREFIX)
17 dnl ########################################################################
18 dnl set LIBDIR accordingly
19 LIBDIR="${libdir}"
21 AC_SUBST(LIBDIR)
23 dnl ########################################################################
24 AC_CANONICAL_TARGET()
25 LDSO=
26 case "$target_os" in
27         solaris*) LDSO="-Bdynamic -G -h" ;;
28         darwin*)  ;;
29         *)        LDSO="-shared -Wl,-soname,";;
30 esac
31 AC_SUBST(LDSO, ${LDSO})
33 dnl ########################################################################
34 dnl look for amr-nb_float
36 H323_GSMAMR_NB_FLOAT=0
37 if test -r "./audio/gsm-amr/src/interf_dec.h" ; then
38   AC_MSG_NOTICE(Enabling GSM-AMR plugin)
39   H323_GSMAMR_NB_FLOAT=1
40 else
41   AC_MSG_NOTICE(GSM-AMR plugin disabled (no 3GPP source))
43 AC_SUBST(H323_GSMAMR_NB_FLOAT, $H323_GSMAMR_NB_FLOAT)
46 dnl ########################################################################
47 dnl Look for system GSM
48 dnl
49 dnl Note that we can only use llibgsm if it is compiled with WAV49
50 dnl
52 H323_SYSTEM_GSM=0
53 localgsm="xxx"
54 AC_ARG_ENABLE(localgsm,
55        [  --enable-localgsm         use local version of GSM library rather than system version],
56        localgsm=$enableval)
58 if test "${localgsm}" = "yes" ; then
59   AC_MSG_NOTICE(Forcing use of local GSM sources)
60 elif test "${localgsm}" = "no" ; then
61   AC_MSG_NOTICE(Forcing use of system GSM library)
62   H323_SYSTEM_GSM=1
63 else
64   AC_CHECK_LIB(gsm, gsm_create, GSM=1)
65   if test "x$GSM" != "x"; then
66     AC_MSG_CHECKING(if system GSM library has WAV49)
67     OLD_LIBS=$LIBS
68     LIBS="-lgsm"
69     AC_RUN_IFELSE(
70     [AC_LANG_PROGRAM([[
71     #include <gsm.h>
72 ]],[[
73     int option = 0;
74     gsm handle = gsm_create();
75     return (gsm_option(handle, GSM_OPT_WAV49, &option) == -1) ? 1 : 0;
76 ]])], GSM=2) 
77     if test "x$GSM" == "x2"; then
78       H323_SYSTEM_GSM=1
79       AC_MSG_RESULT(yes)
80       AC_MSG_NOTICE(Using system gsm)
81     else
82       AC_MSG_RESULT(no)
83     fi
84     LIBS=$OLD_LIBS
85   fi
87 AC_SUBST(H323_SYSTEM_GSM, $H323_SYSTEM_GSM)
88 AC_DEFINE_UNQUOTED(H323_SYSTEM_GSM, $H323_SYSTEM_GSM)
90 dnl ########################################################################
91 dnl Look for system libspeex
93 AC_CHECK_SIZEOF(short)
94 AC_CHECK_SIZEOF(int)
95 AC_CHECK_SIZEOF(long)
96 AC_CHECK_SIZEOF(long long)
98 case 2 in
99         $ac_cv_sizeof_short) SIZE16="short";;
100         $ac_cv_sizeof_int) SIZE16="int";;
101 esac
103 case 4 in
104         $ac_cv_sizeof_int) SIZE32="int";;
105         $ac_cv_sizeof_long) SIZE32="long";;
106         $ac_cv_sizeof_short) SIZE32="short";;
107 esac
109 AC_SUBST(SIZE16)
110 AC_SUBST(SIZE32)
113 localspeex="xxx"
114 AC_ARG_ENABLE(localspeex,
115        [  --enable-localspeex       use local version of Speex library rather than system version],
116        localspeex=$enableval)
118 if test "${localspeex}" = "yes" ; then
119   AC_MSG_NOTICE(Forcing use of local Speex sources)
120 elif test "${localspeex}" = "no" ; then
121   AC_MSG_NOTICE(Forcing use of system Speex library)
122   AC_DEFINE(H323_SYSTEM_SPEEX, 1)
123   AC_SUBST(H323_SYSTEM_SPEEX, 1)
124 else
125   AC_CHECK_LIB(speex, speex_encoder_destroy, SPEEX=1)
126   if test "x$SPEEX" = "x"; then
127     AC_MSG_NOTICE(Forcing use of local Speex library)
128   else
129     AC_MSG_CHECKING(system Speex version)
130     cat > t.c <<C_FILE
131     #include <speex.h>
132     #include <speex_header.h>
133     #include <stdio.h>
134     int main(int argc,char *argv[])
135     {
136       SpeexHeader header;
137       speex_init_header(&header, 1, 1, &speex_nb_mode);
138       printf("%s\n", header.speex_version);
139     }
140 C_FILE
141     cc -o t t.c -lspeex > /dev/null 2>&1
142     if test \! -x t ; then
143       AC_MSG_RESULT(cannot determine - using library version)
144     else
145       SYSVER=`./t`
146       rm -f t t.c
147       AC_MSG_RESULT($SYSVER)
148       AC_MSG_CHECKING(library Speex version)
149       LIBVER=`grep "#define VERSION" ./audio/Speex/libspeex/misc.h | sed -e 's/^.*speex\-//' -e 's/\"//'`
150       AC_MSG_RESULT($LIBVER)
151       AC_MSG_CHECKING(Speex versions)
152       cat > t.pl <<P_FILE
153       [
154       \$sysver = @ARGV[0];
155       \$libver = @ARGV[1];
156       @lib = split /\./, \$libver;
157       while (@lib < 3) {
158         @lib[0+@lib] = "0";
159       }
160       @sys = split /\./, \$sysver;
161       while (@sys < 3) {
162         @sys[0+@sys] = "0";
163       }
164       \$i = 0;
165       while (\$i < 3) {
166         #print "comparing " . @sys[\$i] . " and " . @lib[\$i] . "\n";
167         if (\@sys[\$i] < @lib[\$i]) {
168           print "0";
169           die;
170         }
171         \$i++;
172       }
173       print "1";
174       ]
175 P_FILE
176       SPEEX=`perl t.pl $SYSVER $LIBVER`
177       rm t.pl
178       if test "x$SPEEX" = "x" ; then
179         AC_MSG_RESULT(library version is more recent)
180       else
181         AC_MSG_RESULT(system version is more recent)
182         AC_DEFINE(H323_SYSTEM_SPEEX, 1)
183         AC_SUBST(H323_SYSTEM_SPEEX, 1)
184       fi
185     fi
186   fi
189 dnl ########################################################################
191 dnl ffmpeg for H.263
192 dnl 
194 HAS_FFMPEG=1
195 AC_SUBST(HAS_FFMPEG)
198 dnl ########################################################################
200 dnl Quicknet xJACK cards
201 dnl 
203 HAS_IXJ=0
204 AC_CHECK_HEADERS(linux/telephony.h sys/telephony.h /usr/local/include/sys/telephony.h, HAS_IXJ=1)
205 if test "x$HAS_IXJ" != "x" ; then
206   AC_MSG_CHECKING(if ixjuser.h actually compiles)
207   AC_TRY_COMPILE([#include <linux/ixjuser.h>],
208                  [int main(int ac,char **av) { return 0; }], HAS_IXJ=1, HAS_IXJ=)
209   if test "x$HAS_IXJ" != "x" ; then
210     AC_MSG_RESULT(yes)
211     HAS_IXJ=1
212   else
213     AC_MSG_RESULT(no)
214   fi
216 AC_SUBST(HAS_IXJ)
219 dnl ########################################################################
221 dnl VoiceTronics VPB card
222 dnl 
224 HAS_VPB=0
225 vpb=yes
226 AC_ARG_ENABLE(vpb,
227        [  --enable-vpb            enable voicetronix vpb],
228        vpb=$enableval)
229 AC_MSG_CHECKING(Voicetronix vpb)
230 if test "$vpb" = "yes" ; then
231   HAS_VPB=1
232   AC_MSG_RESULT(enabled)
233 else
234   AC_MSG_RESULT(disabled)
236 AC_SUBST(HAS_VPB)
239 dnl ########################################################################
241 dnl CAPI
242 dnl 
244 AC_CHECK_HEADERS(capi20.h, HAS_CAPI20_H=1)
245 HAS_CAPI=0
246 capi=yes
247 AC_ARG_ENABLE(capi,
248        [  --enable-capi            enable CAPI],
249        capi=$enableval)
250 AC_MSG_CHECKING(CAPI)
251 if test "$capi" = "yes" ; then
252   if test "x$HAS_CAPI20_H" != "x" ; then
253     HAS_CAPI=1
254     AC_MSG_RESULT(enabled)
255   else
256     AC_MSG_RESULT(not available)
257   fi
258 else
259   AC_MSG_RESULT(disabled)
261 AC_SUBST(HAS_CAPI)
264 dnl ########################################################################
266 dnl Sangoma libraries
267 dnl 
269 OLD_CPPFLAGS=$CPPFLAGS
270 CPPFLAGS=-D__LINUX__
272 HAS_SANGOMA=
273 AC_CHECK_HEADERS(/usr/local/include/libpri.h, HAS_SANGOMA=1)
274 if test "x$HAS_SANGOMA" != "x" ; then
275   AC_CHECK_HEADERS(/usr/local/include/libsangoma.h, HAS_SANGOMA=1)
276   if test "x$HAS_SANGOMA" != "x" ; then
277     AC_CHECK_LIB(pri, pri_new_cb, HAS_SANGOMA=1)
278     if test "x$HAS_SANGOMA" = "x" ; then
279       AC_MSG_NOTICE(*** If the latest libri is installed in /usr/local/lib, ensure it is not obscured by an older version in /usr/lib)
280     else
281       AC_CHECK_LIB(sangoma, sangoma_create_socket, HAS_SANGOMA=1)
282       if test "x$HAS_SANGOMA" != "x" ; then
283         AC_DEFINE(HAS_SANGOMA, 1)
284         HAS_SANGOMA=1
285       fi
286     fi
287   fi
289 AC_SUBST(HAS_SANGOMA)
291 CPPFLAGS=$OLD_CPPFLAGS
294 dnl ########################################################################
296 if test -d audio/gsm-amr ; then
297   AC_CONFIG_FILES(audio/gsm-amr/Makefile)
299 if test -d audio/GSM0610 ; then
300   AC_CONFIG_FILES(audio/GSM0610/Makefile)
302 if test -d audio/iLBC ; then
303   AC_CONFIG_FILES(audio/iLBC/Makefile)
305 if test -d audio/Speex ; then
306   AC_CONFIG_FILES(audio/Speex/Makefile)
308 if test -d audio/LPC_10 ; then
309   AC_CONFIG_FILES(audio/LPC_10/Makefile)
311 if test -d audio/G726 ; then
312   AC_CONFIG_FILES(audio/G726/Makefile)
314 if test -d audio/IMA_ADPCM ; then
315   AC_CONFIG_FILES(audio/IMA_ADPCM/Makefile)
317 if test -d video/H.261-vic ; then
318   AC_CONFIG_FILES(video/H.261-vic/Makefile)
320 if test -d video/H.263-ffmpeg ; then
321   AC_CONFIG_FILES(video/H.263-ffmpeg/Makefile)
323 if test -d LID/IxJ ; then
324   AC_CONFIG_FILES(LID/IxJ/Makefile)
326 if test -d LID/VPB ; then
327   AC_CONFIG_FILES(LID/VPB/Makefile)
329 if test -d LID/CAPI ; then
330   AC_CONFIG_FILES(LID/CAPI/Makefile)
333 AC_CONFIG_FILES(Makefile)
335 dnl ########################################################################
336 dnl Header file
338 dnl ########################################################################
339 dnl Output configured files
341 AC_OUTPUT(audio/Speex/libspeex/speex_config_types.h)
342 AC_OUTPUT()