mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
configure: Fix libxml2 development library dependency checking
The commit that added libxml2 support didn't fully check for the libxml2 development script in the Asterisk configure file. As a result, Asterisk could be configured, then fail on menuselect. This patch fixes it so that Asterisk should detect the libxml2 dependency failure first. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@418850 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -24,7 +24,8 @@
|
||||
From 12 to 13:
|
||||
|
||||
- The menuselect utility has been pulled into the Asterisk repository. As a
|
||||
result, the libxml2 library is now a required dependency for Asterisk.
|
||||
result, the libxml2 development library is now a required dependency for
|
||||
Asterisk.
|
||||
|
||||
- The asterisk command line -I option and the asterisk.conf internal_timing
|
||||
option are removed and always enabled if any timing module is loaded.
|
||||
|
257
configure
vendored
257
configure
vendored
@@ -1,5 +1,5 @@
|
||||
#! /bin/sh
|
||||
# From configure.ac Revision: 418035 .
|
||||
# From configure.ac Revision: 418834 .
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.68 for asterisk trunk.
|
||||
#
|
||||
@@ -12646,133 +12646,6 @@ if test "x$JANSSON_LIB" == "x"; then
|
||||
as_fn_error $? "*** JSON support not found (this typically means the libjansson development package is missing)" "$LINENO" 5
|
||||
fi
|
||||
|
||||
if test "x$PBX_LIBXML2" == "x"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: *** Asterisk requires the 'libxml2' development package." >&5
|
||||
$as_echo "$as_me: *** Asterisk requires the 'libxml2' development package." >&6;}
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: *** Please install the 'libxml2' development package." >&5
|
||||
$as_echo "$as_me: *** Please install the 'libxml2' development package." >&6;}
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
if test "x${PBX_URIPARSER}" != "x1" -a "${USE_URIPARSER}" != "no"; then
|
||||
pbxlibdir=""
|
||||
# if --with-URIPARSER=DIR has been specified, use it.
|
||||
if test "x${URIPARSER_DIR}" != "x"; then
|
||||
if test -d ${URIPARSER_DIR}/lib; then
|
||||
pbxlibdir="-L${URIPARSER_DIR}/lib"
|
||||
else
|
||||
pbxlibdir="-L${URIPARSER_DIR}"
|
||||
fi
|
||||
fi
|
||||
pbxfuncname="uriParseUriA"
|
||||
if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
|
||||
AST_URIPARSER_FOUND=yes
|
||||
else
|
||||
ast_ext_lib_check_save_CFLAGS="${CFLAGS}"
|
||||
CFLAGS="${CFLAGS} "
|
||||
as_ac_Lib=`$as_echo "ac_cv_lib_uriparser_${pbxfuncname}" | $as_tr_sh`
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${pbxfuncname} in -luriparser" >&5
|
||||
$as_echo_n "checking for ${pbxfuncname} in -luriparser... " >&6; }
|
||||
if eval \${$as_ac_Lib+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
ac_check_lib_save_LIBS=$LIBS
|
||||
LIBS="-luriparser ${pbxlibdir} $LIBS"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
/* Override any GCC internal prototype to avoid an error.
|
||||
Use char because int might match the return type of a GCC
|
||||
builtin and then its argument prototype would still apply. */
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
char ${pbxfuncname} ();
|
||||
int
|
||||
main ()
|
||||
{
|
||||
return ${pbxfuncname} ();
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
if ac_fn_c_try_link "$LINENO"; then :
|
||||
eval "$as_ac_Lib=yes"
|
||||
else
|
||||
eval "$as_ac_Lib=no"
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext \
|
||||
conftest$ac_exeext conftest.$ac_ext
|
||||
LIBS=$ac_check_lib_save_LIBS
|
||||
fi
|
||||
eval ac_res=\$$as_ac_Lib
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
|
||||
$as_echo "$ac_res" >&6; }
|
||||
if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
|
||||
AST_URIPARSER_FOUND=yes
|
||||
else
|
||||
AST_URIPARSER_FOUND=no
|
||||
fi
|
||||
|
||||
CFLAGS="${ast_ext_lib_check_save_CFLAGS}"
|
||||
fi
|
||||
|
||||
# now check for the header.
|
||||
if test "${AST_URIPARSER_FOUND}" = "yes"; then
|
||||
URIPARSER_LIB="${pbxlibdir} -luriparser "
|
||||
# if --with-URIPARSER=DIR has been specified, use it.
|
||||
if test "x${URIPARSER_DIR}" != "x"; then
|
||||
URIPARSER_INCLUDE="-I${URIPARSER_DIR}/include"
|
||||
fi
|
||||
URIPARSER_INCLUDE="${URIPARSER_INCLUDE} "
|
||||
if test "xuriparser/Uri.h" = "x" ; then # no header, assume found
|
||||
URIPARSER_HEADER_FOUND="1"
|
||||
else # check for the header
|
||||
ast_ext_lib_check_saved_CPPFLAGS="${CPPFLAGS}"
|
||||
CPPFLAGS="${CPPFLAGS} ${URIPARSER_INCLUDE}"
|
||||
ac_fn_c_check_header_mongrel "$LINENO" "uriparser/Uri.h" "ac_cv_header_uriparser_Uri_h" "$ac_includes_default"
|
||||
if test "x$ac_cv_header_uriparser_Uri_h" = xyes; then :
|
||||
URIPARSER_HEADER_FOUND=1
|
||||
else
|
||||
URIPARSER_HEADER_FOUND=0
|
||||
fi
|
||||
|
||||
|
||||
CPPFLAGS="${ast_ext_lib_check_saved_CPPFLAGS}"
|
||||
fi
|
||||
if test "x${URIPARSER_HEADER_FOUND}" = "x0" ; then
|
||||
URIPARSER_LIB=""
|
||||
URIPARSER_INCLUDE=""
|
||||
else
|
||||
if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
|
||||
URIPARSER_LIB=""
|
||||
fi
|
||||
PBX_URIPARSER=1
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define HAVE_URIPARSER 1
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# Another mandatory item (unless it's explicitly disabled)
|
||||
# Check whether --enable-xmldoc was given.
|
||||
if test "${enable_xmldoc+set}" = set; then :
|
||||
enableval=$enable_xmldoc; case "${enableval}" in
|
||||
y|ye|yes) disable_xmldoc=no ;;
|
||||
n|no) disable_xmldoc=yes ;;
|
||||
*) as_fn_error $? "bad value ${enableval} for --disable-xmldoc" "$LINENO" 5 ;;
|
||||
esac
|
||||
else
|
||||
disable_xmldoc=no
|
||||
fi
|
||||
|
||||
|
||||
if test "${disable_xmldoc}" != "yes"; then
|
||||
|
||||
if test "x${PBX_LIBXML2}" != "x1" -a "${USE_LIBXML2}" != "no"; then
|
||||
PBX_LIBXML2=0
|
||||
@@ -12924,6 +12797,134 @@ $as_echo "#define HAVE_LIBXML2 1" >>confdefs.h
|
||||
fi
|
||||
|
||||
|
||||
if test "${PBX_LIBXML2}" != 1; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: *** The Asterisk menuselect tool requires the 'libxml2' development package." >&5
|
||||
$as_echo "$as_me: *** The Asterisk menuselect tool requires the 'libxml2' development package." >&6;}
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: *** Please install the 'libxml2' development package." >&5
|
||||
$as_echo "$as_me: *** Please install the 'libxml2' development package." >&6;}
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
if test "x${PBX_URIPARSER}" != "x1" -a "${USE_URIPARSER}" != "no"; then
|
||||
pbxlibdir=""
|
||||
# if --with-URIPARSER=DIR has been specified, use it.
|
||||
if test "x${URIPARSER_DIR}" != "x"; then
|
||||
if test -d ${URIPARSER_DIR}/lib; then
|
||||
pbxlibdir="-L${URIPARSER_DIR}/lib"
|
||||
else
|
||||
pbxlibdir="-L${URIPARSER_DIR}"
|
||||
fi
|
||||
fi
|
||||
pbxfuncname="uriParseUriA"
|
||||
if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
|
||||
AST_URIPARSER_FOUND=yes
|
||||
else
|
||||
ast_ext_lib_check_save_CFLAGS="${CFLAGS}"
|
||||
CFLAGS="${CFLAGS} "
|
||||
as_ac_Lib=`$as_echo "ac_cv_lib_uriparser_${pbxfuncname}" | $as_tr_sh`
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${pbxfuncname} in -luriparser" >&5
|
||||
$as_echo_n "checking for ${pbxfuncname} in -luriparser... " >&6; }
|
||||
if eval \${$as_ac_Lib+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
ac_check_lib_save_LIBS=$LIBS
|
||||
LIBS="-luriparser ${pbxlibdir} $LIBS"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
/* Override any GCC internal prototype to avoid an error.
|
||||
Use char because int might match the return type of a GCC
|
||||
builtin and then its argument prototype would still apply. */
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
char ${pbxfuncname} ();
|
||||
int
|
||||
main ()
|
||||
{
|
||||
return ${pbxfuncname} ();
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
if ac_fn_c_try_link "$LINENO"; then :
|
||||
eval "$as_ac_Lib=yes"
|
||||
else
|
||||
eval "$as_ac_Lib=no"
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext \
|
||||
conftest$ac_exeext conftest.$ac_ext
|
||||
LIBS=$ac_check_lib_save_LIBS
|
||||
fi
|
||||
eval ac_res=\$$as_ac_Lib
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
|
||||
$as_echo "$ac_res" >&6; }
|
||||
if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
|
||||
AST_URIPARSER_FOUND=yes
|
||||
else
|
||||
AST_URIPARSER_FOUND=no
|
||||
fi
|
||||
|
||||
CFLAGS="${ast_ext_lib_check_save_CFLAGS}"
|
||||
fi
|
||||
|
||||
# now check for the header.
|
||||
if test "${AST_URIPARSER_FOUND}" = "yes"; then
|
||||
URIPARSER_LIB="${pbxlibdir} -luriparser "
|
||||
# if --with-URIPARSER=DIR has been specified, use it.
|
||||
if test "x${URIPARSER_DIR}" != "x"; then
|
||||
URIPARSER_INCLUDE="-I${URIPARSER_DIR}/include"
|
||||
fi
|
||||
URIPARSER_INCLUDE="${URIPARSER_INCLUDE} "
|
||||
if test "xuriparser/Uri.h" = "x" ; then # no header, assume found
|
||||
URIPARSER_HEADER_FOUND="1"
|
||||
else # check for the header
|
||||
ast_ext_lib_check_saved_CPPFLAGS="${CPPFLAGS}"
|
||||
CPPFLAGS="${CPPFLAGS} ${URIPARSER_INCLUDE}"
|
||||
ac_fn_c_check_header_mongrel "$LINENO" "uriparser/Uri.h" "ac_cv_header_uriparser_Uri_h" "$ac_includes_default"
|
||||
if test "x$ac_cv_header_uriparser_Uri_h" = xyes; then :
|
||||
URIPARSER_HEADER_FOUND=1
|
||||
else
|
||||
URIPARSER_HEADER_FOUND=0
|
||||
fi
|
||||
|
||||
|
||||
CPPFLAGS="${ast_ext_lib_check_saved_CPPFLAGS}"
|
||||
fi
|
||||
if test "x${URIPARSER_HEADER_FOUND}" = "x0" ; then
|
||||
URIPARSER_LIB=""
|
||||
URIPARSER_INCLUDE=""
|
||||
else
|
||||
if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
|
||||
URIPARSER_LIB=""
|
||||
fi
|
||||
PBX_URIPARSER=1
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define HAVE_URIPARSER 1
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# Another mandatory item (unless it's explicitly disabled)
|
||||
# Check whether --enable-xmldoc was given.
|
||||
if test "${enable_xmldoc+set}" = set; then :
|
||||
enableval=$enable_xmldoc; case "${enableval}" in
|
||||
y|ye|yes) disable_xmldoc=no ;;
|
||||
n|no) disable_xmldoc=yes ;;
|
||||
*) as_fn_error $? "bad value ${enableval} for --disable-xmldoc" "$LINENO" 5 ;;
|
||||
esac
|
||||
else
|
||||
disable_xmldoc=no
|
||||
fi
|
||||
|
||||
|
||||
if test "${disable_xmldoc}" != "yes"; then
|
||||
|
||||
if test "x${PBX_LIBXSLT}" != "x1" -a "${USE_LIBXSLT}" != "no"; then
|
||||
pbxlibdir=""
|
||||
# if --with-LIBXSLT=DIR has been specified, use it.
|
||||
|
15
configure.ac
15
configure.ac
@@ -550,9 +550,14 @@ if test "x$JANSSON_LIB" == "x"; then
|
||||
AC_MSG_ERROR([*** JSON support not found (this typically means the libjansson development package is missing)])
|
||||
fi
|
||||
|
||||
if test "x$PBX_LIBXML2" == "x"; then
|
||||
AC_MSG_NOTICE(*** The Asterisk menuselect tool requires the 'libxml2' package.)
|
||||
AC_MSG_NOTICE(*** Please install the 'libxml2' package.)
|
||||
AST_EXT_TOOL_CHECK([LIBXML2], [xml2-config], , ,
|
||||
[#include <libxml/tree.h>
|
||||
#include <libxml/parser.h>],
|
||||
[LIBXML_TEST_VERSION])
|
||||
|
||||
if test "${PBX_LIBXML2}" != 1; then
|
||||
AC_MSG_NOTICE(*** The Asterisk menuselect tool requires the 'libxml2' development package.)
|
||||
AC_MSG_NOTICE(*** Please install the 'libxml2' development package.)
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -569,10 +574,6 @@ AC_ARG_ENABLE([xmldoc],
|
||||
esac], [disable_xmldoc=no])
|
||||
|
||||
if test "${disable_xmldoc}" != "yes"; then
|
||||
AST_EXT_TOOL_CHECK([LIBXML2], [xml2-config], , ,
|
||||
[#include <libxml/tree.h>
|
||||
#include <libxml/parser.h>],
|
||||
[LIBXML_TEST_VERSION])
|
||||
AST_EXT_LIB_CHECK([LIBXSLT], [xslt], [xsltLoadStylesheetPI], [libxslt/xsltInternals.h], [${LIBXML2_LIB}], [${LIBXML2_INCLUDE}])
|
||||
AST_EXT_LIB_CHECK([LIBXSLT_CLEANUP], [xslt], [xsltCleanupGlobals], [libxslt/xsltInternals.h], [${LIBXML2_LIB}], [${LIBXML2_INCLUDE}])
|
||||
|
||||
|
4
menuselect/configure
vendored
4
menuselect/configure
vendored
@@ -1,5 +1,5 @@
|
||||
#! /bin/sh
|
||||
# From configure.ac Revision: 418832 .
|
||||
# From configure.ac Revision: 418834 .
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.68.
|
||||
#
|
||||
@@ -4685,7 +4685,7 @@ $as_echo "#define HAVE_LIBXML2 1" >>confdefs.h
|
||||
|
||||
|
||||
if test "${PBX_LIBXML2}" != 1; then
|
||||
as_fn_error $? "coult not find required 'Libxml2' development package" "$LINENO" 5
|
||||
as_fn_error $? "Could not find required 'Libxml2' development package" "$LINENO" 5
|
||||
fi
|
||||
|
||||
PBX_GTK2=0
|
||||
|
@@ -131,7 +131,7 @@ AST_EXT_TOOL_CHECK([LIBXML2], [xml2-config], , ,
|
||||
[LIBXML_TEST_VERSION])
|
||||
|
||||
if test "${PBX_LIBXML2}" != 1; then
|
||||
AC_MSG_ERROR([coult not find required 'Libxml2' development package])
|
||||
AC_MSG_ERROR([Could not find required 'Libxml2' development package])
|
||||
fi
|
||||
|
||||
PBX_GTK2=0
|
||||
|
Reference in New Issue
Block a user