diff --git a/configure b/configure index a29215e899..652f67de26 100755 --- a/configure +++ b/configure @@ -896,10 +896,16 @@ else cc_check $_x11libdir -lX11 -lXext -lGL -lm $_socklib && _gl=yes fi +if freebsd ; then + _iconv_tmp='#include ' +else + _iconv_tmp='#include ' +fi + cat > $TMPC << EOF #include #include -#include +$_iconv_tmp #define INBUFSIZE 1024 #define OUTBUFSIZE 4096 @@ -930,7 +936,10 @@ main() EOF _iconv=yes -if freebsd || bsdos ; then +if freebsd ; then + cc_check $_extraincdir $_extralibdir -lm -lgiconv >/dev/null 2>&1 || \ + { _iconv=no ; echo "iconv(3) function not detected!" ;} +elif bsdos ; then cc_check $_extraincdir $_extralibdir -lm -liconv >/dev/null 2>&1 || \ { _iconv=no ; echo "iconv(3) function not detected!" ;} else @@ -1878,7 +1887,9 @@ fi if test "$_iconv" = yes ; then _iconv='#define USE_ICONV' - if freebsd || bsdos ; then + if freebsd ; then + _iconvlib="-lgiconv" + elif bsdos ; then _iconvlib="-liconv" fi else diff --git a/subreader.c b/subreader.c index 456a1bfb89..1754a50a46 100644 --- a/subreader.c +++ b/subreader.c @@ -18,7 +18,11 @@ #define ERR (void *)-1 #ifdef USE_ICONV +#ifdef __FreeBSD__ +#include +#else #include +#endif char *sub_cp=NULL; #endif