Merged silc_1_1_branch to trunk.
[silc.git] / apps / irssi / configure.in
index 51ccc718191a0efe5bf14c766f03ccf124493645..109e5b2cf11e94d6845595b5422f7c7fa72e886b 100644 (file)
@@ -1,4 +1,4 @@
-AC_INIT(src)
+AC_INIT([SILC-Client], [0.8.11+], [silc-devel@lists.silcnet.org], [silc-client])
 
 # we don't want VERSION in our config.h
 if test -n "`grep '^#undef VERSION' config.h.in`"; then
@@ -7,7 +7,7 @@ if test -n "`grep '^#undef VERSION' config.h.in`"; then
 fi
 
 AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(Irssi-SILC, 0.8.6+)
+AM_INIT_AUTOMAKE
 
 AM_MAINTAINER_MODE
 
@@ -15,7 +15,6 @@ AC_ISC_POSIX
 AC_PROG_CC
 AC_PROG_CPP
 AC_STDC_HEADERS
-AC_ARG_PROGRAM
 AM_PROG_LIBTOOL
 
 AC_PATH_PROG(sedpath, sed)
@@ -29,7 +28,7 @@ fi
 AC_CHECK_HEADERS(string.h stdlib.h unistd.h dirent.h sys/ioctl.h sys/resource.h)
 
 # check posix headers..
-AC_CHECK_HEADERS(sys/time.h sys/utsname.h regex.h)
+AC_CHECK_HEADERS(sys/time.h sys/utsname.h)
 
 AC_ARG_WITH(socks,
 [  --with-socks            Build with socks support],
@@ -96,6 +95,13 @@ AC_ARG_WITH(terminfo,
        fi,
        want_terminfo=yes)
 
+AC_ARG_WITH(cuix,
+[  --with-cuix             Use curses ui extended],
+    if test x$withval = xyes; then
+            want_terminfo=no
+            want_cuix=yes
+    fi, want_cuix=no)
+
 AC_ARG_WITH(modules,
 [  --with-modules          Specify what modules to build in binary],
        if test x$withval != xyes -a x$withval != xno; then
@@ -111,18 +117,18 @@ if test "x$prefix" != "xNONE"; then
        perl_prefix_note=yes
 fi
 
-AC_ARG_WITH(with-glib2,
-[  --with-glib2           Use GLIB 2.0 instead of 1.2],
-       if test x$withval = xyes; then
-               want_glib2=yes
-       else
-               if test "x$withval" = xno; then
-                       want_glib2=no
-               else
-                       want_glib2=yes
-               fi
-       fi,
-       want_glib2=yes)
+AC_ARG_WITH(glib1,
+[  --with-glib1            Use GLIB 1.2 instead of 2.0 if both exist],
+        if test x$withval = xyes; then
+                want_glib1=yes
+        else
+                if test "x$withval" = xno; then
+                        want_glib1=no
+                else
+                        want_glib1=yes
+                fi
+        fi,
+        want_glib1=no)
 
 AC_ARG_WITH(perl-staticlib,
 [  --with-perl-staticlib   Specify that we want to link perl libraries
@@ -183,6 +189,42 @@ AC_ARG_WITH(perl,
        fi,
        want_perl=static)
 
+# Irssi SILC Plugin support
+#
+SILC_IRSSIDIR=
+silc_plugin=false
+AC_MSG_CHECKING(whether to compile SILC Plugin for Irssi)
+AC_ARG_WITH(silc-plugin,
+  [[  --with-silc-plugin[=DIR] Compile the SILC Plugin for Irssi, specify
+                           Irssi location [/usr/lib/irssi]]],
+  [
+    case "${withval}" in
+      no)
+        AC_MSG_RESULT(no)
+        silc_plugin=false
+        ;;
+      yes)
+        AC_MSG_RESULT(yes)
+        silc_plugin=true
+       SILC_IRSSIDIR="/usr/lib/irssi/modules"
+       ;;
+      *)
+        AC_MSG_RESULT(yes)
+        silc_plugin=true
+        SILC_IRSSIDIR="$withval/modules"
+        ;;
+    esac
+  ])
+
+AM_CONDITIONAL(SILCPLUGIN, test x$silc_plugin = xtrue)
+AC_SUBST(SILC_IRSSIDIR)
+
+AC_ARG_WITH(file-offset-size,
+[  --with-file-offset-size=BITS  Set size of file offsets. Usually 32 or 64.
+                          (default: 64 if available)],
+        preferred_off_t_bits=$withval,
+        preferred_off_t_bits=64)
+
 AC_ARG_ENABLE(ipv6,
 [  --enable-ipv6           Enable IPv6 support],
        if test x$enableval = xyes; then
@@ -251,26 +293,27 @@ AC_DEFINE_UNQUOTED(_FILE_OFFSET_BITS, $preferred_off_t_bits)
 AC_CHECK_SIZEOF(int)
 AC_CHECK_SIZEOF(long)
 AC_CHECK_SIZEOF(long long)
+AC_CHECK_SIZEOF(off_t)
 
-if test $sizeof_off_t = 8; then
+if test $ac_cv_sizeof_off_t = 8; then
   offt_64bit=yes
 else
   offt_64bit=no
 fi
-                
-if test x$sizeof_off_t = x$ac_cv_sizeof_long; then
+
+if test x$ac_cv_sizeof_off_t = x$ac_cv_sizeof_long; then
   # try to use unsigned long always first
   AC_DEFINE_UNQUOTED(PRIuUOFF_T, "lu")
-  AC_DEFINE(UOFF_T_LONG)
-elif test x$sizeof_off_t = x$ac_cv_sizeof_int; then
+  AC_DEFINE(UOFF_T_LONG, [], [UOFF_T_LONG])
+elif test x$ac_cv_sizeof_off_t = x$ac_cv_sizeof_int; then
   # next try int
   AC_DEFINE_UNQUOTED(PRIuUOFF_T, "u")
-  AC_DEFINE(UOFF_T_INT)
-elif test x$sizeof_off_t = x$ac_cv_sizeof_long_long; then
+  AC_DEFINE(UOFF_T_INT, [], [UOFF_T_INT])
+elif test x$ac_cv_sizeof_off_t = x$ac_cv_sizeof_long_long; then
   # and finally long long
   AC_DEFINE_UNQUOTED(PRIuUOFF_T, "llu")
-  AC_DEFINE(UOFF_T_LONG_LONG)
-else                    
+  AC_DEFINE(UOFF_T_LONG_LONG, [], [UOFF_T_LONG_LONG])
+else
   AC_ERROR([Couldn't find integer type for off_t])
 fi
 
@@ -292,6 +335,10 @@ if test "x$want_socks" = "xyes"; then
        ])
 fi
 
+if test "x$want_cuix" = "xyes"; then
+    AC_DEFINE([HAVE_CUIX], [1] ,[Enable cuix support])
+fi
+
 dnl **
 dnl ** fe-text checks
 dnl **
@@ -346,12 +393,12 @@ AC_DEFUN(AC_CHECK_GLIBDIR,[
 AC_CHECK_GLIBDIR
 
 if test -z "$GLIB_DIR"; then
-  if test "x$with_glib2" = "xyes"; then
-    dnl * check only for glib2
-    checks="3 4"
+  if test "x$want_glib1" = "xyes"; then
+    dnl * check only for glib1
+    checks="1 2"
   else
-    dnl * check glib1 then glib2
-    checks="1 2 3 4"
+    dnl * check glib2 then glib1
+    checks="3 4 1 2"
   fi
 
   for try in $checks; do
@@ -363,11 +410,10 @@ if test -z "$GLIB_DIR"; then
       glib_modules=
     fi
     if test $try = 1 -o $try = 2; then
-      glib_version=1.2.0
+      AM_PATH_GLIB(1.2.0,,, $glib_modules)
     else
-      glib_version=2.0.0
+      AM_PATH_GLIB_2_0(2.0.0,,, $glib_modules)
     fi
-    AM_PATH_GLIB($glib_version,[],[], [$glib_modules])
     if test "$GLIB_LIBS"; then
       if test $glib_modules = gmodule; then
         AC_DEFINE(HAVE_GMODULE)
@@ -385,18 +431,18 @@ if test -z "$GLIB_DIR"; then
     echo "*** Irssi will automatically compile and use it."
     echo
 
-    dnl * I think it's pretty safe to assume GLib 1.2.9 since the next
-    dnl * will be 2.0 (or 1.4?) and it's not sure if irssi compiles
-    dnl * with it (yea, just a few weeks after I put this text for 1.2.8
-    dnl * the 1.2.9 came :) .. and then .10
-    glib_file=glib-1.2.10.tar.gz
+    glib_url=ftp://ftp.gtk.org/pub/gtk/v2.8/
+    glib_file=glib-2.8.3.tar.gz
 
     dlcmd=
-    if test -n "`ncftpget 2>/dev/null|grep -i ncftp`"; then
-      dlcmd="ncftpget ftp://ftp.gtk.org/pub/gtk/v1.2/$glib_file"
-    fi
-    if test -n "`wget 2>/dev/null|grep -i wget`"; then
-      dlcmd="wget http://irssi.org/files/$glib_file"
+    if test -n "`wget --version 2>/dev/null|grep -i wget`"; then
+      dlcmd="wget -c $glib_url$glib_file"
+    elif test -n "`ncftpget --version 2>/dev/null|grep -i ncftp`"; then
+      dlcmd="ncftpget -z $glib_url$glib_file"
+    elif test -n "`lynx --version 2>/dev/null|grep -i lynx`"; then
+      dlcmd="lynx --source $glib_url$glib_file > $glib_file"
+    elif test -n "`curl --version 2>/dev/null|grep -i curl`"; then
+      dlcmd="curl -C - $glib_url$glib_file"
     fi
     if test -n "$dlcmd"; then
       echo "*** I can download GLib for you now. If you don't want to, press CTRL-C now."
@@ -405,11 +451,11 @@ if test -z "$GLIB_DIR"; then
       read answer
       eval $dlcmd
       if `gunzip $glib_file`; then
-       glib_file=`echo $glib_file|$sedpath s/\.gz$//`
-       if `tar xf $glib_file`; then
-         rm -f $glib_file
-         AC_CHECK_GLIBDIR
-       fi
+        glib_file=`echo $glib_file|$sedpath s/\.gz$//`
+        if `tar xf $glib_file`; then
+          rm -f $glib_file
+          AC_CHECK_GLIBDIR
+        fi
       fi
     fi
 
@@ -421,6 +467,17 @@ fi
 
 LIBS="$LIBS $GLIB_LIBS"
 
+dnl **
+dnl ** Recode
+dnl **
+AC_MSG_CHECKING([if we can use recode, requires GLIB2])
+if test "$glib_config_major_version" = "2"; then
+  AC_DEFINE([HAVE_GLIB2], [], ["HAVE_GLIB2"])
+  AC_MSG_RESULT([yes])
+else
+  AC_MSG_RESULT([no, using glib1])
+fi
+
 dnl **
 dnl ** check if we can link dynamic libraries to modules
 dnl ** also checks if libraries are built to .libs dir
@@ -529,6 +586,19 @@ if test "$want_perl" != "no"; then
                PERL_CFLAGS=`$perlpath -MExtUtils::Embed -e ccopts 2>/dev/null`
        fi
 
+        if test "x$ac_cv_prog_gcc" = "xyes" -a -z "`echo $host_os|grep 'bsd\|linux'`"; then
+                dnl * several systems have Perl compiled with native compiler
+                dnl * but irssi is being compiled with GCC. Here we try to
+                dnl * fix those command line options a bit so GCC won't
+                dnl * complain about them. Normally there's only few options
+                dnl * that we want to keep:
+                dnl * -Ddefine -Uundef -I/path -fopt -mopt
+                PERL_CFLAGS=`echo $PERL_CFLAGS | $perlpath -pe 's/^(.* )?-[^DUIfm][^ ]+/\1/g; s/^(.* )?\+[^ ]+/\1/g'`
+
+                PERL_EXTRA_OPTS="CCCDLFLAGS=\"-fPIC\""
+                AC_SUBST(PERL_EXTRA_OPTS)
+        fi
+
        if test -z "$PERL_CFLAGS"; then
                if test -n "$perl_check_error"; then
                        perl_check_error="Error getting perl CFLAGS"
@@ -687,6 +757,8 @@ AM_CONDITIONAL(HAVE_PERL, test "$want_perl" != "no")
 AM_CONDITIONAL(HAVE_STATIC_PERL, test "$want_perl" = "static")
 AM_CONDITIONAL(NEED_TPARM, test "$need_tparm" = "yes")
 AM_CONDITIONAL(USE_CURSES, test "$want_terminfo" != "yes" -a "$want_termcap" != "yes")
+AM_CONDITIONAL(BUILD_SERVERTEST, false)
+AM_CONDITIONAL(USE_CUIX, test "$want_cuix" = "yes")
 
 # move LIBS to PROG_LIBS so they're not tried to be used when linking eg. perl libraries
 PROG_LIBS=$LIBS
@@ -817,13 +889,14 @@ src/perl/Makefile
 src/perl/common/Makefile.PL
 src/perl/ui/Makefile.PL
 src/perl/textui/Makefile.PL
+src/perl/silc/Makefile.PL
 scripts/Makefile
+scripts/examples/Makefile
 docs/Makefile
 docs/help/Makefile
 docs/help/in/Makefile
 irssi-version.h
 stamp.h
-irssi.spec
 irssi-config)
 
 dnl ** for building from objdir