dnl Process this file with autoconf to produce a configure script.
+
AC_PRERQ(2.50)
-AC_INIT(source/Makefile.in)
-AM_INIT_AUTOMAKE([Bobot++], [2.1.0])
+AC_INIT([Bobot++], m4_esyscmd([build-aux/git-version-gen --prefix 'release-' .tarball-version]), [clinton@unknownlamer.org], [bobotpp])
+AC_LANG([C++])
+AC_CONFIG_AUX_DIR(build-aux)
+AM_INIT_AUTOMAKE
AM_CONFIG_HEADER(config.h)
dnl Options
[AC_HELP_STRING(--disable-crypt, Do not use the crypt function)],
[
if test $enableval = "no"; then
- AC_DEFINE(NOCRYPT,1)
+ AC_DEFINE(NOCRYPT,1, [No crypt support])
fi
])
-
AC_ARG_ENABLE(scripting,
[AC_HELP_STRING(--disable-scripting, Do not use Guile scripts)],
[
if test $enableval = "no"; then
AC_SUBST(GUILE_LDFLAGS,"")
+ AC_SUBST(GUILE_CFLAGS,"")
else
GUILE_PROGS
GUILE_FLAGS
- AC_DEFINE(USESCRIPTS,1)
- AC_DEFINE(MULTITHREAD,1)
+ GUILE_SITE_DIR
+ AC_DEFINE(USESCRIPTS,1,[Do we have Guile script support?])
+ ACX_PTHREAD([AC_DEFINE(MULTITHREAD,1,[Is the bot Multithreaded?])])
fi
],
[
+ enable_scripting=yes
GUILE_PROGS
GUILE_FLAGS
+ GUILE_SITE_DIR
AC_DEFINE(USESCRIPTS,1)
- AC_DEFINE(MULTITHREAD,1)
+ ACX_PTHREAD([AC_DEFINE(MULTITHREAD,1,[Is the bot Multithreaded?])])
])
+AM_CONDITIONAL([SCRIPTING], [test x$enable_scripting = xyes])
-dnl check for guile stuff and define flags needed to enable scripting
-dnl HINT: use an AM_CONDITIONAL to change LDFLAGS
-dnl Make it a --disable-scripting because enabling scripting is a good
-dnl default behavior
-dnl AC_DEFINE(USESCRIPTS,1)
-dnl AC_DEFINE(MULTITHREAD,1)
-dnl GUILE_PROGS
-dnl GUILE_FLAGS
-
-
-dnl I don't think this works at all!
-dnl AC_ARG_ENABLE(telnetserver,
-dnl [ --enable-telnetserver Use the Telnet server],
-dnl [
-dnl if test $enableval = "yes"; then
-dnl TSERVER_DEFINES="-DTSERVER"
-dnl TSERVER_SOURCES=""
-dnl TSERVER_INCLUDES=""
-dnl fi
-dnl AC_SUBST(TSERVER_DEFINES)
-dnl AC_SUBST(TSERVER_SOURCES)
-dnl AC_SUBST(TSERVER_INCLUDES)
-dnl ])
-
+AC_SUBST(CXXFLAGS, "$PTHREAD_CFLAGS $GUILE_CFLAGS $CXXFLAGS")
+AC_SUBST(LDFLAGS, "$GUILE_LDFLAGS $LDFLAGS")
+AC_SUBST(LIBS, "$PTHREAD_LIBS $LIBS")
dnl Checks for programs.
AC_PROG_CXX
+dnl GNULib needs gcc
+AC_PROG_CC
+gl_EARLY
dnl Checks for STL compliance
AC_CPP_STL
AC_TYPE_SIGNAL
AC_CHECK_FUNCS(select socket strtoul)
+dnl GNULib
+gl_INIT
+
+dnl PREFIX (I know, I know. Not very nice but...)
+if test "x$prefix" == "xNONE"
+then
+ AC_DEFINE_UNQUOTED(PREFIX, "$ac_default_prefix", [Install prefix])
+else
+ AC_DEFINE_UNQUOTED(PREFIX, "$prefix", [Install Prefix])
+fi
+
dnl Generates the makefiles
-AC_OUTPUT(source/Makefile)
-AC_OUTPUT(Makefile)
+AC_OUTPUT(documentation/Makefile source/Makefile scripts/Makefile Makefile lib/Makefile)