summaryrefslogtreecommitdiff
path: root/third-party/pjproject/configure.m4
diff options
context:
space:
mode:
Diffstat (limited to 'third-party/pjproject/configure.m4')
-rw-r--r--third-party/pjproject/configure.m486
1 files changed, 55 insertions, 31 deletions
diff --git a/third-party/pjproject/configure.m4 b/third-party/pjproject/configure.m4
index 7a079f657..386035bac 100644
--- a/third-party/pjproject/configure.m4
+++ b/third-party/pjproject/configure.m4
@@ -1,49 +1,73 @@
-AC_DEFUN([PJPROJECT_SYMBOL_CHECK],
+AC_DEFUN([_PJPROJECT_CONFIGURE],
[
- $1_INCLUDE="$PJPROJECT_INCLUDE"
- AC_MSG_CHECKING([for $2 declared in $3])
-
- saved_cpp="$CPPFLAGS"
- CPPFLAGS="$PJPROJECT_INCLUDE"
- AC_EGREP_HEADER($2, $3, [
- AC_MSG_RESULT(yes)
- PBX_$1=1
- AC_DEFINE([HAVE_$1], 1, [Define if your system has $2 declared.])
- ], [
- AC_MSG_RESULT(no)
- ])
+ if test "${ac_mandatory_list#*PJPROJECT*}" != "$ac_mandatory_list" ; then
+ AC_MSG_ERROR(--with-pjproject and --with-pjproject-bundled can't both be specified)
+ fi
- CPPGLAGS="$saved_cpp"
- $1_INCLUDE="$PJPROJECT_INCLUDE"
-])
+ ac_mandatory_list="$ac_mandatory_list PJPROJECT"
+ PJPROJECT_DIR="${ac_top_build_prefix}third-party/pjproject"
-AC_DEFUN([PJPROJECT_CONFIGURE],
-[
AC_MSG_CHECKING(for embedded pjproject (may have to download))
AC_MSG_RESULT(configuring)
- ${GNU_MAKE} --quiet --no-print-directory -C $1 configure
+
+ if test "x${DOWNLOAD_TO_STDOUT}" = "x" ; then
+ AC_MSG_ERROR(A download utility (wget, curl or fetch) is required to download bundled pjproject)
+ fi
+ if test "${BZIP2}" = ":" ; then
+ AC_MSG_ERROR(bzip2 is required to extract the pjproject tar file)
+ fi
+ if test "${TAR}" = ":" ; then
+ AC_MSG_ERROR(tar is required to extract the pjproject tar file)
+ fi
+ if test "${PATCH}" = ":" ; then
+ AC_MSG_ERROR(patch is required to configure bundled pjproject)
+ fi
+ if test "${SED}" = ":" ; then
+ AC_MSG_ERROR(sed is required to configure bundled pjproject)
+ fi
+ if test "${NM}" = ":" ; then
+ AC_MSG_ERROR(nm is required to build bundled pjproject)
+ fi
+
+ export TAR PATCH SED NM EXTERNALS_CACHE_DIR DOWNLOAD_TO_STDOUT
+ ${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} configure
if test $? -ne 0 ; then
AC_MSG_RESULT(failed)
- AC_MSG_NOTICE(Unable to configure $1)
- AC_MSG_ERROR(Run "${GNU_MAKE} -C $1 NOISY_BUILD=yes configure" to see error details.)
+ AC_MSG_NOTICE(Unable to configure ${PJPROJECT_DIR})
+ AC_MSG_ERROR(Run "${GNU_MAKE} -C ${PJPROJECT_DIR} NOISY_BUILD=yes configure" to see error details.)
fi
- PJPROJECT_INCLUDE=$(${GNU_MAKE} --quiet --no-print-directory -C $1 echo_cflags)
+ AC_MSG_CHECKING(for bundled pjproject)
+
+ PJPROJECT_INCLUDE=$(${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} echo_cflags)
PJPROJECT_CFLAGS="$PJPROJECT_INCLUDE"
PBX_PJPROJECT=1
- PJPROJECT_BUNDLED=yes
+
AC_DEFINE([HAVE_PJPROJECT], 1, [Define if your system has PJPROJECT])
AC_DEFINE([HAVE_PJPROJECT_BUNDLED], 1, [Define if your system has PJPROJECT_BUNDLED])
- AC_MSG_CHECKING(for embedded pjproject)
- AC_MSG_RESULT(yes)
- PJPROJECT_SYMBOL_CHECK([PJSIP_DLG_CREATE_UAS_AND_INC_LOCK], [pjsip_dlg_create_uas_and_inc_lock], [pjsip.h])
- PJPROJECT_SYMBOL_CHECK([PJ_TRANSACTION_GRP_LOCK], [pjsip_tsx_create_uac2], [pjsip.h])
- PJPROJECT_SYMBOL_CHECK([PJSIP_REPLACE_MEDIA_STREAM], [PJMEDIA_SDP_NEG_ALLOW_MEDIA_CHANGE], [pjmedia.h])
- PJPROJECT_SYMBOL_CHECK([PJSIP_GET_DEST_INFO], [pjsip_get_dest_info], [pjsip.h])
- PJPROJECT_SYMBOL_CHECK([PJ_SSL_CERT_LOAD_FROM_FILES2], [pj_ssl_cert_load_from_files2], [pjlib.h])
- PJPROJECT_SYMBOL_CHECK([PJSIP_EXTERNAL_RESOLVER], [pjsip_endpt_set_ext_resolver], [pjsip.h])
+ AC_DEFINE([HAVE_PJSIP_DLG_CREATE_UAS_AND_INC_LOCK], 1, [Define if your system has pjsip_dlg_create_uas_and_inc_lock declared.])
+ AC_DEFINE([HAVE_PJ_TRANSACTION_GRP_LOCK], 1, [Define if your system has pjsip_tsx_create_uac2 declared.])
+ AC_DEFINE([HAVE_PJSIP_REPLACE_MEDIA_STREAM], 1, [Define if your system has PJSIP_REPLACE_MEDIA_STREAM declared])
+ AC_DEFINE([HAVE_PJSIP_GET_DEST_INFO], 1, [Define if your system has pjsip_get_dest_info declared.])
+ AC_DEFINE([HAVE_PJ_SSL_CERT_LOAD_FROM_FILES2], 1, [Define if your system has pj_ssl_cert_load_from_files2 declared.])
+ AC_DEFINE([HAVE_PJSIP_EXTERNAL_RESOLVER], 1, [Define if your system has pjsip_endpt_set_ext_resolver declared.])
AC_DEFINE([HAVE_PJSIP_TLS_TRANSPORT_PROTO], 1, [Define if your system has PJSIP_TLS_TRANSPORT_PROTO])
AC_DEFINE([HAVE_PJSIP_EVSUB_GRP_LOCK], 1, [Define if your system has PJSIP_EVSUB_GRP_LOCK])
AC_DEFINE([HAVE_PJSIP_INV_SESSION_REF], 1, [Define if your system has PJSIP_INV_SESSION_REF])
+
+ AC_SUBST([PJPROJECT_BUNDLED])
+ AC_SUBST([PJPROJECT_DIR])
+ AC_SUBST([PBX_PJPROJECT])
+ AC_SUBST([PJPROJECT_LIB])
+ AC_SUBST([PJPROJECT_INCLUDE])
+ AC_MSG_RESULT(yes)
+])
+
+AC_DEFUN([PJPROJECT_CONFIGURE],
+[
+ if test "$PJPROJECT_BUNDLED" = "yes" ; then
+ _PJPROJECT_CONFIGURE()
+ fi
])
+ \ No newline at end of file