summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Bright <sean@malleable.com>2009-07-08 16:43:12 +0000
committerSean Bright <sean@malleable.com>2009-07-08 16:43:12 +0000
commite75ae63ac20af777144941d6611fb37527ce19f7 (patch)
treeaa1d72bc8ed6c1daa7aba2135487d4db3129f8b0
parent370ef6d7eb4c891604f4d944ca7e3fe60c7f4fcc (diff)
Fix a few compilation problems found when building Asterisk against uClibc.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@205214 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rwxr-xr-xconfigure148
-rw-r--r--configure.ac19
-rw-r--r--include/asterisk/autoconfig.h.in3
-rw-r--r--main/dns.c2
-rw-r--r--utils/muted.c2
5 files changed, 171 insertions, 3 deletions
diff --git a/configure b/configure
index 1ee093da8..802e763e9 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.ac Revision: 204413 .
+# From configure.ac Revision: 204919 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for asterisk 1.6.
#
@@ -19241,6 +19241,152 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
+ { echo "$as_me:$LINENO: checking for library containing res_9_close" >&5
+echo $ECHO_N "checking for library containing res_9_close... $ECHO_C" >&6; }
+if test "${ac_cv_search_res_9_close+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+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 res_9_close ();
+int
+main ()
+{
+return res_9_close ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' resolv; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ 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
+ ac_cv_search_res_9_close=$ac_res
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext
+ if test "${ac_cv_search_res_9_close+set}" = set; then
+ break
+fi
+done
+if test "${ac_cv_search_res_9_close+set}" = set; then
+ :
+else
+ ac_cv_search_res_9_close=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_search_res_9_close" >&5
+echo "${ECHO_T}$ac_cv_search_res_9_close" >&6; }
+ac_res=$ac_cv_search_res_9_close
+if test "$ac_res" != no; then
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+ { echo "$as_me:$LINENO: checking for res_close" >&5
+echo $ECHO_N "checking for res_close... $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. */
+
+ #ifdef HAVE_SYS_SOCKET_H
+ #include <sys/socket.h>
+ #endif
+ #ifdef HAVE_NETINET_IN_H
+ #include <netinet/in.h>
+ #endif
+ #ifdef HAVE_ARPA_NAMESER_H
+ #include <arpa/nameser.h>
+ #endif
+ #include <resolv.h>
+int
+main ()
+{
+res_close();
+ ;
+ 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
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_RES_CLOSE 1
+_ACEOF
+
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
diff --git a/configure.ac b/configure.ac
index dceec8158..38c43ca27 100644
--- a/configure.ac
+++ b/configure.ac
@@ -626,6 +626,25 @@ AC_LINK_IFELSE(
AC_MSG_RESULT(yes)
AC_DEFINE([HAVE_RES_NDESTROY], 1, [Define to 1 if your system has the ndestroy resolver function.]),
AC_MSG_RESULT(no)
+ )
+ AC_SEARCH_LIBS(res_9_close, resolv)
+ AC_MSG_CHECKING(for res_close)
+ AC_LINK_IFELSE(
+ AC_LANG_PROGRAM([
+ #ifdef HAVE_SYS_SOCKET_H
+ #include <sys/socket.h>
+ #endif
+ #ifdef HAVE_NETINET_IN_H
+ #include <netinet/in.h>
+ #endif
+ #ifdef HAVE_ARPA_NAMESER_H
+ #include <arpa/nameser.h>
+ #endif
+ #include <resolv.h>],
+ [res_close();]),
+ AC_MSG_RESULT(yes)
+ AC_DEFINE([HAVE_RES_CLOSE], 1, [Define to 1 if your system has the close resolver function.]),
+ AC_MSG_RESULT(no)
),
AC_MSG_RESULT(no)
)
diff --git a/include/asterisk/autoconfig.h.in b/include/asterisk/autoconfig.h.in
index 972f2dd91..da82278f9 100644
--- a/include/asterisk/autoconfig.h.in
+++ b/include/asterisk/autoconfig.h.in
@@ -785,6 +785,9 @@
/* Define to indicate the ${RESAMPLE_DESCRIP} library version */
#undef HAVE_RESAMPLE_VERSION
+/* Define to 1 if your system has the close resolver function. */
+#undef HAVE_RES_CLOSE
+
/* Define to 1 if your system has the ndestroy resolver function. */
#undef HAVE_RES_NDESTROY
diff --git a/main/dns.c b/main/dns.c
index 66c21b367..159a7a7ab 100644
--- a/main/dns.c
+++ b/main/dns.c
@@ -288,7 +288,7 @@ int ast_search_dns(void *context,
res_nclose(&dnsstate);
#endif
#else
-#ifndef __APPLE__
+#ifdef HAVE_RES_CLOSE
res_close();
#endif
ast_mutex_unlock(&res_lock);
diff --git a/utils/muted.c b/utils/muted.c
index 4e90da789..a2e35306b 100644
--- a/utils/muted.c
+++ b/utils/muted.c
@@ -684,7 +684,7 @@ int main(int argc, char *argv[])
fclose(astf);
exit(1);
}
-#if HAVE_WORKING_FORK
+#ifdef HAVE_WORKING_FORK
if (needfork) {
#ifndef HAVE_SBIN_LAUNCHD
if (daemon(0,0) < 0) {