]> git.saurik.com Git - cycript.git/blobdiff - configure.ac
Hack to try to find a useable iconv if pkg-config and libffi have messed it up on...
[cycript.git] / configure.ac
index 2a2348ae049316f151c0096e3eb33f2b28007695..a7ca5f3b2c10d46f558e1b762134557766c87542 100644 (file)
@@ -72,8 +72,6 @@ AS_CASE([$apr_found], [yes], [
        AC_LIB_APPENDTOVAR([CPPFLAGS], [`$apr_config --includes`])
        AC_SUBST([LTLIBAPR], [`$apr_config --link-libtool`])
 ], [AC_MSG_ERROR([You need apr])])
-VL_LIB_READLINE
-AS_CASE([$vl_cv_lib_readline], [no], [AC_MSG_ERROR([You need readline])])
 AC_DEFUN([CY_CHECK_JAVASCRIPTCORE], [
        PKG_CHECK_MODULES([WEBKIT], [webkit-1.0], [
                CY_EXECUTE=1
@@ -150,10 +148,26 @@ AS_CASE([$CY_EXECUTE], [1], [
        ])
        AC_LANG_POP([Objective C++])
 ])
+VL_LIB_READLINE
+AS_CASE([$vl_cv_lib_readline], [no], [AC_MSG_ERROR([You need readline])])
 AC_LANG_PUSH([C])
 AM_ICONV
-AC_LANG_POP([C])
+AS_CASE([$am_cv_func_iconv], [yes], [], [
+       for cy_iconv_prefix_arg in $CFLAGS $CXXFLAGS $OBJCXXFLAGS $LDFLAGS $LIBS; do
+               AS_CASE([$cy_iconv_prefix_arg], [-I*], [
+                       AC_LIB_APPENDTOVAR([cy_iconv_prefixes], [`echo $cy_iconv_prefix_arg | sed -e 's/^-I//;s|/include$||'`])
+               ], [-L*], [
+                       AC_LIB_APPENDTOVAR([cy_iconv_prefixes], [`echo $cy_iconv_prefix_arg | sed -e 's/^-L//;s|/lib$||'`])
+               ])
+       done
+       for with_libiconv_prefix in $cy_iconv_prefixes; do
+               AS_UNSET([am_cv_func_iconv])
+               AM_ICONV_LINKFLAGS_BODY
+               AM_ICONV
+       done
+])
 AS_CASE([$am_cv_func_iconv], [yes], [], [AC_MSG_ERROR([You need iconv])])
+AC_LANG_POP([C])
 AS_IF([test "x$CY_OBJECTIVEC" = x1], [
        AC_CHECK_HEADER([mach/mach.h], [
                AS_CASE([$OTOOL], [:], [AC_MSG_WARN([Missing otool?])], [AC_SUBST([CY_OBJECTIVEC_MACH], [1])])