Utilise new MergeSym feature to no longer overwrite the source .DEF file when buildin...
[openh323.git] / configure.ac
blobb5ffbde14058a53d365c919fe70ba66262e99ac9
1 AC_INIT(include/h323.h)
3 AC_PROG_CXX
4 AC_HEADER_STDC
6 dnl this must be updated for every minor revision, and for
7 dnl builds when and as necessary
8 REQUIRED_PWLIB_MAJOR=1
9 REQUIRED_PWLIB_MINOR=10
10 REQUIRED_PWLIB_BUILD=0
12 dnl ########################################################################
13 dnl set the OpenH323 directory to the current directory
15 OPENH323DIR=`pwd`
16 AC_SUBST(OPENH323DIR)
18 dnl ########################################################################
19 dnl set the PREFIX accordingly
20 if test "x$prefix" = "xNONE"; then
21    INSTALLPREFIX="/usr/local"
22 else
23    INSTALLPREFIX="${prefix}"
26 AC_SUBST(INSTALLPREFIX)
29 dnl ########################################################################
30 dnl set LIBDIR accordingly
31 LIBDIR="${libdir}"
33 AC_SUBST(LIBDIR)
36 dnl ########################################################################
37 dnl extract the OpenH323 version
39 dnl MSWIN_DISPLAY version,Version
40 dnl MSWIN_VERSION version,OPENH323_MAJOR=MAJOR_VERSION
41 dnl MSWIN_VERSION version,OPENH323_MINOR=MINOR_VERSION
42 dnl MSWIN_VERSION version,OPENH323_BUILD=BUILD_NUMBER
43 dnl MSWIN_VERSION version,OPENH323_VERSION=VERSION
45 MAJOR_VERSION=`cat ${OPENH323DIR}/version.h | grep MAJOR_VERSION | cut -f3 -d' '`
46 MINOR_VERSION=`cat ${OPENH323DIR}/version.h | grep MINOR_VERSION | cut -f3 -d' '`
47 BUILD_NUMBER=`cat ${OPENH323DIR}/version.h | grep BUILD_NUMBER | cut -f3 -d' '`
48 OPENH323_VERSION="${MAJOR_VERSION}.${MINOR_VERSION}.${BUILD_NUMBER}"
49 AC_SUBST(MAJOR_VERSION)
50 AC_SUBST(MINOR_VERSION)
51 AC_SUBST(BUILD_NUMBER)
52 AC_SUBST(OPENH323_VERSION)
53 AC_SUBST(MAJOR_VERSION, $MAJOR_VERSION)
54 AC_SUBST(MINOR_VERSION, $MINOR_VERSION)
55 AC_SUBST(BUILD_NUMBER, $BUILD_NUMBER)
57 echo "OpenH323 version is ${OPENH323_VERSION}"
59 AC_DEFINE_UNQUOTED(OPENH323_MAJOR,   ${MAJOR_VERSION})
60 AC_DEFINE_UNQUOTED(OPENH323_MINOR,   ${MINOR_VERSION})
61 AC_DEFINE_UNQUOTED(OPENH323_BUILD,   ${BUILD_NUMBER})
62 AC_DEFINE_UNQUOTED(OPENH323_VERSION, "$OPENH323_VERSION")
64 dnl ########################################################################
65 dnl look for ptlib, use a preference order of explicit PWLIBDIR, directory
66 dnl at same level, home directory, /usr/local or /usr.
68 if test "${PWLIBDIR:-unset}" != "unset" ; then
69   AC_CHECK_FILE(${PWLIBDIR}/version.h, HAS_PTLIB=1)
71 if test "${HAS_PTLIB:-unset}" = "unset" ; then
72   AC_CHECK_FILE(${OPENH323DIR}/../pwlib/version.h, HAS_PTLIB=1)
73   if test "${HAS_PTLIB:-unset}" != "unset" ; then
74     PWLIBDIR="${OPENH323DIR}/../pwlib"
75   else
76     AC_CHECK_FILE(${HOME}/pwlib/include/ptlib.h, HAS_PTLIB=1)
77     if test "${HAS_PTLIB:-unset}" != "unset" ; then
78       PWLIBDIR="${HOME}/pwlib"
79     else
80       AC_CHECK_FILE(/usr/local/include/ptlib.h, HAS_PTLIB=1)
81       if test "${HAS_PTLIB:-unset}" != "unset" ; then
82         AC_PATH_PROG(PTLIB_CONFIG, ptlib-config, , /usr/local/bin)
83       else
84         AC_CHECK_FILE(/usr/include/ptlib.h, HAS_PTLIB=1)
85         if test "${HAS_PTLIB:-unset}" != "unset" ; then
86           AC_PATH_PROG(PTLIB_CONFIG, ptlib-config, , /usr/share/pwlib/make/)
87         fi
88       fi
89     fi
90   fi
93 if test "${HAS_PTLIB:-unset}" = "unset" ; then
94   echo "Cannot find pwlib - please install or set PWLIBDIR and try again"
95   exit
98 if test "${PWLIBDIR:-unset}" = "unset" ; then
99   if test "${PTLIB_CONFIG:-unset}" = "unset" ; then
100     echo "Cannot find ptlib-config - please install and try again"
101     exit
102   fi
103   PWLIBDIR=`$PTLIB_CONFIG --prefix`
106 if test "x$PWLIBDIR" = "x/usr" -o "x$PWLIBDIR" = "x/usr/"; then
107   PWLIBDIR="/usr/share/pwlib/"
109 if test "x$PWLIBDIR" = "x/usr/local" -o "x$PWLIBDIR" = "x/usr/"; then
110   PWLIBDIR="/usr/local/share/pwlib/"
113 echo "PWLib prefix set to.... $PWLIBDIR"
115 if test "${PWLIBDIR:-unset}" = "unset" ; then
116   PWVERSION=`$PTLIB_CONFIG --version`
117   PW_MAJOR_VERSION=`echo $PW_VERSION | cut -d'.' -f1`
118   PW_MINOR_VERSION=`echo $PW_VERSION | cut -d'.' -f2`
119   PW_BUILD_NUMBER=`echo $PW_VERSION | cut -d'.' -f3`
120   
121 else
122   PW_MAJOR_VERSION=`cat ${PWLIBDIR}/version.h | grep MAJOR_VERSION | cut -f3 -d' '`
123   PW_MINOR_VERSION=`cat ${PWLIBDIR}/version.h | grep MINOR_VERSION | cut -f3 -d' '`
124   PW_BUILD_NUMBER=`cat ${PWLIBDIR}/version.h | grep BUILD_NUMBER | cut -f3 -d' '`
125   PWVERSION="${PW_MAJOR_VERSION}.${PW_MINOR_VERSION}.${PW_BUILD_NUMBER}"
128 AC_ARG_ENABLE(versioncheck,
129                 [  --disable-versioncheck    disable PWLib version check],
130                 PWLIB_VERSION_CHECK=$enableval)
132 AC_MSG_CHECKING(Checking PWLib version ${PWVERSION})
133 if test "${PWLIB_VERSION_CHECK}x" = "nox" ; then
134   AC_MSG_RESULT(check disabled)
135 else
136   if test $PW_MAJOR_VERSION -lt $REQUIRED_PWLIB_MAJOR ; then
137     AC_MSG_RESULT(Major version less than required $REQUIRED_PWLIB_MAJOR)
138     exit 1
139   fi
140   if test $PW_MINOR_VERSION -lt $REQUIRED_PWLIB_MINOR ; then
141     AC_MSG_RESULT(Minor version less than required $REQUIRED_PWLIB_MINOR)
142     exit 1
143   fi
144   if test $PW_BUILD_NUMBER -lt $REQUIRED_PWLIB_BUILD ; then
145     AC_MSG_RESULT(Build version less than required $REQUIRED_PWLIB_BUILD)
146     exit 1
147   fi
148   AC_MSG_RESULT(ok)
151 AC_SUBST(PWLIBDIR)
153 dnl ########################################################################
154 dnl check for setting minimum size
156 AC_ARG_ENABLE(minsize,
157        [  --enable-minsize        minimise the size of the lib by disabling least used options])
159 dnl these are the default configure settings
160 default_ixj=yes
161 default_audio=yes
162 default_video=yes
163 default_asntracing=yes
164 default_h450=yes
165 default_h501=yes
166 default_t38=yes
167 default_h224=yes
168 default_h248=yes
169 default_h460=yes
170 default_t120=yes
171 default_transnexusosp=yes
172 default_h263avcodec=no
173 default_vich263=no
174 default_vpb=no
176 if test "${enable_minsize}x" = "yesx" ; then
177   default_ixj=no
178   default_audio=yes
179   default_video=yes
180   default_asntracing=no
181   default_h450=no
182   default_h501=no
183   default_t38=no
184   default_h224=no
185   default_h248=no
186   default_h460=no
187   default_t120=no
188   default_transnexusosp=no
189   default_h263avcodec=no
190   default_vich263=no
191   default_vpb=no
195 dnl ########################################################################
196 dnl check for disbling ASN tracing
198 AC_ARG_ENABLE(asntracing,
199        [  --disable-asntracing    disable ASN tracing])
201 if test "${enable_asntracing}z" = "z" ; then
202   enable_asntracing=$default_asntracing
205 if test "$enable_asntracing" = "no" ; then
206   AC_MSG_NOTICE(Disabling ASN tracing)
207   AC_SUBST(NOTRACE, 1)
210 dnl ########################################################################
211 dnl Enable audio subsystems
213 dnl MSWIN_DISPLAY audio,Audio Software Codecs
214 dnl MSWIN_DEFINE  audio,H323_AUDIO_CODECS
216 AC_ARG_ENABLE(audio,
217        [  --disable-audio         disable audio codecs])
219 if test "${enable_audio}z" = "z" ; then
220   enable_audio=yes
223 if test "$enable_audio" = "no" ; then
224   AC_MSG_NOTICE(Disabling audio functions)
225   AC_SUBST(NOAUDIOCODECS, 1)
226 else
227   AC_DEFINE(H323_AUDIO_CODECS, 1)
229   AC_ARG_ENABLE(embeddedgsm,
230          [  --enable-embeddedgsm    embed GSM codec via static linking],
231          EMBEDDED_GSM=$enableval)
232   if test "${EMBEDDED_GSM}x" != "x" ; then
233     AC_MSG_NOTICE(Embedding GSM codec)
234     LDFLAGS="$LDFLAGS -L${OPENH323DIR}/plugins/audio/GSM0610"
235     ENDLDLIBS="$ENDLDLIBS -lgsm0610_audio_s"
236     AC_CHECK_LIB(gsm, gsm_create, GSM=1)
237     if test "x$GSM" != "x"; then
238       ENDLDLIBS="$ENDLDLIBS -lgsm"
239     fi
240     AC_DEFINE(H323_EMBEDDED_GSM)
241   fi
244 dnl ########################################################################
245 dnl Enable video subsystems
247 dnl MSWIN_DISPLAY video,Video System
248 dnl MSWIN_DEFINE  video,H323_VIDEO
250 AC_ARG_ENABLE(video,
251        [  --disable-video         disable video functions])
253 if test "${enable_video}z" = "z" ; then
254   enable_video=$default_video
257 if test "$enable_video" = "no" ; then
258   AC_MSG_NOTICE(Disabling video support)
259   AC_SUBST(NOVIDEO, 1)
260 else
261   AC_DEFINE(H323_VIDEO, 1)
264 dnl ########################################################################
265 dnl look for avcodec compatible with RFC 2190
267 dnl MSWIN_DISPLAY    rfc2190,ffmpeg RFC2190 AVCODEC Library
268 dnl MSWIN_IF_FEATURE rfc2190,video
269 dnl MSWIN_CHECK_FILE rfc2190,avcodec_rfc2190.h,H323_RFC2190_AVCODEC=1
270 dnl MSWIN_DIR_SYMBOL rfc2190,H323_RFC2190_AVCODEC_DIR
271 dnl MSWIN_CHECK_DIR  rfc2190,..\ffmpeg\libavcodec\
272 dnl MSWIN_CHECK_DIR  rfc2190,..\external\ffmpeg\libavcodec\
273 dnl MSWIN_CHECK_DIR  rfc2190,\ffmpeg\libavcodec\
274 dnl MSWIN_CHECK_DIR  rfc2190,c:\ffmpeg\libavcodec\
276 H323_RFC2190_AVCODEC=
277 H323_RFC2190_AVCODEC_DIR=
278 H323_AVCODEC=
279 H323_VICH263=
281 if test "$enable_video" = "yes" ; then
283   AC_ARG_ENABLE(rfc2190avcodec,
284          [  --enable-rfc2190avcodec   set directory for H263 using RFC2190-compatible ffmpeg])
286   if test "${enable_rfc2190avcodec}x" = "x" ; then
287     AC_MSG_NOTICE(Skipping tests for RFC 2190 H.263 support)
288   else
289     AC_MSG_NOTICE(Checking for RFC2190 H.263 codec)
290     H323_RFC2190_AVCODEC_DIR=$enable_rfc2190avcodec
291     AC_CHECK_HEADER(${H323_RFC2190_AVCODEC_DIR}/avcodec.h, H323_RFC2190_AVCODEC=1)
292     if test "${H323_RFC2190_AVCODEC}" == "1" ; then
293       AC_DEFINE(H323_RFC2190_AVCODEC)
294       H323_RFC2190_AVCODEC=1
295       H323_RFC2190_AVCODEC_DIR=${H323_RFC2190_AVCODEC_DIR}
296       STDCCFLAGS="${STDCCFLAGS} -I${H323_RFC2190_AVCODEC_DIR}"
297     fi
298   fi
300   dnl ########################################################################
301   dnl look for avcodec from library.
303   dnl MSWIN_DISPLAY    ffh263,ffmpeg AVCODEC Library
304   dnl MSWIN_CHECK_FILE ffh263,avcodec.h,H323_AVCODEC=1
305   dnl MSWIN_DIR_SYMBOL ffh263,H323_AVCODEC_DIR
306   dnl MSWIN_CHECK_DIR  ffh263,..\ffmpeg\libavcodec\
307   dnl MSWIN_CHECK_DIR  ffh263,..\external\ffmpeg\libavcodec\
308   dnl MSWIN_CHECK_DIR  ffh263,\ffmpeg\libavcodec\
309   dnl MSWIN_CHECK_DIR  ffh263,c:\ffmpeg\libavcodec\
310   dnl MSWIN_IF_FEATURE ffh263,!rfc2190
312   AC_ARG_ENABLE(h263avcodec,
313          [  --enable-h263avcodec  enable search for H.263 using non-RFC2190-compatible ffmpeg])
314   if test "${enable_h263avcodec}z" = "z" ; then
315     enable_h263avcodec=$default_h263avcodec
316   fi
318   if test "$enable_h263avcodec" = "no" ; then
319     AC_MSG_NOTICE(Disabled non-RFC2190 H.263 using ffmpeg)
320   else
321     AC_CHECK_HEADERS(avcodec.h, H323_AVCODEC=1)
323     if test "${H323_AVCODEC}z" != "z" ; then
324       AC_CHECK_LIB(avcodec, avcodec_open, H323_AVCODEC=1, H323_AVCODEC=)
325     fi
327     if test "${H323_AVCODEC}z" != "z" ; then
328       AC_CHECK_FILE(/usr/local/include/ffmpeg/avcodec.h, H323_AVCODEC=1)
329     fi
331     if test "${H323_AVCODEC}z" = "z" ; then
332       AC_MSG_NOTICE(Unable to find non-RFC2190 H.263 using ffmpeg)
333     else
334       H323_AVCODEC=1
335       AC_DEFINE(H323_AVCODEC, 1, "ffmpeg based avodec found")
336       AVCODECINCLUDEDIR=/usr/local/include/ffmpeg
337       AVCODECLIBDIR=/usr/local/lib
338       STDCCFLAGS="$STDCCFLAGS -I${AVCODECINCLUDEDIR}"
340       AC_MSG_NOTICE(Enabled non-RFC2190 H.263 using ffmpeg)
341     fi
342   fi
344   dnl ########################################################################
345   dnl look for vich263 library
347   dnl MSWIN_DISPLAY    vich263,VIC H.263 Library
348   dnl MSWIN_CHECK_FILE vich263,encoder-h263.h,H323_VICH263=1
349   dnl MSWIN_DIR_SYMBOL vich263,H323_VICH263_DIR
350   dnl MSWIN_CHECK_DIR  vich263,..\vich263\
351   dnl MSWIN_CHECK_DIR  vich263,..\external\vich263\
352   dnl MSWIN_CHECK_DIR  vich263,\vich263\
353   dnl MSWIN_CHECK_DIR  vich263,c:\vich263\
354   dnl MSWIN_IF_FEATURE vich263,!rfc2190&!ffh263
356   AC_ARG_ENABLE(vich263,
357          [  --enable-vich263        enable search for H.263 using VIC])
358   if test "${enable_vich263}z" = "z" ; then
359     enable_vich263=$default_vich263
360   fi
362   if test "$enable_vich263" = "no" ; then
363     AC_MSG_NOTICE(Disabled H.263 using VIC)
364   else
365     AC_CHECK_HEADERS(encoder-h263.h, H323_VICH263=1)
366     if test "${H323_VICH263}z" != "z" ; then
367       AC_CHECK_FILE(/usr/local/lib/libvich263.so, H323_VICH263=1, H323_VICH263=)
368     fi
370     if test "${H323_VICH263}z" != "z" ; then
371      AC_CHECK_FILE(/usr/local/include/vich263/encoder-h263.h, H323_VICH263=1)
372     fi
374     if test "${H323_VICH263}z" = "z" ; then
375       AC_MSG_NOTICE(Unable to find H.263 using VIC)
376     else
377       H323_VICH263=1
378       AC_DEFINE(H323_VICH263, 1, "vic H263 codec found")
379       VICH263INCLUDEDIR=/usr/local/include/vich263
380       VICH263LIBDIR=/usr/local/lib
381       STDCCFLAGS="$STDCCFLAGS -I${VICH263INCLUDEDIR}"
382       AC_MSG_NOTICE(Enabled H.263 using VIC)
383     fi
384   fi
387 AC_SUBST(H323_RFC2190_AVCODEC)
388 AC_SUBST(H323_RFC2190_AVCODEC_DIR)
389 AC_SUBST(H323_AVCODEC)
390 AC_SUBST(H323_VICH263)
393 dnl ########################################################################
394 dnl look for Transnexus OSP Toolkit
396 dnl MSWIN_DISPLAY    transnexus_osp,Transnexus OSP Toolkit
397 dnl MSWIN_CHECK_FILE transnexus_osp,include/osp/ospcryptowrap.h,H323_TRANSNEXUS_OSP=1
398 dnl MSWIN_DIR_SYMBOL transnexus_osp,H323_TRANSNEXUS_OSP_DIR
399 dnl MSWIN_CHECK_DIR  transnexus_osp,lib\
400 dnl MSWIN_CHECK_DIR  transnexus_osp,pthread\lib
401 dnl MSWIN_CHECK_DIR  transnexus_osp,pthread\include
403 AC_ARG_ENABLE(transnexusosp,
404        [  --disable-transnexusosp disable support for the Transnexus OSP toolkit])
406 if test "${enable_transnexusosp}z" = "z" ; then
407   enable_transnexusosp=$default_transnexusosp
410 OLD_LDFLAGS=$LDFLAGS
412 if test "$enable_transnexusosp" = "no" ; then
413   AC_MSG_NOTICE(Disabling support for the Transnexus OSP toolkit)
414 else
415   AC_CHECK_HEADERS(osp/osp.h, HAS_TRANSNEXUS_OSP=1)
416   if test "${HAS_TRANSNEXUS_OSP}x" = "1x" ; then
417     AC_CHECK_LIB(osp, OSPPInit, HAS_TRANSNEXUS_OSP=1, HAS_TRANSNEXUS_OSP=, -lssl)
418     if test "${HAS_TRANSNEXUS_OSP}x" = "1x" ; then
419       H323_TRANSNEXUS_OSP=1
420       AC_DEFINE(H323_TRANSNEXUS_OSP)
421       LDLIBS="${LDLIBS} -losp"
422       OSP_INCLUDE="#include <osp/osp.h>"
423     else
424       unset ac_cv_lib_osp_OSPPInit
425       LDFLAGS="-L/usr/local/lib $OLD_LDFLAGS"
426       AC_CHECK_LIB(osp, OSPPInit, HAS_TRANSNEXUS_OSP=1, HAS_TRANSNEXUS_OSP=, -lssl)
427       if test "${HAS_TRANSNEXUS_OSP}x" = "1x" ; then
428         H323_TRANSNEXUS_OSP=1
429         AC_DEFINE(H323_TRANSNEXUS_OSP)
430         STDCCFLAGS="$STDCCFLAGS -I/usr/local/include"
431         LDLIBS="${LDLIBS} -losp"
432         OSP_INCLUDE='#include "/usr/local/include/osp/osp.h"'
433       else
434         unset ac_cv_lib_osp_OSPPInit
435         LDFLAGS="$OLD_LDFLAGS"
436         AC_CHECK_LIB(osptk, OSPPInit, HAS_TRANSNEXUS_OSP=1, HAS_TRANSNEXUS_OSP=, -lssl)
437         if test "${HAS_TRANSNEXUS_OSP}x" = "1x" ; then
438           H323_TRANSNEXUS_OSP=1
439           AC_DEFINE(H323_TRANSNEXUS_OSP)
440           LDLIBS="${LDLIBS} -losptk"
441           OSP_INCLUDE="#include <osp/osp.h>"
442         else
443           unset ac_cv_lib_osp_OSPPInit
444           LDFLAGS="-L/usr/local/lib $OLD_LDFLAGS"
445           AC_CHECK_LIB(osptk, OSPPInit, HAS_TRANSNEXUS_OSP=1, HAS_TRANSNEXUS_OSP=, -lssl)
446           if test "${HAS_TRANSNEXUS_OSP}x" = "1x" ; then
447             H323_TRANSNEXUS_OSP=1
448             AC_DEFINE(H323_TRANSNEXUS_OSP)
449             STDCCFLAGS="$STDCCFLAGS -I/usr/local/include"
450             LDLIBS="${LDLIBS} -losptk"
451             OSP_INCLUDE='#include "/usr/local/include/osp/osp.h"'
452           fi
453         fi
454       fi
455     fi
456   fi
459 LDFLAGS=$OLD_LDFLAGS
461 if test "${H323_TRANSNEXUS_OSP}x" != "x" ; then
462   if test "${OSP_INCLUDE}x" != "x" ; then
463     AC_MSG_CHECKING(for new OSP toolkit API)
464     AC_TRY_COMPILE(${OSP_INCLUDE},
465       [int main(int ac,char **av) { OSPTTRANHANDLE h; OSPTTIME t; OSPPTransactionReportUsage(h, 0, t, 0, 0, 0, 0, NULL, NULL); return 0; } ], H323_NEW_OSP_API=, H323_NEW_OSP_API=1)
466     if test "${H323_NEW_OSP_API}x" != "x" ; then
467       AC_MSG_RESULT(yes)
468       AC_DEFINE(H323_NEW_OSP_API)
469     else
470       AC_MSG_RESULT(no)
471     fi
472   fi
475 AC_SUBST(H323_TRANSNEXUS_OSP)
477 dnl ########################################################################
478 dnl check for disabling T.38
480 dnl MSWIN_DISPLAY t38,T.38
481 dnl MSWIN_DEFINE  t38,H323_T38
483 AC_ARG_ENABLE(t38,
484        [  --disable-t38           disable T.38])
485 if test "${enable_t38}x" = "x" ; then
486   enable_t38=$default_t38
488 if test "$enable_t38" = "yes" ; then
489   AC_MSG_NOTICE(Enabling T.38)
490   H323_T38=1
491   AC_DEFINE(H323_T38, 1)
492 else
493   H323_T38=
494   AC_MSG_NOTICE(Disabling T.38)
496 AC_SUBST(H323_T38)
498 dnl ########################################################################
499 dnl check for disabling H.224
501 dnl MSWIN_DISPLAY h224,H.224
502 dnl MSWIN_DEFINE  h224,OPAL_H224
504 AC_ARG_ENABLE(h224,
505        [  --disable-h224          disable H.224])
506 if test "${enable_h224}x" = "x" ; then
507   enable_h224=$default_h224
509 if test "$enable_h224" = "yes" ; then
510   OPAL_H224=1
511   AC_DEFINE(OPAL_H224, 1)
512 else
513   OPAL_H224=
514   AC_MSG_NOTICE(Disabling H.224)
516 AC_SUBST(OPAL_H224)
518 dnl ########################################################################
519 dnl check for disabling H.248
521 dnl MSWIN_DISPLAY h248,H.248
522 dnl MSWIN_DEFINE  h248,H323_H248
524 AC_ARG_ENABLE(h248,
525        [  --disable-h248          enable H.248])
526 if test "${enable_h248}x" = "x" ; then
527   enable_h248=$default_h248
529 if test "$enable_h248" = "yes" ; then
530   H323_H248=1
531   AC_DEFINE(H323_H248, 1)
532 else
533   H323_H248=
534   AC_MSG_NOTICE(Disabling H.248)
536 AC_SUBST(H323_H248)
538 dnl ########################################################################
539 dnl check for disabling H.450
541 dnl MSWIN_DISPLAY h450,H.450
542 dnl MSWIN_DEFINE  h450,H323_H450
544 AC_ARG_ENABLE(h450,
545        [  --disable-h450          disable H.450])
546 if test "${enable_h450}x" = "x" ; then
547   enable_h450=$default_h450
549 if test "$enable_h450" = "yes" ; then
550   H323_H450=1
551   AC_DEFINE(H323_H450, 1)
552 else
553   H323_H450=
554   AC_MSG_NOTICE(Disabling H.450)
556 AC_SUBST(H323_H450)
558 dnl ########################################################################
559 dnl check for disabling H.460
561 dnl MSWIN_DISPLAY h460,H.460
562 dnl MSWIN_DEFINE  h460,H323_H460
564 AC_ARG_ENABLE(h460,
565        [  --disable-h460          disable H.460])
566 if test "${enable_h460}x" = "x" ; then
567   enable_h460=$default_h460
569 if test "$enable_h460" = "yes" ; then
570   H323_H460=1
571   AC_DEFINE(H323_H460, 1)
572 else
573   H323_H460=
574   AC_MSG_NOTICE(Disabling H.460)
576 AC_SUBST(H323_H460)
578 dnl ########################################################################
579 dnl check for disabling H.501
581 dnl MSWIN_DISPLAY h501,H.501
582 dnl MSWIN_DEFINE  h501,H323_H501
584 AC_ARG_ENABLE(h501,
585        [  --disable-h501          disable H.501])
586 if test "${enable_h501}x" = "x" ; then
587   enable_h501=$default_h501
589 if test "$enable_h501" = "yes" ; then
590   H323_H501=1
591   AC_DEFINE(H323_H501, 1)
592 else
593   H323_H501=
594   AC_MSG_NOTICE(Disabling H.501)
596 AC_SUBST(H323_H501)
598 dnl ########################################################################
599 dnl check for enabling T.120
601 dnl MSWIN_DISPLAY t120,T.120
602 dnl MSWIN_DEFINE  t120,H323_T120
604 AC_ARG_ENABLE(t120,
605        [  --disable-t120          disable T.120])
606 if test "${enable_t120}x" = "x" ; then
607   enable_t120=$default_t120
609 if test "$enable_t120" = "no" ; then
610   H323_T120=
611   AC_MSG_NOTICE(Disabling T.120)
612 else
613   H323_T20=1
614   AC_DEFINE(H323_T120, 1)
616 AC_SUBST(H323_T120)
618 dnl ########################################################################
620 dnl ########################################################################
622 dnl feature detections migrated from Makefile
623 dnl 
624 dnl MSWIN_DISPLAY ixj,Quicknet Internet xJACK cards
625 dnl MSWIN_DEFINE  ixj,HAS_IXJ
627 AC_ARG_ENABLE(ixj,
628        [  --disable-ixj           disable Quicknet card support])
629 if test "${enable_ixj}x" = "x" ; then
630   enable_ixj=$default_ixj
633 HAS_IXJ=
634 H323_IXJ=
635 if test "$enable_ixj" = "no" ; then
636   AC_MSG_NOTICE(Disabling IXJ support)
637 else
638   AC_CHECK_HEADERS(linux/telephony.h sys/telephony.h /usr/local/include/sys/telephony.h, HAS_IXJ=1)
639   if test "${HAS_IXJ}z" != "z" ; then
640     AC_MSG_CHECKING(if ixjuser.h actually compiles)
641     AC_TRY_COMPILE([#include <linux/ixjuser.h>],
642                    [int main(int ac,char **av) { return 0; }], HAS_IXJ=1, HAS_IXJ=)
643     if test "x$HAS_IXJ" != "x" ; then
644       H323_IXJ=1
645       AC_DEFINE(HAS_IXJ, 1)
646       AC_MSG_RESULT(yes)
647     else
648       AC_MSG_RESULT(no)
649     fi
650   fi
652 AC_SUBST(H323_IXJ)
654 dnl ########################################################################
656 dnl Voicetronix OpenLine4 PCI telephony card
657 dnl 
658 dnl MSWIN_DISPLAY     vpb,VoiceTronics VPB
659 dnl MSWIN_DISPLAY     vpb,Voicetronix vpb support
660 dnl MSWIN_CHECK_FILE  vpb,src\vpbapi.h,HAS_VPB=1
661 dnl MSWIN_DIR_SYMBOL  vpb,VPB_DIR
662 dnl MSWIN_CHECK_DIR   vpb,..\vpb-driver\
663 dnl MSWIN_CHECK_DIR   vpb,..\external\vpb-driver
664 dnl MSWIN_CHECK_DIR   vpb,\vpb-driver
665 dnl MSWIN_CHECK_DIR   vpb,c:\vpb-driver
667 AC_ARG_ENABLE(vpb,
668        [  --disable-vpb           disable Voicetronix OpenLine4 card support])
669 if test "${enable_vpb}x" = "x" ; then
670   enable_vpb=$default_vpb
673 HAS_VPB=
674 H323_VPB=
675 if test "$enable_vpb" = "no" ; then
676   AC_MSG_NOTICE(Disabling VPB support)
677 else
678   AC_CHECK_FILE(${INSTALLPREFIX}/include/vpbapi.h, HAS_VPB=1)
679   if test "${HAS_VPB}z" != "z" ; then
680     H323_VPB=1
681     AC_DEFINE(HAS_VPB, 1)
682   fi
684 AC_SUBST(H323_VPB)
686 dnl ########################################################################
687 dnl make directives
689 AC_SUBST(STDCCFLAGS)
690 AC_SUBST(LDFLAGS)
691 AC_SUBST(LDLIBS)
692 AC_SUBST(ENDLDLIBS)
693 AC_PROG_INSTALL
695 AC_CONFIG_FILES(openh323u.mak)
696 AC_CONFIG_FILES(Makefile)
699 dnl ########################################################################
700 dnl Header file
702 AC_CONFIG_HEADERS(include/openh323buildopts.h)
705 dnl ########################################################################
706 dnl Output configured files
708 AC_CONFIG_SUBDIRS(plugins)
710 AC_OUTPUT()
713 dnl ########################################################################
714 dnl check if upad128_t is defined (Solaris)
716 if test "${OSTYPE:-unknown}" = "solaris"; then
717   AC_MSG_CHECKING(for upad128_t)
718   AC_TRY_COMPILE([#include <sys/types.h>],
719                  [upad128_t upad; upad._q = 0.0;], has_upad128_t=y)
720   if test ${has_upad128_t} == "y"; then
721     AC_MSG_RESULT(yes)
722     AC_DEFINE(P_HAS_UPAD128_T)
723   else
724     AC_MSG_RESULT(no)
725   fi