diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2006-05-10 08:03:54 +0000 | 
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2006-05-10 08:03:54 +0000 | 
| commit | 4223130bb0bf0080cc1331ce37b6d4e81a764b69 (patch) | |
| tree | e020e624e6d5e72d36cbbd7d207356fabdd29cd2 | |
| parent | c811e1ce70add2bfecb97732ffc4644a2e6ea752 (diff) | |
Bram Matthys brought my attention to a libtool peculiarity where detecting
things such as C++ compiler actually is a bad thing and since we don't need
that detection I added a work-around, much inspired by a previous patch by
Paolo Bonzini. This also shortens the configure script quite a lot.
| -rw-r--r-- | ares/CHANGES | 7 | ||||
| -rw-r--r-- | ares/acinclude.m4 | 36 | ||||
| -rw-r--r-- | ares/configure.ac | 10 | 
3 files changed, 50 insertions, 3 deletions
| diff --git a/ares/CHANGES b/ares/CHANGES index 3c91e27d0..d96078499 100644 --- a/ares/CHANGES +++ b/ares/CHANGES @@ -1,5 +1,12 @@    Changelog for the c-ares project +* May 10, 2006 + +- Bram Matthys brought my attention to a libtool peculiarity where detecting +  things such as C++ compiler actually is a bad thing and since we don't need +  that detection I added a work-around, much inspired by a previous patch by +  Paolo Bonzini. This also shortens the configure script quite a lot. +  * May 3, 2006  - Nick Mathewson added the ARES_OPT_SOCK_STATE_CB option that when set makes diff --git a/ares/acinclude.m4 b/ares/acinclude.m4 index 64804dc95..9a5c7e775 100644 --- a/ares/acinclude.m4 +++ b/ares/acinclude.m4 @@ -826,3 +826,39 @@ else  fi  ]) +# Prevent libtool for checking how to run C++ compiler and check for other +# tools we don't want to use. We do this by m4-defining the _LT_AC_TAGCONFIG +# variable to the code to run, as by default it uses a much more complicated +# approach. The code below that is actually added seems to be used for cases +# where configure has trouble figuring out what C compiler to use but where +# the installed libtool has an idea. +# +# This function is a re-implemented version of the Paolo Bonzini fix posted to +# the c-ares mailing list by Bram Matthys on May 6 2006. My version removes +# redundant code but also adds the LTCFLAGS check that wasn't in that patch. +# +# Some code in this function was extracted from the generated configure script. +# +# CARES_CLEAR_LIBTOOL_TAGS +AC_DEFUN([CARES_CLEAR_LIBTOOL_TAGS], +  [m4_define([_LT_AC_TAGCONFIG], [ +  if test -f "$ltmain"; then +    if test ! -f "${ofile}"; then +      AC_MSG_WARN([output file `$ofile' does not exist]) +    fi + +    if test -z "$LTCC"; then +      eval "`$SHELL ${ofile} --config | grep '^LTCC='`" +      if test -z "$LTCC"; then +        AC_MSG_WARN([output file `$ofile' does not look like a libtool +script]) +      else +        AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) +      fi +    fi +    if test -z "$LTCFLAGS"; then +      eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`" +    fi +  fi +  ])] +) diff --git a/ares/configure.ac b/ares/configure.ac index ea38b8923..f862f8bf3 100644 --- a/ares/configure.ac +++ b/ares/configure.ac @@ -66,6 +66,7 @@ AC_HELP_STRING([--disable-debug],[Disable debug options]),  )  dnl libtool setup +CARES_CLEAR_LIBTOOL_TAGS  AC_PROG_LIBTOOL  dnl Checks for header files. @@ -433,7 +434,8 @@ int main()    }    ], [         AC_MSG_RESULT(yes) -       AC_DEFINE_UNQUOTED(HAVE_INET_NTOP_IPV6,1,[Define to 1 if inet_ntop supports IPv6.]) +       AC_DEFINE_UNQUOTED(HAVE_INET_NTOP_IPV6,1, +          [Define to 1 if inet_ntop supports IPv6.])       ], AC_MSG_RESULT(no),AC_MSG_RESULT(no))  fi @@ -499,13 +501,15 @@ dnl and get the types of five of its arguments.  CURL_CHECK_FUNC_GETNAMEINFO -dnl God bless non-standardized functions! We need to see which getservbyport_r variant is available +dnl God bless non-standardized functions! We need to see which getservbyport_r +dnl variant is available  CARES_CHECK_GETSERVBYPORT_R  CURL_CHECK_NONBLOCKING_SOCKET  AC_C_BIGENDIAN( -    [AC_DEFINE(ARES_BIG_ENDIAN, 1, [define this if ares is built for a big endian system])], +    [AC_DEFINE(ARES_BIG_ENDIAN, 1, +      [define this if ares is built for a big endian system])],      ,      [AC_MSG_WARN([couldn't figure out endianess, assuming little endian!])]  ) | 
