build: disable iconv by default.
authorClément Bœsch <ubitux@gmail.com>
Sun, 3 Mar 2013 21:48:16 +0000 (22:48 +0100)
committerClément Bœsch <ubitux@gmail.com>
Sun, 3 Mar 2013 22:50:31 +0000 (23:50 +0100)
It seems to break a lot on MacOS because of a mixup between multiple
iconv libraries. The issue is that the configure check link with no
particular library path (so it uses /usr/lib/libiconv.dylib where all
the symbols are defined). OTOH, the final build might link with extra
library paths, such as the ports lib directory (typically you get
-L/opt/local/lib because of an extra library such as SDL). Whatever this
option position (before or after -liconv), it will try to link with
/opt/local/lib/libiconv.dylib, and the issue is that this version has
the same symbols as the ones in /usr/lib/libiconv.dylib except that they
all start with 'lib' (libiconv_open, libiconv_close, ...). I don't plan
to try to workaround this mess, so any better solution is welcome.

configure

index 0aaaff5..98cef18 100755 (executable)
--- a/configure
+++ b/configure
@@ -3821,7 +3821,6 @@ check_header asm/types.h
 
 disabled  zlib || check_lib   zlib.h      zlibVersion -lz   || disable  zlib
 disabled bzlib || check_lib2 bzlib.h BZ2_bzlibVersion -lbz2 || disable bzlib
-disabled iconv || check_func_headers iconv.h iconv || check_lib2 iconv.h iconv -liconv || disable iconv
 
 if ! disabled w32threads && ! enabled pthreads; then
     check_func_headers "windows.h process.h" _beginthreadex && enable w32threads
@@ -3875,6 +3874,7 @@ enabled avisynth   && require2 vfw32 "windows.h vfw.h" AVIFileInit -lavifil32
 enabled fontconfig && require_pkg_config fontconfig "fontconfig/fontconfig.h" FcInit
 enabled frei0r     && { check_header frei0r.h || die "ERROR: frei0r.h header not found"; }
 enabled gnutls     && require_pkg_config gnutls gnutls/gnutls.h gnutls_global_init
+enabled iconv      && { check_func_headers iconv.h iconv || check_lib2 iconv.h iconv -liconv || die "ERROR: iconv not found"; }
 enabled libiec61883 && require libiec61883 libiec61883/iec61883.h iec61883_cmp_connect -lraw1394 -lavc1394 -lrom1394 -liec61883
 enabled libaacplus && require  "libaacplus >= 2.0.0" aacplus.h aacplusEncOpen -laacplus
 enabled libass     && require_pkg_config libass ass/ass.h ass_library_init