AC_INIT(src) AM_CONFIG_HEADER(config.h) AM_INIT_AUTOMAKE(irssi, 0.7.90) AM_MAINTAINER_MODE AM_ACLOCAL_INCLUDE(macros) AC_ISC_POSIX AC_PROG_CC AC_PROG_CPP AC_STDC_HEADERS AC_ARG_PROGRAM AM_PROG_LIBTOOL AC_CHECK_HEADERS(string.h stdlib.h unistd.h dirent.h sys/ioctl.h libintl.h) GNOME_INIT GNOME_SUPPORT_CHECKS AC_ARG_WITH(socks, [ --with-socks Build with socks support], if test x$withval = xyes; then want_socks=yes else if test "x$withval" = xno; then want_socks=no else want_socks=yes fi fi, want_socks=no) AC_ARG_WITH(mysql, [ --with-mysql Build MySQL plugin], if test x$withval = xyes; then want_mysql=yes MYSQL_LIBS="-L/usr/lib/mysql -lmysqlclient" else if test "x$withval" = xno; then want_mysql=no else want_mysql=yes MYSQL_LIBS="-L$withval/lib/mysql -lmysqlclient" fi fi, want_mysql=no) AC_ARG_WITH(imlib, [ --with-imlib Build with imlib support], if test x$withval = xyes; then want_imlib=yes else if test "x$withval" = xno; then want_imlib=no else want_imlib=yes fi fi, want_imlib=yes) AC_ARG_WITH(gtk, [ --with-gtk Build GTK frontend], if test x$withval = xyes; then want_gtk=yes else if test "x$withval" = xno; then want_gtk=no else want_gtk=yes fi fi, want_gtk=yes) AC_ARG_WITH(gnome-panel, [ --with-gnome-panel Build with gnome panel applet support], if test x$withval = xyes; then want_gnome_panel=yes else if test "x$withval" = xno; then want_gnome_panel=no else want_gnome_panel=yes fi fi, want_gnome_panel=yes) AC_ARG_WITH(textui, [ --with-textui Build text frontend], if test x$withval = xyes; then want_textui=yes else if test "x$withval" = xno; then want_textui=no else want_textui=yes fi fi, want_textui=yes) AC_ARG_WITH(bot, [ --with-bot Build irssi-bot], if test x$withval = xyes; then want_irssibot=yes else if test "x$withval" = xno; then want_irssibot=no else want_irssibot=yes fi fi, want_irssibot=yes) AC_ARG_WITH(plugins, [ --with-plugins Build plugins], if test x$withval = xyes; then want_plugins=yes else if test "x$withval" = xno; then want_plugins=no else want_plugins=yes fi fi, want_plugins=yes) AC_ARG_ENABLE(perl, [ --enable-perl Enable Perl scripting], if test x$enableval = xyes; then want_perl=yes else if test "x$enableval" = xno; then want_perl=no else want_perl=yes fi fi, want_perl=yes) AC_ARG_WITH(servertest, [ --with-servertest Build servertest], if test x$withval = xyes; then want_servertest=yes else if test "x$withval" = xno; then want_servertest=no else want_servertest=yes fi fi, want_servertest=no) AC_ARG_ENABLE(memdebug, [ --enable-memdebug Enable memory debugging], if test x$enableval = xyes; then want_memdebug=yes else if test "x$enableval" = xno; then want_memdebug=no else want_memdebug=yes fi fi, want_memdebug=no) AC_ARG_ENABLE(ipv6, [ --enable-ipv6 Enable IPv6 support], if test x$enableval = xyes; then want_ipv6=yes else if test "x$enableval" = xno; then want_ipv6=no else want_ipv6=yes fi fi, want_ipv6=no) AC_ARG_ENABLE(gtk-hebrew, [ --enable-gtk-hebrew Enable Hebrew support], if test "x$enableval" = xno; then want_gtk_hebrew=no HEBREW_LIBS="" else AC_DEFINE(GTK_HEBREW) AC_DEFINE_UNQUOTED(GTK_HEBREW_RC, "$enableval") HEBREW_LIBS="-lfribidi" want_gtk_hebrew=yes fi, want_gtk_hebrew=no) dnl ** dnl ** just some generic stuff... dnl ** AC_CHECK_FUNCS(mkfifo fcntl) AC_CHECK_LIB(socket, socket, [ PROG_LIBS="$PROG_LIBS -lsocket" ]) AC_CHECK_LIB(nsl, inet_addr, [ PROG_LIBS="$PROG_LIBS -lnsl" ], -lsocket) dnl * gcc specific options if test "x$ac_cv_prog_gcc" = "xyes"; then CFLAGS="$CFLAGS -Wall" fi dnl * socklen_t - AC_CHECK_TYPE() would be _really_ useful if it only would dnl * accept header files where to find the typedef.. AC_MSG_CHECKING([for socklen_t]) AC_CACHE_VAL(irssi_cv_type_socklen_t, [AC_TRY_COMPILE([ #include ], [socklen_t t;], irssi_cv_type_socklen_t=yes, irssi_cv_type_socklen_t=no, )]) if test $irssi_cv_type_socklen_t = no; then AC_DEFINE(socklen_t, int, Define to 'int' if doesn't define.) fi AC_MSG_RESULT($irssi_cv_type_socklen_t) dnl ** dnl ** check for socks dnl ** if test "x$want_socks" = "xyes"; then AC_CHECK_LIB(socks, connect, [ PROG_LIBS="$PROG_LIBS -lsocks" AC_CHECK_HEADER(socks.h, [ AC_DEFINE(HAVE_SOCKS_H) CFLAGS="$CFLAGS -DSOCKS" AC_MSG_RESULT(["socks5 library found, building with it"]) ], [ AC_MSG_RESULT(["socks4 library found, building with it"]) CFLAGS="$CFLAGS -Dconnect=Rconnect -Dgetsockname=Rgetsockname -Dgetpeername=Rgetpeername -Dbind=Rbind -Daccept=Raccept -Dlisten=Rlisten -Dselect=Rselect" ]) ]) fi dnl ** dnl ** check for gnome dnl ** if test "x$want_gnome" = "xyes"; then if test "x$GNOME_LIBS" = "x"; then want_gnome="no"; fi if test "x$want_gtk" = "xno"; then want_gnome="no"; fi fi if test "x$want_gnome" = "xyes"; then AC_DEFINE(HAVE_GTK) AC_DEFINE(HAVE_GNOME) AC_DEFINE(HAVE_IMLIB) GUI_CFLAGS="$GNOME_INCLUDEDIR" dnl ** dnl ** check for gnome panel applet library dnl ** if test "x$want_gnome_panel" = "xyes"; then AC_CHECK_LIB(panel_applet, applet_widget_init, [ GUI_LIBS="$GNOME_LIBDIR $GNOMEGNORBA_LIBS -lpanel_applet" AC_DEFINE(HAVE_GNOME_PANEL) ], [ GUI_LIBS="$GNOME_LIBDIR $GNOMEUI_LIBS" want_gnome_panel="no" ], $GNOME_LIBDIR $GNOMEGNORBA_LIBS -lpanel_applet) else GUI_LIBS="$GNOME_LIBDIR $GNOMEUI_LIBS" fi else want_gnome_panel="no" if test "x$want_gtk" = "xyes"; then AC_DEFINE(HAVE_GTK) AM_PATH_GTK(1.2.0) else GTK_LIBS= fi if test "x$GTK_LIBS" != "x"; then GUI_CFLAGS="$GTK_CFLAGS" GUI_LIBS="$GTK_LIBS" if test "x$want_imlib" = "xyes"; then AM_PATH_GDK_IMLIB(, [define_imlib=true]) if test x$define_imlib = xtrue; then AC_DEFINE(HAVE_IMLIB) GUI_CFLAGS="$GUI_CFLAGS $GDK_IMLIB_CFLAGS" GUI_LIBS="$GDK_IMLIB_LIBS" fi fi GUI_LIBS="$GUI_LIBS ../lib-popt/libpopt.la" fi fi if test "x$GUI_LIBS" != "x"; then GUI_LIBS="$GUI_LIBS $HEBREW_LIBS $PROG_LIBS" fi AC_SUBST(GUI_LIBS) AC_SUBST(GUI_CFLAGS) dnl ** dnl ** fe-text checks dnl ** AM_PATH_GLIB(1.2.0,,, gmodule) PROG_LIBS="$PROG_LIBS $GLIB_LIBS ../lib-popt/libpopt.la" AC_SUBST(PROG_LIBS) dnl ** dnl ** curses checks dnl ** if test "x$want_textui" = "xyes"; then AC_CHECK_CURSES if test "x$ncurses_version" != "x"; then AC_CHECK_LIB(ncurses, use_default_colors, [ AC_DEFINE(HAVE_NCURSES_USE_DEFAULT_COLORS) ],, $CURSES_LIBS) AC_CHECK_LIB(ncurses, idcok, [ AC_DEFINE(HAVE_CURSES_IDCOK) ],, $CURSES_LIBS) AC_CHECK_LIB(ncurses, resizeterm, [ AC_DEFINE(HAVE_CURSES_RESIZETERM) ],, $CURSES_LIBS) else AC_CHECK_LIB(curses, idcok, [ AC_DEFINE(HAVE_CURSES_IDCOK) ],, $CURSES_LIBS) AC_CHECK_LIB(curses, resizeterm, [ AC_DEFINE(HAVE_CURSES_RESIZETERM) ],, $CURSES_LIBS) fi if test "$has_curses" != "true"; then want_textui=no; fi else has_curses=false fi AC_PATH_PROG(sedpath, sed) if test "$want_perl" = yes; then AC_PATH_PROG(perlpath, perl) AC_MSG_CHECKING(for Perl compile flags) PERL_CFLAGS=`$perlpath -MExtUtils::Embed -e ccopts 2>/dev/null` if test "x$PERL_CFLAGS" = "x"; then AC_MSG_RESULT([not found, building without perl.]) want_perl=no else PERL_LDFLAGS=`$perlpath -MExtUtils::Embed -e ldopts |$sedpath 's/-lgdbm //'` PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-ldb //'` PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lndbm //'` if test "$system" = "Linux"; then PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lnsl //'` PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lposix //'` fi PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lc //'` AC_MSG_RESULT(ok) AC_SUBST(PERL_CFLAGS) AC_SUBST(PERL_LDFLAGS) AC_DEFINE(HAVE_PERL) fi dnl ** building from objdir.. if test ! -d plugins/perl/xs; then mkdir -p plugins/perl/xs fi fi dnl ** check what we want to build AM_CONDITIONAL(BUILD_GNOMEUI, test "x$GUI_LIBS" != "x") AM_CONDITIONAL(BUILD_TEXTUI, test "$want_textui" = "yes") AM_CONDITIONAL(BUILD_IRSSIBOT, test "$want_irssibot" = "yes") AM_CONDITIONAL(BUILD_PLUGINS, test "$want_plugins" = "yes") AM_CONDITIONAL(BUILD_SERVERTEST, test "$want_servertest" = "yes") AM_CONDITIONAL(HAVE_GNOME, test "$want_gnome" = "yes") AM_CONDITIONAL(HAVE_GNOME_PANEL, test "$want_gnome_panel" = "yes") AM_CONDITIONAL(HAVE_MYSQL, test "$want_mysql" = "yes") AM_CONDITIONAL(HAVE_PERL, test "$want_perl" = "yes") AC_SUBST(MYSQL_LIBS) dnl ** dnl ** Keep all the libraries here so each frontend doesn't need to dnl ** keep track of them all dnl ** CORE_LIBS="../core/libcore.la ../lib-config/libirssi_config.la" IRC_LIBS="../irc/libirc.la ../irc/core/libirc_core.la ../irc/dcc/libirc_dcc.la ../irc/flood/libirc_flood.la ../irc/notifylist/libirc_notifylist.la" FE_COMMON_LIBS="../fe-common/core/libfe_common_core.la ../fe-common/irc/libfe_common_irc.la ../fe-common/irc/notifylist/libfe_common_irc_notifylist.la ../fe-common/irc/dcc/libfe_common_irc_dcc.la ../fe-common/irc/flood/libfe_common_irc_flood.la" AC_SUBST(CORE_LIBS) AC_SUBST(IRC_LIBS) AC_SUBST(FE_COMMON_LIBS) dnl ** common libraries needed by frontends COMMON_LIBS="$FE_COMMON_LIBS $IRC_LIBS $CORE_LIBS" AC_SUBST(COMMON_LIBS) dnl ** dnl ** memory debugging dnl ** if test "x$want_memdebug" = "xyes"; then AC_DEFINE(MEM_DEBUG) fi AM_CONDITIONAL(BUILD_MEMDEBUG, test "x$want_memdebug" = "xyes") dnl ** dnl ** IPv6 support dnl ** if test "x$want_ipv6" = "xyes"; then AC_DEFINE(HAVE_IPV6) fi dnl ** dnl ** internationalization support dnl ** ALL_LINGUAS="pl fi pt_BR fr de" AM_GNU_GETTEXT AC_OUTPUT( Makefile po/Makefile.in intl/Makefile macros/Makefile src/Makefile src/core/Makefile src/irc/Makefile src/irc/core/Makefile src/irc/dcc/Makefile src/irc/notifylist/Makefile src/irc/flood/Makefile src/fe-common/Makefile src/fe-common/core/Makefile src/fe-common/irc/Makefile src/fe-common/irc/dcc/Makefile src/fe-common/irc/flood/Makefile src/fe-common/irc/notifylist/Makefile src/fe-none/Makefile src/fe-text/Makefile src/fe-gnome/Makefile src/fe-gnome/help/Makefile src/fe-gnome/help/C/Makefile src/fe-gnome/pixmaps/Makefile src/lib-config/Makefile src/lib-popt/Makefile src/perl/Makefile src/perl/xs/Makefile.PL servertest/Makefile scripts/Makefile docs/Makefile docs/help/Makefile plugins/Makefile plugins/sample/Makefile plugins/speech/Makefile plugins/sound/Makefile plugins/proxy/Makefile plugins/external/Makefile plugins/bot/Makefile plugins/sql/Makefile stamp.h irssi.spec) dnl ** for building from objdir if test "x$want_perl" = "xyes"; then old_dir=`pwd` && cd $srcdir && whole_dir=`pwd` && cd $old_dir if test "x$old_dir" != "x$whole_dir"; then ln -sf $whole_dir/plugins/perl/xs/typemap plugins/perl/xs/typemap ln -sf $whole_dir/plugins/perl/xs/Irssi.xs plugins/perl/xs/Irssi.xs ln -sf $whole_dir/plugins/perl/xs/Irssi.pm plugins/perl/xs/Irssi.pm fi fi echo if test "x$GUI_LIBS" != "x"; then echo Building GTK frontend ...... : yes else echo Building GTK frontend ...... : no fi echo Building with GNOME ........ : $want_gnome echo Building with GNOME panel .. : $want_gnome_panel echo Building text frontend ..... : $want_textui echo Building irssi-bot ......... : $want_irssibot echo Building with IPv6 support . : $want_ipv6 echo Building with Perl support . : $want_perl echo Install prefix ............. : $prefix