##
AC_PREREQ(2.59)
-AC_INIT([simgrid],[3.3.4-svn],[simgrid-devel@lists.gforge.inria.fr])
+AC_INIT([simgrid],[3.3.5-svn],[simgrid-devel@lists.gforge.inria.fr])
AC_CONFIG_SRCDIR([include/gras.h])
AC_CONFIG_HEADERS([src/gras_config.h])
# A CI_PREREQ(2003.01.16) # We need a recent ACI when having sub-modules
-AC_REVISION($Revision: 6267 $)
+AC_REVISION($Revision: 6998 $)
AC_CANONICAL_TARGET
AC_LANG([C])
AC_PROG_CXX
###############
## SVN version check
##
-if test -e .svn && cat $VERSION | grep -q svn; then
+if test -e .svn && echo $VERSION | grep -q svn; then
VERSION="$VERSION-r`svnversion`"
PACKAGE_VERSION="$PACKAGE_VERSION-r`svnversion`"
- PACKAGE_STRING="PACKAGE_STRING r`svnversion`"
-fi
+ PACKAGE_STRING="$PACKAGE_STRING r`svnversion`"
+else if test -e .git && echo $VERSION | grep -q svn; then
+ ver=`git log --oneline -1 | sed 's| .*||'`
+ VERSION=`echo "$VERSION-r$ver" | sed 's/svn/git/'`
+ PACKAGE_VERSION=`echo "$PACKAGE_VERSION-r$ver" | sed 's/svn/git/'`
+ PACKAGE_STRING=`echo "$PACKAGE_STRING r$ver" | sed 's/svn/git/'`
+fi fi
###############
## System checks
sysconf\
readv\
popen\
- signal\
- getline])
-
+ signal])
+
+dnl GNU systems before POSIX2008 need the _GNU_SOURCE definition to find getline (and simgrid does pass this)
+AC_MSG_CHECKING(a usable getline)
+AC_LINK_IFELSE([
+ #define _GNU_SOURCE
+ #include <stdio.h>
+ int main(void){
+ FILE * fp;
+ char * line = NULL;
+ size_t len = 0;
+ getline(&line, &len, fp);
+ }
+ ],[
+ AC_MSG_RESULT(found)
+ ],[
+ AC_SUBST(need_getline, ["#define SIMGRID_NEED_GETLINE 1 /* enable the getline replacement*/"])
+ AC_DEFINE(SIMGRID_NEED_GETLINE, 1, enable the getline replacement)
+ AC_MSG_RESULT(not found (activating internal implementation))
+ ])
+
# check for a working snprintf (or use xbt/snprintf.c, which comes from http://www.ijs.si/software/snprintf/)
AC_FUNC_SNPRINTF
# check for asprintf function familly (or request the replacements from xbt/snprintf.c)
-AC_CHECK_FUNC( asprintf, :, AC_DEFINE(NEED_ASPRINTF, 1, enable the asprintf replacement))
-AC_CHECK_FUNC( vasprintf, :, AC_DEFINE(NEED_VASPRINTF, 1, enable the vasprintf replacement))
+AC_CHECK_FUNC( asprintf, :,[
+ AC_DEFINE(NEED_ASPRINTF, 1, enable the asprintf replacement)
+ AC_SUBST(need_asprintf, ["#define SIMGRID_NEED_ASPRINTF 1 /* enable the asprintf replacement */"])
+ ])
+AC_CHECK_FUNC( vasprintf, :,[
+ AC_DEFINE(NEED_VASPRINTF, 1, enable the vasprintf replacement)
+ AC_SUBST(need_vasprintf, ["#define SIMGRID_NEED_VASPRINTF 1 /*enable the vasprintf replacement */"])
+ ])
# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
##
## Support for the supernovae compilation mode
##
-if test x$USE_MAINTAINER_MODE = xyes
-then
- not_maintainer_mode=no
-else
- not_maintainer_mode=yes
-fi
-
AC_ARG_ENABLE(supernovae,
AS_HELP_STRING([--enable-supernovae],[Put the whole library in one compilation unit only to help gcc optimizing the code]),
[supernovae=$enableval],
- [supernovae=$not_maintainer_mode])
+ [supernovae=no])
AM_CONDITIONAL(SUPERNOVAE_MODE, test x$supernovae != xno)
AC_SUBST([CFLAGS])
AM_CONDITIONAL(HAVE_JAVA,test "x$use_java" = "xyes")
+SG_CONFIGURE_PART(Checking Lua bindings...)
+AC_ARG_ENABLE(lua,
+ AS_HELP_STRING([--disable-lua], [To not compile the Lua bindings even if the tools are found]),
+ disable_lua=$enableval,disable_lua=yes)
+if test "x$disable_lua" != "xyes" ; then
+ use_lua="disabled by user"
+else
+ AC_CHECK_HEADERS(lua5.1/lualib.h)
+ if test "x$ac_cv_header_lua5_1_lualib_h" = "xyes" ; then
+ use_lua="yes"
+ AC_DEFINE(HAVE_LUA,1, [defines whether Lua bindings must be compiled or not])
+ SIMGRID_DEP="${SIMGRID_DEP} -ldl -llua5.1"
+ else
+ use_lua="no"
+ fi
+fi
+AC_MSG_RESULT(decide whether to compile lua bindings... $use_lua)
+AM_CONDITIONAL(HAVE_LUA,test "x$use_lua" = "xyes")
+
#####################
## Check for programs
##
# Check for doxygen when in maintainer mode which is helpful to build doc & dist
AC_PATH_PROG(DOXYGEN,doxygen,`which doxygen`)
-AM_CONDITIONAL(HAVE_DOXYGEN,test x$DOXYGEN != x)
+AC_PATH_PROG(FIG2DEV,fig2dev,`which fig2dev`)
+AM_CONDITIONAL(HAVE_DOXYGEN,test x$DOXYGEN != x &&
+ test x$FIG2DEV != x)
# Can we rebuild the publication list from the bib file?
AC_CHECK_PROG(BIBTEX,bibtex,`which flexml`,NOTFOUND)
AC_CONFIG_FILES([
Makefile
include/Makefile
+ include/simgrid_config.h
src/Makefile
src/context_sysv_config.h
])
done
])
-# Testsuite
+# build tools && Testsuite
AC_CONFIG_FILES([
+ buildtools/Makefile
testsuite/Makefile
testsuite/run_tests
],[
Context backend: ${with_context}
Compile Java: ${use_java}
+ Compile Lua: ${use_lua}
Maintainer mode: ${USE_MAINTAINER_MODE}
Supernovae mode: ${supernovae}