Commit Diff


commit - 1413a4886ffa120e82d4963368e82b4d5ec6eb2d
commit + ce736fc15bd80044f3206ae36c7c0462decaf1be
blob - 949a383a5089104c0f283fffa9cb050dd1746b8a
blob + cccda866592e826e87893798097cfdafe7be51b8
--- configure.in
+++ configure.in
@@ -30,6 +30,7 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
 AH_TEMPLATE([DEBUG], [Define if debug-mode should be enabled])
 AH_TEMPLATE([HAVE_sockaddr_in_len], [Define if sockaddr_in.sin_len exists])
 AH_TEMPLATE([HAVE_socklen_t], [Define if socklen_t exists])
+AH_TEMPLATE([ICONV], [Define if libiconv can be used, e.g. for CHARCONV])
 AH_TEMPLATE([IDENTAUTH], [Define if the server should do IDENT requests])
 AH_TEMPLATE([IRCPLUS], [Define if IRC+ protocol should be used])
 AH_TEMPLATE([PAM], [Define if PAM should be used])
@@ -500,6 +501,29 @@ AC_ARG_ENABLE(ircplus,
 )
 if test "$x_ircplus_on" = "yes"; then
 	AC_DEFINE(IRCPLUS, 1)
+
+	# Compile in iconv support?
+	# We only check for it when IRC+ is enabled, because the IRC+ command
+	# CHARCONV is the only function depending on it.
+	x_iconv_on=no
+	AC_ARG_WITH(iconv,
+		[  --with-iconv            enable character conversation using libiconv],
+		[ if test "$withval" != "no"; then
+			if test "$withval" != "yes"; then
+				CFLAGS="-I$withval/include $CFLAGS"
+				CPPFLAGS="-I$withval/include $CPPFLAGS"
+				LDFLAGS="-L$withval/lib $LDFLAGS"
+			fi
+			AC_CHECK_LIB(iconv, iconv_open)
+			AC_CHECK_FUNCS(iconv_open, x_iconv_on=yes,
+				AC_MSG_ERROR([Can't enable libiconv support!])
+			)
+		  fi
+		]
+	)
+	if test "$x_iconv_on" = "yes"; then
+		AC_DEFINE(ICONV, 1)
+	fi
 fi
 
 # enable support for IPv6?
@@ -672,6 +696,9 @@ test "$x_pam_on" = "yes" \
 echo $ECHO_N "        SSL support: $ECHO_C"
 echo "$x_ssl_lib"
 
+echo $ECHO_N "   libiconv support: $ECHO_C"
+	echo "$x_iconv_on"
+
 echo
 
 # -eof-