Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
add gras prop tests to the make check
[simgrid.git] / configure.ac
index 25a5cba..fad588c 100644 (file)
@@ -9,7 +9,7 @@ dnl GNU LGPL (v2.1) licence.
 ##
 
 AC_PREREQ(2.59)
-AC_INIT([simgrid],[3.3-cvs],[simgrid-devel@lists.gforge.inria.fr])
+AC_INIT([simgrid],[3.3-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
@@ -31,6 +31,15 @@ dnl We do build a proper DLL when using win32
 AC_LIBTOOL_WIN32_DLL
 AC_PROG_LIBTOOL
 
+###############
+## SVN version check
+##
+if test -e .svn ; then
+  VERSION="$VERSION-r`svnversion`"
+  PACKAGE_VERSION="$PACKAGE_VERSION-r`svnversion`"
+  PACKAGE_STRING="PACKAGE_STRING r`svnversion`"  
+fi
+
 ###############
 ## System checks
 ##
@@ -99,6 +108,18 @@ AC_CHECK_HEADERS([pthread.h])
 AC_CHECK_LIB(pthread,pthread_create,pthread=yes, pthread=no)
 
 if test x$pthread = xyes ; then
+  AC_CHECK_LIB(pthread, sem_init, HAVE_SEM_INIT=yes, HAVE_SEM_INIT=no)
+  if test ${HAVE_SEM_INIT} = yes ; then
+     AC_MSG_CHECKING(if sem_init is compilable)
+     AC_TRY_COMPILE([#include <semaphore.h>],
+                   [sem_t s; sem_init(&s);], HAVE_SEM_INIT=yes, HAVE_SEM_INIT=no)
+     if test ${HAVE_SEM_INIT} = yes ; then
+        AC_DEFINE([HAVE_SEM_INIT],1,[Define if sem_init() is avaible or not (part of XPG6 standard only)])
+        AC_MSG_RESULT(yes)
+     else
+       AC_MSG_RESULT(no)
+     fi
+  fi
   AC_CHECK_LIB(pthread, sem_timedwait, HAVE_SEM_TIMEDWAIT=yes, HAVE_SEM_TIMEDWAIT=no)
   if test ${HAVE_SEM_TIMEDWAIT} = yes ; then
      AC_MSG_CHECKING(if sem_timedwait is compilable)
@@ -190,8 +211,7 @@ if test "x$with_context" = "xucontext" ; then
 fi
 
 if test "x$with_context" = "xpthread"; then
-  AC_CHECK_HEADERS([pthread.h])
-  if test x$pthread != xyes ; then
+  if test x$pthread != xyes ; then # reuse previous checks
     AC_MSG_ERROR([[Cannot find pthreads (try --with-context=ucontext if you haven't already tried).]])
   fi
   AC_DEFINE([CONTEXT_THREADS],1,[Define if xbt contexts are based on our threads implementation or not])
@@ -392,7 +412,6 @@ SG_CONFIGURE_PART(Check for Java bindings...)
 AC_ARG_ENABLE(java,
              AS_HELP_STRING([--disable-java], [To not compile the Java bindings even if the tools are found]),
              disable_java=$enableval,disable_java=yes)
-AC_MSG_CHECKING(whether to compile java bindings)
 if test "x$disable_java" != "xyes" ; then
    use_java="disabled by user"
 else
@@ -410,7 +429,7 @@ else
      use_java="no"
   fi
 fi
-AC_MSG_RESULT($use_java)
+AC_MSG_RESULT(decide whether to compile java bindings... $use_java)
 AM_CONDITIONAL(HAVE_JAVA,test "x$use_java" = "xyes")
 
 #####################
@@ -454,7 +473,7 @@ AC_SUBST(ac_configure_args)
 # Can we make status line about the compilation result?
 AC_CHECK_PROG(MD5SUM,md5sum,`which md5sum`)
 if test x$MD5SUM != xno ; then
-  build_version=`find -name '*.[ch]' |grep -v src/ucontext_stack.h | grep -v src/gras_config.h |\ 
+  build_version=`find -name '*.[ch]' |grep -v src/ucontext_stack.h | grep -v src/gras_config.h |\ 
                  xargs cat| $MD5SUM | sed 's/ .*$//'`
 else 
   build_version="no_md5sum_binary"
@@ -551,6 +570,7 @@ AC_CONFIG_FILES([
       examples/gras/spawn/Makefile
       examples/gras/synchro/Makefile
       examples/gras/timer/Makefile
+      examples/gras/properties/Makefile
       examples/gras/chrono/Makefile
       examples/gras/mutual_exclusion/simple_token/Makefile
       examples/gras/mmrpc/Makefile