diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-05-26 22:40:34 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-05-26 22:40:34 +0000 |
commit | c0f405a0ef1e17a3597b81225c77a82205f2f7b7 (patch) | |
tree | 55bff68c7af7105289860e7ff8e2f9f801eb429e /autoconf | |
parent | 69fe563ef172ef5b2766a864ca91dd093d97ee68 (diff) |
Update configure script to check for OSP toolkit 3.5.0.
(closes issue #14988)
Reported by: tzafrir
Patches:
configure.ac.diff uploaded by homesick (license 91)
new_ast_check_osptk.m4 uploaded by homesick (license 91)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@196946 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'autoconf')
-rw-r--r-- | autoconf/ast_check_osptk.m4 | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/autoconf/ast_check_osptk.m4 b/autoconf/ast_check_osptk.m4 new file mode 100644 index 000000000..e93b2951a --- /dev/null +++ b/autoconf/ast_check_osptk.m4 @@ -0,0 +1,67 @@ +dnl +dnl @synopsis AST_CHECK_OSPTK([REQ_VER_MAJOR],[REQ_VER_MINOR],[REQ_VER_BUGFIX]) +dnl +dnl @summary check for existence of OSP Toolkit package +dnl +dnl This macro check for existence of OSP Toolkit package by checking osp/osp.h +dnl header file, OSPPInit function and OSP Toolkit version. +dnl +AC_DEFUN([AST_CHECK_OSPTK], +[ + # if OSPTK has not been checked and is not excluded + if test "x${PBX_OSPTK}" != "x1" -a "${USE_OSPTK}" != "no"; then + # if --with-osptk=DIR has been specified, use it. + if test "x${OSPTK_DIR}" != "x"; then + osptk_cflags="-I${OSPTK_DIR}/include" + osptk_ldflags="-L${OSPTK_DIR}/lib" + else + osptk_cflags="" + osptk_ldflags="" + fi + + # check for the header + osptk_saved_cppflags="${CPPFLAGS}" + CPPFLAGS="${CPPFLAGS} ${osptk_cflags}" + AC_CHECK_HEADER([osp/osp.h], [osptk_header_found=yes], [osptk_header_found=no]) + CPPFLAGS="${osptk_saved_cppflags}" + + # check for the library + if test "${osptk_header_found}" = "yes"; then + osptk_extralibs="-lssl -lcrypto" + + AC_CHECK_LIB([osptk], [OSPPInit], [osptk_library_found=yes], [osptk_library_found=no], ${osptk_ldflags} ${osptk_extralibs}) + + # check OSP Toolkit version + if test "${osptk_library_found}" = "yes"; then + AC_MSG_CHECKING(if OSP Toolkit version is compatible with app_osplookup) + + osptk_saved_cppflags="${CPPFLAGS}" + CPPFLAGS="${CPPFLAGS} ${osptk_cflags}" + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ + #include <osp/osp.h> + int main(void) { + int ver = OSP_CLIENT_TOOLKIT_VERSION_MAJOR * 10000 + OSP_CLIENT_TOOLKIT_VERSION_MINOR * 100 + OSP_CLIENT_TOOLKIT_VERSION_BUGFIX; + int req = $1 * 10000 + $2 * 100 + $3; + return (ver < req) ? 1 : 0; + } + ]])], + [osptk_compatible=yes], + [osptk_compatible=no] + ) + CPPFLAGS="${osptk_saved_cppflags}" + + if test "${osptk_compatible}" = "yes"; then + AC_MSG_RESULT(yes) + PBX_OSPTK=1 + OSPTK_INCLUDE="${osptk_cflags}" + OSPTK_LIB="${osptk_ldflags} -losptk ${osptk_extralibs}" + AC_DEFINE_UNQUOTED([HAVE_OSPTK], 1, [Define this to indicate the ${OSPTK_DESCRIP} library]) + else + AC_MSG_RESULT(no) + fi + fi + fi + fi +]) + |