Merged revisions 101894 via svnmerge from
authorTilghman Lesher <tilghman@meg.abyt.es>
Fri, 1 Feb 2008 19:44:39 +0000 (19:44 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Fri, 1 Feb 2008 19:44:39 +0000 (19:44 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r101894 | tilghman | 2008-02-01 13:36:12 -0600 (Fri, 01 Feb 2008) | 2 lines

Change detection of getifaddrs to use AST_C_COMPILE_CHECK, backported from trunk (as suggested by kpfleming)

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@101895 65c4cc65-6c06-0410-ace0-fbb531ad65f3

configure
configure.ac
include/asterisk/autoconfig.h.in

index 504df9d..4cde478 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.ac Revision: 100678 .
+# From configure.ac Revision: 101773 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.61 for asterisk 1.4.
 #
 
 
 
-if test "x${PBX_GETIFADDRS}" != "x1" -a "${USE_GETIFADDRS}" != "no"; then
-   pbxlibdir=""
-   # if --with-GETIFADDRS=DIR has been specified, use it.
-   if test "x${GETIFADDRS_DIR}" != "x"; then
-      if test -d ${GETIFADDRS_DIR}/lib; then
-        pbxlibdir="-L${GETIFADDRS_DIR}/lib"
-      else
-        pbxlibdir="-L${GETIFADDRS_DIR}"
-      fi
-   fi
-   pbxfuncname="getifaddrs"
-   if test "x${pbxfuncname}" = "x" ; then   # empty lib, assume only headers
-      AST_GETIFADDRS_FOUND=yes
-   else
-      as_ac_Lib=`echo "ac_cv_lib_c_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -lc" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -lc... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lc ${pbxlibdir}  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
+    if test "x${PBX_GETIFADDRS}" != "x1" -a "${USE_GETIFADDRS}" != "no"; then
+       { echo "$as_me:$LINENO: checking if \"struct ifaddrs *p; getifaddrs(&p)\" compiles using ifaddrs.h" >&5
+echo $ECHO_N "checking if \"struct ifaddrs *p; getifaddrs(&p)\" compiles using ifaddrs.h... $ECHO_C" >&6; }
+       saved_cppflags="${CPPFLAGS}"
+       if test "x${GETIFADDRS_DIR}" != "x"; then
+           GETIFADDRS_INCLUDE="-I${GETIFADDRS_DIR}/include"
+       fi
+       CPPFLAGS="${CPPFLAGS} ${GETIFADDRS_INCLUDE}"
+
+       cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
 _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* 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} ();
+#include <ifaddrs.h>
 int
 main ()
 {
-return ${pbxfuncname} ();
+ struct ifaddrs *p; getifaddrs(&p);
+
   ;
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  eval "$as_ac_Lib=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
-              { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
-  AST_GETIFADDRS_FOUND=yes
-else
-  AST_GETIFADDRS_FOUND=no
-fi
-
-   fi
-
-   # now check for the header.
-   if test "${AST_GETIFADDRS_FOUND}" = "yes"; then
-      GETIFADDRS_LIB="${pbxlibdir} -lc "
-      # if --with-GETIFADDRS=DIR has been specified, use it.
-      if test "x${GETIFADDRS_DIR}" != "x"; then
-        GETIFADDRS_INCLUDE="-I${GETIFADDRS_DIR}/include"
-      fi
-      GETIFADDRS_INCLUDE="${GETIFADDRS_INCLUDE} "
-      if test "xifaddrs.h" = "x" ; then        # no header, assume found
-         GETIFADDRS_HEADER_FOUND="1"
-      else                             # check for the header
-         saved_cppflags="${CPPFLAGS}"
-         CPPFLAGS="${CPPFLAGS} ${GETIFADDRS_INCLUDE} "
-        if test "${ac_cv_header_ifaddrs_h+set}" = set; then
-  { echo "$as_me:$LINENO: checking for ifaddrs.h" >&5
-echo $ECHO_N "checking for ifaddrs.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_ifaddrs_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_ifaddrs_h" >&5
-echo "${ECHO_T}$ac_cv_header_ifaddrs_h" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking ifaddrs.h usability" >&5
-echo $ECHO_N "checking ifaddrs.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <ifaddrs.h>
-_ACEOF
 rm -f conftest.$ac_objext
 if { (ac_try="$ac_compile"
 case "(($ac_try" in
@@ -31356,129 +31262,32 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
         test -z "$ac_c_werror_flag" ||
         test ! -s conftest.err
        } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+     { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+               PBX_GETIFADDRS=1
 
-       ac_header_compiler=no
-fi
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_GETIFADDRS 1
+_ACEOF
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
 
-# Is the header present?
-{ echo "$as_me:$LINENO: checking ifaddrs.h presence" >&5
-echo $ECHO_N "checking ifaddrs.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ifaddrs.h>
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_GETIFADDRS_VERSION
 _ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
+
+
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: ifaddrs.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: ifaddrs.h: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: ifaddrs.h: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: ifaddrs.h:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: ifaddrs.h: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: ifaddrs.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: ifaddrs.h: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ifaddrs.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: ifaddrs.h: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for ifaddrs.h" >&5
-echo $ECHO_N "checking for ifaddrs.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_ifaddrs_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_header_ifaddrs_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_ifaddrs_h" >&5
-echo "${ECHO_T}$ac_cv_header_ifaddrs_h" >&6; }
+              { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
 
 fi
-if test $ac_cv_header_ifaddrs_h = yes; then
-  GETIFADDRS_HEADER_FOUND=1
-else
-  GETIFADDRS_HEADER_FOUND=0
-fi
-
 
-         CPPFLAGS="${saved_cppflags}"
-      fi
-      if test "x${GETIFADDRS_HEADER_FOUND}" = "x0" ; then
-         GETIFADDRS_LIB=""
-         GETIFADDRS_INCLUDE=""
-      else
-         if test "x${pbxfuncname}" = "x" ; then                # only checking headers -> no library
-           GETIFADDRS_LIB=""
-        fi
-         PBX_GETIFADDRS=1
-         # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETIFADDRS 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETIFADDRS_VERSION
-_ACEOF
-
-      fi
-   fi
-fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       CPPFLAGS="${saved_cppflags}"
+    fi
 
 
 GSM_INTERNAL="yes"
index 4e24150..0f341c2 100644 (file)
@@ -572,7 +572,7 @@ AST_EXT_LIB_CHECK([STRTOD], [c], [strtod], [stdlib.h])
 AST_EXT_LIB_CHECK([FLOOR], [m], [floor])
 AST_EXT_LIB_CHECK([CEIL], [m], [ceil])
 
-AST_EXT_LIB_CHECK([GETIFADDRS], [c], [getifaddrs], [ifaddrs.h])
+AST_C_COMPILE_CHECK([GETIFADDRS], [struct ifaddrs *p; getifaddrs(&p)], [ifaddrs.h])
 
 GSM_INTERNAL="yes"
 AC_SUBST(GSM_INTERNAL)
index 1652622..56f8c08 100644 (file)
 /* Define to 1 if you have the `gethostname' function. */
 #undef HAVE_GETHOSTNAME
 
-/* Define this to indicate the ${GETIFADDRS_DESCRIP} library */
+/* Define if your system has the GETIFADDRS headers. */
 #undef HAVE_GETIFADDRS
 
-/* Define to indicate the ${GETIFADDRS_DESCRIP} library version */
+/* Define GETIFADDRS headers version */
 #undef HAVE_GETIFADDRS_VERSION
 
 /* Define to 1 if you have the `getloadavg' function. */