diff options
author | Junio C Hamano <junkio@cox.net> | 2007-02-20 22:28:22 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-02-20 22:28:22 -0800 |
commit | 4b22f634a3f1752d98e1fc5eee4fa7ce0efe157c (patch) | |
tree | 0dfd674d8871b36a6909095bfa3755f7016a0706 | |
parent | 5ead60e61987ec7a9ca18050838bb47aa51d3665 (diff) | |
parent | e63ccb84e3e29d428548669a7a1206d386a57d6d (diff) | |
download | git-4b22f634a3f1752d98e1fc5eee4fa7ce0efe157c.tar.gz git-4b22f634a3f1752d98e1fc5eee4fa7ce0efe157c.tar.xz |
Merge branch 'fk/autoconf'
* fk/autoconf:
New autoconf test for iconv
-rw-r--r-- | configure.ac | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/configure.ac b/configure.ac index 7cfb3a066..3a8e778de 100644 --- a/configure.ac +++ b/configure.ac @@ -114,13 +114,32 @@ AC_CHECK_LIB([expat], [XML_ParserCreate], [NO_EXPAT=YesPlease]) AC_SUBST(NO_EXPAT) # -# Define NEEDS_LIBICONV if linking with libc is not enough (Darwin). +# Define NEEDS_LIBICONV if linking with libc is not enough (Darwin and +# some Solaris installations). # Define NO_ICONV if neither libc nor libiconv support iconv. -AC_CHECK_LIB([c], [iconv], - [NEEDS_LIBICONV=], - AC_CHECK_LIB([iconv], [iconv], - [NEEDS_LIBICONV=YesPlease], - [NO_ICONV=YesPlease])) +AC_DEFUN([ICONVTEST_SRC], [ +#include <iconv.h> + +int main(void) +{ + iconv_open("", ""); + return 0; +} +]) +AC_MSG_CHECKING([for iconv in -lc]) +AC_LINK_IFELSE(ICONVTEST_SRC, + [AC_MSG_RESULT([yes]) + NEEDS_LIBICONV=], + [AC_MSG_RESULT([no]) + old_LIBS="$LIBS" + LIBS="$LIBS -liconv" + AC_MSG_CHECKING([for iconv in -liconv]) + AC_LINK_IFELSE(ICONVTEST_SRC, + [AC_MSG_RESULT([yes]) + NEEDS_LIBICONV=YesPlease], + [AC_MSG_RESULT([no]) + NO_ICONV=YesPlease]) + LIBS="$old_LIBS"]) AC_SUBST(NEEDS_LIBICONV) AC_SUBST(NO_ICONV) test -n "$NEEDS_LIBICONV" && LIBS="$LIBS -liconv" |