Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
(kinda) working java wrappers by Malek and me
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Sun, 8 Jul 2007 20:51:53 +0000 (20:51 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Sun, 8 Jul 2007 20:51:53 +0000 (20:51 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@3684 48e7efb5-ca39-0410-a469-dd3cf9ba447f

33 files changed:
examples/Makefile.am
examples/Makefile.in
src/.cvsignore
src/Makefile.am
src/Makefile.in
src/java/jmsg.c [new file with mode: 0644]
src/java/jmsg.h [new file with mode: 0644]
src/java/jmsg_channel.c [new file with mode: 0644]
src/java/jmsg_channel.h [new file with mode: 0644]
src/java/jmsg_host.c [new file with mode: 0644]
src/java/jmsg_host.h [new file with mode: 0644]
src/java/jmsg_parallel_task.c [new file with mode: 0644]
src/java/jmsg_parallel_task.h [new file with mode: 0644]
src/java/jmsg_process.c [new file with mode: 0644]
src/java/jmsg_process.h [new file with mode: 0644]
src/java/jmsg_task.c [new file with mode: 0644]
src/java/jmsg_task.h [new file with mode: 0644]
src/java/jxbt_context.c [new file with mode: 0644]
src/java/jxbt_context.h [new file with mode: 0644]
src/java/jxbt_utilities.c [new file with mode: 0644]
src/java/jxbt_utilities.h [new file with mode: 0644]
src/java/simgrid/msg/ApplicationHandler.java [new file with mode: 0644]
src/java/simgrid/msg/Channel.java [new file with mode: 0644]
src/java/simgrid/msg/Host.java [new file with mode: 0644]
src/java/simgrid/msg/HostNotFoundException.java [new file with mode: 0644]
src/java/simgrid/msg/JniException.java [new file with mode: 0644]
src/java/simgrid/msg/Msg.java [new file with mode: 0644]
src/java/simgrid/msg/MsgException.java [new file with mode: 0644]
src/java/simgrid/msg/NativeException.java [new file with mode: 0644]
src/java/simgrid/msg/ParallelTask.java [new file with mode: 0644]
src/java/simgrid/msg/Process.java [new file with mode: 0644]
src/java/simgrid/msg/ProcessNotFoundException.java [new file with mode: 0644]
src/java/simgrid/msg/Task.java [new file with mode: 0644]

index 30707eb..77125cf 100644 (file)
@@ -1,3 +1,3 @@
-SUBDIRS= msg gras amok simdag
+SUBDIRS= msg gras amok simdag java
 
 include $(top_srcdir)/acmacro/dist-files.mk
index 852f36c..682c85b 100644 (file)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# Makefile.in generated by automake 1.10 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 # into the distribution.
 
 # It is intended to be included in all Makefile.am 
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = ..
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
 install_sh_SCRIPT = $(install_sh) -c
@@ -62,18 +58,19 @@ SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
        html-recursive info-recursive install-data-recursive \
-       install-exec-recursive install-info-recursive \
-       install-recursive installcheck-recursive installdirs-recursive \
-       pdf-recursive ps-recursive uninstall-info-recursive \
-       uninstall-recursive
+       install-dvi-recursive install-exec-recursive \
+       install-html-recursive install-info-recursive \
+       install-pdf-recursive install-ps-recursive install-recursive \
+       installcheck-recursive installdirs-recursive pdf-recursive \
+       ps-recursive uninstall-recursive
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
+  distclean-recursive maintainer-clean-recursive
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ADDR2LINE = @ADDR2LINE@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
 AMTAR = @AMTAR@
 AM_CFLAGS = @AM_CFLAGS@
 AR = @AR@
@@ -104,22 +101,21 @@ ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FLEXML = @FLEXML@
-GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@
-GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@
-GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@
-GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@
+GCJ = @GCJ@
+GCJDEPMODE = @GCJDEPMODE@
+GCJFLAGS = @GCJFLAGS@
 GRAS_DEP = @GRAS_DEP@
 GREP = @GREP@
 GTNETS_CFLAGS = @GTNETS_CFLAGS@
 GTNETS_LDFLAGS = @GTNETS_LDFLAGS@
-HAVE_FLEXML_FALSE = @HAVE_FLEXML_FALSE@
-HAVE_FLEXML_TRUE = @HAVE_FLEXML_TRUE@
-HAVE_SDP_FALSE = @HAVE_SDP_FALSE@
-HAVE_SDP_TRUE = @HAVE_SDP_TRUE@
+INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+JAR = @JAR@
+JAVA = @JAVA@
+JAVAC = @JAVAC@
 LDFLAGS = @LDFLAGS@
 LD_DYNAMIC_FLAGS = @LD_DYNAMIC_FLAGS@
 LEX = @LEX@
@@ -131,10 +127,9 @@ LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
-MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
-MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
 MAKEINFO = @MAKEINFO@
 MD5SUM = @MD5SUM@
+MKDIR_P = @MKDIR_P@
 OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
@@ -150,8 +145,6 @@ SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIMGRID_DEP = @SIMGRID_DEP@
 STRIP = @STRIP@
-USE_GTNETS_FALSE = @USE_GTNETS_FALSE@
-USE_GTNETS_TRUE = @USE_GTNETS_TRUE@
 VERSION = @VERSION@
 WARNING = @WARNING@
 abs_builddir = @abs_builddir@
@@ -161,10 +154,6 @@ abs_top_srcdir = @abs_top_srcdir@
 ac_configure_args = @ac_configure_args@
 ac_ct_CC = @ac_ct_CC@
 ac_ct_CXX = @ac_ct_CXX@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
@@ -177,6 +166,7 @@ build_cpu = @build_cpu@
 build_id = @build_id@
 build_os = @build_os@
 build_vendor = @build_vendor@
+builddir = @builddir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -206,13 +196,16 @@ pth_skaddr_makecontext = @pth_skaddr_makecontext@
 pth_sksize_makecontext = @pth_sksize_makecontext@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target = @target@
 target_alias = @target_alias@
 target_cpu = @target_cpu@
 target_os = @target_os@
 target_vendor = @target_vendor@
-SUBDIRS = msg gras amok simdag
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+SUBDIRS = msg gras amok simdag java
 all: all-recursive
 
 .SUFFIXES:
@@ -252,10 +245,6 @@ mostlyclean-libtool:
 clean-libtool:
        -rm -rf .libs _libs
 
-distclean-libtool:
-       -rm -f libtool
-uninstall-info-am:
-
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
 # To change the values of `make' variables: instead of editing Makefiles,
@@ -287,8 +276,7 @@ $(RECURSIVE_TARGETS):
          $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
        fi; test -z "$$fail"
 
-mostlyclean-recursive clean-recursive distclean-recursive \
-maintainer-clean-recursive:
+$(RECURSIVE_CLEAN_TARGETS):
        @failcom='exit 1'; \
        for f in x $$MAKEFLAGS; do \
          case $$f in \
@@ -389,23 +377,21 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       $(mkdir_p) $(distdir)/../acmacro
-       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
-       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
-       list='$(DISTFILES)'; for file in $$list; do \
-         case $$file in \
-           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
-           $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
-         esac; \
+       @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       list='$(DISTFILES)'; \
+         dist_files=`for file in $$list; do echo $$file; done | \
+         sed -e "s|^$$srcdirstrip/||;t" \
+             -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+       case $$dist_files in \
+         */*) $(MKDIR_P) `echo "$$dist_files" | \
+                          sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+                          sort -u` ;; \
+       esac; \
+       for file in $$dist_files; do \
          if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
-         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
-           dir="/$$dir"; \
-           $(mkdir_p) "$(distdir)$$dir"; \
-         else \
-           dir=''; \
-         fi; \
          if test -d $$d/$$file; then \
+           dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
            if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
              cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
            fi; \
@@ -419,7 +405,7 @@ distdir: $(DISTFILES)
        list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
          if test "$$subdir" = .; then :; else \
            test -d "$(distdir)/$$subdir" \
-           || $(mkdir_p) "$(distdir)/$$subdir" \
+           || $(MKDIR_P) "$(distdir)/$$subdir" \
            || exit 1; \
            distdir=`$(am__cd) $(distdir) && pwd`; \
            top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
@@ -427,6 +413,8 @@ distdir: $(DISTFILES)
              $(MAKE) $(AM_MAKEFLAGS) \
                top_distdir="$$top_distdir" \
                distdir="$$distdir/$$subdir" \
+               am__remove_distdir=: \
+               am__skip_length_check=: \
                distdir) \
              || exit 1; \
          fi; \
@@ -466,8 +454,7 @@ clean-am: clean-generic clean-libtool mostlyclean-am
 
 distclean: distclean-recursive
        -rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-libtool \
-       distclean-tags
+distclean-am: clean-am distclean-generic distclean-tags
 
 dvi: dvi-recursive
 
@@ -481,12 +468,20 @@ info-am:
 
 install-data-am:
 
+install-dvi: install-dvi-recursive
+
 install-exec-am:
 
+install-html: install-html-recursive
+
 install-info: install-info-recursive
 
 install-man:
 
+install-pdf: install-pdf-recursive
+
+install-ps: install-ps-recursive
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -505,22 +500,24 @@ ps: ps-recursive
 
 ps-am:
 
-uninstall-am: uninstall-info-am
+uninstall-am:
 
-uninstall-info: uninstall-info-recursive
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
+       install-strip
 
-.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
-       clean clean-generic clean-libtool clean-recursive ctags \
-       ctags-recursive distclean distclean-generic distclean-libtool \
-       distclean-recursive distclean-tags distdir dvi dvi-am html \
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+       all all-am check check-am clean clean-generic clean-libtool \
+       ctags ctags-recursive distclean distclean-generic \
+       distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-data \
-       install-data-am install-exec install-exec-am install-info \
-       install-info-am install-man install-strip installcheck \
+       install-data-am install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am install-info \
+       install-info-am install-man install-pdf install-pdf-am \
+       install-ps install-ps-am install-strip installcheck \
        installcheck-am installdirs installdirs-am maintainer-clean \
-       maintainer-clean-generic maintainer-clean-recursive \
-       mostlyclean mostlyclean-generic mostlyclean-libtool \
-       mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
-       uninstall uninstall-am uninstall-info-am
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+       uninstall uninstall-am
 
 
 dist-files:
index c40c6f0..a100df8 100644 (file)
@@ -5,3 +5,4 @@ gras_config.h ucontext_stack.h
 stamp-h.in stamp-h stamp-h1
 *.loT
 testall*
+.classes simgrid.jar
index ce18443..a13bee8 100644 (file)
@@ -11,7 +11,7 @@ AM_CFLAGS+= -g @GTNETS_CFLAGS@
 
 
 MAINTAINERCLEANFILES=Makefile.in
-INCLUDES= -I$(top_srcdir)/include -I$(top_srcdir)/src/include 
+INCLUDES= -I$(top_srcdir)/include -I$(top_srcdir)/src/include
 EXTRA_DIST= \
         \
        portable.h \
@@ -100,7 +100,6 @@ VERSION_INFO= -version-info 2:0:0
 #  It modifies the library name, and you thus cannot say that a library
 #   using this trick is ready for a "stable" release (say, in Debian).
 
-lib_LTLIBRARIES= libsimgrid.la  libgras.la
 
 ################################################
 # Declaration of the different modules content #
@@ -153,6 +152,7 @@ GTNETS_SRC= \
 
 # Separated because we don't want it in libsimgrid4java
 CTX_SRC= xbt/context.c
+JCTX_SRC= java/jxbt_context.c java/jxbt_context.h xbt/xbt_thread.c
 
 SIMIX_SRC= \
   simix/smx_global.c \
@@ -168,6 +168,30 @@ MSG_SRC=  msg/msg_config.c \
   msg/task.c msg/host.c msg/m_process.c msg/gos.c \
   msg/global.c msg/environment.c msg/deployment.c 
 
+JMSG_C_SRC = \
+  java/jxbt_utilities.c     java/jxbt_utilities.h      \
+  java/jmsg.c               java/jmsg.h                \
+  java/jmsg_channel.c       java/jmsg_channel.h        \
+  java/jmsg_host.c          java/jmsg_host.h           \
+  java/jmsg_parallel_task.c java/jmsg_parallel_task.h  \
+  java/jmsg_process.c       java/jmsg_process.h        \
+  java/jmsg_task.c          java/jmsg_task.h
+
+JMSG_JAVA_SRC = \
+  java/simgrid/msg/MsgException.java                 \
+  java/simgrid/msg/JniException.java                 \
+  java/simgrid/msg/NativeException.java              \
+  java/simgrid/msg/HostNotFoundException.java        \
+  java/simgrid/msg/ProcessNotFoundException.java     \
+  \
+  java/simgrid/msg/Process.java                      \
+  java/simgrid/msg/ApplicationHandler.java           \
+  java/simgrid/msg/Channel.java                      \
+  java/simgrid/msg/Host.java                         \
+  java/simgrid/msg/Msg.java                          \
+  java/simgrid/msg/Task.java                         \
+  java/simgrid/msg/ParallelTask.java                 
+
 SIMDAG_SRC= simdag/sd_global.c simdag/sd_link.c simdag/sd_task.c simdag/sd_workstation.c
 
 GRAS_COMMON_SRC= \
@@ -232,6 +256,8 @@ endif
 ### Declare the library content
 ###
 
+lib_LTLIBRARIES= libsimgrid.la libsimgrid4java.la libgras.la
+
 libgras_la_SOURCES=  $(XBT_SRC) $(GRAS_COMMON_SRC) $(GRAS_RL_SRC) $(AMOK_SRC)
 libgras_la_LDFLAGS = -no-undefined $(VERSION_INFO)                     @GRAS_DEP@ @LD_DYNAMIC_FLAGS@ -lm 
 
@@ -241,6 +267,24 @@ libsimgrid_la_SOURCES = $(XBT_SRC) $(SURF_SRC) $(GTNETS_USED) $(SDP_SRC) \
                        $(GRAS_COMMON_SRC) $(GRAS_SG_SRC) $(AMOK_SRC)
 libsimgrid_la_LDFLAGS = -no-undefined $(VERSION_INFO) @GTNETS_LDFLAGS@ @SIMGRID_DEP@ @LD_DYNAMIC_FLAGS@ -lm
 
+libsimgrid4java_la_SOURCES = $(XBT_SRC) $(SURF_SRC) $(GTNETS_USED) $(SDP_SRC) \
+                             $(SIMIX_SRC) $(JCTX_SRC) \
+                             $(JMSG_C_SRC) $(MSG_SRC) \
+                            $(GRAS_COMMON_SRC) $(GRAS_SG_SRC) $(AMOK_SRC)
+libsimgrid4java_la_LDFLAGS = -no-undefined $(VERSION_INFO) @GTNETS_LDFLAGS@ @SIMGRID_DEP@ @LD_DYNAMIC_FLAGS@ -lm
+libsimgrid4java_la_GCJFLAGS = -fjni
+
+clean-local:
+       -rm -rf .classes
+
+jardir = $(prefix)/jar 
+jar_DATA =  simgrid.jar
+
+simgrid.jar: $(JMSG_JAVA_SRC)
+       [ -e .classes ] || mkdir .classes
+       $(JAVAC) -sourcepath java -d .classes $(JMSG_JAVA_SRC)
+       $(JAR) cvf simgrid.jar -C .classes .;
+
 if GRAMINE_MODE
 else 
 ###
index 62f30e4..17ca387 100644 (file)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# Makefile.in generated by automake 1.10 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 # It is intended to be included in all Makefile.am 
 
 
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
+
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = ..
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
 install_sh_SCRIPT = $(install_sh) -c
@@ -46,6 +43,7 @@ target_triplet = @target@
 @USE_GTNETS_FALSE@am__append_1 = $(GTNETS_SRC)
 @HAVE_SDP_FALSE@am__append_2 = surf/sdp.c
 @GRAMINE_MODE_FALSE@noinst_PROGRAMS = testall$(EXEEXT)
+@GRAMINE_MODE_FALSE@TESTS = testall$(EXEEXT)
 @GRAMINE_MODE_FALSE@am__append_3 = $(testall_SOURCES)
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
        $(srcdir)/gras_config.h.in $(srcdir)/ucontext_stack.h.in \
@@ -71,7 +69,7 @@ am__vpath_adj = case $$p in \
     *) f=$$p;; \
   esac;
 am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
-am__installdirs = "$(DESTDIR)$(libdir)"
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(jardir)"
 libLTLIBRARIES_INSTALL = $(INSTALL)
 LTLIBRARIES = $(lib_LTLIBRARIES)
 libgras_la_LIBADD =
@@ -93,6 +91,9 @@ am__objects_4 = amok_base.lo bandwidth.lo saturate.lo \
 am_libgras_la_OBJECTS = $(am__objects_1) $(am__objects_2) \
        $(am__objects_3) $(am__objects_4)
 libgras_la_OBJECTS = $(am_libgras_la_OBJECTS)
+libgras_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+       $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+       $(libgras_la_LDFLAGS) $(LDFLAGS) -o $@
 libsimgrid_la_LIBADD =
 am__libsimgrid_la_SOURCES_DIST = xbt/snprintf.c xbt/xbt_str.c xbt/ex.c \
        xbt_modinter.h gras_modinter.h xbt/xbt_virtu.c xbt/sysdep.c \
@@ -151,49 +152,109 @@ am_libsimgrid_la_OBJECTS = $(am__objects_1) $(am__objects_5) \
        $(am__objects_10) $(am__objects_11) $(am__objects_12) \
        $(am__objects_2) $(am__objects_13) $(am__objects_4)
 libsimgrid_la_OBJECTS = $(am_libsimgrid_la_OBJECTS)
+libsimgrid_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
+       $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+       $(CXXFLAGS) $(libsimgrid_la_LDFLAGS) $(LDFLAGS) -o $@
+libsimgrid4java_la_LIBADD =
+am__libsimgrid4java_la_SOURCES_DIST = xbt/snprintf.c xbt/xbt_str.c \
+       xbt/ex.c xbt_modinter.h gras_modinter.h xbt/xbt_virtu.c \
+       xbt/sysdep.c xbt/asserts.c xbt/log.c \
+       xbt/xbt_log_appender_file.c xbt/xbt_log_layout_simple.c \
+       xbt/xbt_log_layout_format.c xbt/mallocator.c xbt/dynar.c \
+       xbt/dict.c xbt/dict_elm.c xbt/dict_cursor.c xbt/dict_multi.c \
+       xbt/heap.c xbt/fifo.c xbt/swag.c xbt/graph.c xbt/set.c \
+       xbt/xbt_matrix.c xbt/xbt_peer.c xbt/xbt_main.c xbt/config.c \
+       xbt/cunit.c xbt/graphxml_parse.c surf/maxmin.c surf/lagrange.c \
+       surf/trace_mgr.c surf/surf.c surf/surfxml_parse.c surf/cpu.c \
+       surf/network.c surf/workstation.c surf/surf_timer.c \
+       surf/network_dassf.c surf/workstation_KCCFLN05.c \
+       surf/gtnets/gtnets_simulator.cc surf/gtnets/gtnets_topology.cc \
+       surf/gtnets/gtnets_interface.cc surf/network_gtnets.c \
+       surf/sdp.c simix/smx_global.c simix/smx_deployment.c \
+       simix/smx_config.c simix/smx_environment.c simix/smx_host.c \
+       simix/smx_process.c simix/smx_action.c simix/smx_synchro.c \
+       java/jxbt_context.c java/jxbt_context.h xbt/xbt_thread.c \
+       java/jxbt_utilities.c java/jxbt_utilities.h java/jmsg.c \
+       java/jmsg.h java/jmsg_channel.c java/jmsg_channel.h \
+       java/jmsg_host.c java/jmsg_host.h java/jmsg_parallel_task.c \
+       java/jmsg_parallel_task.h java/jmsg_process.c \
+       java/jmsg_process.h java/jmsg_task.c java/jmsg_task.h \
+       msg/msg_config.c msg/task.c msg/host.c msg/m_process.c \
+       msg/gos.c msg/global.c msg/environment.c msg/deployment.c \
+       gras/gras.c gras/Transport/transport.c \
+       gras/Transport/transport_private.h gras/Msg/msg.c \
+       gras/Msg/rpc.c gras/Msg/timer.c gras/Msg/msg_interface.h \
+       gras/Msg/msg_private.h gras/Virtu/process.c \
+       gras/Virtu/gras_module.c gras/DataDesc/ddt_create.c \
+       gras/DataDesc/ddt_convert.c gras/DataDesc/ddt_exchange.c \
+       gras/DataDesc/cbps.c gras/DataDesc/datadesc.c \
+       gras/DataDesc/datadesc_interface.h \
+       gras/DataDesc/datadesc_private.h gras/DataDesc/ddt_parse.c \
+       gras/DataDesc/ddt_parse.yy.c gras/DataDesc/ddt_parse.yy.h \
+       gras/Transport/sg_transport.c \
+       gras/Transport/transport_plugin_sg.c gras/Virtu/sg_emul.c \
+       gras/Virtu/sg_process.c gras/Virtu/sg_time.c \
+       gras/Virtu/sg_dns.c gras/sg_stubs.c gras/Msg/sg_msg.c \
+       amok/amok_base.c amok/Bandwidth/bandwidth.c \
+       amok/Bandwidth/saturate.c amok/PeerManagement/peermanagement.c
+am__objects_14 = jxbt_context.lo xbt_thread.lo
+am__objects_15 = jxbt_utilities.lo jmsg.lo jmsg_channel.lo \
+       jmsg_host.lo jmsg_parallel_task.lo jmsg_process.lo \
+       jmsg_task.lo
+am_libsimgrid4java_la_OBJECTS = $(am__objects_1) $(am__objects_5) \
+       $(am__objects_7) $(am__objects_8) $(am__objects_9) \
+       $(am__objects_14) $(am__objects_15) $(am__objects_11) \
+       $(am__objects_2) $(am__objects_13) $(am__objects_4)
+libsimgrid4java_la_OBJECTS = $(am_libsimgrid4java_la_OBJECTS)
+libsimgrid4java_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
+       $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+       $(CXXFLAGS) $(libsimgrid4java_la_LDFLAGS) $(LDFLAGS) -o $@
 PROGRAMS = $(noinst_PROGRAMS)
 am__testall_SOURCES_DIST = ./cunit_unit.c ./ex_unit.c ./dynar_unit.c \
        ./dict_unit.c ./set_unit.c ./swag_unit.c ./xbt_str_unit.c \
        ./config_unit.c simgrid_units_main.c
-@GRAMINE_MODE_FALSE@am__objects_14 = cunit_unit.$(OBJEXT) \
+@GRAMINE_MODE_FALSE@am__objects_16 = cunit_unit.$(OBJEXT) \
 @GRAMINE_MODE_FALSE@   ex_unit.$(OBJEXT) dynar_unit.$(OBJEXT) \
 @GRAMINE_MODE_FALSE@   dict_unit.$(OBJEXT) set_unit.$(OBJEXT) \
 @GRAMINE_MODE_FALSE@   swag_unit.$(OBJEXT) xbt_str_unit.$(OBJEXT) \
 @GRAMINE_MODE_FALSE@   config_unit.$(OBJEXT)
-@GRAMINE_MODE_FALSE@am_testall_OBJECTS = $(am__objects_14) \
+@GRAMINE_MODE_FALSE@am_testall_OBJECTS = $(am__objects_16) \
 @GRAMINE_MODE_FALSE@   simgrid_units_main.$(OBJEXT)
 testall_OBJECTS = $(am_testall_OBJECTS)
 @GRAMINE_MODE_FALSE@testall_DEPENDENCIES = libgras.la
-DEFAULT_INCLUDES = -I. -I$(srcdir) -I.
+DEFAULT_INCLUDES = -I.@am__isrc@
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
        $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
-       $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
-       $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+       --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+       $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-       $(AM_LDFLAGS) $(LDFLAGS) -o $@
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+       --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+       $(LDFLAGS) -o $@
 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
        $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \
-       $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
-       $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+       --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+       $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
 CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \
-       $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+       --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+       $(LDFLAGS) -o $@
 SOURCES = $(libgras_la_SOURCES) $(libsimgrid_la_SOURCES) \
-       $(testall_SOURCES)
+       $(libsimgrid4java_la_SOURCES) $(testall_SOURCES)
 DIST_SOURCES = $(libgras_la_SOURCES) $(am__libsimgrid_la_SOURCES_DIST) \
+       $(am__libsimgrid4java_la_SOURCES_DIST) \
        $(am__testall_SOURCES_DIST)
+jarDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(jar_DATA)
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ADDR2LINE = @ADDR2LINE@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
 AMTAR = @AMTAR@
 AM_CFLAGS = @AM_CFLAGS@ -g @GTNETS_CFLAGS@
 AR = @AR@
@@ -224,22 +285,21 @@ ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FLEXML = @FLEXML@
-GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@
-GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@
-GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@
-GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@
+GCJ = @GCJ@
+GCJDEPMODE = @GCJDEPMODE@
+GCJFLAGS = @GCJFLAGS@
 GRAS_DEP = @GRAS_DEP@
 GREP = @GREP@
 GTNETS_CFLAGS = @GTNETS_CFLAGS@
 GTNETS_LDFLAGS = @GTNETS_LDFLAGS@
-HAVE_FLEXML_FALSE = @HAVE_FLEXML_FALSE@
-HAVE_FLEXML_TRUE = @HAVE_FLEXML_TRUE@
-HAVE_SDP_FALSE = @HAVE_SDP_FALSE@
-HAVE_SDP_TRUE = @HAVE_SDP_TRUE@
+INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+JAR = @JAR@
+JAVA = @JAVA@
+JAVAC = @JAVAC@
 LDFLAGS = @LDFLAGS@
 LD_DYNAMIC_FLAGS = @LD_DYNAMIC_FLAGS@
 LEX = @LEX@
@@ -251,10 +311,9 @@ LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
-MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
-MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
 MAKEINFO = @MAKEINFO@
 MD5SUM = @MD5SUM@
+MKDIR_P = @MKDIR_P@
 OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
@@ -270,8 +329,6 @@ SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIMGRID_DEP = @SIMGRID_DEP@
 STRIP = @STRIP@
-USE_GTNETS_FALSE = @USE_GTNETS_FALSE@
-USE_GTNETS_TRUE = @USE_GTNETS_TRUE@
 VERSION = @VERSION@
 WARNING = @WARNING@
 abs_builddir = @abs_builddir@
@@ -281,10 +338,6 @@ abs_top_srcdir = @abs_top_srcdir@
 ac_configure_args = @ac_configure_args@
 ac_ct_CC = @ac_ct_CC@
 ac_ct_CXX = @ac_ct_CXX@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
@@ -297,6 +350,7 @@ build_cpu = @build_cpu@
 build_id = @build_id@
 build_os = @build_os@
 build_vendor = @build_vendor@
+builddir = @builddir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -326,12 +380,15 @@ pth_skaddr_makecontext = @pth_skaddr_makecontext@
 pth_sksize_makecontext = @pth_sksize_makecontext@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target = @target@
 target_alias = @target_alias@
 target_cpu = @target_cpu@
 target_os = @target_os@
 target_vendor = @target_vendor@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
 #AM_CFLAGS= -DNDEBUG 
 
 # -DNLOG   cuts absolutely all logs at compilation time.
@@ -342,7 +399,7 @@ target_vendor = @target_vendor@
 # fast-math is nasty when using IEEE floating point semantic
 # strict-aliasing breaks my type-punning bad habit.
 MAINTAINERCLEANFILES = Makefile.in
-INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src/include 
+INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src/include
 EXTRA_DIST = portable.h xbt/mallocator_private.h xbt/dynar_private.h \
        xbt/dict_private.h xbt/heap_private.h xbt/fifo_private.h \
        xbt/graph_private.h xbt/graphxml_parse.c xbt/graphxml.l \
@@ -397,7 +454,6 @@ VERSION_INFO = -version-info 2:0:0
 #
 #  It modifies the library name, and you thus cannot say that a library
 #   using this trick is ready for a "stable" release (say, in Debian).
-lib_LTLIBRARIES = libsimgrid.la  libgras.la
 
 ################################################
 # Declaration of the different modules content #
@@ -450,6 +506,7 @@ GTNETS_SRC = \
 
 # Separated because we don't want it in libsimgrid4java
 CTX_SRC = xbt/context.c
+JCTX_SRC = java/jxbt_context.c java/jxbt_context.h xbt/xbt_thread.c
 SIMIX_SRC = \
   simix/smx_global.c \
   simix/smx_deployment.c \
@@ -464,6 +521,30 @@ MSG_SRC = msg/msg_config.c \
   msg/task.c msg/host.c msg/m_process.c msg/gos.c \
   msg/global.c msg/environment.c msg/deployment.c 
 
+JMSG_C_SRC = \
+  java/jxbt_utilities.c     java/jxbt_utilities.h      \
+  java/jmsg.c               java/jmsg.h                \
+  java/jmsg_channel.c       java/jmsg_channel.h        \
+  java/jmsg_host.c          java/jmsg_host.h           \
+  java/jmsg_parallel_task.c java/jmsg_parallel_task.h  \
+  java/jmsg_process.c       java/jmsg_process.h        \
+  java/jmsg_task.c          java/jmsg_task.h
+
+JMSG_JAVA_SRC = \
+  java/simgrid/msg/MsgException.java                 \
+  java/simgrid/msg/JniException.java                 \
+  java/simgrid/msg/NativeException.java              \
+  java/simgrid/msg/HostNotFoundException.java        \
+  java/simgrid/msg/ProcessNotFoundException.java     \
+  \
+  java/simgrid/msg/Process.java                      \
+  java/simgrid/msg/ApplicationHandler.java           \
+  java/simgrid/msg/Channel.java                      \
+  java/simgrid/msg/Host.java                         \
+  java/simgrid/msg/Msg.java                          \
+  java/simgrid/msg/Task.java                         \
+  java/simgrid/msg/ParallelTask.java                 
+
 SIMDAG_SRC = simdag/sd_global.c simdag/sd_link.c simdag/sd_task.c simdag/sd_workstation.c
 GRAS_COMMON_SRC = \
   gras/gras.c  \
@@ -517,6 +598,7 @@ AMOK_SRC = \
 ###
 ### Declare the library content
 ###
+lib_LTLIBRARIES = libsimgrid.la libsimgrid4java.la libgras.la
 libgras_la_SOURCES = $(XBT_SRC) $(GRAS_COMMON_SRC) $(GRAS_RL_SRC) $(AMOK_SRC)
 libgras_la_LDFLAGS = -no-undefined $(VERSION_INFO)                     @GRAS_DEP@ @LD_DYNAMIC_FLAGS@ -lm 
 libsimgrid_la_SOURCES = $(XBT_SRC) $(SURF_SRC) $(GTNETS_USED) $(SDP_SRC) \
@@ -525,6 +607,15 @@ libsimgrid_la_SOURCES = $(XBT_SRC) $(SURF_SRC) $(GTNETS_USED) $(SDP_SRC) \
                        $(GRAS_COMMON_SRC) $(GRAS_SG_SRC) $(AMOK_SRC)
 
 libsimgrid_la_LDFLAGS = -no-undefined $(VERSION_INFO) @GTNETS_LDFLAGS@ @SIMGRID_DEP@ @LD_DYNAMIC_FLAGS@ -lm
+libsimgrid4java_la_SOURCES = $(XBT_SRC) $(SURF_SRC) $(GTNETS_USED) $(SDP_SRC) \
+                             $(SIMIX_SRC) $(JCTX_SRC) \
+                             $(JMSG_C_SRC) $(MSG_SRC) \
+                            $(GRAS_COMMON_SRC) $(GRAS_SG_SRC) $(AMOK_SRC)
+
+libsimgrid4java_la_LDFLAGS = -no-undefined $(VERSION_INFO) @GTNETS_LDFLAGS@ @SIMGRID_DEP@ @LD_DYNAMIC_FLAGS@ -lm
+libsimgrid4java_la_GCJFLAGS = -fjni
+jardir = $(prefix)/jar 
+jar_DATA = simgrid.jar
 @GRAMINE_MODE_FALSE@TEST_CFILES = xbt/cunit.c  xbt/ex.c          \
 @GRAMINE_MODE_FALSE@            xbt/dynar.c xbt/dict.c xbt/set.c xbt/swag.c \
 @GRAMINE_MODE_FALSE@       xbt/xbt_str.c                      \
@@ -542,7 +633,6 @@ libsimgrid_la_LDFLAGS = -no-undefined $(VERSION_INFO) @GTNETS_LDFLAGS@ @SIMGRID_
 
 @GRAMINE_MODE_FALSE@testall_SOURCES = $(TEST_UNITS) simgrid_units_main.c
 @GRAMINE_MODE_FALSE@testall_LDADD = libgras.la
-@GRAMINE_MODE_FALSE@TESTS = testall
 @GRAMINE_MODE_FALSE@TESTS_ENVIRONMENT = $(SG_TEST_EXENV)
 all: $(BUILT_SOURCES) gras_config.h
        $(MAKE) $(AM_MAKEFLAGS) all-am
@@ -582,7 +672,7 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 gras_config.h: stamp-h1
        @if test ! -f $@; then \
          rm -f stamp-h1; \
-         $(MAKE) stamp-h1; \
+         $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
        else :; fi
 
 stamp-h1: $(srcdir)/gras_config.h.in $(top_builddir)/config.status
@@ -599,7 +689,7 @@ ucontext_stack.h: $(top_builddir)/config.status $(srcdir)/ucontext_stack.h.in
        cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
        @$(NORMAL_INSTALL)
-       test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+       test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
        @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
          if test -f $$p; then \
            f=$(am__strip_dir) \
@@ -610,7 +700,7 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
 
 uninstall-libLTLIBRARIES:
        @$(NORMAL_UNINSTALL)
-       @set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+       @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
          p=$(am__strip_dir) \
          echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
          $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
@@ -625,9 +715,11 @@ clean-libLTLIBRARIES:
          rm -f "$${dir}/so_locations"; \
        done
 libgras.la: $(libgras_la_OBJECTS) $(libgras_la_DEPENDENCIES) 
-       $(LINK) -rpath $(libdir) $(libgras_la_LDFLAGS) $(libgras_la_OBJECTS) $(libgras_la_LIBADD) $(LIBS)
+       $(libgras_la_LINK) -rpath $(libdir) $(libgras_la_OBJECTS) $(libgras_la_LIBADD) $(LIBS)
 libsimgrid.la: $(libsimgrid_la_OBJECTS) $(libsimgrid_la_DEPENDENCIES) 
-       $(CXXLINK) -rpath $(libdir) $(libsimgrid_la_LDFLAGS) $(libsimgrid_la_OBJECTS) $(libsimgrid_la_LIBADD) $(LIBS)
+       $(libsimgrid_la_LINK) -rpath $(libdir) $(libsimgrid_la_OBJECTS) $(libsimgrid_la_LIBADD) $(LIBS)
+libsimgrid4java.la: $(libsimgrid4java_la_OBJECTS) $(libsimgrid4java_la_DEPENDENCIES) 
+       $(libsimgrid4java_la_LINK) -rpath $(libdir) $(libsimgrid4java_la_OBJECTS) $(libsimgrid4java_la_LIBADD) $(LIBS)
 
 clean-noinstPROGRAMS:
        @list='$(noinst_PROGRAMS)'; for p in $$list; do \
@@ -637,7 +729,7 @@ clean-noinstPROGRAMS:
        done
 testall$(EXEEXT): $(testall_OBJECTS) $(testall_DEPENDENCIES) 
        @rm -f testall$(EXEEXT)
-       $(LINK) $(testall_LDFLAGS) $(testall_OBJECTS) $(testall_LDADD) $(LIBS)
+       $(LINK) $(testall_OBJECTS) $(testall_LDADD) $(LIBS)
 
 mostlyclean-compile:
        -rm -f *.$(OBJEXT)
@@ -684,6 +776,14 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtnets_topology.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/heap.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/host.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmsg.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmsg_channel.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmsg_host.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmsg_parallel_task.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmsg_process.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmsg_task.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jxbt_context.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jxbt_utilities.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lagrange.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/log.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/m_process.Plo@am__quote@
@@ -756,868 +856,937 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xbt_virtu.Plo@am__quote@
 
 .c.o:
-@am__fastdepCC_TRUE@   if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(COMPILE) -c $<
 
 .c.obj:
-@am__fastdepCC_TRUE@   if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
-@am__fastdepCC_TRUE@   if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(LTCOMPILE) -c -o $@ $<
 
 snprintf.lo: xbt/snprintf.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT snprintf.lo -MD -MP -MF "$(DEPDIR)/snprintf.Tpo" -c -o snprintf.lo `test -f 'xbt/snprintf.c' || echo '$(srcdir)/'`xbt/snprintf.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/snprintf.Tpo" "$(DEPDIR)/snprintf.Plo"; else rm -f "$(DEPDIR)/snprintf.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT snprintf.lo -MD -MP -MF $(DEPDIR)/snprintf.Tpo -c -o snprintf.lo `test -f 'xbt/snprintf.c' || echo '$(srcdir)/'`xbt/snprintf.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/snprintf.Tpo $(DEPDIR)/snprintf.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/snprintf.c' object='snprintf.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o snprintf.lo `test -f 'xbt/snprintf.c' || echo '$(srcdir)/'`xbt/snprintf.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o snprintf.lo `test -f 'xbt/snprintf.c' || echo '$(srcdir)/'`xbt/snprintf.c
 
 xbt_str.lo: xbt/xbt_str.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_str.lo -MD -MP -MF "$(DEPDIR)/xbt_str.Tpo" -c -o xbt_str.lo `test -f 'xbt/xbt_str.c' || echo '$(srcdir)/'`xbt/xbt_str.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_str.Tpo" "$(DEPDIR)/xbt_str.Plo"; else rm -f "$(DEPDIR)/xbt_str.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_str.lo -MD -MP -MF $(DEPDIR)/xbt_str.Tpo -c -o xbt_str.lo `test -f 'xbt/xbt_str.c' || echo '$(srcdir)/'`xbt/xbt_str.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_str.Tpo $(DEPDIR)/xbt_str.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_str.c' object='xbt_str.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_str.lo `test -f 'xbt/xbt_str.c' || echo '$(srcdir)/'`xbt/xbt_str.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_str.lo `test -f 'xbt/xbt_str.c' || echo '$(srcdir)/'`xbt/xbt_str.c
 
 ex.lo: xbt/ex.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ex.lo -MD -MP -MF "$(DEPDIR)/ex.Tpo" -c -o ex.lo `test -f 'xbt/ex.c' || echo '$(srcdir)/'`xbt/ex.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ex.Tpo" "$(DEPDIR)/ex.Plo"; else rm -f "$(DEPDIR)/ex.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ex.lo -MD -MP -MF $(DEPDIR)/ex.Tpo -c -o ex.lo `test -f 'xbt/ex.c' || echo '$(srcdir)/'`xbt/ex.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ex.Tpo $(DEPDIR)/ex.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/ex.c' object='ex.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ex.lo `test -f 'xbt/ex.c' || echo '$(srcdir)/'`xbt/ex.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ex.lo `test -f 'xbt/ex.c' || echo '$(srcdir)/'`xbt/ex.c
 
 xbt_virtu.lo: xbt/xbt_virtu.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_virtu.lo -MD -MP -MF "$(DEPDIR)/xbt_virtu.Tpo" -c -o xbt_virtu.lo `test -f 'xbt/xbt_virtu.c' || echo '$(srcdir)/'`xbt/xbt_virtu.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_virtu.Tpo" "$(DEPDIR)/xbt_virtu.Plo"; else rm -f "$(DEPDIR)/xbt_virtu.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_virtu.lo -MD -MP -MF $(DEPDIR)/xbt_virtu.Tpo -c -o xbt_virtu.lo `test -f 'xbt/xbt_virtu.c' || echo '$(srcdir)/'`xbt/xbt_virtu.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_virtu.Tpo $(DEPDIR)/xbt_virtu.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_virtu.c' object='xbt_virtu.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_virtu.lo `test -f 'xbt/xbt_virtu.c' || echo '$(srcdir)/'`xbt/xbt_virtu.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_virtu.lo `test -f 'xbt/xbt_virtu.c' || echo '$(srcdir)/'`xbt/xbt_virtu.c
 
 sysdep.lo: xbt/sysdep.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sysdep.lo -MD -MP -MF "$(DEPDIR)/sysdep.Tpo" -c -o sysdep.lo `test -f 'xbt/sysdep.c' || echo '$(srcdir)/'`xbt/sysdep.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sysdep.Tpo" "$(DEPDIR)/sysdep.Plo"; else rm -f "$(DEPDIR)/sysdep.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sysdep.lo -MD -MP -MF $(DEPDIR)/sysdep.Tpo -c -o sysdep.lo `test -f 'xbt/sysdep.c' || echo '$(srcdir)/'`xbt/sysdep.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sysdep.Tpo $(DEPDIR)/sysdep.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/sysdep.c' object='sysdep.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sysdep.lo `test -f 'xbt/sysdep.c' || echo '$(srcdir)/'`xbt/sysdep.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sysdep.lo `test -f 'xbt/sysdep.c' || echo '$(srcdir)/'`xbt/sysdep.c
 
 asserts.lo: xbt/asserts.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT asserts.lo -MD -MP -MF "$(DEPDIR)/asserts.Tpo" -c -o asserts.lo `test -f 'xbt/asserts.c' || echo '$(srcdir)/'`xbt/asserts.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/asserts.Tpo" "$(DEPDIR)/asserts.Plo"; else rm -f "$(DEPDIR)/asserts.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT asserts.lo -MD -MP -MF $(DEPDIR)/asserts.Tpo -c -o asserts.lo `test -f 'xbt/asserts.c' || echo '$(srcdir)/'`xbt/asserts.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/asserts.Tpo $(DEPDIR)/asserts.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/asserts.c' object='asserts.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o asserts.lo `test -f 'xbt/asserts.c' || echo '$(srcdir)/'`xbt/asserts.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o asserts.lo `test -f 'xbt/asserts.c' || echo '$(srcdir)/'`xbt/asserts.c
 
 log.lo: xbt/log.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT log.lo -MD -MP -MF "$(DEPDIR)/log.Tpo" -c -o log.lo `test -f 'xbt/log.c' || echo '$(srcdir)/'`xbt/log.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/log.Tpo" "$(DEPDIR)/log.Plo"; else rm -f "$(DEPDIR)/log.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT log.lo -MD -MP -MF $(DEPDIR)/log.Tpo -c -o log.lo `test -f 'xbt/log.c' || echo '$(srcdir)/'`xbt/log.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/log.Tpo $(DEPDIR)/log.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/log.c' object='log.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o log.lo `test -f 'xbt/log.c' || echo '$(srcdir)/'`xbt/log.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o log.lo `test -f 'xbt/log.c' || echo '$(srcdir)/'`xbt/log.c
 
 xbt_log_appender_file.lo: xbt/xbt_log_appender_file.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_log_appender_file.lo -MD -MP -MF "$(DEPDIR)/xbt_log_appender_file.Tpo" -c -o xbt_log_appender_file.lo `test -f 'xbt/xbt_log_appender_file.c' || echo '$(srcdir)/'`xbt/xbt_log_appender_file.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_log_appender_file.Tpo" "$(DEPDIR)/xbt_log_appender_file.Plo"; else rm -f "$(DEPDIR)/xbt_log_appender_file.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_log_appender_file.lo -MD -MP -MF $(DEPDIR)/xbt_log_appender_file.Tpo -c -o xbt_log_appender_file.lo `test -f 'xbt/xbt_log_appender_file.c' || echo '$(srcdir)/'`xbt/xbt_log_appender_file.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_log_appender_file.Tpo $(DEPDIR)/xbt_log_appender_file.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_log_appender_file.c' object='xbt_log_appender_file.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_log_appender_file.lo `test -f 'xbt/xbt_log_appender_file.c' || echo '$(srcdir)/'`xbt/xbt_log_appender_file.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_log_appender_file.lo `test -f 'xbt/xbt_log_appender_file.c' || echo '$(srcdir)/'`xbt/xbt_log_appender_file.c
 
 xbt_log_layout_simple.lo: xbt/xbt_log_layout_simple.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_log_layout_simple.lo -MD -MP -MF "$(DEPDIR)/xbt_log_layout_simple.Tpo" -c -o xbt_log_layout_simple.lo `test -f 'xbt/xbt_log_layout_simple.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_simple.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_log_layout_simple.Tpo" "$(DEPDIR)/xbt_log_layout_simple.Plo"; else rm -f "$(DEPDIR)/xbt_log_layout_simple.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_log_layout_simple.lo -MD -MP -MF $(DEPDIR)/xbt_log_layout_simple.Tpo -c -o xbt_log_layout_simple.lo `test -f 'xbt/xbt_log_layout_simple.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_simple.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_log_layout_simple.Tpo $(DEPDIR)/xbt_log_layout_simple.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_log_layout_simple.c' object='xbt_log_layout_simple.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_log_layout_simple.lo `test -f 'xbt/xbt_log_layout_simple.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_simple.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_log_layout_simple.lo `test -f 'xbt/xbt_log_layout_simple.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_simple.c
 
 xbt_log_layout_format.lo: xbt/xbt_log_layout_format.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_log_layout_format.lo -MD -MP -MF "$(DEPDIR)/xbt_log_layout_format.Tpo" -c -o xbt_log_layout_format.lo `test -f 'xbt/xbt_log_layout_format.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_format.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_log_layout_format.Tpo" "$(DEPDIR)/xbt_log_layout_format.Plo"; else rm -f "$(DEPDIR)/xbt_log_layout_format.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_log_layout_format.lo -MD -MP -MF $(DEPDIR)/xbt_log_layout_format.Tpo -c -o xbt_log_layout_format.lo `test -f 'xbt/xbt_log_layout_format.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_format.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_log_layout_format.Tpo $(DEPDIR)/xbt_log_layout_format.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_log_layout_format.c' object='xbt_log_layout_format.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_log_layout_format.lo `test -f 'xbt/xbt_log_layout_format.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_format.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_log_layout_format.lo `test -f 'xbt/xbt_log_layout_format.c' || echo '$(srcdir)/'`xbt/xbt_log_layout_format.c
 
 mallocator.lo: xbt/mallocator.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mallocator.lo -MD -MP -MF "$(DEPDIR)/mallocator.Tpo" -c -o mallocator.lo `test -f 'xbt/mallocator.c' || echo '$(srcdir)/'`xbt/mallocator.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/mallocator.Tpo" "$(DEPDIR)/mallocator.Plo"; else rm -f "$(DEPDIR)/mallocator.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mallocator.lo -MD -MP -MF $(DEPDIR)/mallocator.Tpo -c -o mallocator.lo `test -f 'xbt/mallocator.c' || echo '$(srcdir)/'`xbt/mallocator.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/mallocator.Tpo $(DEPDIR)/mallocator.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/mallocator.c' object='mallocator.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mallocator.lo `test -f 'xbt/mallocator.c' || echo '$(srcdir)/'`xbt/mallocator.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mallocator.lo `test -f 'xbt/mallocator.c' || echo '$(srcdir)/'`xbt/mallocator.c
 
 dynar.lo: xbt/dynar.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dynar.lo -MD -MP -MF "$(DEPDIR)/dynar.Tpo" -c -o dynar.lo `test -f 'xbt/dynar.c' || echo '$(srcdir)/'`xbt/dynar.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dynar.Tpo" "$(DEPDIR)/dynar.Plo"; else rm -f "$(DEPDIR)/dynar.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dynar.lo -MD -MP -MF $(DEPDIR)/dynar.Tpo -c -o dynar.lo `test -f 'xbt/dynar.c' || echo '$(srcdir)/'`xbt/dynar.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dynar.Tpo $(DEPDIR)/dynar.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/dynar.c' object='dynar.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dynar.lo `test -f 'xbt/dynar.c' || echo '$(srcdir)/'`xbt/dynar.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dynar.lo `test -f 'xbt/dynar.c' || echo '$(srcdir)/'`xbt/dynar.c
 
 dict.lo: xbt/dict.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict.lo -MD -MP -MF "$(DEPDIR)/dict.Tpo" -c -o dict.lo `test -f 'xbt/dict.c' || echo '$(srcdir)/'`xbt/dict.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dict.Tpo" "$(DEPDIR)/dict.Plo"; else rm -f "$(DEPDIR)/dict.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict.lo -MD -MP -MF $(DEPDIR)/dict.Tpo -c -o dict.lo `test -f 'xbt/dict.c' || echo '$(srcdir)/'`xbt/dict.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dict.Tpo $(DEPDIR)/dict.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/dict.c' object='dict.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict.lo `test -f 'xbt/dict.c' || echo '$(srcdir)/'`xbt/dict.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict.lo `test -f 'xbt/dict.c' || echo '$(srcdir)/'`xbt/dict.c
 
 dict_elm.lo: xbt/dict_elm.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_elm.lo -MD -MP -MF "$(DEPDIR)/dict_elm.Tpo" -c -o dict_elm.lo `test -f 'xbt/dict_elm.c' || echo '$(srcdir)/'`xbt/dict_elm.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dict_elm.Tpo" "$(DEPDIR)/dict_elm.Plo"; else rm -f "$(DEPDIR)/dict_elm.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_elm.lo -MD -MP -MF $(DEPDIR)/dict_elm.Tpo -c -o dict_elm.lo `test -f 'xbt/dict_elm.c' || echo '$(srcdir)/'`xbt/dict_elm.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dict_elm.Tpo $(DEPDIR)/dict_elm.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/dict_elm.c' object='dict_elm.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_elm.lo `test -f 'xbt/dict_elm.c' || echo '$(srcdir)/'`xbt/dict_elm.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_elm.lo `test -f 'xbt/dict_elm.c' || echo '$(srcdir)/'`xbt/dict_elm.c
 
 dict_cursor.lo: xbt/dict_cursor.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_cursor.lo -MD -MP -MF "$(DEPDIR)/dict_cursor.Tpo" -c -o dict_cursor.lo `test -f 'xbt/dict_cursor.c' || echo '$(srcdir)/'`xbt/dict_cursor.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dict_cursor.Tpo" "$(DEPDIR)/dict_cursor.Plo"; else rm -f "$(DEPDIR)/dict_cursor.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_cursor.lo -MD -MP -MF $(DEPDIR)/dict_cursor.Tpo -c -o dict_cursor.lo `test -f 'xbt/dict_cursor.c' || echo '$(srcdir)/'`xbt/dict_cursor.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dict_cursor.Tpo $(DEPDIR)/dict_cursor.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/dict_cursor.c' object='dict_cursor.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_cursor.lo `test -f 'xbt/dict_cursor.c' || echo '$(srcdir)/'`xbt/dict_cursor.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_cursor.lo `test -f 'xbt/dict_cursor.c' || echo '$(srcdir)/'`xbt/dict_cursor.c
 
 dict_multi.lo: xbt/dict_multi.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_multi.lo -MD -MP -MF "$(DEPDIR)/dict_multi.Tpo" -c -o dict_multi.lo `test -f 'xbt/dict_multi.c' || echo '$(srcdir)/'`xbt/dict_multi.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dict_multi.Tpo" "$(DEPDIR)/dict_multi.Plo"; else rm -f "$(DEPDIR)/dict_multi.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_multi.lo -MD -MP -MF $(DEPDIR)/dict_multi.Tpo -c -o dict_multi.lo `test -f 'xbt/dict_multi.c' || echo '$(srcdir)/'`xbt/dict_multi.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dict_multi.Tpo $(DEPDIR)/dict_multi.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/dict_multi.c' object='dict_multi.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_multi.lo `test -f 'xbt/dict_multi.c' || echo '$(srcdir)/'`xbt/dict_multi.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_multi.lo `test -f 'xbt/dict_multi.c' || echo '$(srcdir)/'`xbt/dict_multi.c
 
 heap.lo: xbt/heap.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT heap.lo -MD -MP -MF "$(DEPDIR)/heap.Tpo" -c -o heap.lo `test -f 'xbt/heap.c' || echo '$(srcdir)/'`xbt/heap.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/heap.Tpo" "$(DEPDIR)/heap.Plo"; else rm -f "$(DEPDIR)/heap.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT heap.lo -MD -MP -MF $(DEPDIR)/heap.Tpo -c -o heap.lo `test -f 'xbt/heap.c' || echo '$(srcdir)/'`xbt/heap.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/heap.Tpo $(DEPDIR)/heap.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/heap.c' object='heap.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o heap.lo `test -f 'xbt/heap.c' || echo '$(srcdir)/'`xbt/heap.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o heap.lo `test -f 'xbt/heap.c' || echo '$(srcdir)/'`xbt/heap.c
 
 fifo.lo: xbt/fifo.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fifo.lo -MD -MP -MF "$(DEPDIR)/fifo.Tpo" -c -o fifo.lo `test -f 'xbt/fifo.c' || echo '$(srcdir)/'`xbt/fifo.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/fifo.Tpo" "$(DEPDIR)/fifo.Plo"; else rm -f "$(DEPDIR)/fifo.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fifo.lo -MD -MP -MF $(DEPDIR)/fifo.Tpo -c -o fifo.lo `test -f 'xbt/fifo.c' || echo '$(srcdir)/'`xbt/fifo.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/fifo.Tpo $(DEPDIR)/fifo.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/fifo.c' object='fifo.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fifo.lo `test -f 'xbt/fifo.c' || echo '$(srcdir)/'`xbt/fifo.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fifo.lo `test -f 'xbt/fifo.c' || echo '$(srcdir)/'`xbt/fifo.c
 
 swag.lo: xbt/swag.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT swag.lo -MD -MP -MF "$(DEPDIR)/swag.Tpo" -c -o swag.lo `test -f 'xbt/swag.c' || echo '$(srcdir)/'`xbt/swag.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/swag.Tpo" "$(DEPDIR)/swag.Plo"; else rm -f "$(DEPDIR)/swag.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT swag.lo -MD -MP -MF $(DEPDIR)/swag.Tpo -c -o swag.lo `test -f 'xbt/swag.c' || echo '$(srcdir)/'`xbt/swag.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/swag.Tpo $(DEPDIR)/swag.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/swag.c' object='swag.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o swag.lo `test -f 'xbt/swag.c' || echo '$(srcdir)/'`xbt/swag.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o swag.lo `test -f 'xbt/swag.c' || echo '$(srcdir)/'`xbt/swag.c
 
 graph.lo: xbt/graph.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT graph.lo -MD -MP -MF "$(DEPDIR)/graph.Tpo" -c -o graph.lo `test -f 'xbt/graph.c' || echo '$(srcdir)/'`xbt/graph.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/graph.Tpo" "$(DEPDIR)/graph.Plo"; else rm -f "$(DEPDIR)/graph.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT graph.lo -MD -MP -MF $(DEPDIR)/graph.Tpo -c -o graph.lo `test -f 'xbt/graph.c' || echo '$(srcdir)/'`xbt/graph.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/graph.Tpo $(DEPDIR)/graph.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/graph.c' object='graph.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o graph.lo `test -f 'xbt/graph.c' || echo '$(srcdir)/'`xbt/graph.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o graph.lo `test -f 'xbt/graph.c' || echo '$(srcdir)/'`xbt/graph.c
 
 set.lo: xbt/set.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT set.lo -MD -MP -MF "$(DEPDIR)/set.Tpo" -c -o set.lo `test -f 'xbt/set.c' || echo '$(srcdir)/'`xbt/set.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/set.Tpo" "$(DEPDIR)/set.Plo"; else rm -f "$(DEPDIR)/set.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT set.lo -MD -MP -MF $(DEPDIR)/set.Tpo -c -o set.lo `test -f 'xbt/set.c' || echo '$(srcdir)/'`xbt/set.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/set.Tpo $(DEPDIR)/set.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/set.c' object='set.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o set.lo `test -f 'xbt/set.c' || echo '$(srcdir)/'`xbt/set.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o set.lo `test -f 'xbt/set.c' || echo '$(srcdir)/'`xbt/set.c
 
 xbt_matrix.lo: xbt/xbt_matrix.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_matrix.lo -MD -MP -MF "$(DEPDIR)/xbt_matrix.Tpo" -c -o xbt_matrix.lo `test -f 'xbt/xbt_matrix.c' || echo '$(srcdir)/'`xbt/xbt_matrix.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_matrix.Tpo" "$(DEPDIR)/xbt_matrix.Plo"; else rm -f "$(DEPDIR)/xbt_matrix.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_matrix.lo -MD -MP -MF $(DEPDIR)/xbt_matrix.Tpo -c -o xbt_matrix.lo `test -f 'xbt/xbt_matrix.c' || echo '$(srcdir)/'`xbt/xbt_matrix.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_matrix.Tpo $(DEPDIR)/xbt_matrix.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_matrix.c' object='xbt_matrix.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_matrix.lo `test -f 'xbt/xbt_matrix.c' || echo '$(srcdir)/'`xbt/xbt_matrix.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_matrix.lo `test -f 'xbt/xbt_matrix.c' || echo '$(srcdir)/'`xbt/xbt_matrix.c
 
 xbt_peer.lo: xbt/xbt_peer.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_peer.lo -MD -MP -MF "$(DEPDIR)/xbt_peer.Tpo" -c -o xbt_peer.lo `test -f 'xbt/xbt_peer.c' || echo '$(srcdir)/'`xbt/xbt_peer.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_peer.Tpo" "$(DEPDIR)/xbt_peer.Plo"; else rm -f "$(DEPDIR)/xbt_peer.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_peer.lo -MD -MP -MF $(DEPDIR)/xbt_peer.Tpo -c -o xbt_peer.lo `test -f 'xbt/xbt_peer.c' || echo '$(srcdir)/'`xbt/xbt_peer.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_peer.Tpo $(DEPDIR)/xbt_peer.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_peer.c' object='xbt_peer.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_peer.lo `test -f 'xbt/xbt_peer.c' || echo '$(srcdir)/'`xbt/xbt_peer.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_peer.lo `test -f 'xbt/xbt_peer.c' || echo '$(srcdir)/'`xbt/xbt_peer.c
 
 xbt_main.lo: xbt/xbt_main.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_main.lo -MD -MP -MF "$(DEPDIR)/xbt_main.Tpo" -c -o xbt_main.lo `test -f 'xbt/xbt_main.c' || echo '$(srcdir)/'`xbt/xbt_main.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_main.Tpo" "$(DEPDIR)/xbt_main.Plo"; else rm -f "$(DEPDIR)/xbt_main.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_main.lo -MD -MP -MF $(DEPDIR)/xbt_main.Tpo -c -o xbt_main.lo `test -f 'xbt/xbt_main.c' || echo '$(srcdir)/'`xbt/xbt_main.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_main.Tpo $(DEPDIR)/xbt_main.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_main.c' object='xbt_main.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_main.lo `test -f 'xbt/xbt_main.c' || echo '$(srcdir)/'`xbt/xbt_main.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_main.lo `test -f 'xbt/xbt_main.c' || echo '$(srcdir)/'`xbt/xbt_main.c
 
 config.lo: xbt/config.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT config.lo -MD -MP -MF "$(DEPDIR)/config.Tpo" -c -o config.lo `test -f 'xbt/config.c' || echo '$(srcdir)/'`xbt/config.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/config.Tpo" "$(DEPDIR)/config.Plo"; else rm -f "$(DEPDIR)/config.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT config.lo -MD -MP -MF $(DEPDIR)/config.Tpo -c -o config.lo `test -f 'xbt/config.c' || echo '$(srcdir)/'`xbt/config.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/config.Tpo $(DEPDIR)/config.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/config.c' object='config.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o config.lo `test -f 'xbt/config.c' || echo '$(srcdir)/'`xbt/config.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o config.lo `test -f 'xbt/config.c' || echo '$(srcdir)/'`xbt/config.c
 
 cunit.lo: xbt/cunit.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cunit.lo -MD -MP -MF "$(DEPDIR)/cunit.Tpo" -c -o cunit.lo `test -f 'xbt/cunit.c' || echo '$(srcdir)/'`xbt/cunit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/cunit.Tpo" "$(DEPDIR)/cunit.Plo"; else rm -f "$(DEPDIR)/cunit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cunit.lo -MD -MP -MF $(DEPDIR)/cunit.Tpo -c -o cunit.lo `test -f 'xbt/cunit.c' || echo '$(srcdir)/'`xbt/cunit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/cunit.Tpo $(DEPDIR)/cunit.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/cunit.c' object='cunit.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cunit.lo `test -f 'xbt/cunit.c' || echo '$(srcdir)/'`xbt/cunit.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cunit.lo `test -f 'xbt/cunit.c' || echo '$(srcdir)/'`xbt/cunit.c
 
 graphxml_parse.lo: xbt/graphxml_parse.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT graphxml_parse.lo -MD -MP -MF "$(DEPDIR)/graphxml_parse.Tpo" -c -o graphxml_parse.lo `test -f 'xbt/graphxml_parse.c' || echo '$(srcdir)/'`xbt/graphxml_parse.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/graphxml_parse.Tpo" "$(DEPDIR)/graphxml_parse.Plo"; else rm -f "$(DEPDIR)/graphxml_parse.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT graphxml_parse.lo -MD -MP -MF $(DEPDIR)/graphxml_parse.Tpo -c -o graphxml_parse.lo `test -f 'xbt/graphxml_parse.c' || echo '$(srcdir)/'`xbt/graphxml_parse.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/graphxml_parse.Tpo $(DEPDIR)/graphxml_parse.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/graphxml_parse.c' object='graphxml_parse.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o graphxml_parse.lo `test -f 'xbt/graphxml_parse.c' || echo '$(srcdir)/'`xbt/graphxml_parse.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o graphxml_parse.lo `test -f 'xbt/graphxml_parse.c' || echo '$(srcdir)/'`xbt/graphxml_parse.c
 
 gras.lo: gras/gras.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gras.lo -MD -MP -MF "$(DEPDIR)/gras.Tpo" -c -o gras.lo `test -f 'gras/gras.c' || echo '$(srcdir)/'`gras/gras.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/gras.Tpo" "$(DEPDIR)/gras.Plo"; else rm -f "$(DEPDIR)/gras.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gras.lo -MD -MP -MF $(DEPDIR)/gras.Tpo -c -o gras.lo `test -f 'gras/gras.c' || echo '$(srcdir)/'`gras/gras.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/gras.Tpo $(DEPDIR)/gras.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/gras.c' object='gras.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gras.lo `test -f 'gras/gras.c' || echo '$(srcdir)/'`gras/gras.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gras.lo `test -f 'gras/gras.c' || echo '$(srcdir)/'`gras/gras.c
 
 transport.lo: gras/Transport/transport.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport.lo -MD -MP -MF "$(DEPDIR)/transport.Tpo" -c -o transport.lo `test -f 'gras/Transport/transport.c' || echo '$(srcdir)/'`gras/Transport/transport.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/transport.Tpo" "$(DEPDIR)/transport.Plo"; else rm -f "$(DEPDIR)/transport.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport.lo -MD -MP -MF $(DEPDIR)/transport.Tpo -c -o transport.lo `test -f 'gras/Transport/transport.c' || echo '$(srcdir)/'`gras/Transport/transport.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/transport.Tpo $(DEPDIR)/transport.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Transport/transport.c' object='transport.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport.lo `test -f 'gras/Transport/transport.c' || echo '$(srcdir)/'`gras/Transport/transport.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport.lo `test -f 'gras/Transport/transport.c' || echo '$(srcdir)/'`gras/Transport/transport.c
 
 msg.lo: gras/Msg/msg.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT msg.lo -MD -MP -MF "$(DEPDIR)/msg.Tpo" -c -o msg.lo `test -f 'gras/Msg/msg.c' || echo '$(srcdir)/'`gras/Msg/msg.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/msg.Tpo" "$(DEPDIR)/msg.Plo"; else rm -f "$(DEPDIR)/msg.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT msg.lo -MD -MP -MF $(DEPDIR)/msg.Tpo -c -o msg.lo `test -f 'gras/Msg/msg.c' || echo '$(srcdir)/'`gras/Msg/msg.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/msg.Tpo $(DEPDIR)/msg.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Msg/msg.c' object='msg.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o msg.lo `test -f 'gras/Msg/msg.c' || echo '$(srcdir)/'`gras/Msg/msg.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o msg.lo `test -f 'gras/Msg/msg.c' || echo '$(srcdir)/'`gras/Msg/msg.c
 
 rpc.lo: gras/Msg/rpc.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rpc.lo -MD -MP -MF "$(DEPDIR)/rpc.Tpo" -c -o rpc.lo `test -f 'gras/Msg/rpc.c' || echo '$(srcdir)/'`gras/Msg/rpc.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rpc.Tpo" "$(DEPDIR)/rpc.Plo"; else rm -f "$(DEPDIR)/rpc.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rpc.lo -MD -MP -MF $(DEPDIR)/rpc.Tpo -c -o rpc.lo `test -f 'gras/Msg/rpc.c' || echo '$(srcdir)/'`gras/Msg/rpc.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rpc.Tpo $(DEPDIR)/rpc.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Msg/rpc.c' object='rpc.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rpc.lo `test -f 'gras/Msg/rpc.c' || echo '$(srcdir)/'`gras/Msg/rpc.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rpc.lo `test -f 'gras/Msg/rpc.c' || echo '$(srcdir)/'`gras/Msg/rpc.c
 
 timer.lo: gras/Msg/timer.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT timer.lo -MD -MP -MF "$(DEPDIR)/timer.Tpo" -c -o timer.lo `test -f 'gras/Msg/timer.c' || echo '$(srcdir)/'`gras/Msg/timer.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/timer.Tpo" "$(DEPDIR)/timer.Plo"; else rm -f "$(DEPDIR)/timer.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT timer.lo -MD -MP -MF $(DEPDIR)/timer.Tpo -c -o timer.lo `test -f 'gras/Msg/timer.c' || echo '$(srcdir)/'`gras/Msg/timer.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/timer.Tpo $(DEPDIR)/timer.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Msg/timer.c' object='timer.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o timer.lo `test -f 'gras/Msg/timer.c' || echo '$(srcdir)/'`gras/Msg/timer.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o timer.lo `test -f 'gras/Msg/timer.c' || echo '$(srcdir)/'`gras/Msg/timer.c
 
 process.lo: gras/Virtu/process.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT process.lo -MD -MP -MF "$(DEPDIR)/process.Tpo" -c -o process.lo `test -f 'gras/Virtu/process.c' || echo '$(srcdir)/'`gras/Virtu/process.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/process.Tpo" "$(DEPDIR)/process.Plo"; else rm -f "$(DEPDIR)/process.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT process.lo -MD -MP -MF $(DEPDIR)/process.Tpo -c -o process.lo `test -f 'gras/Virtu/process.c' || echo '$(srcdir)/'`gras/Virtu/process.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/process.Tpo $(DEPDIR)/process.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/process.c' object='process.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o process.lo `test -f 'gras/Virtu/process.c' || echo '$(srcdir)/'`gras/Virtu/process.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o process.lo `test -f 'gras/Virtu/process.c' || echo '$(srcdir)/'`gras/Virtu/process.c
 
 gras_module.lo: gras/Virtu/gras_module.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gras_module.lo -MD -MP -MF "$(DEPDIR)/gras_module.Tpo" -c -o gras_module.lo `test -f 'gras/Virtu/gras_module.c' || echo '$(srcdir)/'`gras/Virtu/gras_module.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/gras_module.Tpo" "$(DEPDIR)/gras_module.Plo"; else rm -f "$(DEPDIR)/gras_module.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gras_module.lo -MD -MP -MF $(DEPDIR)/gras_module.Tpo -c -o gras_module.lo `test -f 'gras/Virtu/gras_module.c' || echo '$(srcdir)/'`gras/Virtu/gras_module.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/gras_module.Tpo $(DEPDIR)/gras_module.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/gras_module.c' object='gras_module.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gras_module.lo `test -f 'gras/Virtu/gras_module.c' || echo '$(srcdir)/'`gras/Virtu/gras_module.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gras_module.lo `test -f 'gras/Virtu/gras_module.c' || echo '$(srcdir)/'`gras/Virtu/gras_module.c
 
 ddt_create.lo: gras/DataDesc/ddt_create.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_create.lo -MD -MP -MF "$(DEPDIR)/ddt_create.Tpo" -c -o ddt_create.lo `test -f 'gras/DataDesc/ddt_create.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_create.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ddt_create.Tpo" "$(DEPDIR)/ddt_create.Plo"; else rm -f "$(DEPDIR)/ddt_create.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_create.lo -MD -MP -MF $(DEPDIR)/ddt_create.Tpo -c -o ddt_create.lo `test -f 'gras/DataDesc/ddt_create.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_create.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ddt_create.Tpo $(DEPDIR)/ddt_create.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/DataDesc/ddt_create.c' object='ddt_create.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_create.lo `test -f 'gras/DataDesc/ddt_create.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_create.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_create.lo `test -f 'gras/DataDesc/ddt_create.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_create.c
 
 ddt_convert.lo: gras/DataDesc/ddt_convert.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_convert.lo -MD -MP -MF "$(DEPDIR)/ddt_convert.Tpo" -c -o ddt_convert.lo `test -f 'gras/DataDesc/ddt_convert.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_convert.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ddt_convert.Tpo" "$(DEPDIR)/ddt_convert.Plo"; else rm -f "$(DEPDIR)/ddt_convert.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_convert.lo -MD -MP -MF $(DEPDIR)/ddt_convert.Tpo -c -o ddt_convert.lo `test -f 'gras/DataDesc/ddt_convert.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_convert.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ddt_convert.Tpo $(DEPDIR)/ddt_convert.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/DataDesc/ddt_convert.c' object='ddt_convert.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_convert.lo `test -f 'gras/DataDesc/ddt_convert.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_convert.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_convert.lo `test -f 'gras/DataDesc/ddt_convert.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_convert.c
 
 ddt_exchange.lo: gras/DataDesc/ddt_exchange.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_exchange.lo -MD -MP -MF "$(DEPDIR)/ddt_exchange.Tpo" -c -o ddt_exchange.lo `test -f 'gras/DataDesc/ddt_exchange.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_exchange.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ddt_exchange.Tpo" "$(DEPDIR)/ddt_exchange.Plo"; else rm -f "$(DEPDIR)/ddt_exchange.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_exchange.lo -MD -MP -MF $(DEPDIR)/ddt_exchange.Tpo -c -o ddt_exchange.lo `test -f 'gras/DataDesc/ddt_exchange.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_exchange.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ddt_exchange.Tpo $(DEPDIR)/ddt_exchange.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/DataDesc/ddt_exchange.c' object='ddt_exchange.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_exchange.lo `test -f 'gras/DataDesc/ddt_exchange.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_exchange.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_exchange.lo `test -f 'gras/DataDesc/ddt_exchange.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_exchange.c
 
 cbps.lo: gras/DataDesc/cbps.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cbps.lo -MD -MP -MF "$(DEPDIR)/cbps.Tpo" -c -o cbps.lo `test -f 'gras/DataDesc/cbps.c' || echo '$(srcdir)/'`gras/DataDesc/cbps.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/cbps.Tpo" "$(DEPDIR)/cbps.Plo"; else rm -f "$(DEPDIR)/cbps.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cbps.lo -MD -MP -MF $(DEPDIR)/cbps.Tpo -c -o cbps.lo `test -f 'gras/DataDesc/cbps.c' || echo '$(srcdir)/'`gras/DataDesc/cbps.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/cbps.Tpo $(DEPDIR)/cbps.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/DataDesc/cbps.c' object='cbps.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cbps.lo `test -f 'gras/DataDesc/cbps.c' || echo '$(srcdir)/'`gras/DataDesc/cbps.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cbps.lo `test -f 'gras/DataDesc/cbps.c' || echo '$(srcdir)/'`gras/DataDesc/cbps.c
 
 datadesc.lo: gras/DataDesc/datadesc.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT datadesc.lo -MD -MP -MF "$(DEPDIR)/datadesc.Tpo" -c -o datadesc.lo `test -f 'gras/DataDesc/datadesc.c' || echo '$(srcdir)/'`gras/DataDesc/datadesc.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/datadesc.Tpo" "$(DEPDIR)/datadesc.Plo"; else rm -f "$(DEPDIR)/datadesc.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT datadesc.lo -MD -MP -MF $(DEPDIR)/datadesc.Tpo -c -o datadesc.lo `test -f 'gras/DataDesc/datadesc.c' || echo '$(srcdir)/'`gras/DataDesc/datadesc.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/datadesc.Tpo $(DEPDIR)/datadesc.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/DataDesc/datadesc.c' object='datadesc.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o datadesc.lo `test -f 'gras/DataDesc/datadesc.c' || echo '$(srcdir)/'`gras/DataDesc/datadesc.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o datadesc.lo `test -f 'gras/DataDesc/datadesc.c' || echo '$(srcdir)/'`gras/DataDesc/datadesc.c
 
 ddt_parse.lo: gras/DataDesc/ddt_parse.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_parse.lo -MD -MP -MF "$(DEPDIR)/ddt_parse.Tpo" -c -o ddt_parse.lo `test -f 'gras/DataDesc/ddt_parse.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ddt_parse.Tpo" "$(DEPDIR)/ddt_parse.Plo"; else rm -f "$(DEPDIR)/ddt_parse.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_parse.lo -MD -MP -MF $(DEPDIR)/ddt_parse.Tpo -c -o ddt_parse.lo `test -f 'gras/DataDesc/ddt_parse.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ddt_parse.Tpo $(DEPDIR)/ddt_parse.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/DataDesc/ddt_parse.c' object='ddt_parse.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_parse.lo `test -f 'gras/DataDesc/ddt_parse.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_parse.lo `test -f 'gras/DataDesc/ddt_parse.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.c
 
 ddt_parse.yy.lo: gras/DataDesc/ddt_parse.yy.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_parse.yy.lo -MD -MP -MF "$(DEPDIR)/ddt_parse.yy.Tpo" -c -o ddt_parse.yy.lo `test -f 'gras/DataDesc/ddt_parse.yy.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.yy.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ddt_parse.yy.Tpo" "$(DEPDIR)/ddt_parse.yy.Plo"; else rm -f "$(DEPDIR)/ddt_parse.yy.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ddt_parse.yy.lo -MD -MP -MF $(DEPDIR)/ddt_parse.yy.Tpo -c -o ddt_parse.yy.lo `test -f 'gras/DataDesc/ddt_parse.yy.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.yy.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ddt_parse.yy.Tpo $(DEPDIR)/ddt_parse.yy.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/DataDesc/ddt_parse.yy.c' object='ddt_parse.yy.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_parse.yy.lo `test -f 'gras/DataDesc/ddt_parse.yy.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.yy.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ddt_parse.yy.lo `test -f 'gras/DataDesc/ddt_parse.yy.c' || echo '$(srcdir)/'`gras/DataDesc/ddt_parse.yy.c
 
 rl_stubs.lo: gras/rl_stubs.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_stubs.lo -MD -MP -MF "$(DEPDIR)/rl_stubs.Tpo" -c -o rl_stubs.lo `test -f 'gras/rl_stubs.c' || echo '$(srcdir)/'`gras/rl_stubs.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rl_stubs.Tpo" "$(DEPDIR)/rl_stubs.Plo"; else rm -f "$(DEPDIR)/rl_stubs.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_stubs.lo -MD -MP -MF $(DEPDIR)/rl_stubs.Tpo -c -o rl_stubs.lo `test -f 'gras/rl_stubs.c' || echo '$(srcdir)/'`gras/rl_stubs.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rl_stubs.Tpo $(DEPDIR)/rl_stubs.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/rl_stubs.c' object='rl_stubs.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_stubs.lo `test -f 'gras/rl_stubs.c' || echo '$(srcdir)/'`gras/rl_stubs.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_stubs.lo `test -f 'gras/rl_stubs.c' || echo '$(srcdir)/'`gras/rl_stubs.c
 
 xbt_thread.lo: xbt/xbt_thread.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_thread.lo -MD -MP -MF "$(DEPDIR)/xbt_thread.Tpo" -c -o xbt_thread.lo `test -f 'xbt/xbt_thread.c' || echo '$(srcdir)/'`xbt/xbt_thread.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_thread.Tpo" "$(DEPDIR)/xbt_thread.Plo"; else rm -f "$(DEPDIR)/xbt_thread.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_thread.lo -MD -MP -MF $(DEPDIR)/xbt_thread.Tpo -c -o xbt_thread.lo `test -f 'xbt/xbt_thread.c' || echo '$(srcdir)/'`xbt/xbt_thread.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_thread.Tpo $(DEPDIR)/xbt_thread.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/xbt_thread.c' object='xbt_thread.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_thread.lo `test -f 'xbt/xbt_thread.c' || echo '$(srcdir)/'`xbt/xbt_thread.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_thread.lo `test -f 'xbt/xbt_thread.c' || echo '$(srcdir)/'`xbt/xbt_thread.c
 
 rl_transport.lo: gras/Transport/rl_transport.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_transport.lo -MD -MP -MF "$(DEPDIR)/rl_transport.Tpo" -c -o rl_transport.lo `test -f 'gras/Transport/rl_transport.c' || echo '$(srcdir)/'`gras/Transport/rl_transport.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rl_transport.Tpo" "$(DEPDIR)/rl_transport.Plo"; else rm -f "$(DEPDIR)/rl_transport.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_transport.lo -MD -MP -MF $(DEPDIR)/rl_transport.Tpo -c -o rl_transport.lo `test -f 'gras/Transport/rl_transport.c' || echo '$(srcdir)/'`gras/Transport/rl_transport.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rl_transport.Tpo $(DEPDIR)/rl_transport.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Transport/rl_transport.c' object='rl_transport.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_transport.lo `test -f 'gras/Transport/rl_transport.c' || echo '$(srcdir)/'`gras/Transport/rl_transport.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_transport.lo `test -f 'gras/Transport/rl_transport.c' || echo '$(srcdir)/'`gras/Transport/rl_transport.c
 
 transport_plugin_file.lo: gras/Transport/transport_plugin_file.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport_plugin_file.lo -MD -MP -MF "$(DEPDIR)/transport_plugin_file.Tpo" -c -o transport_plugin_file.lo `test -f 'gras/Transport/transport_plugin_file.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_file.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/transport_plugin_file.Tpo" "$(DEPDIR)/transport_plugin_file.Plo"; else rm -f "$(DEPDIR)/transport_plugin_file.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport_plugin_file.lo -MD -MP -MF $(DEPDIR)/transport_plugin_file.Tpo -c -o transport_plugin_file.lo `test -f 'gras/Transport/transport_plugin_file.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_file.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/transport_plugin_file.Tpo $(DEPDIR)/transport_plugin_file.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Transport/transport_plugin_file.c' object='transport_plugin_file.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport_plugin_file.lo `test -f 'gras/Transport/transport_plugin_file.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_file.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport_plugin_file.lo `test -f 'gras/Transport/transport_plugin_file.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_file.c
 
 transport_plugin_tcp.lo: gras/Transport/transport_plugin_tcp.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport_plugin_tcp.lo -MD -MP -MF "$(DEPDIR)/transport_plugin_tcp.Tpo" -c -o transport_plugin_tcp.lo `test -f 'gras/Transport/transport_plugin_tcp.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_tcp.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/transport_plugin_tcp.Tpo" "$(DEPDIR)/transport_plugin_tcp.Plo"; else rm -f "$(DEPDIR)/transport_plugin_tcp.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport_plugin_tcp.lo -MD -MP -MF $(DEPDIR)/transport_plugin_tcp.Tpo -c -o transport_plugin_tcp.lo `test -f 'gras/Transport/transport_plugin_tcp.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_tcp.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/transport_plugin_tcp.Tpo $(DEPDIR)/transport_plugin_tcp.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Transport/transport_plugin_tcp.c' object='transport_plugin_tcp.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport_plugin_tcp.lo `test -f 'gras/Transport/transport_plugin_tcp.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_tcp.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport_plugin_tcp.lo `test -f 'gras/Transport/transport_plugin_tcp.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_tcp.c
 
 rl_emul.lo: gras/Virtu/rl_emul.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_emul.lo -MD -MP -MF "$(DEPDIR)/rl_emul.Tpo" -c -o rl_emul.lo `test -f 'gras/Virtu/rl_emul.c' || echo '$(srcdir)/'`gras/Virtu/rl_emul.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rl_emul.Tpo" "$(DEPDIR)/rl_emul.Plo"; else rm -f "$(DEPDIR)/rl_emul.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_emul.lo -MD -MP -MF $(DEPDIR)/rl_emul.Tpo -c -o rl_emul.lo `test -f 'gras/Virtu/rl_emul.c' || echo '$(srcdir)/'`gras/Virtu/rl_emul.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rl_emul.Tpo $(DEPDIR)/rl_emul.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/rl_emul.c' object='rl_emul.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_emul.lo `test -f 'gras/Virtu/rl_emul.c' || echo '$(srcdir)/'`gras/Virtu/rl_emul.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_emul.lo `test -f 'gras/Virtu/rl_emul.c' || echo '$(srcdir)/'`gras/Virtu/rl_emul.c
 
 rl_process.lo: gras/Virtu/rl_process.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_process.lo -MD -MP -MF "$(DEPDIR)/rl_process.Tpo" -c -o rl_process.lo `test -f 'gras/Virtu/rl_process.c' || echo '$(srcdir)/'`gras/Virtu/rl_process.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rl_process.Tpo" "$(DEPDIR)/rl_process.Plo"; else rm -f "$(DEPDIR)/rl_process.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_process.lo -MD -MP -MF $(DEPDIR)/rl_process.Tpo -c -o rl_process.lo `test -f 'gras/Virtu/rl_process.c' || echo '$(srcdir)/'`gras/Virtu/rl_process.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rl_process.Tpo $(DEPDIR)/rl_process.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/rl_process.c' object='rl_process.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_process.lo `test -f 'gras/Virtu/rl_process.c' || echo '$(srcdir)/'`gras/Virtu/rl_process.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_process.lo `test -f 'gras/Virtu/rl_process.c' || echo '$(srcdir)/'`gras/Virtu/rl_process.c
 
 rl_time.lo: gras/Virtu/rl_time.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_time.lo -MD -MP -MF "$(DEPDIR)/rl_time.Tpo" -c -o rl_time.lo `test -f 'gras/Virtu/rl_time.c' || echo '$(srcdir)/'`gras/Virtu/rl_time.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rl_time.Tpo" "$(DEPDIR)/rl_time.Plo"; else rm -f "$(DEPDIR)/rl_time.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_time.lo -MD -MP -MF $(DEPDIR)/rl_time.Tpo -c -o rl_time.lo `test -f 'gras/Virtu/rl_time.c' || echo '$(srcdir)/'`gras/Virtu/rl_time.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rl_time.Tpo $(DEPDIR)/rl_time.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/rl_time.c' object='rl_time.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_time.lo `test -f 'gras/Virtu/rl_time.c' || echo '$(srcdir)/'`gras/Virtu/rl_time.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_time.lo `test -f 'gras/Virtu/rl_time.c' || echo '$(srcdir)/'`gras/Virtu/rl_time.c
 
 rl_dns.lo: gras/Virtu/rl_dns.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_dns.lo -MD -MP -MF "$(DEPDIR)/rl_dns.Tpo" -c -o rl_dns.lo `test -f 'gras/Virtu/rl_dns.c' || echo '$(srcdir)/'`gras/Virtu/rl_dns.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rl_dns.Tpo" "$(DEPDIR)/rl_dns.Plo"; else rm -f "$(DEPDIR)/rl_dns.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_dns.lo -MD -MP -MF $(DEPDIR)/rl_dns.Tpo -c -o rl_dns.lo `test -f 'gras/Virtu/rl_dns.c' || echo '$(srcdir)/'`gras/Virtu/rl_dns.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rl_dns.Tpo $(DEPDIR)/rl_dns.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/rl_dns.c' object='rl_dns.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_dns.lo `test -f 'gras/Virtu/rl_dns.c' || echo '$(srcdir)/'`gras/Virtu/rl_dns.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_dns.lo `test -f 'gras/Virtu/rl_dns.c' || echo '$(srcdir)/'`gras/Virtu/rl_dns.c
 
 rl_msg.lo: gras/Msg/rl_msg.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_msg.lo -MD -MP -MF "$(DEPDIR)/rl_msg.Tpo" -c -o rl_msg.lo `test -f 'gras/Msg/rl_msg.c' || echo '$(srcdir)/'`gras/Msg/rl_msg.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/rl_msg.Tpo" "$(DEPDIR)/rl_msg.Plo"; else rm -f "$(DEPDIR)/rl_msg.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rl_msg.lo -MD -MP -MF $(DEPDIR)/rl_msg.Tpo -c -o rl_msg.lo `test -f 'gras/Msg/rl_msg.c' || echo '$(srcdir)/'`gras/Msg/rl_msg.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/rl_msg.Tpo $(DEPDIR)/rl_msg.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Msg/rl_msg.c' object='rl_msg.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_msg.lo `test -f 'gras/Msg/rl_msg.c' || echo '$(srcdir)/'`gras/Msg/rl_msg.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rl_msg.lo `test -f 'gras/Msg/rl_msg.c' || echo '$(srcdir)/'`gras/Msg/rl_msg.c
 
 amok_base.lo: amok/amok_base.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT amok_base.lo -MD -MP -MF "$(DEPDIR)/amok_base.Tpo" -c -o amok_base.lo `test -f 'amok/amok_base.c' || echo '$(srcdir)/'`amok/amok_base.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/amok_base.Tpo" "$(DEPDIR)/amok_base.Plo"; else rm -f "$(DEPDIR)/amok_base.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT amok_base.lo -MD -MP -MF $(DEPDIR)/amok_base.Tpo -c -o amok_base.lo `test -f 'amok/amok_base.c' || echo '$(srcdir)/'`amok/amok_base.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/amok_base.Tpo $(DEPDIR)/amok_base.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='amok/amok_base.c' object='amok_base.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o amok_base.lo `test -f 'amok/amok_base.c' || echo '$(srcdir)/'`amok/amok_base.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o amok_base.lo `test -f 'amok/amok_base.c' || echo '$(srcdir)/'`amok/amok_base.c
 
 bandwidth.lo: amok/Bandwidth/bandwidth.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT bandwidth.lo -MD -MP -MF "$(DEPDIR)/bandwidth.Tpo" -c -o bandwidth.lo `test -f 'amok/Bandwidth/bandwidth.c' || echo '$(srcdir)/'`amok/Bandwidth/bandwidth.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/bandwidth.Tpo" "$(DEPDIR)/bandwidth.Plo"; else rm -f "$(DEPDIR)/bandwidth.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT bandwidth.lo -MD -MP -MF $(DEPDIR)/bandwidth.Tpo -c -o bandwidth.lo `test -f 'amok/Bandwidth/bandwidth.c' || echo '$(srcdir)/'`amok/Bandwidth/bandwidth.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/bandwidth.Tpo $(DEPDIR)/bandwidth.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='amok/Bandwidth/bandwidth.c' object='bandwidth.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o bandwidth.lo `test -f 'amok/Bandwidth/bandwidth.c' || echo '$(srcdir)/'`amok/Bandwidth/bandwidth.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o bandwidth.lo `test -f 'amok/Bandwidth/bandwidth.c' || echo '$(srcdir)/'`amok/Bandwidth/bandwidth.c
 
 saturate.lo: amok/Bandwidth/saturate.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT saturate.lo -MD -MP -MF "$(DEPDIR)/saturate.Tpo" -c -o saturate.lo `test -f 'amok/Bandwidth/saturate.c' || echo '$(srcdir)/'`amok/Bandwidth/saturate.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/saturate.Tpo" "$(DEPDIR)/saturate.Plo"; else rm -f "$(DEPDIR)/saturate.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT saturate.lo -MD -MP -MF $(DEPDIR)/saturate.Tpo -c -o saturate.lo `test -f 'amok/Bandwidth/saturate.c' || echo '$(srcdir)/'`amok/Bandwidth/saturate.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/saturate.Tpo $(DEPDIR)/saturate.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='amok/Bandwidth/saturate.c' object='saturate.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o saturate.lo `test -f 'amok/Bandwidth/saturate.c' || echo '$(srcdir)/'`amok/Bandwidth/saturate.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o saturate.lo `test -f 'amok/Bandwidth/saturate.c' || echo '$(srcdir)/'`amok/Bandwidth/saturate.c
 
 peermanagement.lo: amok/PeerManagement/peermanagement.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT peermanagement.lo -MD -MP -MF "$(DEPDIR)/peermanagement.Tpo" -c -o peermanagement.lo `test -f 'amok/PeerManagement/peermanagement.c' || echo '$(srcdir)/'`amok/PeerManagement/peermanagement.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/peermanagement.Tpo" "$(DEPDIR)/peermanagement.Plo"; else rm -f "$(DEPDIR)/peermanagement.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT peermanagement.lo -MD -MP -MF $(DEPDIR)/peermanagement.Tpo -c -o peermanagement.lo `test -f 'amok/PeerManagement/peermanagement.c' || echo '$(srcdir)/'`amok/PeerManagement/peermanagement.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/peermanagement.Tpo $(DEPDIR)/peermanagement.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='amok/PeerManagement/peermanagement.c' object='peermanagement.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o peermanagement.lo `test -f 'amok/PeerManagement/peermanagement.c' || echo '$(srcdir)/'`amok/PeerManagement/peermanagement.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o peermanagement.lo `test -f 'amok/PeerManagement/peermanagement.c' || echo '$(srcdir)/'`amok/PeerManagement/peermanagement.c
 
 maxmin.lo: surf/maxmin.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT maxmin.lo -MD -MP -MF "$(DEPDIR)/maxmin.Tpo" -c -o maxmin.lo `test -f 'surf/maxmin.c' || echo '$(srcdir)/'`surf/maxmin.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/maxmin.Tpo" "$(DEPDIR)/maxmin.Plo"; else rm -f "$(DEPDIR)/maxmin.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT maxmin.lo -MD -MP -MF $(DEPDIR)/maxmin.Tpo -c -o maxmin.lo `test -f 'surf/maxmin.c' || echo '$(srcdir)/'`surf/maxmin.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/maxmin.Tpo $(DEPDIR)/maxmin.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/maxmin.c' object='maxmin.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o maxmin.lo `test -f 'surf/maxmin.c' || echo '$(srcdir)/'`surf/maxmin.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o maxmin.lo `test -f 'surf/maxmin.c' || echo '$(srcdir)/'`surf/maxmin.c
 
 lagrange.lo: surf/lagrange.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lagrange.lo -MD -MP -MF "$(DEPDIR)/lagrange.Tpo" -c -o lagrange.lo `test -f 'surf/lagrange.c' || echo '$(srcdir)/'`surf/lagrange.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/lagrange.Tpo" "$(DEPDIR)/lagrange.Plo"; else rm -f "$(DEPDIR)/lagrange.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lagrange.lo -MD -MP -MF $(DEPDIR)/lagrange.Tpo -c -o lagrange.lo `test -f 'surf/lagrange.c' || echo '$(srcdir)/'`surf/lagrange.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/lagrange.Tpo $(DEPDIR)/lagrange.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/lagrange.c' object='lagrange.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lagrange.lo `test -f 'surf/lagrange.c' || echo '$(srcdir)/'`surf/lagrange.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lagrange.lo `test -f 'surf/lagrange.c' || echo '$(srcdir)/'`surf/lagrange.c
 
 trace_mgr.lo: surf/trace_mgr.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT trace_mgr.lo -MD -MP -MF "$(DEPDIR)/trace_mgr.Tpo" -c -o trace_mgr.lo `test -f 'surf/trace_mgr.c' || echo '$(srcdir)/'`surf/trace_mgr.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/trace_mgr.Tpo" "$(DEPDIR)/trace_mgr.Plo"; else rm -f "$(DEPDIR)/trace_mgr.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT trace_mgr.lo -MD -MP -MF $(DEPDIR)/trace_mgr.Tpo -c -o trace_mgr.lo `test -f 'surf/trace_mgr.c' || echo '$(srcdir)/'`surf/trace_mgr.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/trace_mgr.Tpo $(DEPDIR)/trace_mgr.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/trace_mgr.c' object='trace_mgr.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o trace_mgr.lo `test -f 'surf/trace_mgr.c' || echo '$(srcdir)/'`surf/trace_mgr.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o trace_mgr.lo `test -f 'surf/trace_mgr.c' || echo '$(srcdir)/'`surf/trace_mgr.c
 
 surf.lo: surf/surf.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT surf.lo -MD -MP -MF "$(DEPDIR)/surf.Tpo" -c -o surf.lo `test -f 'surf/surf.c' || echo '$(srcdir)/'`surf/surf.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/surf.Tpo" "$(DEPDIR)/surf.Plo"; else rm -f "$(DEPDIR)/surf.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT surf.lo -MD -MP -MF $(DEPDIR)/surf.Tpo -c -o surf.lo `test -f 'surf/surf.c' || echo '$(srcdir)/'`surf/surf.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/surf.Tpo $(DEPDIR)/surf.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/surf.c' object='surf.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o surf.lo `test -f 'surf/surf.c' || echo '$(srcdir)/'`surf/surf.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o surf.lo `test -f 'surf/surf.c' || echo '$(srcdir)/'`surf/surf.c
 
 surfxml_parse.lo: surf/surfxml_parse.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT surfxml_parse.lo -MD -MP -MF "$(DEPDIR)/surfxml_parse.Tpo" -c -o surfxml_parse.lo `test -f 'surf/surfxml_parse.c' || echo '$(srcdir)/'`surf/surfxml_parse.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/surfxml_parse.Tpo" "$(DEPDIR)/surfxml_parse.Plo"; else rm -f "$(DEPDIR)/surfxml_parse.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT surfxml_parse.lo -MD -MP -MF $(DEPDIR)/surfxml_parse.Tpo -c -o surfxml_parse.lo `test -f 'surf/surfxml_parse.c' || echo '$(srcdir)/'`surf/surfxml_parse.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/surfxml_parse.Tpo $(DEPDIR)/surfxml_parse.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/surfxml_parse.c' object='surfxml_parse.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o surfxml_parse.lo `test -f 'surf/surfxml_parse.c' || echo '$(srcdir)/'`surf/surfxml_parse.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o surfxml_parse.lo `test -f 'surf/surfxml_parse.c' || echo '$(srcdir)/'`surf/surfxml_parse.c
 
 cpu.lo: surf/cpu.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cpu.lo -MD -MP -MF "$(DEPDIR)/cpu.Tpo" -c -o cpu.lo `test -f 'surf/cpu.c' || echo '$(srcdir)/'`surf/cpu.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/cpu.Tpo" "$(DEPDIR)/cpu.Plo"; else rm -f "$(DEPDIR)/cpu.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cpu.lo -MD -MP -MF $(DEPDIR)/cpu.Tpo -c -o cpu.lo `test -f 'surf/cpu.c' || echo '$(srcdir)/'`surf/cpu.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/cpu.Tpo $(DEPDIR)/cpu.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/cpu.c' object='cpu.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cpu.lo `test -f 'surf/cpu.c' || echo '$(srcdir)/'`surf/cpu.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cpu.lo `test -f 'surf/cpu.c' || echo '$(srcdir)/'`surf/cpu.c
 
 network.lo: surf/network.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT network.lo -MD -MP -MF "$(DEPDIR)/network.Tpo" -c -o network.lo `test -f 'surf/network.c' || echo '$(srcdir)/'`surf/network.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/network.Tpo" "$(DEPDIR)/network.Plo"; else rm -f "$(DEPDIR)/network.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT network.lo -MD -MP -MF $(DEPDIR)/network.Tpo -c -o network.lo `test -f 'surf/network.c' || echo '$(srcdir)/'`surf/network.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/network.Tpo $(DEPDIR)/network.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/network.c' object='network.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o network.lo `test -f 'surf/network.c' || echo '$(srcdir)/'`surf/network.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o network.lo `test -f 'surf/network.c' || echo '$(srcdir)/'`surf/network.c
 
 workstation.lo: surf/workstation.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT workstation.lo -MD -MP -MF "$(DEPDIR)/workstation.Tpo" -c -o workstation.lo `test -f 'surf/workstation.c' || echo '$(srcdir)/'`surf/workstation.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/workstation.Tpo" "$(DEPDIR)/workstation.Plo"; else rm -f "$(DEPDIR)/workstation.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT workstation.lo -MD -MP -MF $(DEPDIR)/workstation.Tpo -c -o workstation.lo `test -f 'surf/workstation.c' || echo '$(srcdir)/'`surf/workstation.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/workstation.Tpo $(DEPDIR)/workstation.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/workstation.c' object='workstation.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o workstation.lo `test -f 'surf/workstation.c' || echo '$(srcdir)/'`surf/workstation.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o workstation.lo `test -f 'surf/workstation.c' || echo '$(srcdir)/'`surf/workstation.c
 
 surf_timer.lo: surf/surf_timer.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT surf_timer.lo -MD -MP -MF "$(DEPDIR)/surf_timer.Tpo" -c -o surf_timer.lo `test -f 'surf/surf_timer.c' || echo '$(srcdir)/'`surf/surf_timer.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/surf_timer.Tpo" "$(DEPDIR)/surf_timer.Plo"; else rm -f "$(DEPDIR)/surf_timer.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT surf_timer.lo -MD -MP -MF $(DEPDIR)/surf_timer.Tpo -c -o surf_timer.lo `test -f 'surf/surf_timer.c' || echo '$(srcdir)/'`surf/surf_timer.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/surf_timer.Tpo $(DEPDIR)/surf_timer.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/surf_timer.c' object='surf_timer.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o surf_timer.lo `test -f 'surf/surf_timer.c' || echo '$(srcdir)/'`surf/surf_timer.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o surf_timer.lo `test -f 'surf/surf_timer.c' || echo '$(srcdir)/'`surf/surf_timer.c
 
 network_dassf.lo: surf/network_dassf.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT network_dassf.lo -MD -MP -MF "$(DEPDIR)/network_dassf.Tpo" -c -o network_dassf.lo `test -f 'surf/network_dassf.c' || echo '$(srcdir)/'`surf/network_dassf.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/network_dassf.Tpo" "$(DEPDIR)/network_dassf.Plo"; else rm -f "$(DEPDIR)/network_dassf.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT network_dassf.lo -MD -MP -MF $(DEPDIR)/network_dassf.Tpo -c -o network_dassf.lo `test -f 'surf/network_dassf.c' || echo '$(srcdir)/'`surf/network_dassf.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/network_dassf.Tpo $(DEPDIR)/network_dassf.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/network_dassf.c' object='network_dassf.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o network_dassf.lo `test -f 'surf/network_dassf.c' || echo '$(srcdir)/'`surf/network_dassf.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o network_dassf.lo `test -f 'surf/network_dassf.c' || echo '$(srcdir)/'`surf/network_dassf.c
 
 workstation_KCCFLN05.lo: surf/workstation_KCCFLN05.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT workstation_KCCFLN05.lo -MD -MP -MF "$(DEPDIR)/workstation_KCCFLN05.Tpo" -c -o workstation_KCCFLN05.lo `test -f 'surf/workstation_KCCFLN05.c' || echo '$(srcdir)/'`surf/workstation_KCCFLN05.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/workstation_KCCFLN05.Tpo" "$(DEPDIR)/workstation_KCCFLN05.Plo"; else rm -f "$(DEPDIR)/workstation_KCCFLN05.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT workstation_KCCFLN05.lo -MD -MP -MF $(DEPDIR)/workstation_KCCFLN05.Tpo -c -o workstation_KCCFLN05.lo `test -f 'surf/workstation_KCCFLN05.c' || echo '$(srcdir)/'`surf/workstation_KCCFLN05.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/workstation_KCCFLN05.Tpo $(DEPDIR)/workstation_KCCFLN05.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/workstation_KCCFLN05.c' object='workstation_KCCFLN05.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o workstation_KCCFLN05.lo `test -f 'surf/workstation_KCCFLN05.c' || echo '$(srcdir)/'`surf/workstation_KCCFLN05.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o workstation_KCCFLN05.lo `test -f 'surf/workstation_KCCFLN05.c' || echo '$(srcdir)/'`surf/workstation_KCCFLN05.c
 
 network_gtnets.lo: surf/network_gtnets.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT network_gtnets.lo -MD -MP -MF "$(DEPDIR)/network_gtnets.Tpo" -c -o network_gtnets.lo `test -f 'surf/network_gtnets.c' || echo '$(srcdir)/'`surf/network_gtnets.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/network_gtnets.Tpo" "$(DEPDIR)/network_gtnets.Plo"; else rm -f "$(DEPDIR)/network_gtnets.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT network_gtnets.lo -MD -MP -MF $(DEPDIR)/network_gtnets.Tpo -c -o network_gtnets.lo `test -f 'surf/network_gtnets.c' || echo '$(srcdir)/'`surf/network_gtnets.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/network_gtnets.Tpo $(DEPDIR)/network_gtnets.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/network_gtnets.c' object='network_gtnets.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o network_gtnets.lo `test -f 'surf/network_gtnets.c' || echo '$(srcdir)/'`surf/network_gtnets.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o network_gtnets.lo `test -f 'surf/network_gtnets.c' || echo '$(srcdir)/'`surf/network_gtnets.c
 
 sdp.lo: surf/sdp.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sdp.lo -MD -MP -MF "$(DEPDIR)/sdp.Tpo" -c -o sdp.lo `test -f 'surf/sdp.c' || echo '$(srcdir)/'`surf/sdp.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sdp.Tpo" "$(DEPDIR)/sdp.Plo"; else rm -f "$(DEPDIR)/sdp.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sdp.lo -MD -MP -MF $(DEPDIR)/sdp.Tpo -c -o sdp.lo `test -f 'surf/sdp.c' || echo '$(srcdir)/'`surf/sdp.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sdp.Tpo $(DEPDIR)/sdp.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='surf/sdp.c' object='sdp.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sdp.lo `test -f 'surf/sdp.c' || echo '$(srcdir)/'`surf/sdp.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sdp.lo `test -f 'surf/sdp.c' || echo '$(srcdir)/'`surf/sdp.c
 
 smx_global.lo: simix/smx_global.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_global.lo -MD -MP -MF "$(DEPDIR)/smx_global.Tpo" -c -o smx_global.lo `test -f 'simix/smx_global.c' || echo '$(srcdir)/'`simix/smx_global.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_global.Tpo" "$(DEPDIR)/smx_global.Plo"; else rm -f "$(DEPDIR)/smx_global.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_global.lo -MD -MP -MF $(DEPDIR)/smx_global.Tpo -c -o smx_global.lo `test -f 'simix/smx_global.c' || echo '$(srcdir)/'`simix/smx_global.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_global.Tpo $(DEPDIR)/smx_global.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_global.c' object='smx_global.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_global.lo `test -f 'simix/smx_global.c' || echo '$(srcdir)/'`simix/smx_global.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_global.lo `test -f 'simix/smx_global.c' || echo '$(srcdir)/'`simix/smx_global.c
 
 smx_deployment.lo: simix/smx_deployment.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_deployment.lo -MD -MP -MF "$(DEPDIR)/smx_deployment.Tpo" -c -o smx_deployment.lo `test -f 'simix/smx_deployment.c' || echo '$(srcdir)/'`simix/smx_deployment.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_deployment.Tpo" "$(DEPDIR)/smx_deployment.Plo"; else rm -f "$(DEPDIR)/smx_deployment.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_deployment.lo -MD -MP -MF $(DEPDIR)/smx_deployment.Tpo -c -o smx_deployment.lo `test -f 'simix/smx_deployment.c' || echo '$(srcdir)/'`simix/smx_deployment.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_deployment.Tpo $(DEPDIR)/smx_deployment.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_deployment.c' object='smx_deployment.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_deployment.lo `test -f 'simix/smx_deployment.c' || echo '$(srcdir)/'`simix/smx_deployment.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_deployment.lo `test -f 'simix/smx_deployment.c' || echo '$(srcdir)/'`simix/smx_deployment.c
 
 smx_config.lo: simix/smx_config.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_config.lo -MD -MP -MF "$(DEPDIR)/smx_config.Tpo" -c -o smx_config.lo `test -f 'simix/smx_config.c' || echo '$(srcdir)/'`simix/smx_config.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_config.Tpo" "$(DEPDIR)/smx_config.Plo"; else rm -f "$(DEPDIR)/smx_config.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_config.lo -MD -MP -MF $(DEPDIR)/smx_config.Tpo -c -o smx_config.lo `test -f 'simix/smx_config.c' || echo '$(srcdir)/'`simix/smx_config.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_config.Tpo $(DEPDIR)/smx_config.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_config.c' object='smx_config.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_config.lo `test -f 'simix/smx_config.c' || echo '$(srcdir)/'`simix/smx_config.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_config.lo `test -f 'simix/smx_config.c' || echo '$(srcdir)/'`simix/smx_config.c
 
 smx_environment.lo: simix/smx_environment.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_environment.lo -MD -MP -MF "$(DEPDIR)/smx_environment.Tpo" -c -o smx_environment.lo `test -f 'simix/smx_environment.c' || echo '$(srcdir)/'`simix/smx_environment.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_environment.Tpo" "$(DEPDIR)/smx_environment.Plo"; else rm -f "$(DEPDIR)/smx_environment.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_environment.lo -MD -MP -MF $(DEPDIR)/smx_environment.Tpo -c -o smx_environment.lo `test -f 'simix/smx_environment.c' || echo '$(srcdir)/'`simix/smx_environment.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_environment.Tpo $(DEPDIR)/smx_environment.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_environment.c' object='smx_environment.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_environment.lo `test -f 'simix/smx_environment.c' || echo '$(srcdir)/'`simix/smx_environment.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_environment.lo `test -f 'simix/smx_environment.c' || echo '$(srcdir)/'`simix/smx_environment.c
 
 smx_host.lo: simix/smx_host.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_host.lo -MD -MP -MF "$(DEPDIR)/smx_host.Tpo" -c -o smx_host.lo `test -f 'simix/smx_host.c' || echo '$(srcdir)/'`simix/smx_host.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_host.Tpo" "$(DEPDIR)/smx_host.Plo"; else rm -f "$(DEPDIR)/smx_host.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_host.lo -MD -MP -MF $(DEPDIR)/smx_host.Tpo -c -o smx_host.lo `test -f 'simix/smx_host.c' || echo '$(srcdir)/'`simix/smx_host.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_host.Tpo $(DEPDIR)/smx_host.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_host.c' object='smx_host.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_host.lo `test -f 'simix/smx_host.c' || echo '$(srcdir)/'`simix/smx_host.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_host.lo `test -f 'simix/smx_host.c' || echo '$(srcdir)/'`simix/smx_host.c
 
 smx_process.lo: simix/smx_process.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_process.lo -MD -MP -MF "$(DEPDIR)/smx_process.Tpo" -c -o smx_process.lo `test -f 'simix/smx_process.c' || echo '$(srcdir)/'`simix/smx_process.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_process.Tpo" "$(DEPDIR)/smx_process.Plo"; else rm -f "$(DEPDIR)/smx_process.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_process.lo -MD -MP -MF $(DEPDIR)/smx_process.Tpo -c -o smx_process.lo `test -f 'simix/smx_process.c' || echo '$(srcdir)/'`simix/smx_process.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_process.Tpo $(DEPDIR)/smx_process.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_process.c' object='smx_process.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_process.lo `test -f 'simix/smx_process.c' || echo '$(srcdir)/'`simix/smx_process.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_process.lo `test -f 'simix/smx_process.c' || echo '$(srcdir)/'`simix/smx_process.c
 
 smx_action.lo: simix/smx_action.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_action.lo -MD -MP -MF "$(DEPDIR)/smx_action.Tpo" -c -o smx_action.lo `test -f 'simix/smx_action.c' || echo '$(srcdir)/'`simix/smx_action.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_action.Tpo" "$(DEPDIR)/smx_action.Plo"; else rm -f "$(DEPDIR)/smx_action.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_action.lo -MD -MP -MF $(DEPDIR)/smx_action.Tpo -c -o smx_action.lo `test -f 'simix/smx_action.c' || echo '$(srcdir)/'`simix/smx_action.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_action.Tpo $(DEPDIR)/smx_action.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_action.c' object='smx_action.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_action.lo `test -f 'simix/smx_action.c' || echo '$(srcdir)/'`simix/smx_action.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_action.lo `test -f 'simix/smx_action.c' || echo '$(srcdir)/'`simix/smx_action.c
 
 smx_synchro.lo: simix/smx_synchro.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_synchro.lo -MD -MP -MF "$(DEPDIR)/smx_synchro.Tpo" -c -o smx_synchro.lo `test -f 'simix/smx_synchro.c' || echo '$(srcdir)/'`simix/smx_synchro.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/smx_synchro.Tpo" "$(DEPDIR)/smx_synchro.Plo"; else rm -f "$(DEPDIR)/smx_synchro.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT smx_synchro.lo -MD -MP -MF $(DEPDIR)/smx_synchro.Tpo -c -o smx_synchro.lo `test -f 'simix/smx_synchro.c' || echo '$(srcdir)/'`simix/smx_synchro.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/smx_synchro.Tpo $(DEPDIR)/smx_synchro.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simix/smx_synchro.c' object='smx_synchro.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_synchro.lo `test -f 'simix/smx_synchro.c' || echo '$(srcdir)/'`simix/smx_synchro.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o smx_synchro.lo `test -f 'simix/smx_synchro.c' || echo '$(srcdir)/'`simix/smx_synchro.c
 
 context.lo: xbt/context.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT context.lo -MD -MP -MF "$(DEPDIR)/context.Tpo" -c -o context.lo `test -f 'xbt/context.c' || echo '$(srcdir)/'`xbt/context.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/context.Tpo" "$(DEPDIR)/context.Plo"; else rm -f "$(DEPDIR)/context.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT context.lo -MD -MP -MF $(DEPDIR)/context.Tpo -c -o context.lo `test -f 'xbt/context.c' || echo '$(srcdir)/'`xbt/context.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/context.Tpo $(DEPDIR)/context.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='xbt/context.c' object='context.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o context.lo `test -f 'xbt/context.c' || echo '$(srcdir)/'`xbt/context.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o context.lo `test -f 'xbt/context.c' || echo '$(srcdir)/'`xbt/context.c
 
 msg_config.lo: msg/msg_config.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT msg_config.lo -MD -MP -MF "$(DEPDIR)/msg_config.Tpo" -c -o msg_config.lo `test -f 'msg/msg_config.c' || echo '$(srcdir)/'`msg/msg_config.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/msg_config.Tpo" "$(DEPDIR)/msg_config.Plo"; else rm -f "$(DEPDIR)/msg_config.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT msg_config.lo -MD -MP -MF $(DEPDIR)/msg_config.Tpo -c -o msg_config.lo `test -f 'msg/msg_config.c' || echo '$(srcdir)/'`msg/msg_config.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/msg_config.Tpo $(DEPDIR)/msg_config.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/msg_config.c' object='msg_config.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o msg_config.lo `test -f 'msg/msg_config.c' || echo '$(srcdir)/'`msg/msg_config.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o msg_config.lo `test -f 'msg/msg_config.c' || echo '$(srcdir)/'`msg/msg_config.c
 
 task.lo: msg/task.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task.lo -MD -MP -MF "$(DEPDIR)/task.Tpo" -c -o task.lo `test -f 'msg/task.c' || echo '$(srcdir)/'`msg/task.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/task.Tpo" "$(DEPDIR)/task.Plo"; else rm -f "$(DEPDIR)/task.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task.lo -MD -MP -MF $(DEPDIR)/task.Tpo -c -o task.lo `test -f 'msg/task.c' || echo '$(srcdir)/'`msg/task.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/task.Tpo $(DEPDIR)/task.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/task.c' object='task.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task.lo `test -f 'msg/task.c' || echo '$(srcdir)/'`msg/task.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task.lo `test -f 'msg/task.c' || echo '$(srcdir)/'`msg/task.c
 
 host.lo: msg/host.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT host.lo -MD -MP -MF "$(DEPDIR)/host.Tpo" -c -o host.lo `test -f 'msg/host.c' || echo '$(srcdir)/'`msg/host.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/host.Tpo" "$(DEPDIR)/host.Plo"; else rm -f "$(DEPDIR)/host.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT host.lo -MD -MP -MF $(DEPDIR)/host.Tpo -c -o host.lo `test -f 'msg/host.c' || echo '$(srcdir)/'`msg/host.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/host.Tpo $(DEPDIR)/host.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/host.c' object='host.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o host.lo `test -f 'msg/host.c' || echo '$(srcdir)/'`msg/host.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o host.lo `test -f 'msg/host.c' || echo '$(srcdir)/'`msg/host.c
 
 m_process.lo: msg/m_process.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT m_process.lo -MD -MP -MF "$(DEPDIR)/m_process.Tpo" -c -o m_process.lo `test -f 'msg/m_process.c' || echo '$(srcdir)/'`msg/m_process.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/m_process.Tpo" "$(DEPDIR)/m_process.Plo"; else rm -f "$(DEPDIR)/m_process.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT m_process.lo -MD -MP -MF $(DEPDIR)/m_process.Tpo -c -o m_process.lo `test -f 'msg/m_process.c' || echo '$(srcdir)/'`msg/m_process.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/m_process.Tpo $(DEPDIR)/m_process.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/m_process.c' object='m_process.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o m_process.lo `test -f 'msg/m_process.c' || echo '$(srcdir)/'`msg/m_process.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o m_process.lo `test -f 'msg/m_process.c' || echo '$(srcdir)/'`msg/m_process.c
 
 gos.lo: msg/gos.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gos.lo -MD -MP -MF "$(DEPDIR)/gos.Tpo" -c -o gos.lo `test -f 'msg/gos.c' || echo '$(srcdir)/'`msg/gos.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/gos.Tpo" "$(DEPDIR)/gos.Plo"; else rm -f "$(DEPDIR)/gos.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gos.lo -MD -MP -MF $(DEPDIR)/gos.Tpo -c -o gos.lo `test -f 'msg/gos.c' || echo '$(srcdir)/'`msg/gos.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/gos.Tpo $(DEPDIR)/gos.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/gos.c' object='gos.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gos.lo `test -f 'msg/gos.c' || echo '$(srcdir)/'`msg/gos.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gos.lo `test -f 'msg/gos.c' || echo '$(srcdir)/'`msg/gos.c
 
 global.lo: msg/global.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT global.lo -MD -MP -MF "$(DEPDIR)/global.Tpo" -c -o global.lo `test -f 'msg/global.c' || echo '$(srcdir)/'`msg/global.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/global.Tpo" "$(DEPDIR)/global.Plo"; else rm -f "$(DEPDIR)/global.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT global.lo -MD -MP -MF $(DEPDIR)/global.Tpo -c -o global.lo `test -f 'msg/global.c' || echo '$(srcdir)/'`msg/global.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/global.Tpo $(DEPDIR)/global.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/global.c' object='global.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o global.lo `test -f 'msg/global.c' || echo '$(srcdir)/'`msg/global.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o global.lo `test -f 'msg/global.c' || echo '$(srcdir)/'`msg/global.c
 
 environment.lo: msg/environment.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT environment.lo -MD -MP -MF "$(DEPDIR)/environment.Tpo" -c -o environment.lo `test -f 'msg/environment.c' || echo '$(srcdir)/'`msg/environment.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/environment.Tpo" "$(DEPDIR)/environment.Plo"; else rm -f "$(DEPDIR)/environment.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT environment.lo -MD -MP -MF $(DEPDIR)/environment.Tpo -c -o environment.lo `test -f 'msg/environment.c' || echo '$(srcdir)/'`msg/environment.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/environment.Tpo $(DEPDIR)/environment.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/environment.c' object='environment.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o environment.lo `test -f 'msg/environment.c' || echo '$(srcdir)/'`msg/environment.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o environment.lo `test -f 'msg/environment.c' || echo '$(srcdir)/'`msg/environment.c
 
 deployment.lo: msg/deployment.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deployment.lo -MD -MP -MF "$(DEPDIR)/deployment.Tpo" -c -o deployment.lo `test -f 'msg/deployment.c' || echo '$(srcdir)/'`msg/deployment.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/deployment.Tpo" "$(DEPDIR)/deployment.Plo"; else rm -f "$(DEPDIR)/deployment.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deployment.lo -MD -MP -MF $(DEPDIR)/deployment.Tpo -c -o deployment.lo `test -f 'msg/deployment.c' || echo '$(srcdir)/'`msg/deployment.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/deployment.Tpo $(DEPDIR)/deployment.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='msg/deployment.c' object='deployment.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deployment.lo `test -f 'msg/deployment.c' || echo '$(srcdir)/'`msg/deployment.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deployment.lo `test -f 'msg/deployment.c' || echo '$(srcdir)/'`msg/deployment.c
 
 sd_global.lo: simdag/sd_global.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_global.lo -MD -MP -MF "$(DEPDIR)/sd_global.Tpo" -c -o sd_global.lo `test -f 'simdag/sd_global.c' || echo '$(srcdir)/'`simdag/sd_global.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sd_global.Tpo" "$(DEPDIR)/sd_global.Plo"; else rm -f "$(DEPDIR)/sd_global.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_global.lo -MD -MP -MF $(DEPDIR)/sd_global.Tpo -c -o sd_global.lo `test -f 'simdag/sd_global.c' || echo '$(srcdir)/'`simdag/sd_global.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sd_global.Tpo $(DEPDIR)/sd_global.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simdag/sd_global.c' object='sd_global.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_global.lo `test -f 'simdag/sd_global.c' || echo '$(srcdir)/'`simdag/sd_global.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_global.lo `test -f 'simdag/sd_global.c' || echo '$(srcdir)/'`simdag/sd_global.c
 
 sd_link.lo: simdag/sd_link.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_link.lo -MD -MP -MF "$(DEPDIR)/sd_link.Tpo" -c -o sd_link.lo `test -f 'simdag/sd_link.c' || echo '$(srcdir)/'`simdag/sd_link.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sd_link.Tpo" "$(DEPDIR)/sd_link.Plo"; else rm -f "$(DEPDIR)/sd_link.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_link.lo -MD -MP -MF $(DEPDIR)/sd_link.Tpo -c -o sd_link.lo `test -f 'simdag/sd_link.c' || echo '$(srcdir)/'`simdag/sd_link.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sd_link.Tpo $(DEPDIR)/sd_link.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simdag/sd_link.c' object='sd_link.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_link.lo `test -f 'simdag/sd_link.c' || echo '$(srcdir)/'`simdag/sd_link.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_link.lo `test -f 'simdag/sd_link.c' || echo '$(srcdir)/'`simdag/sd_link.c
 
 sd_task.lo: simdag/sd_task.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_task.lo -MD -MP -MF "$(DEPDIR)/sd_task.Tpo" -c -o sd_task.lo `test -f 'simdag/sd_task.c' || echo '$(srcdir)/'`simdag/sd_task.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sd_task.Tpo" "$(DEPDIR)/sd_task.Plo"; else rm -f "$(DEPDIR)/sd_task.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_task.lo -MD -MP -MF $(DEPDIR)/sd_task.Tpo -c -o sd_task.lo `test -f 'simdag/sd_task.c' || echo '$(srcdir)/'`simdag/sd_task.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sd_task.Tpo $(DEPDIR)/sd_task.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simdag/sd_task.c' object='sd_task.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_task.lo `test -f 'simdag/sd_task.c' || echo '$(srcdir)/'`simdag/sd_task.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_task.lo `test -f 'simdag/sd_task.c' || echo '$(srcdir)/'`simdag/sd_task.c
 
 sd_workstation.lo: simdag/sd_workstation.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_workstation.lo -MD -MP -MF "$(DEPDIR)/sd_workstation.Tpo" -c -o sd_workstation.lo `test -f 'simdag/sd_workstation.c' || echo '$(srcdir)/'`simdag/sd_workstation.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sd_workstation.Tpo" "$(DEPDIR)/sd_workstation.Plo"; else rm -f "$(DEPDIR)/sd_workstation.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sd_workstation.lo -MD -MP -MF $(DEPDIR)/sd_workstation.Tpo -c -o sd_workstation.lo `test -f 'simdag/sd_workstation.c' || echo '$(srcdir)/'`simdag/sd_workstation.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sd_workstation.Tpo $(DEPDIR)/sd_workstation.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='simdag/sd_workstation.c' object='sd_workstation.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_workstation.lo `test -f 'simdag/sd_workstation.c' || echo '$(srcdir)/'`simdag/sd_workstation.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sd_workstation.lo `test -f 'simdag/sd_workstation.c' || echo '$(srcdir)/'`simdag/sd_workstation.c
 
 sg_transport.lo: gras/Transport/sg_transport.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_transport.lo -MD -MP -MF "$(DEPDIR)/sg_transport.Tpo" -c -o sg_transport.lo `test -f 'gras/Transport/sg_transport.c' || echo '$(srcdir)/'`gras/Transport/sg_transport.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sg_transport.Tpo" "$(DEPDIR)/sg_transport.Plo"; else rm -f "$(DEPDIR)/sg_transport.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_transport.lo -MD -MP -MF $(DEPDIR)/sg_transport.Tpo -c -o sg_transport.lo `test -f 'gras/Transport/sg_transport.c' || echo '$(srcdir)/'`gras/Transport/sg_transport.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sg_transport.Tpo $(DEPDIR)/sg_transport.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Transport/sg_transport.c' object='sg_transport.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_transport.lo `test -f 'gras/Transport/sg_transport.c' || echo '$(srcdir)/'`gras/Transport/sg_transport.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_transport.lo `test -f 'gras/Transport/sg_transport.c' || echo '$(srcdir)/'`gras/Transport/sg_transport.c
 
 transport_plugin_sg.lo: gras/Transport/transport_plugin_sg.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport_plugin_sg.lo -MD -MP -MF "$(DEPDIR)/transport_plugin_sg.Tpo" -c -o transport_plugin_sg.lo `test -f 'gras/Transport/transport_plugin_sg.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_sg.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/transport_plugin_sg.Tpo" "$(DEPDIR)/transport_plugin_sg.Plo"; else rm -f "$(DEPDIR)/transport_plugin_sg.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT transport_plugin_sg.lo -MD -MP -MF $(DEPDIR)/transport_plugin_sg.Tpo -c -o transport_plugin_sg.lo `test -f 'gras/Transport/transport_plugin_sg.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_sg.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/transport_plugin_sg.Tpo $(DEPDIR)/transport_plugin_sg.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Transport/transport_plugin_sg.c' object='transport_plugin_sg.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport_plugin_sg.lo `test -f 'gras/Transport/transport_plugin_sg.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_sg.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o transport_plugin_sg.lo `test -f 'gras/Transport/transport_plugin_sg.c' || echo '$(srcdir)/'`gras/Transport/transport_plugin_sg.c
 
 sg_emul.lo: gras/Virtu/sg_emul.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_emul.lo -MD -MP -MF "$(DEPDIR)/sg_emul.Tpo" -c -o sg_emul.lo `test -f 'gras/Virtu/sg_emul.c' || echo '$(srcdir)/'`gras/Virtu/sg_emul.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sg_emul.Tpo" "$(DEPDIR)/sg_emul.Plo"; else rm -f "$(DEPDIR)/sg_emul.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_emul.lo -MD -MP -MF $(DEPDIR)/sg_emul.Tpo -c -o sg_emul.lo `test -f 'gras/Virtu/sg_emul.c' || echo '$(srcdir)/'`gras/Virtu/sg_emul.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sg_emul.Tpo $(DEPDIR)/sg_emul.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/sg_emul.c' object='sg_emul.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_emul.lo `test -f 'gras/Virtu/sg_emul.c' || echo '$(srcdir)/'`gras/Virtu/sg_emul.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_emul.lo `test -f 'gras/Virtu/sg_emul.c' || echo '$(srcdir)/'`gras/Virtu/sg_emul.c
 
 sg_process.lo: gras/Virtu/sg_process.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_process.lo -MD -MP -MF "$(DEPDIR)/sg_process.Tpo" -c -o sg_process.lo `test -f 'gras/Virtu/sg_process.c' || echo '$(srcdir)/'`gras/Virtu/sg_process.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sg_process.Tpo" "$(DEPDIR)/sg_process.Plo"; else rm -f "$(DEPDIR)/sg_process.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_process.lo -MD -MP -MF $(DEPDIR)/sg_process.Tpo -c -o sg_process.lo `test -f 'gras/Virtu/sg_process.c' || echo '$(srcdir)/'`gras/Virtu/sg_process.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sg_process.Tpo $(DEPDIR)/sg_process.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/sg_process.c' object='sg_process.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_process.lo `test -f 'gras/Virtu/sg_process.c' || echo '$(srcdir)/'`gras/Virtu/sg_process.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_process.lo `test -f 'gras/Virtu/sg_process.c' || echo '$(srcdir)/'`gras/Virtu/sg_process.c
 
 sg_time.lo: gras/Virtu/sg_time.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_time.lo -MD -MP -MF "$(DEPDIR)/sg_time.Tpo" -c -o sg_time.lo `test -f 'gras/Virtu/sg_time.c' || echo '$(srcdir)/'`gras/Virtu/sg_time.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sg_time.Tpo" "$(DEPDIR)/sg_time.Plo"; else rm -f "$(DEPDIR)/sg_time.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_time.lo -MD -MP -MF $(DEPDIR)/sg_time.Tpo -c -o sg_time.lo `test -f 'gras/Virtu/sg_time.c' || echo '$(srcdir)/'`gras/Virtu/sg_time.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sg_time.Tpo $(DEPDIR)/sg_time.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/sg_time.c' object='sg_time.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_time.lo `test -f 'gras/Virtu/sg_time.c' || echo '$(srcdir)/'`gras/Virtu/sg_time.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_time.lo `test -f 'gras/Virtu/sg_time.c' || echo '$(srcdir)/'`gras/Virtu/sg_time.c
 
 sg_dns.lo: gras/Virtu/sg_dns.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_dns.lo -MD -MP -MF "$(DEPDIR)/sg_dns.Tpo" -c -o sg_dns.lo `test -f 'gras/Virtu/sg_dns.c' || echo '$(srcdir)/'`gras/Virtu/sg_dns.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sg_dns.Tpo" "$(DEPDIR)/sg_dns.Plo"; else rm -f "$(DEPDIR)/sg_dns.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_dns.lo -MD -MP -MF $(DEPDIR)/sg_dns.Tpo -c -o sg_dns.lo `test -f 'gras/Virtu/sg_dns.c' || echo '$(srcdir)/'`gras/Virtu/sg_dns.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sg_dns.Tpo $(DEPDIR)/sg_dns.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Virtu/sg_dns.c' object='sg_dns.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_dns.lo `test -f 'gras/Virtu/sg_dns.c' || echo '$(srcdir)/'`gras/Virtu/sg_dns.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_dns.lo `test -f 'gras/Virtu/sg_dns.c' || echo '$(srcdir)/'`gras/Virtu/sg_dns.c
 
 sg_stubs.lo: gras/sg_stubs.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_stubs.lo -MD -MP -MF "$(DEPDIR)/sg_stubs.Tpo" -c -o sg_stubs.lo `test -f 'gras/sg_stubs.c' || echo '$(srcdir)/'`gras/sg_stubs.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sg_stubs.Tpo" "$(DEPDIR)/sg_stubs.Plo"; else rm -f "$(DEPDIR)/sg_stubs.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_stubs.lo -MD -MP -MF $(DEPDIR)/sg_stubs.Tpo -c -o sg_stubs.lo `test -f 'gras/sg_stubs.c' || echo '$(srcdir)/'`gras/sg_stubs.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sg_stubs.Tpo $(DEPDIR)/sg_stubs.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/sg_stubs.c' object='sg_stubs.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_stubs.lo `test -f 'gras/sg_stubs.c' || echo '$(srcdir)/'`gras/sg_stubs.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_stubs.lo `test -f 'gras/sg_stubs.c' || echo '$(srcdir)/'`gras/sg_stubs.c
 
 sg_msg.lo: gras/Msg/sg_msg.c
-@am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_msg.lo -MD -MP -MF "$(DEPDIR)/sg_msg.Tpo" -c -o sg_msg.lo `test -f 'gras/Msg/sg_msg.c' || echo '$(srcdir)/'`gras/Msg/sg_msg.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/sg_msg.Tpo" "$(DEPDIR)/sg_msg.Plo"; else rm -f "$(DEPDIR)/sg_msg.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sg_msg.lo -MD -MP -MF $(DEPDIR)/sg_msg.Tpo -c -o sg_msg.lo `test -f 'gras/Msg/sg_msg.c' || echo '$(srcdir)/'`gras/Msg/sg_msg.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/sg_msg.Tpo $(DEPDIR)/sg_msg.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='gras/Msg/sg_msg.c' object='sg_msg.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_msg.lo `test -f 'gras/Msg/sg_msg.c' || echo '$(srcdir)/'`gras/Msg/sg_msg.c
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sg_msg.lo `test -f 'gras/Msg/sg_msg.c' || echo '$(srcdir)/'`gras/Msg/sg_msg.c
+
+jxbt_context.lo: java/jxbt_context.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jxbt_context.lo -MD -MP -MF $(DEPDIR)/jxbt_context.Tpo -c -o jxbt_context.lo `test -f 'java/jxbt_context.c' || echo '$(srcdir)/'`java/jxbt_context.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jxbt_context.Tpo $(DEPDIR)/jxbt_context.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jxbt_context.c' object='jxbt_context.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jxbt_context.lo `test -f 'java/jxbt_context.c' || echo '$(srcdir)/'`java/jxbt_context.c
+
+jxbt_utilities.lo: java/jxbt_utilities.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jxbt_utilities.lo -MD -MP -MF $(DEPDIR)/jxbt_utilities.Tpo -c -o jxbt_utilities.lo `test -f 'java/jxbt_utilities.c' || echo '$(srcdir)/'`java/jxbt_utilities.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jxbt_utilities.Tpo $(DEPDIR)/jxbt_utilities.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jxbt_utilities.c' object='jxbt_utilities.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jxbt_utilities.lo `test -f 'java/jxbt_utilities.c' || echo '$(srcdir)/'`java/jxbt_utilities.c
+
+jmsg.lo: java/jmsg.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jmsg.lo -MD -MP -MF $(DEPDIR)/jmsg.Tpo -c -o jmsg.lo `test -f 'java/jmsg.c' || echo '$(srcdir)/'`java/jmsg.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jmsg.Tpo $(DEPDIR)/jmsg.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jmsg.c' object='jmsg.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jmsg.lo `test -f 'java/jmsg.c' || echo '$(srcdir)/'`java/jmsg.c
+
+jmsg_channel.lo: java/jmsg_channel.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jmsg_channel.lo -MD -MP -MF $(DEPDIR)/jmsg_channel.Tpo -c -o jmsg_channel.lo `test -f 'java/jmsg_channel.c' || echo '$(srcdir)/'`java/jmsg_channel.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jmsg_channel.Tpo $(DEPDIR)/jmsg_channel.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jmsg_channel.c' object='jmsg_channel.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jmsg_channel.lo `test -f 'java/jmsg_channel.c' || echo '$(srcdir)/'`java/jmsg_channel.c
+
+jmsg_host.lo: java/jmsg_host.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jmsg_host.lo -MD -MP -MF $(DEPDIR)/jmsg_host.Tpo -c -o jmsg_host.lo `test -f 'java/jmsg_host.c' || echo '$(srcdir)/'`java/jmsg_host.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jmsg_host.Tpo $(DEPDIR)/jmsg_host.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jmsg_host.c' object='jmsg_host.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jmsg_host.lo `test -f 'java/jmsg_host.c' || echo '$(srcdir)/'`java/jmsg_host.c
+
+jmsg_parallel_task.lo: java/jmsg_parallel_task.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jmsg_parallel_task.lo -MD -MP -MF $(DEPDIR)/jmsg_parallel_task.Tpo -c -o jmsg_parallel_task.lo `test -f 'java/jmsg_parallel_task.c' || echo '$(srcdir)/'`java/jmsg_parallel_task.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jmsg_parallel_task.Tpo $(DEPDIR)/jmsg_parallel_task.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jmsg_parallel_task.c' object='jmsg_parallel_task.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jmsg_parallel_task.lo `test -f 'java/jmsg_parallel_task.c' || echo '$(srcdir)/'`java/jmsg_parallel_task.c
+
+jmsg_process.lo: java/jmsg_process.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jmsg_process.lo -MD -MP -MF $(DEPDIR)/jmsg_process.Tpo -c -o jmsg_process.lo `test -f 'java/jmsg_process.c' || echo '$(srcdir)/'`java/jmsg_process.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jmsg_process.Tpo $(DEPDIR)/jmsg_process.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jmsg_process.c' object='jmsg_process.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jmsg_process.lo `test -f 'java/jmsg_process.c' || echo '$(srcdir)/'`java/jmsg_process.c
+
+jmsg_task.lo: java/jmsg_task.c
+@am__fastdepCC_TRUE@   $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT jmsg_task.lo -MD -MP -MF $(DEPDIR)/jmsg_task.Tpo -c -o jmsg_task.lo `test -f 'java/jmsg_task.c' || echo '$(srcdir)/'`java/jmsg_task.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/jmsg_task.Tpo $(DEPDIR)/jmsg_task.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='java/jmsg_task.c' object='jmsg_task.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o jmsg_task.lo `test -f 'java/jmsg_task.c' || echo '$(srcdir)/'`java/jmsg_task.c
 
 cunit_unit.o: ./cunit_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cunit_unit.o -MD -MP -MF "$(DEPDIR)/cunit_unit.Tpo" -c -o cunit_unit.o `test -f './cunit_unit.c' || echo '$(srcdir)/'`./cunit_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/cunit_unit.Tpo" "$(DEPDIR)/cunit_unit.Po"; else rm -f "$(DEPDIR)/cunit_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cunit_unit.o -MD -MP -MF $(DEPDIR)/cunit_unit.Tpo -c -o cunit_unit.o `test -f './cunit_unit.c' || echo '$(srcdir)/'`./cunit_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/cunit_unit.Tpo $(DEPDIR)/cunit_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./cunit_unit.c' object='cunit_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cunit_unit.o `test -f './cunit_unit.c' || echo '$(srcdir)/'`./cunit_unit.c
 
 cunit_unit.obj: ./cunit_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cunit_unit.obj -MD -MP -MF "$(DEPDIR)/cunit_unit.Tpo" -c -o cunit_unit.obj `if test -f './cunit_unit.c'; then $(CYGPATH_W) './cunit_unit.c'; else $(CYGPATH_W) '$(srcdir)/./cunit_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/cunit_unit.Tpo" "$(DEPDIR)/cunit_unit.Po"; else rm -f "$(DEPDIR)/cunit_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cunit_unit.obj -MD -MP -MF $(DEPDIR)/cunit_unit.Tpo -c -o cunit_unit.obj `if test -f './cunit_unit.c'; then $(CYGPATH_W) './cunit_unit.c'; else $(CYGPATH_W) '$(srcdir)/./cunit_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/cunit_unit.Tpo $(DEPDIR)/cunit_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./cunit_unit.c' object='cunit_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cunit_unit.obj `if test -f './cunit_unit.c'; then $(CYGPATH_W) './cunit_unit.c'; else $(CYGPATH_W) '$(srcdir)/./cunit_unit.c'; fi`
 
 ex_unit.o: ./ex_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ex_unit.o -MD -MP -MF "$(DEPDIR)/ex_unit.Tpo" -c -o ex_unit.o `test -f './ex_unit.c' || echo '$(srcdir)/'`./ex_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ex_unit.Tpo" "$(DEPDIR)/ex_unit.Po"; else rm -f "$(DEPDIR)/ex_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ex_unit.o -MD -MP -MF $(DEPDIR)/ex_unit.Tpo -c -o ex_unit.o `test -f './ex_unit.c' || echo '$(srcdir)/'`./ex_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ex_unit.Tpo $(DEPDIR)/ex_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./ex_unit.c' object='ex_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ex_unit.o `test -f './ex_unit.c' || echo '$(srcdir)/'`./ex_unit.c
 
 ex_unit.obj: ./ex_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ex_unit.obj -MD -MP -MF "$(DEPDIR)/ex_unit.Tpo" -c -o ex_unit.obj `if test -f './ex_unit.c'; then $(CYGPATH_W) './ex_unit.c'; else $(CYGPATH_W) '$(srcdir)/./ex_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/ex_unit.Tpo" "$(DEPDIR)/ex_unit.Po"; else rm -f "$(DEPDIR)/ex_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ex_unit.obj -MD -MP -MF $(DEPDIR)/ex_unit.Tpo -c -o ex_unit.obj `if test -f './ex_unit.c'; then $(CYGPATH_W) './ex_unit.c'; else $(CYGPATH_W) '$(srcdir)/./ex_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/ex_unit.Tpo $(DEPDIR)/ex_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./ex_unit.c' object='ex_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ex_unit.obj `if test -f './ex_unit.c'; then $(CYGPATH_W) './ex_unit.c'; else $(CYGPATH_W) '$(srcdir)/./ex_unit.c'; fi`
 
 dynar_unit.o: ./dynar_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dynar_unit.o -MD -MP -MF "$(DEPDIR)/dynar_unit.Tpo" -c -o dynar_unit.o `test -f './dynar_unit.c' || echo '$(srcdir)/'`./dynar_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dynar_unit.Tpo" "$(DEPDIR)/dynar_unit.Po"; else rm -f "$(DEPDIR)/dynar_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dynar_unit.o -MD -MP -MF $(DEPDIR)/dynar_unit.Tpo -c -o dynar_unit.o `test -f './dynar_unit.c' || echo '$(srcdir)/'`./dynar_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dynar_unit.Tpo $(DEPDIR)/dynar_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./dynar_unit.c' object='dynar_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dynar_unit.o `test -f './dynar_unit.c' || echo '$(srcdir)/'`./dynar_unit.c
 
 dynar_unit.obj: ./dynar_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dynar_unit.obj -MD -MP -MF "$(DEPDIR)/dynar_unit.Tpo" -c -o dynar_unit.obj `if test -f './dynar_unit.c'; then $(CYGPATH_W) './dynar_unit.c'; else $(CYGPATH_W) '$(srcdir)/./dynar_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dynar_unit.Tpo" "$(DEPDIR)/dynar_unit.Po"; else rm -f "$(DEPDIR)/dynar_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dynar_unit.obj -MD -MP -MF $(DEPDIR)/dynar_unit.Tpo -c -o dynar_unit.obj `if test -f './dynar_unit.c'; then $(CYGPATH_W) './dynar_unit.c'; else $(CYGPATH_W) '$(srcdir)/./dynar_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dynar_unit.Tpo $(DEPDIR)/dynar_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./dynar_unit.c' object='dynar_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dynar_unit.obj `if test -f './dynar_unit.c'; then $(CYGPATH_W) './dynar_unit.c'; else $(CYGPATH_W) '$(srcdir)/./dynar_unit.c'; fi`
 
 dict_unit.o: ./dict_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_unit.o -MD -MP -MF "$(DEPDIR)/dict_unit.Tpo" -c -o dict_unit.o `test -f './dict_unit.c' || echo '$(srcdir)/'`./dict_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dict_unit.Tpo" "$(DEPDIR)/dict_unit.Po"; else rm -f "$(DEPDIR)/dict_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_unit.o -MD -MP -MF $(DEPDIR)/dict_unit.Tpo -c -o dict_unit.o `test -f './dict_unit.c' || echo '$(srcdir)/'`./dict_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dict_unit.Tpo $(DEPDIR)/dict_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./dict_unit.c' object='dict_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_unit.o `test -f './dict_unit.c' || echo '$(srcdir)/'`./dict_unit.c
 
 dict_unit.obj: ./dict_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_unit.obj -MD -MP -MF "$(DEPDIR)/dict_unit.Tpo" -c -o dict_unit.obj `if test -f './dict_unit.c'; then $(CYGPATH_W) './dict_unit.c'; else $(CYGPATH_W) '$(srcdir)/./dict_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/dict_unit.Tpo" "$(DEPDIR)/dict_unit.Po"; else rm -f "$(DEPDIR)/dict_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT dict_unit.obj -MD -MP -MF $(DEPDIR)/dict_unit.Tpo -c -o dict_unit.obj `if test -f './dict_unit.c'; then $(CYGPATH_W) './dict_unit.c'; else $(CYGPATH_W) '$(srcdir)/./dict_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/dict_unit.Tpo $(DEPDIR)/dict_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./dict_unit.c' object='dict_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dict_unit.obj `if test -f './dict_unit.c'; then $(CYGPATH_W) './dict_unit.c'; else $(CYGPATH_W) '$(srcdir)/./dict_unit.c'; fi`
 
 set_unit.o: ./set_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT set_unit.o -MD -MP -MF "$(DEPDIR)/set_unit.Tpo" -c -o set_unit.o `test -f './set_unit.c' || echo '$(srcdir)/'`./set_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/set_unit.Tpo" "$(DEPDIR)/set_unit.Po"; else rm -f "$(DEPDIR)/set_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT set_unit.o -MD -MP -MF $(DEPDIR)/set_unit.Tpo -c -o set_unit.o `test -f './set_unit.c' || echo '$(srcdir)/'`./set_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/set_unit.Tpo $(DEPDIR)/set_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./set_unit.c' object='set_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o set_unit.o `test -f './set_unit.c' || echo '$(srcdir)/'`./set_unit.c
 
 set_unit.obj: ./set_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT set_unit.obj -MD -MP -MF "$(DEPDIR)/set_unit.Tpo" -c -o set_unit.obj `if test -f './set_unit.c'; then $(CYGPATH_W) './set_unit.c'; else $(CYGPATH_W) '$(srcdir)/./set_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/set_unit.Tpo" "$(DEPDIR)/set_unit.Po"; else rm -f "$(DEPDIR)/set_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT set_unit.obj -MD -MP -MF $(DEPDIR)/set_unit.Tpo -c -o set_unit.obj `if test -f './set_unit.c'; then $(CYGPATH_W) './set_unit.c'; else $(CYGPATH_W) '$(srcdir)/./set_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/set_unit.Tpo $(DEPDIR)/set_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./set_unit.c' object='set_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o set_unit.obj `if test -f './set_unit.c'; then $(CYGPATH_W) './set_unit.c'; else $(CYGPATH_W) '$(srcdir)/./set_unit.c'; fi`
 
 swag_unit.o: ./swag_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT swag_unit.o -MD -MP -MF "$(DEPDIR)/swag_unit.Tpo" -c -o swag_unit.o `test -f './swag_unit.c' || echo '$(srcdir)/'`./swag_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/swag_unit.Tpo" "$(DEPDIR)/swag_unit.Po"; else rm -f "$(DEPDIR)/swag_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT swag_unit.o -MD -MP -MF $(DEPDIR)/swag_unit.Tpo -c -o swag_unit.o `test -f './swag_unit.c' || echo '$(srcdir)/'`./swag_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/swag_unit.Tpo $(DEPDIR)/swag_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./swag_unit.c' object='swag_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o swag_unit.o `test -f './swag_unit.c' || echo '$(srcdir)/'`./swag_unit.c
 
 swag_unit.obj: ./swag_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT swag_unit.obj -MD -MP -MF "$(DEPDIR)/swag_unit.Tpo" -c -o swag_unit.obj `if test -f './swag_unit.c'; then $(CYGPATH_W) './swag_unit.c'; else $(CYGPATH_W) '$(srcdir)/./swag_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/swag_unit.Tpo" "$(DEPDIR)/swag_unit.Po"; else rm -f "$(DEPDIR)/swag_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT swag_unit.obj -MD -MP -MF $(DEPDIR)/swag_unit.Tpo -c -o swag_unit.obj `if test -f './swag_unit.c'; then $(CYGPATH_W) './swag_unit.c'; else $(CYGPATH_W) '$(srcdir)/./swag_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/swag_unit.Tpo $(DEPDIR)/swag_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./swag_unit.c' object='swag_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o swag_unit.obj `if test -f './swag_unit.c'; then $(CYGPATH_W) './swag_unit.c'; else $(CYGPATH_W) '$(srcdir)/./swag_unit.c'; fi`
 
 xbt_str_unit.o: ./xbt_str_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_str_unit.o -MD -MP -MF "$(DEPDIR)/xbt_str_unit.Tpo" -c -o xbt_str_unit.o `test -f './xbt_str_unit.c' || echo '$(srcdir)/'`./xbt_str_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_str_unit.Tpo" "$(DEPDIR)/xbt_str_unit.Po"; else rm -f "$(DEPDIR)/xbt_str_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_str_unit.o -MD -MP -MF $(DEPDIR)/xbt_str_unit.Tpo -c -o xbt_str_unit.o `test -f './xbt_str_unit.c' || echo '$(srcdir)/'`./xbt_str_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_str_unit.Tpo $(DEPDIR)/xbt_str_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./xbt_str_unit.c' object='xbt_str_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_str_unit.o `test -f './xbt_str_unit.c' || echo '$(srcdir)/'`./xbt_str_unit.c
 
 xbt_str_unit.obj: ./xbt_str_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_str_unit.obj -MD -MP -MF "$(DEPDIR)/xbt_str_unit.Tpo" -c -o xbt_str_unit.obj `if test -f './xbt_str_unit.c'; then $(CYGPATH_W) './xbt_str_unit.c'; else $(CYGPATH_W) '$(srcdir)/./xbt_str_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/xbt_str_unit.Tpo" "$(DEPDIR)/xbt_str_unit.Po"; else rm -f "$(DEPDIR)/xbt_str_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xbt_str_unit.obj -MD -MP -MF $(DEPDIR)/xbt_str_unit.Tpo -c -o xbt_str_unit.obj `if test -f './xbt_str_unit.c'; then $(CYGPATH_W) './xbt_str_unit.c'; else $(CYGPATH_W) '$(srcdir)/./xbt_str_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/xbt_str_unit.Tpo $(DEPDIR)/xbt_str_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./xbt_str_unit.c' object='xbt_str_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xbt_str_unit.obj `if test -f './xbt_str_unit.c'; then $(CYGPATH_W) './xbt_str_unit.c'; else $(CYGPATH_W) '$(srcdir)/./xbt_str_unit.c'; fi`
 
 config_unit.o: ./config_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT config_unit.o -MD -MP -MF "$(DEPDIR)/config_unit.Tpo" -c -o config_unit.o `test -f './config_unit.c' || echo '$(srcdir)/'`./config_unit.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/config_unit.Tpo" "$(DEPDIR)/config_unit.Po"; else rm -f "$(DEPDIR)/config_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT config_unit.o -MD -MP -MF $(DEPDIR)/config_unit.Tpo -c -o config_unit.o `test -f './config_unit.c' || echo '$(srcdir)/'`./config_unit.c
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/config_unit.Tpo $(DEPDIR)/config_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./config_unit.c' object='config_unit.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o config_unit.o `test -f './config_unit.c' || echo '$(srcdir)/'`./config_unit.c
 
 config_unit.obj: ./config_unit.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT config_unit.obj -MD -MP -MF "$(DEPDIR)/config_unit.Tpo" -c -o config_unit.obj `if test -f './config_unit.c'; then $(CYGPATH_W) './config_unit.c'; else $(CYGPATH_W) '$(srcdir)/./config_unit.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/config_unit.Tpo" "$(DEPDIR)/config_unit.Po"; else rm -f "$(DEPDIR)/config_unit.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@   $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT config_unit.obj -MD -MP -MF $(DEPDIR)/config_unit.Tpo -c -o config_unit.obj `if test -f './config_unit.c'; then $(CYGPATH_W) './config_unit.c'; else $(CYGPATH_W) '$(srcdir)/./config_unit.c'; fi`
+@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/config_unit.Tpo $(DEPDIR)/config_unit.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='./config_unit.c' object='config_unit.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o config_unit.obj `if test -f './config_unit.c'; then $(CYGPATH_W) './config_unit.c'; else $(CYGPATH_W) '$(srcdir)/./config_unit.c'; fi`
 
 .cc.o:
-@am__fastdepCXX_TRUE@  if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
-@am__fastdepCXX_TRUE@  then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCXX_TRUE@  $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@  mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
 
 .cc.obj:
-@am__fastdepCXX_TRUE@  if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
-@am__fastdepCXX_TRUE@  then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCXX_TRUE@  $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCXX_TRUE@  mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .cc.lo:
-@am__fastdepCXX_TRUE@  if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
-@am__fastdepCXX_TRUE@  then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCXX_TRUE@  $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@  mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
 
 gtnets_simulator.lo: surf/gtnets/gtnets_simulator.cc
-@am__fastdepCXX_TRUE@  if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gtnets_simulator.lo -MD -MP -MF "$(DEPDIR)/gtnets_simulator.Tpo" -c -o gtnets_simulator.lo `test -f 'surf/gtnets/gtnets_simulator.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_simulator.cc; \
-@am__fastdepCXX_TRUE@  then mv -f "$(DEPDIR)/gtnets_simulator.Tpo" "$(DEPDIR)/gtnets_simulator.Plo"; else rm -f "$(DEPDIR)/gtnets_simulator.Tpo"; exit 1; fi
+@am__fastdepCXX_TRUE@  $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gtnets_simulator.lo -MD -MP -MF $(DEPDIR)/gtnets_simulator.Tpo -c -o gtnets_simulator.lo `test -f 'surf/gtnets/gtnets_simulator.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_simulator.cc
+@am__fastdepCXX_TRUE@  mv -f $(DEPDIR)/gtnets_simulator.Tpo $(DEPDIR)/gtnets_simulator.Plo
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='surf/gtnets/gtnets_simulator.cc' object='gtnets_simulator.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gtnets_simulator.lo `test -f 'surf/gtnets/gtnets_simulator.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_simulator.cc
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gtnets_simulator.lo `test -f 'surf/gtnets/gtnets_simulator.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_simulator.cc
 
 gtnets_topology.lo: surf/gtnets/gtnets_topology.cc
-@am__fastdepCXX_TRUE@  if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gtnets_topology.lo -MD -MP -MF "$(DEPDIR)/gtnets_topology.Tpo" -c -o gtnets_topology.lo `test -f 'surf/gtnets/gtnets_topology.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_topology.cc; \
-@am__fastdepCXX_TRUE@  then mv -f "$(DEPDIR)/gtnets_topology.Tpo" "$(DEPDIR)/gtnets_topology.Plo"; else rm -f "$(DEPDIR)/gtnets_topology.Tpo"; exit 1; fi
+@am__fastdepCXX_TRUE@  $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gtnets_topology.lo -MD -MP -MF $(DEPDIR)/gtnets_topology.Tpo -c -o gtnets_topology.lo `test -f 'surf/gtnets/gtnets_topology.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_topology.cc
+@am__fastdepCXX_TRUE@  mv -f $(DEPDIR)/gtnets_topology.Tpo $(DEPDIR)/gtnets_topology.Plo
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='surf/gtnets/gtnets_topology.cc' object='gtnets_topology.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gtnets_topology.lo `test -f 'surf/gtnets/gtnets_topology.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_topology.cc
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gtnets_topology.lo `test -f 'surf/gtnets/gtnets_topology.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_topology.cc
 
 gtnets_interface.lo: surf/gtnets/gtnets_interface.cc
-@am__fastdepCXX_TRUE@  if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gtnets_interface.lo -MD -MP -MF "$(DEPDIR)/gtnets_interface.Tpo" -c -o gtnets_interface.lo `test -f 'surf/gtnets/gtnets_interface.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_interface.cc; \
-@am__fastdepCXX_TRUE@  then mv -f "$(DEPDIR)/gtnets_interface.Tpo" "$(DEPDIR)/gtnets_interface.Plo"; else rm -f "$(DEPDIR)/gtnets_interface.Tpo"; exit 1; fi
+@am__fastdepCXX_TRUE@  $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gtnets_interface.lo -MD -MP -MF $(DEPDIR)/gtnets_interface.Tpo -c -o gtnets_interface.lo `test -f 'surf/gtnets/gtnets_interface.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_interface.cc
+@am__fastdepCXX_TRUE@  mv -f $(DEPDIR)/gtnets_interface.Tpo $(DEPDIR)/gtnets_interface.Plo
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='surf/gtnets/gtnets_interface.cc' object='gtnets_interface.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gtnets_interface.lo `test -f 'surf/gtnets/gtnets_interface.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_interface.cc
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gtnets_interface.lo `test -f 'surf/gtnets/gtnets_interface.cc' || echo '$(srcdir)/'`surf/gtnets/gtnets_interface.cc
 
 mostlyclean-libtool:
        -rm -f *.lo
 
 clean-libtool:
        -rm -rf .libs _libs
+install-jarDATA: $(jar_DATA)
+       @$(NORMAL_INSTALL)
+       test -z "$(jardir)" || $(MKDIR_P) "$(DESTDIR)$(jardir)"
+       @list='$(jar_DATA)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(jarDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(jardir)/$$f'"; \
+         $(jarDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(jardir)/$$f"; \
+       done
 
-distclean-libtool:
-       -rm -f libtool
-uninstall-info-am:
+uninstall-jarDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(jar_DATA)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(jardir)/$$f'"; \
+         rm -f "$(DESTDIR)$(jardir)/$$f"; \
+       done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
        list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
@@ -1668,9 +1837,9 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 check-TESTS: $(TESTS)
-       @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+       @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[        ]'; \
        srcdir=$(srcdir); export srcdir; \
-       list='$(TESTS)'; \
+       list=' $(TESTS) '; \
        if test -n "$$list"; then \
          for tst in $$list; do \
            if test -f ./$$tst; then dir=./; \
@@ -1679,7 +1848,7 @@ check-TESTS: $(TESTS)
            if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
              all=`expr $$all + 1`; \
              case " $(XFAIL_TESTS) " in \
-             *" $$tst "*) \
+             *$$ws$$tst$$ws*) \
                xpass=`expr $$xpass + 1`; \
                failed=`expr $$failed + 1`; \
                echo "XPASS: $$tst"; \
@@ -1691,7 +1860,7 @@ check-TESTS: $(TESTS)
            elif test $$? -ne 77; then \
              all=`expr $$all + 1`; \
              case " $(XFAIL_TESTS) " in \
-             *" $$tst "*) \
+             *$$ws$$tst$$ws*) \
                xfail=`expr $$xfail + 1`; \
                echo "XFAIL: $$tst"; \
              ;; \
@@ -1741,23 +1910,21 @@ check-TESTS: $(TESTS)
        else :; fi
 
 distdir: $(DISTFILES)
-       $(mkdir_p) $(distdir)/../acmacro $(distdir)/amok $(distdir)/amok/Bandwidth $(distdir)/include/surf $(distdir)/include/xbt $(distdir)/msg $(distdir)/simdag $(distdir)/surf $(distdir)/surf/gtnets $(distdir)/xbt
-       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
-       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
-       list='$(DISTFILES)'; for file in $$list; do \
-         case $$file in \
-           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
-           $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
-         esac; \
+       @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       list='$(DISTFILES)'; \
+         dist_files=`for file in $$list; do echo $$file; done | \
+         sed -e "s|^$$srcdirstrip/||;t" \
+             -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+       case $$dist_files in \
+         */*) $(MKDIR_P) `echo "$$dist_files" | \
+                          sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+                          sort -u` ;; \
+       esac; \
+       for file in $$dist_files; do \
          if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
-         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
-           dir="/$$dir"; \
-           $(mkdir_p) "$(distdir)$$dir"; \
-         else \
-           dir=''; \
-         fi; \
          if test -d $$d/$$file; then \
+           dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
            if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
              cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
            fi; \
@@ -1772,10 +1939,10 @@ check-am: all-am
        $(MAKE) $(AM_MAKEFLAGS) check-TESTS
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) gras_config.h
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) gras_config.h
 installdirs:
-       for dir in "$(DESTDIR)$(libdir)"; do \
-         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(jardir)"; do \
+         test -z "$$dir" || $(MKDIR_P) "$$dir"; \
        done
 install: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-am
@@ -1806,14 +1973,14 @@ maintainer-clean-generic:
        -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
 clean: clean-am
 
-clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool clean-local \
        clean-noinstPROGRAMS mostlyclean-am
 
 distclean: distclean-am
        -rm -rf ./$(DEPDIR)
        -rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
-       distclean-hdr distclean-libtool distclean-tags
+       distclean-hdr distclean-tags
 
 dvi: dvi-am
 
@@ -1825,14 +1992,22 @@ info: info-am
 
 info-am:
 
-install-data-am:
+install-data-am: install-jarDATA
+
+install-dvi: install-dvi-am
 
 install-exec-am: install-libLTLIBRARIES
 
+install-html: install-html-am
+
 install-info: install-info-am
 
 install-man:
 
+install-pdf: install-pdf-am
+
+install-ps: install-ps-am
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -1853,26 +2028,38 @@ ps: ps-am
 
 ps-am:
 
-uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES
+uninstall-am: uninstall-jarDATA uninstall-libLTLIBRARIES
+
+.MAKE: install-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
-       clean-generic clean-libLTLIBRARIES clean-libtool \
+       clean-generic clean-libLTLIBRARIES clean-libtool clean-local \
        clean-noinstPROGRAMS ctags distclean distclean-compile \
        distclean-generic distclean-hdr distclean-libtool \
        distclean-tags distdir dvi dvi-am html html-am info info-am \
-       install install-am install-data install-data-am install-exec \
-       install-exec-am install-info install-info-am \
-       install-libLTLIBRARIES install-man install-strip installcheck \
+       install install-am install-data install-data-am install-dvi \
+       install-dvi-am install-exec install-exec-am install-html \
+       install-html-am install-info install-info-am install-jarDATA \
+       install-libLTLIBRARIES install-man install-pdf install-pdf-am \
+       install-ps install-ps-am install-strip installcheck \
        installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-compile \
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-       tags uninstall uninstall-am uninstall-info-am \
+       tags uninstall uninstall-am uninstall-jarDATA \
        uninstall-libLTLIBRARIES
 
        \
        include/simix/simix.h include/simix/datatypes.h \
        simix/msg_simix_private.h
 
+clean-local:
+       -rm -rf .classes
+
+simgrid.jar: $(JMSG_JAVA_SRC)
+       [ -e .classes ] || mkdir .classes
+       $(JAVAC) -sourcepath java -d .classes $(JMSG_JAVA_SRC)
+       $(JAR) cvf simgrid.jar -C .classes .;
+
 @GRAMINE_MODE_FALSE@@MAINTAINER_MODE_TRUE@./cunit_unit.c: xbt/cunit.c
 @GRAMINE_MODE_FALSE@@MAINTAINER_MODE_TRUE@     @top_srcdir@/tools/sg_unit_extractor.pl $^
 @GRAMINE_MODE_FALSE@@MAINTAINER_MODE_TRUE@./ex_unit.c: xbt/ex.c
diff --git a/src/java/jmsg.c b/src/java/jmsg.c
new file mode 100644 (file)
index 0000000..d0438cc
--- /dev/null
@@ -0,0 +1,1224 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the implementation of the wrapper functions used to interface
+ * the java object with the native functions of the MSG API.
+ */
+#include "msg/msg.h"
+#include "msg/private.h"
+#include "java/jxbt_context.h"
+
+#include "jmsg_process.h"
+#include "jmsg_host.h"
+#include "jmsg_task.h"
+#include "jmsg_parallel_task.h"
+#include "jmsg_channel.h"
+#include "jxbt_utilities.h"
+
+XBT_LOG_NEW_DEFAULT_CATEGORY(jmsg,"MSG for Java(TM)");
+
+/* header for windows */
+#ifdef WIN32
+#include <windows.h>
+#else
+#include <pthread.h>
+#endif
+
+#include "jmsg.h"
+
+
+#ifdef WIN32
+  static DWORD __current_thread_id = 0;
+
+  int is_main_thread() {
+    return (GetCurrentThreadId() == __current_thread_id);
+  }
+
+#else /* !WIN32 */
+
+  static pthread_t __current_thread_id = 0;
+
+  int is_main_thread() {
+    return (pthread_self() == __current_thread_id);
+  }
+#endif
+
+
+/*
+ * The MSG process connected functions implementation.                                 
+ */
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processCreate(JNIEnv* env, jclass cls, jobject jprocess_arg, jobject jhost) {
+  jobject jprocess;            /* the global reference to the java process instance    */
+  jstring jname;               /* the name of the java process instance                */
+  const char* name;            /* the C name of the process                            */
+  m_process_t process;         /* the native process to create                         */
+
+
+  DEBUG4("Java_simgrid_msg_Msg_processCreate(env=%p,cls=%p,jproc=%p,jhost=%p)",
+        env,cls,jprocess_arg,jhost);
+  /* get the name of the java process */
+  jname = jprocess_get_name(jprocess_arg,env);
+
+  if (!jname) {
+    jxbt_throw_null(env,xbt_strdup("Internal error: Process name cannot be NULL"));
+    return;
+  }
+       
+  /* allocate the data of the simulation */
+  process = xbt_new0(s_m_process_t,1);
+  process->simdata = xbt_new0(s_simdata_process_t,1);
+    
+  /* create a global java process instance */
+  jprocess = jprocess_new_global_ref(jprocess_arg,env);
+
+  if(!jprocess) {
+    free(process->simdata);
+    free(process);
+    jxbt_throw_jni(env, "Can't get a global ref to the java process");
+    return;
+  }
+       
+  /* bind the java process instance to the native host */
+  jprocess_bind(jprocess,process,env);
+       
+  /* build the C name of the process */
+  name = (*env)->GetStringUTFChars(env, jname, 0);
+  process->name = xbt_strdup(name);
+  (*env)->ReleaseStringUTFChars(env, jname, name);
+       
+  process->simdata->m_host = jhost_get_native(env,jhost);
+  if( ! (process->simdata->m_host) ) { /* not binded */
+    free(process->simdata);
+    free(process->data);
+    free(process);
+    jxbt_throw_notbound(env,"host",jhost);
+    return;
+  }
+  process->simdata->PID = msg_global->PID++;
+    
+  /* create a new context */
+  DEBUG8("fill in process %s/%s (pid=%d) %p (sd=%p, host=%p, host->sd=%p); env=%p",
+        process->name,process->simdata->m_host->name,
+        process->simdata->PID,process,
+        process->simdata, process->simdata->m_host, process->simdata->m_host->simdata,
+        env);
+  
+  SIMIX_jprocess_create(process->name,
+                       process->simdata->m_host->simdata->s_host, 
+                       /*data*/ (void*)process,
+                       jprocess_arg,env,
+                       __MSG_process_cleanup,
+                       &process->simdata->s_process);
+  DEBUG1("context created (s_process=%p)",process->simdata->s_process);
+
+
+  if (SIMIX_process_self()) { /* someone created me */
+    process->simdata->PPID = MSG_process_get_PID(SIMIX_process_self()->data);
+  } else {
+    process->simdata->PPID = -1;
+  }
+    
+  process->simdata->last_errno = MSG_OK;
+    
+
+#ifdef KILLME    
+  /* add the process in the list of the process of the host */
+  xbt_fifo_unshift(host->simdata->process_list, process);
+    
+  self = msg_global->current_process;
+    
+  process->simdata->context->env = env;
+    
+  /* start the java process */
+  xbt_context_start(process->simdata->context); 
+       
+  msg_global->current_process = self;
+#endif
+    
+  /* add the process to the list of the processes of the simulation */
+  xbt_fifo_unshift(msg_global->process_list, process);
+       
+  /* add the process to the list of the processes to run in the simulation */
+  //  xbt_fifo_unshift(msg_global->process_to_run, process);
+    
+  //  PAJE_PROCESS_NEW(process);
+  //#endif
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processSuspend(JNIEnv* env, jclass cls, jobject jprocess) {
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+
+  if(!process) { 
+    jxbt_throw_notbound(env,"process",jprocess);
+    return;
+  }
+       
+  /* try to suspend the process */
+  if(MSG_OK != MSG_process_suspend(process)) 
+    jxbt_throw_native(env, xbt_strdup("MSG_process_suspend() failed"));
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processResume(JNIEnv* env, jclass cls, jobject jprocess) {
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+
+  if(!process) { 
+    jxbt_throw_notbound(env,"process",jprocess);
+    return;
+  }
+       
+  /* try to resume the process */
+  if(MSG_OK != MSG_process_resume(process))
+    jxbt_throw_native(env, xbt_strdup("MSG_process_resume() failed"));
+}
+
+JNIEXPORT jboolean JNICALL 
+Java_simgrid_msg_Msg_processIsSuspended(JNIEnv* env, jclass cls, jobject jprocess) {
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+
+  if(!process) { 
+    jxbt_throw_notbound(env,"process",jprocess);
+    return 0;
+  }
+
+  /* true is the process is suspended, false otherwise */
+  return (jboolean)MSG_process_is_suspended(process);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processKill(JNIEnv* env, jclass cls, jobject jprocess) {
+  /* get the native instances from the java ones */
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+
+  if(!process) { 
+    jxbt_throw_notbound(env,"process",jprocess);
+    return;
+  }
+
+  /* delete the global reference */
+  jprocess_delete_global_ref(SIMIX_process_get_jprocess(process->simdata->s_process),env);
+       
+  /* kill the native process (this wrapper is call by the destructor of the java 
+   * process instance)
+   */
+  MSG_process_kill(process);
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_processGetHost(JNIEnv* env, jclass cls, jobject jprocess) {
+  /* get the native instances from the java ones */
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+  m_host_t host;
+       
+  if(!process) { 
+    jxbt_throw_notbound(env,"process",jprocess);
+    return NULL;
+  }
+
+  host = MSG_process_get_host(process);
+       
+  if(!host->data) {
+    jxbt_throw_native(env, xbt_strdup("MSG_process_get_host() failed"));
+    return NULL;
+  }
+
+  /* return the global reference to the java host instance */
+  return (jobject)host->data;
+       
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_processFromPID(JNIEnv* env, jclass cls, jint PID) {
+  m_process_t process = MSG_process_from_PID(PID);
+
+  if(!process) {
+    jxbt_throw_native(env, bprintf("MSG_process_from_PID(%d) failed",PID));
+    return NULL;
+  }
+
+  if(!SIMIX_process_get_jprocess(process->simdata->s_process)) {
+    jxbt_throw_native(env, xbt_strdup("SIMIX_process_get_jprocess() failed"));
+    return NULL;
+  }
+
+  return (jobject)SIMIX_process_get_jprocess(process->simdata->s_process);
+}
+
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_processGetPID(JNIEnv* env, jclass cls, jobject jprocess) {
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+
+  if(!process) { 
+    jxbt_throw_notbound(env,"process",jprocess);
+    return 0;
+  }
+
+  return (jint)MSG_process_get_PID(process);   
+}
+
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_processGetPPID(JNIEnv* env, jclass cls, jobject jprocess) {
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+
+  if(!process) {
+    jxbt_throw_notbound(env,"process",jprocess);
+    return 0;
+  }
+
+  return (jint)MSG_process_get_PPID(process);
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_processSelf(JNIEnv* env, jclass cls) {
+  m_process_t process = MSG_process_self();
+  jobject jprocess;
+
+  if(!process) {
+    jxbt_throw_native(env, xbt_strdup("MSG_process_self() failed"));
+    return NULL;
+  }
+
+  jprocess = SIMIX_process_get_jprocess(process->simdata->s_process);
+
+  if(!jprocess)
+    jxbt_throw_native(env, xbt_strdup("SIMIX_process_get_jprocess() failed"));
+  
+  return jprocess;
+}
+
+
+JNIEXPORT jint JNICALL
+Java_simgrid_msg_Msg_processSelfPID(JNIEnv* env, jclass cls) {
+  return (jint)MSG_process_self_PID();
+}
+
+
+JNIEXPORT jint JNICALL
+Java_simgrid_msg_Msg_processSelfPPID(JNIEnv* env, jclass cls) {
+  return (jint)MSG_process_self_PPID();
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processChangeHost(JNIEnv* env, jclass cls, jobject jprocess, jobject jhost){
+  m_host_t host = jhost_get_native(env,jhost);
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+       
+  if(!process) {
+    jxbt_throw_notbound(env,"process",jprocess);
+    return;
+  }
+       
+  if(!host) {
+    jxbt_throw_notbound(env,"host",jhost);
+    return;
+  }
+
+  /* try to change the host of the process */
+  if(MSG_OK != MSG_process_change_host(process,host))
+    jxbt_throw_native(env, xbt_strdup("MSG_process_change_host() failed"));
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processWaitFor(JNIEnv* env, jclass cls,jdouble seconds) {
+  if(MSG_OK != MSG_process_sleep((double)seconds))
+    jxbt_throw_native(env, 
+                      bprintf("MSG_process_change_host(%f) failed", (double)seconds));
+}
+
+
+/***************************************************************************************
+ * The MSG host connected functions implementation.                                    *
+ ***************************************************************************************/
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_hostGetByName(JNIEnv* env, jclass cls, jstring jname) {
+  m_host_t host;               /* native host                                          */
+  jobject jhost;               /* global reference to the java host instance returned  */
+       
+  /* get the C string from the java string*/
+  const char* name = (*env)->GetStringUTFChars(env, jname, 0);
+       
+  /* get the host by name      (the hosts are created during the grid resolution) */
+  host = MSG_get_host_by_name(name);
+  DEBUG2("MSG gave %p as native host (simdata=%p)",host,host->simdata);
+       
+  (*env)->ReleaseStringUTFChars(env, jname, name); 
+
+  if(!host) {/* invalid name */
+    jxbt_throw_host_not_found(env,name);
+    return NULL;
+  }
+
+  if(!host->data) { /* native host not associated yet with java host */
+               
+    /* instanciate a new java host */
+    jhost = jhost_new_instance(env);
+
+    if(!jhost) {
+      jxbt_throw_jni(env,"java host instantiation failed");
+      return NULL;
+    }
+               
+    /* get a global reference to the newly created host */
+    jhost = jhost_ref(env,jhost);
+
+    if(!jhost) {
+      jxbt_throw_jni(env,"new global ref allocation failed");
+      return NULL;
+    }
+               
+    /* bind the java host and the native host */
+    jhost_bind(jhost,host,env);
+               
+    /* the native host data field is set with the global reference to the 
+     * java host returned by this function 
+     */
+    host->data = (void*)jhost;
+  }
+
+  /* return the global reference to the java host instance */
+  return (jobject)host->data;                  
+}
+
+JNIEXPORT jstring JNICALL 
+Java_simgrid_msg_Msg_hostGetName(JNIEnv* env, jclass cls, jobject jhost) {
+  m_host_t host = jhost_get_native(env,jhost);
+
+  if(!host) {
+    jxbt_throw_notbound(env,"host",jhost);
+    return NULL;
+  }
+
+  return (*env)->NewStringUTF(env,host->name);
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_hostGetNumber(JNIEnv* env, jclass cls) {
+  return (jint)MSG_get_host_number();
+}
+
+JNIEXPORT jobject JNICALL
+Java_simgrid_msg_Msg_hostSelf(JNIEnv* env, jclass cls) {
+  jobject jhost;
+       
+  m_host_t host = MSG_host_self();
+       
+  if(!host->data) {
+    /* the native host not yet associated with the java host instance */
+    
+    /* instanciate a new java host instance */
+    jhost = jhost_new_instance(env);
+    
+    if(!jhost) {
+      jxbt_throw_jni(env,"java host instantiation failed");
+      return NULL;
+    }
+    
+    /* get a global reference to the newly created host */
+    jhost = jhost_ref(env,jhost);
+    
+    if(!jhost) {
+      jxbt_throw_jni(env,"global ref allocation failed");
+      return NULL;
+    }
+
+    /* Bind & store it */
+    jhost_bind(jhost,host,env);
+    host->data = (void*)jhost;
+  } else {
+    jhost = (jobject)host->data;
+  }
+       
+  return jhost;
+}
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_hostGetSpeed(JNIEnv* env, jclass cls, jobject jhost) {
+  m_host_t host = jhost_get_native(env,jhost);
+
+  if(!host) {
+    jxbt_throw_notbound(env,"host",jhost);
+    return -1;
+  }
+  
+  return (jdouble)MSG_get_host_speed(host);    
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_hostGetLoad(JNIEnv* env, jclass cls, jobject jhost) {
+  m_host_t host = jhost_get_native(env,jhost);
+
+  if(!host) {
+    jxbt_throw_notbound(env,"host",jhost);
+    return -1;
+  }
+
+  return (jint)MSG_get_host_msgload(host);     
+}
+
+
+JNIEXPORT jboolean JNICALL 
+Java_simgrid_msg_Msg_hostIsAvail(JNIEnv* env, jclass cls, jobject jhost) {
+  m_host_t host = jhost_get_native(env,jhost);
+  
+  if(!host) {
+    jxbt_throw_notbound(env,"host",jhost);
+    return 0;
+  }
+
+  return (jboolean)MSG_host_is_avail(host);
+}
+
+
+/***************************************************************************************
+ * The MSG task connected functions implementation.                                    *
+ ***************************************************************************************/
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_taskCreate(JNIEnv* env, jclass cls, jobject jtask, jstring jname, 
+                               jdouble jcomputeDuration, jdouble jmessageSize) {
+  m_task_t task;       /* the native task to create                            */
+  const char* name;    /* the name of the task                                 */
+       
+  if(jcomputeDuration < 0) {
+    jxbt_throw_illegal(env,bprintf("Task ComputeDuration (%f) cannot be negative",
+                                   (double)jcomputeDuration));
+    return;
+  }
+
+  if(jmessageSize < 0) {
+    jxbt_throw_illegal(env,bprintf("Task MessageSize (%f) cannot be negative",
+                                   (double)jmessageSize));
+    return;
+  }
+
+  if(!jname) {
+    jxbt_throw_null(env,xbt_strdup("Task name cannot be null"));
+    return;
+  }
+       
+  /* get the C string from the java string*/
+  name = (*env)->GetStringUTFChars(env, jname, 0);
+       
+  /* create the task */
+  task = MSG_task_create(name,(double)jcomputeDuration,(double)jmessageSize,NULL);
+       
+  (*env)->ReleaseStringUTFChars(env, jname, name); 
+       
+  /* bind & store the task */
+  jtask_bind(jtask,task,env);
+
+  /* allocate a new global reference to the java task instance */      
+  task->data = (void*)jtask_new_global_ref(jtask,env);
+
+  if ( ! task->data )
+    jxbt_throw_jni(env,"global ref allocation failed");
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallel_taskCreate(JNIEnv* env, jclass cls, jobject jtask_arg, jstring jname, 
+                                        jobjectArray jhosts,jdoubleArray jcomputeDurations_arg, jdoubleArray jmessageSizes_arg) {
+
+  m_task_t task;       /* the native parallel task to create           */
+  const char* name;    /* the name of the task                         */
+  jobject jtask;       /* the global reference to the java parallel task instance      */
+  int host_count;
+  m_host_t* hosts;
+  double* computeDurations;
+  double* messageSizes;
+  jdouble *jcomputeDurations;
+  jdouble *jmessageSizes;
+
+  jobject jhost;
+  int index;
+
+
+  if (!jcomputeDurations_arg) {
+    jxbt_throw_null(env,xbt_strdup("Parallel task compute durations cannot be null"));
+    return;
+  }
+
+  if(!jmessageSizes_arg){
+    jxbt_throw_null(env,xbt_strdup("Parallel task message sizes cannot be null"));
+    return;
+  }
+
+  if(!jname) {
+    jxbt_throw_null(env,xbt_strdup("Parallel task name cannot be null"));
+    return;
+  }
+
+  host_count = (int)(*env)->GetArrayLength(env,jhosts);
+       
+
+  hosts = (m_host_t*)calloc(host_count,sizeof(m_host_t));
+  computeDurations = (double*)calloc(host_count,sizeof(double));
+  messageSizes = (double*)calloc(host_count,sizeof(double));
+
+  jcomputeDurations = (*env)->GetDoubleArrayElements(env,jcomputeDurations_arg, 0);
+  jmessageSizes = (*env)->GetDoubleArrayElements(env,jmessageSizes_arg, 0);
+
+  for(index = 0; index < host_count; index++) {
+    jhost = (*env)->GetObjectArrayElement(env,jhosts,index);
+    hosts[index] = jhost_get_native(env,jhost);
+    computeDurations[index] = jcomputeDurations[index];
+    messageSizes[index] = jmessageSizes[index];
+  }
+
+  (*env)->ReleaseDoubleArrayElements(env,jcomputeDurations_arg,jcomputeDurations,0);
+  (*env)->ReleaseDoubleArrayElements(env,jmessageSizes_arg,jmessageSizes,0);
+
+       
+  /* get the C string from the java string*/
+  name = (*env)->GetStringUTFChars(env, jname, 0);
+       
+  task = MSG_parallel_task_create(name,host_count,hosts,computeDurations,messageSizes,NULL);
+
+  (*env)->ReleaseStringUTFChars(env, jname, name); 
+       
+  /* allocate a new global reference to the java task instance */
+  jtask = jparallel_task_ref(env,jtask_arg);
+       
+  /* associate the java task object and the native task */
+  jparallel_task_bind(jtask,task,env);
+
+  task->data = (void*)jtask;
+
+  if(!(task->data))
+    jxbt_throw_jni(env,"global ref allocation failed");
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_taskGetSender(JNIEnv* env , jclass cls , jobject jtask) {
+  m_process_t process;
+       
+  m_task_t task = jtask_to_native_task(jtask,env);
+       
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return NULL;
+  }
+       
+  process = MSG_task_get_sender(task);
+  return SIMIX_process_get_jprocess(process->simdata->s_process);
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetSender(JNIEnv* env , jclass cls , jobject jtask) {
+  m_task_t task;
+  m_process_t process;
+       
+  task = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!task) {
+    jxbt_throw_notbound(env,"task",jtask);
+    return NULL;
+  }
+       
+  process = MSG_task_get_sender(task);
+       
+  return SIMIX_process_get_jprocess(process->simdata->s_process);
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_taskGetSource(JNIEnv* env , jclass cls, jobject jtask) {
+  m_host_t host;
+  m_task_t task = jtask_to_native_task(jtask,env);
+
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return NULL;
+  }
+       
+  host = MSG_task_get_source(task);
+
+  if(! host->data) {
+    jxbt_throw_native(env, xbt_strdup("MSG_task_get_source() failed"));
+    return NULL;
+  }
+       
+  return (jobject)host->data;  
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetSource(JNIEnv* env , jclass cls, jobject jtask) {
+  m_task_t task = jparallel_task_to_native_parallel_task(jtask,env);
+  m_host_t host;
+
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return NULL;
+  }
+       
+  host = MSG_task_get_source(task);
+  
+  if(! host->data ) {
+    jxbt_throw_native(env, xbt_strdup("MSG_task_get_source() failed"));
+    return NULL;
+  }
+       
+  return (jobject)host->data;  
+}
+
+
+JNIEXPORT jstring JNICALL 
+Java_simgrid_msg_Msg_taskGetName(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t task = jtask_to_native_task(jtask,env);
+
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return NULL;
+  }
+
+  return (*env)->NewStringUTF(env,task->name);         
+}
+
+JNIEXPORT jstring JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetName(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return NULL;
+  }
+       
+  return (*env)->NewStringUTF(env,ptask->name);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_taskCancel(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jtask_to_native_task(jtask,env);
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+       
+  if(MSG_OK != MSG_task_cancel(ptask))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_cancel() failed"));
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskCancel(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+       
+  if(MSG_OK != MSG_task_cancel(ptask))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_cancel() failed"));
+}
+
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_taskGetComputeDuration(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jtask_to_native_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return -1;
+  }
+  return (jdouble)MSG_task_get_compute_duration(ptask);
+}
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetComputeDuration(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return -1;
+  }
+  return (jdouble)MSG_task_get_compute_duration(ptask);
+}
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_taskGetRemainingDuration(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jtask_to_native_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return -1;
+  }
+  return (jdouble)MSG_task_get_remaining_computation(ptask);
+}
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_paralleTaskGetRemainingDuration(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return -1;
+  }
+  return (jdouble)MSG_task_get_remaining_computation(ptask);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_taskSetPriority(JNIEnv* env, jclass cls, jobject jtask, jdouble priority) {
+  m_task_t task = jtask_to_native_task(jtask,env);
+
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+  MSG_task_set_priority(task,(double)priority);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskSetPriority(JNIEnv* env, jclass cls, 
+                                            jobject jtask, jdouble priority) {
+  m_task_t ptask = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+  MSG_task_set_priority(ptask,(double)priority);
+}
+
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_taskDestroy(JNIEnv* env, jclass cls, jobject jtask_arg) {
+
+  /* get the native task */
+  m_task_t task = jtask_to_native_task(jtask_arg,env);
+  jobject jtask;
+
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+  jtask = (jobject)task->data;
+
+  if(MSG_OK != MSG_task_destroy(task))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_destroy() failed"));
+
+  /* delete the global reference to the java task object */
+  jtask_delete_global_ref(jtask,env);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskDestroy(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+       
+  /* unbind jobj & native one */
+  jparallel_task_bind(jtask,0,env);
+
+  /* delete the global reference to the java parallel task object */
+  jparallel_task_unref(env,jtask);
+
+  /* free allocated memory */
+  if(ptask->simdata->comm_amount)
+    free(ptask->simdata->comm_amount);
+
+  if(ptask->simdata->host_list)
+    free(ptask->simdata->host_list);
+
+  if(MSG_OK != MSG_task_destroy(ptask))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_destroy() failed"));
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_taskExecute(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t task = jtask_to_native_task(jtask,env);
+
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+
+  if(MSG_OK != MSG_task_execute(task))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_execute() failed"));
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskExecute(JNIEnv* env, jclass cls, jobject jtask) {
+  m_task_t ptask = jparallel_task_to_native_parallel_task(jtask,env);
+
+  if(!ptask){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+       
+  if(MSG_OK != MSG_parallel_task_execute(ptask))
+    jxbt_throw_native(env, xbt_strdup("MSG_parallel_task_execute() failed"));
+}
+
+/***************************************************************************************
+ * The MSG channel connected functions implementation.                                 *
+ ***************************************************************************************/
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_channelGet(JNIEnv* env, jclass cls, jobject jchannel) {
+  m_task_t task = NULL;
+       
+  if(MSG_OK != MSG_task_get(&task,(int)jchannel_get_id(jchannel,env))) {
+    jxbt_throw_native(env, xbt_strdup("MSG_task_get() failed"));
+    return NULL;
+  }
+       
+  return (jobject)task->data;
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_channelGetWithTimeout(JNIEnv* env, jclass cls, 
+                                          jobject jchannel, jdouble jtimeout) {
+  m_task_t task = NULL;
+  int id = (int)jchannel_get_id(jchannel,env);
+       
+  if(MSG_OK != MSG_task_get_with_time_out(&task,id,(double)jtimeout)) {
+    jxbt_throw_native(env, xbt_strdup("MSG_task_get_with_time_out() failed"));
+    return NULL;
+  }
+       
+  return (jobject)task->data;
+}
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_channelGetFromHost(JNIEnv* env, jclass cls, 
+                                       jobject jchannel, jobject jhost) {
+  m_host_t host = jhost_get_native(env,jhost);
+  m_task_t task = NULL;        
+  int id = (int)jchannel_get_id(jchannel,env);
+
+  if(!host){
+    jxbt_throw_notbound(env,"host",jhost);
+    return NULL;
+  }  
+  if(MSG_OK != MSG_task_get_from_host(&task,id,host)){
+    jxbt_throw_native(env, xbt_strdup("MSG_task_get_from_host() failed"));
+    return NULL;
+  }
+  if(!(task->data)){
+    jxbt_throw_notbound(env,"task",task);
+    return NULL;
+  }
+
+  return (jobject)task->data;
+}
+
+JNIEXPORT jboolean JNICALL 
+Java_simgrid_msg_Msg_channelHasPendingCommunication(JNIEnv* env, jclass cls, jobject jchannel) {
+  int id = (int)jchannel_get_id(jchannel,env);
+       
+  return (jboolean)MSG_task_Iprobe(id);
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_channelGetCommunicatingProcess(JNIEnv* env, jclass cls, jobject jchannel) {
+  int id =jchannel_get_id(jchannel,env);
+       
+  return (jint)MSG_task_probe_from(id);
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_channelGetHostWaitingTasks(JNIEnv* env, jclass cls, 
+                                               jobject jchannel, jobject jhost) {
+  int id = (int)jchannel_get_id(jchannel,env);
+  m_host_t host = jhost_get_native(env,jhost);
+
+  if(!host){
+    jxbt_throw_notbound(env,"host",jhost);
+    return -1;
+  }
+
+  return (jint)MSG_task_probe_from_host(id,host);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_channelPut(JNIEnv* env, jclass cls, 
+                               jobject jchannel, jobject jtask, jobject jhost) {
+
+  if(MSG_OK != MSG_task_put(jtask_to_native_task(jtask,env),
+                           jhost_get_native(env,jhost),
+                           (int)jchannel_get_id(jchannel,env)))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_put() failed"));
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_channelPutWithTimeout(JNIEnv* env, jclass cls, 
+                                          jobject jchannel, jobject jtask, jobject jhost,
+                                          jdouble jtimeout) {
+  m_task_t task = jtask_to_native_task(jtask,env);
+  int id = (int)jchannel_get_id(jchannel,env);
+  m_host_t host = jhost_get_native(env,jhost);
+
+  if(!host){
+    jxbt_throw_notbound(env,"host",jhost);
+    return;
+  }
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+       
+  if(MSG_OK != MSG_task_put_with_timeout(task,host,id,(double)jtimeout))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_put_with_timeout() failed"));
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_channelPutBounded(JNIEnv* env, jclass cls, 
+                                      jobject jchannel, jobject jtask, jobject jhost, 
+                                      jdouble jmaxRate) {
+  m_task_t task = jtask_to_native_task(jtask,env);
+  int id = (int)jchannel_get_id(jchannel,env);
+  m_host_t host = jhost_get_native(env,jhost);
+
+  if(!host){
+    jxbt_throw_notbound(env,"host",jhost);
+    return;
+  }
+  if(!task){
+    jxbt_throw_notbound(env,"task",jtask);
+    return;
+  }
+        
+  if(MSG_OK != MSG_task_put_bounded(task,host,id,(double)jmaxRate))
+    jxbt_throw_native(env, xbt_strdup("MSG_task_put_bounded() failed"));
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_channelWait(JNIEnv* env, jclass cls, jobject jchannel, jdouble timeout) {
+  int PID;
+  int id = (int)jchannel_get_id(jchannel,env);
+       
+  if(MSG_OK != MSG_channel_select_from(id,(double)timeout,&PID)) {
+    jxbt_throw_native(env, xbt_strdup("MSG_channel_select_from() failed"));
+    return 0;
+  }
+       
+  return (jint)PID;
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_channelGetNumber(JNIEnv* env, jclass cls) {
+  return (jint)MSG_get_channel_number();
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_channelSetNumber(JNIEnv* env , jclass cls,jint channelNumber) {
+  MSG_set_channel_number((int)channelNumber);
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_getErrCode(JNIEnv* env, jclass cls) {
+  return (jint)MSG_get_errno();
+}
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_getClock(JNIEnv* env, jclass cls) {
+  return (jdouble)MSG_get_clock();
+}
+
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_init(JNIEnv* env, jclass cls, jobjectArray jargs) {
+       
+  char** argv = NULL;
+  int index;
+  int argc = 0;
+  jstring jval;
+  const char* tmp;
+       
+  if(jargs)
+    argc = (int)(*env)->GetArrayLength(env,jargs);
+
+  argc++;
+       
+  argv = (char**)calloc(argc,sizeof(char*));
+        
+  argv[0] = strdup("java");
+       
+  for(index = 0; index < argc -1; index++) {
+    jval = (jstring)(*env)->GetObjectArrayElement(env,jargs,index);
+    
+    tmp = (*env)->GetStringUTFChars(env, jval, 0);
+    
+    argv[index +1] = strdup(tmp);
+
+    (*env)->ReleaseStringUTFChars(env, jval, tmp); 
+  }
+       
+  MSG_global_init(&argc,argv);
+
+  for(index = 0; index < argc; index++)
+    free(argv[index]);
+       
+  free(argv);
+
+#ifdef WIN32
+  __current_thread_id = GetCurrentThreadId();
+#else
+  __current_thread_id = pthread_self();
+#endif
+       
+}
+
+JNIEXPORT void JNICALL
+JNICALL Java_simgrid_msg_Msg_run(JNIEnv* env, jclass cls) {
+  xbt_fifo_item_t item = NULL;
+  m_host_t host = NULL;
+  jobject jhost;
+
+  /* Run everything */
+  if(MSG_OK != MSG_main())
+    jxbt_throw_native(env, xbt_strdup("MSG_main() failed"));
+
+  DEBUG0("MSG_main finished. Bail out before cleanup since there is a bug in this part.");
+  SIMIX_display_process_status();   
+  exit(0); /* FIXME */
+   
+  DEBUG0("Clean java world");
+  /* Cleanup java hosts */
+  xbt_fifo_foreach(msg_global->host,item,host,m_host_t) {
+    jhost = (jobject)host->data;
+       
+    if(jhost)
+      jhost_unref(env,jhost);  
+  }
+  DEBUG0("Clean native world");
+  /* cleanup native stuff */
+  if(MSG_OK != MSG_clean())
+    jxbt_throw_native(env, xbt_strdup("MSG_main() failed"));
+
+}
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_processKillAll(JNIEnv* env, jclass cls, jint jresetPID) {
+  return (jint)MSG_process_killall((int)jresetPID);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_createEnvironment(JNIEnv* env, jclass cls,jstring jplatformFile) {
+       
+  const char* platformFile = (*env)->GetStringUTFChars(env, jplatformFile, 0);
+       
+  MSG_create_environment(platformFile);
+       
+  (*env)->ReleaseStringUTFChars(env, jplatformFile, platformFile); 
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_waitSignal(JNIEnv* env, jclass cls, jobject jprocess) {
+  m_process_t m_process = jprocess_to_native_process(jprocess,env);
+  smx_process_t s_process;
+
+  xbt_mutex_t ctx_mutex, creation_mutex;
+  xbt_thcond_t ctx_cond, creation_cond;
+
+  DEBUG3("Msg_waitSignal(m_process=%p %s/%s)",
+        m_process,m_process->name,m_process->simdata->m_host->name);
+  if (!m_process){
+    jxbt_throw_notbound(env,"process",jprocess);
+    return;
+  }
+
+  s_process = m_process->simdata->s_process;
+
+  if (s_process == NULL) {
+    jxbt_throw_notbound(env,"SIMIX process",jprocess);
+    return;
+  }
+
+  ctx_mutex = SIMIX_process_get_jmutex(s_process);
+  ctx_cond = SIMIX_process_get_jcond(s_process);
+
+  creation_mutex = xbt_creation_mutex_get();
+  creation_cond = xbt_creation_cond_get();
+
+  xbt_mutex_lock(creation_mutex);
+  xbt_mutex_lock(ctx_mutex);
+  xbt_thcond_signal( creation_cond );
+  xbt_mutex_unlock( creation_mutex );
+  xbt_thcond_wait(ctx_cond, ctx_mutex);
+  xbt_mutex_unlock(ctx_mutex);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processExit(JNIEnv* env, jclass cls, jobject jprocess) {
+  m_process_t process = jprocess_to_native_process(jprocess,env);
+
+  if (!process){
+    jxbt_throw_notbound(env,"process",jprocess);
+    return;
+  }
+  MSG_process_kill(process);
+}
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_pajeOutput(JNIEnv* env, jclass cls, jstring jpajeFile) {
+  const char*pajeFile = (*env)->GetStringUTFChars(env, jpajeFile, 0);
+       
+  MSG_paje_output(pajeFile);
+       
+  (*env)->ReleaseStringUTFChars(env, jpajeFile, pajeFile); 
+}
+
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_info(JNIEnv * env, jclass cls, jstring js) {
+  const char* s = (*env)->GetStringUTFChars(env,js,0);
+  INFO1("%s",s);
+  (*env)->ReleaseStringUTFChars(env, js, s);
+}
+
+JNIEXPORT jobjectArray JNICALL
+Java_simgrid_msg_Msg_allHosts(JNIEnv * env, jclass cls_arg) {
+  int index;
+  jobjectArray jtable;
+  jobject jhost;
+  jstring jname;
+  m_host_t host;
+
+  int count = xbt_fifo_size(msg_global->host);
+  m_host_t* table = (m_host_t *)xbt_fifo_to_array(msg_global->host);
+       
+  jclass cls = jxbt_get_class(env,"simgrid/msg/Host");
+       
+  if(!cls){
+    return NULL;
+  }
+
+  jtable = (*env)->NewObjectArray(env,(jsize)count,cls,NULL);
+       
+  if(!jtable) {
+    jxbt_throw_jni(env,"Hosts table allocation failed");
+    return NULL;
+  }
+       
+  for(index = 0; index < count; index++) {
+    host = table[index];
+    jhost = (jobject)(host->data);
+    
+    if(!jhost) {
+      jname = (*env)->NewStringUTF(env,host->name);
+      
+      jhost = Java_simgrid_msg_Msg_hostGetByName(env,cls_arg,jname);
+      /* FIXME: leak of jname ? */
+    }
+    
+    (*env)->SetObjectArrayElement(env, jtable, index, jhost);
+  }
+
+  return jtable;
+}
+
+  
diff --git a/src/java/jmsg.h b/src/java/jmsg.h
new file mode 100644 (file)
index 0000000..4454901
--- /dev/null
@@ -0,0 +1,457 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the declarations of the wrapper functions used to interface
+ * the java object with the native functions of the MSG API.
+ */
+
+#ifndef MSG4JAVA_H
+#define MSG4JAVA_H
+
+#include <jni.h>
+
+int
+is_main_thread(void);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processCreate
+ * Signature   (Lsimgrid/msg/Process;Lsimgrid/msg/Host;)V
+ */
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processCreate(JNIEnv* env,jclass cls,jobject jprocess,jobject jhost);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processSuspend
+ * Signature   (Lsimgrid/msg/Process;)V
+ */
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_processSuspend(JNIEnv* env, jclass cls, jobject jprocess);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processResume
+ * Signature   (Lsimgrid/msg/Process;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_processResume
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processIsSuspended
+ * Signature   (Lsimgrid/msg/Process;)Z
+ */
+JNIEXPORT jboolean JNICALL Java_simgrid_msg_Msg_processIsSuspended
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processKill
+ * Signature   (Lsimgrid/msg/Process;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_processKill
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processGetHost
+ * Signature   (Lsimgrid/msg/Process;)Lsimgrid/msg/Host;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_processGetHost
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processFromPID
+ * Signature   (I)Lsimgrid/msg/Process;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_processFromPID
+  (JNIEnv *, jclass, jint);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processGetPID
+ * Signature   (Lsimgrid/msg/Process;)I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_processGetPID
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processGetPPID
+ * Signature   (Lsimgrid/msg/Process;)I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_processGetPPID
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processSelf
+ * Signature   ()Lsimgrid/msg/Process;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_processSelf
+  (JNIEnv *, jclass);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processSelfPID
+ * Signature   ()I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_processSelfPID
+  (JNIEnv *, jclass);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processSelfPPID
+ * Signature   ()I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_processSelfPPID
+  (JNIEnv *, jclass);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processChangeHost
+ * Signature   (Lsimgrid/msg/Process;Lsimgrid/msg/Host;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_processChangeHost
+  (JNIEnv *, jclass, jobject, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processWaitFor
+ * Signature   (D)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_processWaitFor
+  (JNIEnv *, jclass, jdouble);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              hostGetByName
+ * Signature   (Ljava/lang/String;)Lsimgrid/msg/Host;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_hostGetByName
+  (JNIEnv *, jclass, jstring);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              hostGetName
+ * Signature   (Lsimgrid/msg/Host;)Ljava/lang/String;
+ */
+JNIEXPORT jstring JNICALL Java_simgrid_msg_Msg_hostGetName
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              hostGetNumber
+ * Signature   ()I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_hostGetNumber
+  (JNIEnv *, jclass);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              hostSelf
+ * Signature   ()Lsimgrid/msg/Host;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_hostSelf
+  (JNIEnv *, jclass);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              hostGetSpeed
+ * Signature   (Lsimgrid/msg/Host;)D
+ */
+JNIEXPORT jdouble JNICALL Java_simgrid_msg_Msg_hostGetSpeed
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT jint JNICALL 
+Java_simgrid_msg_Msg_hostGetLoad(JNIEnv* env, jclass cls, jobject jhost);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              hostIsAvail
+ * Signature   (Lsimgrid/msg/Host;)Z
+ */
+JNIEXPORT jboolean JNICALL Java_simgrid_msg_Msg_hostIsAvail
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskCreate
+ * Signature   (Lsimgrid/msg/Task;Ljava/lang/String;DD)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_taskCreate
+  (JNIEnv *, jclass, jobject, jstring, jdouble, jdouble);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallel_taskCreate(JNIEnv*, jclass, jobject, jstring, jobjectArray,jdoubleArray, jdoubleArray);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskGetSender
+ * Signature   (Lsimgrid/msg/Task;)Lsimgrid/msg/Process;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_taskGetSender
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetSender(JNIEnv* env , jclass cls , jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskGetSource
+ * Signature   (Lsimgrid/msg/Task;)Lsimgrid/msg/Host;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_taskGetSource
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT jobject JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetSource(JNIEnv* env , jclass cls, jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskGetName
+ * Signature   (Lsimgrid/msg/Task;)Ljava/lang/String;
+ */
+JNIEXPORT jstring JNICALL Java_simgrid_msg_Msg_taskGetName
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT jstring JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetName(JNIEnv* env, jclass cls, jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskCancel
+ * Signature   (Lsimgrid/msg/Task;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_taskCancel
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskCancel(JNIEnv* env, jclass cls, jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskGetComputeDuration
+ * Signature   (Lsimgrid/msg/Task;)D
+ */
+JNIEXPORT jdouble JNICALL Java_simgrid_msg_Msg_taskGetComputeDuration
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_parallelTaskGetComputeDuration(JNIEnv* env, jclass cls, jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskGetRemainingDuration
+ * Signature   (Lsimgrid/msg/Task;)D
+ */
+JNIEXPORT jdouble JNICALL Java_simgrid_msg_Msg_taskGetRemainingDuration
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT jdouble JNICALL 
+Java_simgrid_msg_Msg_paralleTaskGetRemainingDuration(JNIEnv* env, jclass cls, jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskSetPriority
+ * Signature   (Lsimgrid/msg/Task;D)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_taskSetPriority
+  (JNIEnv *, jclass, jobject, jdouble);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskSetPriority(JNIEnv* env, jclass cls, jobject jparallel_task, jdouble priority);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskDestroy
+ * Signature   (Lsimgrid/msg/Task;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_taskDestroy
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskDestroy(JNIEnv* env, jclass cls, jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              taskExecute
+ * Signature   (Lsimgrid/msg/Task;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_taskExecute
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_parallelTaskExecute(JNIEnv* env, jclass cls, jobject jparallel_task);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelGet
+ * Signature   (Lsimgrid/msg/Channel;)Lsimgrid/msg/Task;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_channelGet
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelGetWithTimeout
+ * Signature   (Lsimgrid/msg/Channel;D)Lsimgrid/msg/Task;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_channelGetWithTimeout
+  (JNIEnv *, jclass, jobject, jdouble);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelGetFromHost
+ * Signature   (Lsimgrid/msg/Channel;Lsimgrid/msg/Host;)Lsimgrid/msg/Task;
+ */
+JNIEXPORT jobject JNICALL Java_simgrid_msg_Msg_channelGetFromHost
+  (JNIEnv *, jclass, jobject, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelHasPendingCommunication
+ * Signature   (Lsimgrid/msg/Channel;)Z
+ */
+JNIEXPORT jboolean JNICALL Java_simgrid_msg_Msg_channelHasPendingCommunication
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelGetCommunicatingProcess
+ * Signature   (Lsimgrid/msg/Channel;)I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_channelGetCommunicatingProcess
+  (JNIEnv *, jclass, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelGetHostWaitingTasks
+ * Signature   (Lsimgrid/msg/Channel;Lsimgrid/msg/Host;)I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_channelGetHostWaitingTasks
+  (JNIEnv *, jclass, jobject, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelPut
+ * Signature   (Lsimgrid/msg/Channel;Lsimgrid/msg/Task;Lsimgrid/msg/Host;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_channelPut
+  (JNIEnv *, jclass, jobject, jobject, jobject);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelPutWithTimeout
+ * Signature   (Lsimgrid/msg/Channel;Lsimgrid/msg/Task;Lsimgrid/msg/Host;D)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_channelPutWithTimeout
+  (JNIEnv *, jclass, jobject, jobject, jobject, jdouble);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelPutBounded
+ * Signature   (Lsimgrid/msg/Channel;Lsimgrid/msg/Task;Lsimgrid/msg/Host;D)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_channelPutBounded
+  (JNIEnv *, jclass, jobject, jobject, jobject, jdouble);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelWait
+ * Signature   (Lsimgrid/msg/Channel;D)I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_channelWait
+  (JNIEnv *, jclass, jobject, jdouble);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelSetNumber
+ * Signature   (I)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_channelSetNumber
+  (JNIEnv *, jclass, jint);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              channelGetNumber
+ * Signature   ()I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_channelGetNumber
+  (JNIEnv *, jclass);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              getErrCode
+ * Signature   ()I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_getErrCode
+  (JNIEnv *, jclass);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              getClock
+ * Signature   ()D
+ */
+JNIEXPORT jdouble JNICALL Java_simgrid_msg_Msg_getClock
+  (JNIEnv *, jclass);
+
+
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_init
+  (JNIEnv *, jclass, jobjectArray);
+
+
+JNIEXPORT void JNICALL
+JNICALL Java_simgrid_msg_Msg_run(JNIEnv* env, jclass cls);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_init(JNIEnv* env, jclass cls, jobjectArray jargs);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processKillAll
+ * Signature   (I)I
+ */
+JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_processKillAll
+  (JNIEnv *, jclass, jint);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              processExit
+ * Signature   (Lsimgrid/msg/Process;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_processExit
+  (JNIEnv *, jclass, jobject);
+
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_pajeOutput(JNIEnv* env, jclass cls, jstring jpajeFile);
+
+/*
+ * Class               simgrid_msg_Msg
+ * Method              waitSignal
+ * Signature   (Lsimgrid/msg/Process;)V
+ */
+JNIEXPORT void JNICALL Java_simgrid_msg_Msg_waitSignal
+  (JNIEnv *, jclass, jobject);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_info(JNIEnv * , jclass , jstring );
+
+JNIEXPORT jobjectArray JNICALL
+Java_simgrid_msg_Msg_allHosts(JNIEnv * , jclass );
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_createEnvironment(JNIEnv* env, jclass cls,jstring jplatformFile);
+
+JNIEXPORT void JNICALL 
+Java_simgrid_msg_Msg_platformLoad(JNIEnv* env, jclass cls, jobject jplatform);
+
+#endif /* !MSG4JAVA_H */ 
diff --git a/src/java/jmsg_channel.c b/src/java/jmsg_channel.c
new file mode 100644 (file)
index 0000000..9288a93
--- /dev/null
@@ -0,0 +1,24 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the implementation of the functions in relation with the java
+ * channel instance. 
+ */
+#include "jmsg_channel.h"
+#include "jmsg.h"
+#include "jxbt_utilities.h"
+
+jint jchannel_get_id(jobject jchannel,JNIEnv* env) {
+  jmethodID id  = jxbt_get_smethod(env, "simgrid/msg/Channel", "getId", "()I");
+       
+  if(!id)
+    return -1;
+       
+  return (*env)->CallIntMethod(env,jchannel, id);              
+}
diff --git a/src/java/jmsg_channel.h b/src/java/jmsg_channel.h
new file mode 100644 (file)
index 0000000..c378f0a
--- /dev/null
@@ -0,0 +1,29 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the declarations of the functions in relation with the java
+ * channel instance.
+ */
+
+#ifndef MSG_JCHANNEL_H
+#define MSG_JCHANNEL_H
+
+#include <jni.h>
+
+/**
+ * This function returns the id of a java channel instance.
+ *
+ * @param jchannel             The channel to get the id.
+ * @param env                  The environment of the current thread.
+ *
+ * @return                             The id of the channel.
+ */
+jint
+jchannel_get_id(jobject jchannel,JNIEnv* env);
+
+#endif /* !MSG_JCHANNEL_H */
diff --git a/src/java/jmsg_host.c b/src/java/jmsg_host.c
new file mode 100644 (file)
index 0000000..e9b481b
--- /dev/null
@@ -0,0 +1,88 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the implementation of the functions in relation with the java
+ * host instance. 
+ */
+#include "xbt/str.h"
+#include "jmsg.h"
+#include "jmsg_host.h"
+#include "jxbt_utilities.h"
+
+XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(jmsg);
+
+jobject jhost_new_instance(JNIEnv* env) {
+       
+  jclass cls = jxbt_get_class(env,"simgrid/msg/Host"); 
+  jmethodID constructor = jxbt_get_jmethod(env,cls,"<init>", "()V");
+       
+  if(!constructor) 
+    return NULL;
+       
+  return (*env)->NewObject(env,cls,constructor);
+}
+
+jobject jhost_ref(JNIEnv* env,jobject jhost) {
+  return (*env)->NewGlobalRef(env,jhost);
+}
+
+void jhost_unref(JNIEnv* env,jobject jhost) {
+  (*env)->DeleteGlobalRef(env,jhost);
+}
+
+void jhost_bind(jobject jhost,m_host_t host,JNIEnv* env) {
+  jfieldID id  = jxbt_get_sfield(env,"simgrid/msg/Host","bind", "J");
+
+  if (!id)
+    return;
+       
+  (*env)->SetLongField(env,jhost,id,(jlong)(long)(host));
+}
+
+m_host_t jhost_get_native(JNIEnv* env, jobject jhost) {
+  jfieldID id  = jxbt_get_sfield(env,"simgrid/msg/Host","bind", "J");
+
+  if(!id)
+    return NULL;
+
+  return (m_host_t)(long)(*env)->GetLongField(env,jhost,id);
+}
+
+const char*  jhost_get_name(jobject jhost,JNIEnv* env) {
+  m_host_t host = jhost_get_native(env,jhost);
+  return (const char*)host->name;              
+}
+
+void jhost_set_name(jobject jhost,jstring jname,JNIEnv* env) {
+  const char* name;
+  m_host_t host = jhost_get_native(env,jhost);
+
+  name = (*env)->GetStringUTFChars(env, jname, 0);
+       
+  if(host->name)
+    free(host->name);
+       
+  host->name = xbt_strdup(name);
+  (*env)->ReleaseStringUTFChars(env, jname, name);     
+}
+
+jboolean jhost_is_valid(jobject jhost,JNIEnv* env) {
+  jfieldID id  = jxbt_get_sfield(env,"simgrid/msg/Host","bind", "J");
+
+  if(!id)
+    return 0;
+
+  if ((*env)->GetLongField(env,jhost,id)) {
+    return JNI_TRUE;
+  } else {
+    return JNI_FALSE;
+  }
+}
+
+
diff --git a/src/java/jmsg_host.h b/src/java/jmsg_host.h
new file mode 100644 (file)
index 0000000..a41a834
--- /dev/null
@@ -0,0 +1,121 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the declarations of the functions in relation with the java
+ * host instance.
+ */
+#ifndef MSG_JHOST_H
+#define MSG_JHOST_H
+
+#include <jni.h>
+#include "msg/msg.h"
+
+/**
+ * This function returns a new java host instance.
+ *
+ * @param env                  The environment of the current thread
+ *
+ * @return                             A new java host object.
+ *
+ * @exception                  If the class Host is not found the function throws 
+ *                                             the ClassNotFoundException. If the constructor of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException.
+ */
+jobject
+jhost_new_instance(JNIEnv* env);
+
+/**
+ * This function returns a global reference to the  java host instance 
+ * specified by the parameter jhost.
+ *
+ * @param jhost                        The original java host instance.
+ * @param env                  The environment of the current thread
+ *
+ * @return                             The global reference to the original java host 
+ *                                             instance.
+ */
+jobject jhost_ref(JNIEnv* env,jobject jhost);
+/**
+ * This function delete a global reference to a java host instance.
+ *
+ * @param                              The global refernce to delete.
+ * @param env                  The environment of the current thread
+ */
+void jhost_unref(JNIEnv* env, jobject jhost);
+
+/**
+ * This function associated a native host to a java host instance.
+ *
+ * @param jhost                        The java host instance.
+ * @param host                 The native host to bind.
+ * @param env                  The environment of the current thread
+ *
+ * @exception                  If the class Host is not found the function throws 
+ *                                             the ClassNotFoundException. If the field bind of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ */            
+void
+jhost_bind(jobject jhost,m_host_t host,JNIEnv* env);
+
+/**
+ * This function returns a native host from a java host instance.
+ *
+ * @param jhost                        The java host object from which get the native host.
+ * @param env                  The environment of the current thread
+ *
+ * @return                             The function returns the native host associated to the
+ *                                             java host object.
+ *
+ * @exception                  If the class Host is not found the function throws 
+ *                                             the ClassNotFoundException. If the field bind of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ */
+m_host_t
+jhost_get_native(JNIEnv* env,jobject jhost);
+
+/**
+ * This function returns the name of a MSG host.
+ *
+ * @param jhost                        A java host object.
+ * @param env                  The environment of the current thread
+ *
+ * @return                             The name of the host.
+ */
+const char* 
+jhost_get_name(jobject jhost,JNIEnv* env);
+
+
+/**
+ * This function sets the name of a MSG        host.
+ *
+ * @param host                 The host concerned by the operation.
+ * @param jname                        The new name of the host.
+ * @param env                  The environment of the current thread
+ */
+void
+jhost_set_name(jobject jhost,jstring jname,JNIEnv* env);
+
+/**
+ * This function tests if a java host instance is valid.
+ * A java host object is valid if it is bind to a native host.
+ *
+ * @param jhost                        The host to test the validity.
+ * @param env                  The environment of the current thread
+ *
+ * @return                             If the java host is valid the function returns true.
+ *                                             Otherwise the function returns false.
+ */
+jboolean
+jhost_is_valid(jobject jhost,JNIEnv* env);
+
+#endif /*!MSG_JHOST_H */
+
diff --git a/src/java/jmsg_parallel_task.c b/src/java/jmsg_parallel_task.c
new file mode 100644 (file)
index 0000000..1af0f30
--- /dev/null
@@ -0,0 +1,64 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the implementation of the functions in relation with the java
+ * process instance. 
+ */
+
+#include "xbt/log.h" 
+#include "jmsg.h"
+#include "jmsg_parallel_task.h"
+#include "jxbt_utilities.h"
+
+XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(jmsg);
+
+jobject
+jparallel_task_ref(JNIEnv* env, jobject jparallel_task) {
+  jobject newref = (*env)->NewGlobalRef(env,jparallel_task); 
+
+  DEBUG1("jparallel_task_ref(%ld)",(long)newref);
+
+  return newref;
+}
+
+void
+jparallel_task_unref(JNIEnv* env, jobject jparallel_task) {
+  DEBUG1("jparallel_task_unref(%ld)",(long)jparallel_task);
+  (*env)->DeleteGlobalRef(env,jparallel_task);
+}
+
+void
+jparallel_task_bind(jobject jparallel_task,m_task_t task,JNIEnv* env) {
+  jfieldID id  = jxbt_get_sfield(env,"simgrid/msg/ParallelTask","bind", "J");
+       
+  if(!id)
+    return;
+       
+  (*env)->SetLongField(env,jparallel_task,id,(jlong)(long)(task));
+        
+}
+
+m_task_t
+jparallel_task_to_native_parallel_task(jobject jparallel_task,JNIEnv* env) {
+  jfieldID id  = jxbt_get_sfield(env,"simgrid/msg/ParallelTask","bind", "J");
+       
+  if(!id)
+    return NULL;
+    
+  return (m_task_t)(long)(*env)->GetLongField(env,jparallel_task,id);
+}
+
+jboolean
+jparallel_task_is_valid(jobject jparallel_task,JNIEnv* env) {
+  jfieldID id  = jxbt_get_sfield(env,"simgrid/msg/ParallelTask","bind", "J");
+       
+  if(!id)
+    return JNI_FALSE;
+
+  return (*env)->GetLongField(env,jparallel_task,id) ? JNI_TRUE : JNI_FALSE;
+}
diff --git a/src/java/jmsg_parallel_task.h b/src/java/jmsg_parallel_task.h
new file mode 100644 (file)
index 0000000..cf916e3
--- /dev/null
@@ -0,0 +1,89 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the declarations of the functions in relation with the java
+ * parallel task instance.
+ */
+
+#ifndef MSG_JPARALLEL_TASK_H
+#define MSG_JPARALLEL_TASK_H
+
+#include <jni.h>
+#include "msg/msg.h"
+
+
+/**
+ * This function returns a global reference to the java paralllel task instance 
+ * specified by the parameter jparallel_task.
+ *
+ * @param jparallel_task       The original java parallel task instance.
+ * @param env                          The environment of the current thread.
+ *
+ * @return                                     The global reference to the original java parallel task 
+ *                                                     instance.
+ */                    
+jobject
+jparallel_task_ref(JNIEnv* env, jobject jparallel_task);
+
+/**
+ * This function delete a global reference to a java parallel task instance.
+ *
+ * @param jparallel_task       The global refernce to delete.
+ * @param env                          The environment of the current thread.
+ */
+void
+jparallel_task_unref(JNIEnv* env,jobject jparallel_task);
+
+/**
+ * This function associated a native task to a java parallel task instance.
+ *
+ * @param jparallel_task       The java parallel task instance.
+ * @param jparallel_task       The native parallel task to bind.
+ * @param env                          The environment of the current thread.
+ *
+ * @exception                          If the class ParallelTask is not found the function throws 
+ *                                                     the ClassNotFoundException. If the field bind of 
+ *                                                     this class is not found the function throws the exception 
+ *                                                     NotSuchFieldException.  
+ */            
+void
+jparallel_task_bind(jobject jparallel_task,m_task_t task,JNIEnv* env);
+
+/**
+ * This function returns a native task from a java task instance.
+ *
+ * @param jparallel_task       The java parallel task object from which get the native parallel task.
+ * @param env                          The environment of the current thread.
+ *
+ * @return                                     The function returns the native parallel task associated to the
+ *                                                     java parallel task object.
+ *
+ * @exception                          If the class ParallelTask is not found the function throws 
+ *                                                     the ClassNotFoundException. If the field bind of 
+ *                                                     this class is not found the function throws the exception 
+ *                                                     NotSuchFieldException.  
+ */
+m_task_t
+jparallel_task_to_native_parallel_task(jobject jparallel_task,JNIEnv* env);
+
+/**
+ * This function tests if a java task instance is valid.
+ * A java task object is valid if it is bind to a native 
+ * task.
+ *
+ * @param jparallel_task       The java parallel task to test the validity.
+ * @param env                          The environment of the current thread.
+ *
+ * @return                                     If the java parallel task is valid the function returns true.
+ *                                                     Otherwise the function returns false.
+ */
+jboolean
+jparallel_task_is_valid(jobject jparallel_task,JNIEnv* env);
+
+
+#endif /* !MSG_JPARALLEL_TASK_H */
diff --git a/src/java/jmsg_process.c b/src/java/jmsg_process.c
new file mode 100644 (file)
index 0000000..f4abf58
--- /dev/null
@@ -0,0 +1,176 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the implementation of the functions in relation with the java
+ * process instance. 
+ */
+#include "jmsg.h"
+#include "jmsg_process.h"
+#include "jxbt_utilities.h"
+
+XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(jmsg);
+
+
+jobject
+jprocess_new_global_ref(jobject jprocess,JNIEnv* env) {
+  return (*env)->NewGlobalRef(env,jprocess);
+}
+
+void
+jprocess_delete_global_ref(jobject jprocess,JNIEnv* env) {
+  (*env)->DeleteGlobalRef(env,jprocess);
+}
+
+jboolean
+jprocess_is_alive(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","isAlive", "()Z");
+       
+  if(!id)
+    return 0;
+
+  return (*env)->CallBooleanMethod(env,jprocess,id);
+}
+
+void
+jprocess_join(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","join", "()V");
+       
+  if(!id)
+    return;
+               
+  (*env)->CallVoidMethod(env,jprocess, id);
+}
+
+void 
+jprocess_exit(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","interrupt", "()V");
+       
+  if(!id)
+    return;
+       
+  (*env)->CallVoidMethod(env,jprocess, id);
+}
+
+void 
+jprocess_yield(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","switchProcess", "()V");
+    
+  if(!id)
+    return;
+       
+  (*env)->CallVoidMethod(env,jprocess,id);
+}
+
+void
+jprocess_lock_mutex(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","lockMutex", "()V");
+    
+  if(!id)
+    return;
+       
+  (*env)->CallVoidMethod(env,jprocess,id);
+}
+
+void
+jprocess_unlock_mutex(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","unlockMutex", "()V");
+    
+  if(!id)
+    return;
+
+  (*env)->CallVoidMethod(env,jprocess,id);
+}
+
+
+void
+jprocess_signal_cond(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","signalCond", "()V");
+    
+  if(!id)
+    return;
+
+  (*env)->CallVoidMethod(env,jprocess,id);
+}
+
+void
+jprocess_wait_cond(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","waitCond", "()V");
+    
+  if(!id)
+    return;
+
+  (*env)->CallVoidMethod(env,jprocess,id);
+}
+
+
+void
+jprocess_start(jobject jprocess,JNIEnv* env) {
+  jmethodID id = jxbt_get_smethod(env,"simgrid/msg/Process","start", "()V");
+    
+  if(!id)
+    return;
+
+  DEBUG2("jprocess_start(jproc=%p,env=%p)",jprocess,env);
+  (*env)->CallVoidMethod(env,jprocess,id);
+  DEBUG0("jprocess started");
+}
+
+m_process_t
+jprocess_to_native_process(jobject jprocess,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Process","bind", "J");
+    
+  if(!id)
+    return NULL;
+
+  return (m_process_t)(long)(*env)->GetLongField(env,jprocess,id);
+}
+
+void
+jprocess_bind(jobject jprocess,m_process_t process,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Process","bind", "J");
+    
+  if(!id)
+    return;
+
+  (*env)->SetLongField(env,jprocess,id,(jlong)(long)(process));
+}
+
+jlong
+jprocess_get_id(jobject jprocess,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Process","id", "J");
+    
+  if(!id)
+    return 0;
+
+  return (*env)->GetLongField(env,jprocess,id);
+}
+
+jstring
+jprocess_get_name(jobject jprocess,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Process","name", "Ljava/lang/String;");
+  jobject jname;
+       
+  if(!id)
+    return NULL;
+    
+  jname = (jstring)(*env)->GetObjectField(env,jprocess,id);
+
+  return (*env)->NewGlobalRef(env,jname);
+       
+}
+
+jboolean
+jprocess_is_valid(jobject jprocess,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Process","bind", "J");
+    
+  if(!id)
+    return JNI_FALSE;
+
+  return (*env)->GetLongField(env,jprocess,id) ? JNI_TRUE : JNI_FALSE; 
+}
diff --git a/src/java/jmsg_process.h b/src/java/jmsg_process.h
new file mode 100644 (file)
index 0000000..0971301
--- /dev/null
@@ -0,0 +1,257 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the declarations of the functions in relation with the java
+ * process instance.
+ */
+#ifndef MSG_JPROCESS_H
+#define MSG_JPROCESS_H
+
+#include <jni.h>
+#include "msg/msg.h"
+
+/**
+ * This function returns a global reference to the  java process instance 
+ * specified by the parameter jprocess.
+ *
+ * @param jprocess             The original java process instance.
+ * @param env                  The env of the current thread
+ *
+ * @return                             The global reference to the original java process 
+ *                                             instance.
+ */                            
+jobject
+jprocess_new_global_ref(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function delete a global reference to a java process instance.
+ * If the java process is alive the function joins it and stops it before.
+ *
+ * @param                              The global refernce to delete.
+ * @param env                  The env of the current thread
+ *
+ * @see                                        jprocess_join()
+ * @see                                        jprocess_exit()
+ */
+void
+jprocess_delete_global_ref(jobject jprocess,JNIEnv* env);
+
+/**
+ *
+ * This function tests if the specified java process instance is alive. 
+ * A java process object is alive if it has been started and has not yet 
+ * terminated.
+ * 
+ * @param jprocess             The java process to test.
+ * @param env                  The env of the current thread
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the methos isAlive() of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException. 
+ *
+ * @return                             If the java process is alive the function returns
+ *                                             true. Otherwise the function returns false.
+ */ 
+jboolean
+jprocess_is_alive(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function waits for a java process to terminate.
+ *
+ * @param jprocess             The java process ot wait for.
+ * @param env                  The env of the current thread
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the methos join() of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException. 
+ *
+ */
+void
+jprocess_join(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function starts the specified java process.
+ *
+ * @param jprocess             The java process to start.
+ * @param env                  The env of the current thread
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the methos start() of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException. 
+ */
+void
+jprocess_start(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function forces the java process to stop.
+ *
+ * @param jprocess             The java process to stop.
+ * @param env                  The env of the current thread
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the methos stop() of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException. 
+ */
+void 
+jprocess_exit(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function associated a native process to a java process instance.
+ *
+ * @param jprocess             The java process instance.
+ * @param process              The native process to bind.
+ * @param env                  The env of the current thread
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the field bind of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ */            
+void
+jprocess_bind(jobject jprocess,m_process_t process,JNIEnv* env);
+
+/**
+ * This function returns a native process from a java process instance.
+ *
+ * @param jprocess             The java process object from which get the native process.
+ * @param env                  The env of the current thread
+ *
+ * @return                             The function returns the native process associated to the
+ *                                             java process object.
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the field bind of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ */
+m_process_t
+jprocess_to_native_process(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function gets the id of the specified java process.
+ *
+ * @param jprocess             The java process to get the id.
+ * @param env                  The env of the current thread
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the field id of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ *
+ * @return                             The id of the specified java process.
+ */
+jlong
+jprocess_get_id(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function tests if a java process instance is valid.
+ * A java process object is valid if it is bind to a native 
+ * process.
+ *
+ * @param jprocess             The java process to test the validity.
+ * @param env                  The env of the current thread
+ *
+ * @return                             If the java process is valid the function returns true.
+ *                                             Otherwise the function returns false.
+ */
+jboolean
+jprocess_is_valid(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function gets the name of the specified java process.
+ *
+ * @param jprocess             The java process to get the name.
+ * @param env                  The env of the current thread
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the field name of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ *
+ * @return                             The name of the specified java process.
+ */
+jstring
+jprocess_get_name(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function yields the specified java process.
+ *
+ * @param jprocess             The java process to yield.
+ * @param env                  The env of the current thread.
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the method switchProcess of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException.
+ */
+void 
+jprocess_yield(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function locks the mutex of the specified java process.
+ *
+ * @param jprocess             The java process of the mutex to lock.
+ * @param env                  The env of the current thread.
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the method lockMutex of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException.
+ */
+void
+jprocess_lock_mutex(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function unlocks the mutex of the specified java process.
+ *
+ * @param jprocess             The java process of the mutex to unlock.
+ * @param env                  The env of the current thread.
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the method unlockMutex of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException.
+ */
+void
+jprocess_unlock_mutex(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function signals the condition of the mutex of the specified java process.
+ *
+ * @param jprocess             The java process of the condtion to signal.
+ * @param env                  The env of the current thread.
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the method signalCond of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException.
+ */
+void
+jprocess_signal_cond(jobject jprocess,JNIEnv* env);
+
+/**
+ * This function waits the condition of the mutex of the specified java process.
+ *
+ * @param jprocess             The java process of the condtion to wait for.
+ * @param env                  The env of the current thread.
+ *
+ * @exception                  If the class Process is not found the function throws 
+ *                                             the ClassNotFoundException. If the method waitCond of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchMethodException.
+ */
+void
+jprocess_wait_cond(jobject jprocess,JNIEnv* env);
+
+
+#endif /* !MSG_JPROCESS_H */
diff --git a/src/java/jmsg_task.c b/src/java/jmsg_task.c
new file mode 100644 (file)
index 0000000..21efd57
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the implementation of the functions in relation with the java
+ * task instance. 
+ */
+#include "jmsg.h"
+#include "jmsg_task.h"
+#include "jxbt_utilities.h"
+
+jobject
+jtask_new_global_ref(jobject jtask,JNIEnv* env) {
+  return (*env)->NewGlobalRef(env,jtask); 
+}
+
+void
+jtask_delete_global_ref(jobject jtask,JNIEnv* env) {
+  (*env)->DeleteGlobalRef(env,jtask);
+}
+
+void
+jtask_bind(jobject jtask,m_task_t task,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Task","bind", "J");
+    
+  if(!id)
+    return;
+
+  (*env)->SetLongField(env,jtask,id,(jlong)(long)(task));       
+}
+
+m_task_t
+jtask_to_native_task(jobject jtask,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Task","bind", "J");
+    
+  if(!id)
+    return NULL;
+    
+  return (m_task_t)(long)(*env)->GetLongField(env,jtask,id);   
+}
+
+jboolean
+jtask_is_valid(jobject jtask,JNIEnv* env) {
+  jfieldID id = jxbt_get_sfield(env,"simgrid/msg/Task","bind", "J");
+    
+  if(!id)
+    return JNI_FALSE;
+    
+  return (*env)->GetLongField(env,jtask,id) ? JNI_TRUE : JNI_FALSE;
+}
diff --git a/src/java/jmsg_task.h b/src/java/jmsg_task.h
new file mode 100644 (file)
index 0000000..64aa3c9
--- /dev/null
@@ -0,0 +1,87 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ * This contains the declarations of the functions in relation with the java
+ * task instance.
+ */
+
+#ifndef MSG_JTASK_H
+#define MSG_JTASK_H
+
+#include <jni.h>
+#include "msg/msg.h"
+
+/**
+ * This function returns a global reference to the  java task instance 
+ * specified by the parameter jtask.
+ *
+ * @param jtask                        The original java task instance.
+ * @param env                  The environment of the current thread.
+ *
+ * @return                             The global reference to the original java task 
+ *                                             instance.
+ */                    
+jobject
+jtask_new_global_ref(jobject jtask,JNIEnv* env);
+
+/**
+ * This function delete a global reference to a java task instance.
+ *
+ * @param                              The global refernce to delete.
+ * @param env                  The environment of the current thread.
+ */
+void
+jtask_delete_global_ref(jobject jtask,JNIEnv* env);
+
+/**
+ * This function associated a native task to a java task instance.
+ *
+ * @param jtask                        The java task instance.
+ * @param task                 The native task to bind.
+ * @param env                  The environment of the current thread.
+ *
+ * @exception                  If the class Task is not found the function throws 
+ *                                             the ClassNotFoundException. If the field bind of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ */            
+void
+jtask_bind(jobject jtask,m_task_t task,JNIEnv* env);
+
+/**
+ * This function returns a native task from a java task instance.
+ *
+ * @param jtask                        The java task object from which get the native task.
+ * @param env                  The environment of the current thread.
+ *
+ * @return                             The function returns the native task associated to the
+ *                                             java task object.
+ *
+ * @exception                  If the class Task is not found the function throws 
+ *                                             the ClassNotFoundException. If the field bind of 
+ *                                             this class is not found the function throws the exception 
+ *                                             NotSuchFieldException.  
+ */
+m_task_t
+jtask_to_native_task(jobject jtask,JNIEnv* env);
+
+/**
+ * This function tests if a java task instance is valid.
+ * A java task object is valid if it is bind to a native 
+ * task.
+ *
+ * @param jtask                        The java task to test the validity.
+ * @param env                  The environment of the current thread.
+ *
+ * @return                             If the java task is valid the function returns true.
+ *                                             Otherwise the function returns false.
+ */
+jboolean
+jtask_is_valid(jobject jtask,JNIEnv* env);
+
+#endif /* !MSG_JTASK_H */
diff --git a/src/java/jxbt_context.c b/src/java/jxbt_context.c
new file mode 100644 (file)
index 0000000..e9cd2a3
--- /dev/null
@@ -0,0 +1,396 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Arnaud Legrand,Martin Quinson,Malek Cherier         
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. 
+ */
+
+#include "portable.h"
+#include "xbt/log.h"
+#include "xbt/dynar.h"
+#include "xbt/xbt_thread.h"
+#include "java/jxbt_context.h"
+#include "java/jmsg.h"
+#include "java/jmsg_process.h"
+
+#define JAVA_SIMGRID /* get the right definition of the xbt_ctx with all we need here */
+#include "xbt/context_private.h"
+
+
+XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_ctx, xbt, "Context");
+
+
+static xbt_context_t current_context = NULL;    /* the current context                 */
+static xbt_context_t init_context = NULL;       /* the initial context                 */
+static xbt_swag_t context_to_destroy = NULL;    /* the list of the contexs to destroy  */
+static xbt_swag_t context_living = NULL;        /* the list of the contexts in use     */
+static xbt_mutex_t creation_mutex;              /* For syncronization during process creation */
+static xbt_thcond_t creation_cond;              /* For syncronization during process creation */
+static xbt_mutex_t master_mutex;               /* For syncronization during process scheduling*/
+static xbt_thcond_t master_cond;               /* For syncronization during process scheduling*/
+
+static void 
+__xbt_context_yield(xbt_context_t context);
+
+
+static void 
+__xbt_context_yield(xbt_context_t context) {
+  if(context) {
+    /* save the current context */
+    xbt_context_t self = current_context;
+    
+    if(is_main_thread()) {
+      /* the main thread has called this function
+       * - update the current context
+       * - signal the condition of the process to run
+       * - wait on its condition
+       * - restore thr current contex
+       */
+      
+      xbt_mutex_lock(master_mutex);
+      xbt_mutex_lock(context->mutex);
+                       
+      /* update the current context */
+      current_context = context;
+      xbt_thcond_signal(context->cond);
+      xbt_mutex_unlock(context->mutex);
+      xbt_thcond_wait(master_cond, master_mutex);
+      xbt_mutex_unlock(master_mutex);
+      /* retore the current context */
+      current_context = self;
+                       
+    } else {
+       /* a java thread has called this function
+        * - update the current context
+        * - signal the condition of the main thread
+        * - wait on its condition
+        * - restore thr current contex
+        */
+
+       xbt_mutex_lock(master_mutex);
+       xbt_mutex_lock(context->mutex);
+       /* update the current context */
+       current_context = context;
+       xbt_thcond_signal(master_cond);
+       xbt_mutex_unlock(master_mutex);
+       xbt_thcond_wait(context->cond, context->mutex);
+       xbt_mutex_unlock(context->mutex);
+       /* retore the current context */
+       current_context = self;
+      }
+  }
+       
+  if(current_context->iwannadie) {
+    __context_exit(current_context, 1);
+  }
+}
+
+
+
+static void 
+xbt_context_free(xbt_context_t context) {
+  if(context) {
+    if(context->jprocess) {
+      jobject jprocess = context->jprocess;
+      context->jprocess = NULL;
+                       
+      /* if the java process is alive join it */
+      if(jprocess_is_alive(jprocess,context->jenv)) {
+       jprocess_join(jprocess,context->jenv);
+      }
+    }
+       
+    /* destroy the mutex of the process */
+    xbt_mutex_destroy(context->mutex);
+
+    /* destroy the condition of the process */
+    xbt_thcond_destroy(context->cond);
+
+    context->mutex = NULL;
+    context->cond = NULL;
+    
+    if(context->exception) 
+      free(context->exception);
+    
+    free(context);
+    context = NULL;
+  }
+}
+/*
+ * This function is only called by the main thread.
+ */
+void 
+__context_exit(xbt_context_t context ,int value) {
+  /* call the cleanup function of the context */
+  if(context->cleanup_func)
+    context->cleanup_func(context->cleanup_arg);
+       
+  /* remove the context from the list of the contexts in use. */
+  xbt_swag_remove(context, context_living);
+       
+  /* insert the context in the list of contexts to destroy. */ 
+  xbt_swag_insert(context, context_to_destroy);
+       
+  /*
+   * signal the condition of the java process 
+   */
+  xbt_mutex_lock(master_mutex);
+  xbt_mutex_lock(context->mutex);
+  xbt_thcond_signal(context->cond);
+  xbt_mutex_unlock(context->mutex);
+       
+  if (context->jprocess) {
+    /* if the java process is alive, stop it */
+    if (jprocess_is_alive(context->jprocess,context->jenv)) {
+      jobject jprocess = context->jprocess;
+      context->jprocess = NULL;
+      jprocess_exit(jprocess,context->jenv);
+    }
+  }
+}
+
+/*
+ * This function is called by a java process (only).
+ */
+void 
+jcontext_exit(xbt_context_t context ,int value,JNIEnv* env) {
+  jobject __jprocess = context->jprocess;
+  context->jprocess = NULL;
+       
+  if(context->cleanup_func)
+    context->cleanup_func(context->cleanup_arg);
+
+  /* remove the context of the list of living contexts */
+  xbt_swag_remove(context, context_living);
+
+  /* insert the context in the list of the contexts to destroy */
+  xbt_swag_insert(context, context_to_destroy);
+       
+  /*
+   * signal the condition of the main thread.
+   */
+  xbt_mutex_lock(master_mutex);
+  xbt_mutex_lock(context->mutex);
+  xbt_thcond_signal(master_cond);
+  xbt_mutex_unlock(master_mutex);
+       
+       
+  /* the global reference to the java process instance is deleted */
+  jprocess_delete_global_ref(__jprocess,env);
+}
+
+/* callback: context fetching */
+static ex_ctx_t *
+__context_ex_ctx(void) {
+  return current_context->exception;
+}
+
+/* callback: termination */
+static void 
+__context_ex_terminate(xbt_ex_t *e) {
+  xbt_ex_display(e);
+
+  abort();
+}
+
+/**
+ * This function initialize the xbt module context which contains 
+ * all functions of the context API .
+ *
+ * @remark This function must be called before use all other function 
+ * of this API.
+ */
+void 
+xbt_context_init(void) {
+  if(!current_context) {
+    /* allocate the current context. */
+    current_context = init_context = xbt_new0(s_xbt_context_t,1);
+               
+    /* context exception */
+    init_context->exception = xbt_new(ex_ctx_t,1);
+    XBT_CTX_INITIALIZE(init_context->exception);
+    __xbt_ex_ctx       = __context_ex_ctx;
+    __xbt_ex_terminate = __context_ex_terminate;
+    
+    /* this list contains the context to destroy */
+    context_to_destroy = xbt_swag_new(xbt_swag_offset(*current_context,hookup));
+    /* this list contains the context in use */
+    context_living = xbt_swag_new(xbt_swag_offset(*current_context,hookup));
+    
+    /* append the current context in the list of context in use */
+    xbt_swag_insert(init_context, context_living);
+          
+    /* this mutex is used to synchronize the creation of the java process */
+    creation_mutex = xbt_mutex_init();
+    /* this mutex is used to synchronize the creation of the java process */
+    creation_cond = xbt_thcond_init();
+
+    /* this mutex is used to synchronize the scheduling of the java process */
+    master_mutex = xbt_mutex_init();
+    /* this mutex is used to synchronize the scheduling of the java process */
+    master_cond = xbt_thcond_init();
+  }
+}
+
+/** 
+ * This function is used as a garbage collection
+ * Should be called some time to time to free the memory allocated for contexts
+ * that have finished executing their main functions.
+ */
+void xbt_context_empty_trash(void) {
+  xbt_context_t context=NULL;
+       
+  /* destroy all the context contained in the list of context to destroy */
+  while((context=xbt_swag_extract(context_to_destroy)))
+    xbt_context_free(context);
+}
+
+void 
+xbt_context_start(xbt_context_t context)  {
+  DEBUG3("xbt_context_start of %p (jproc=%p, jenv=%p)",
+        context, context->jprocess, context->jenv);
+
+  /* the main thread locks the mutex used to create all the process    */
+  xbt_mutex_lock(creation_mutex);
+
+  /* the main thread starts the java process                           */
+  jprocess_start(context->jprocess,context->jenv);
+
+  /* the main thread waits the startup of the java process             */
+  xbt_thcond_wait(creation_cond, creation_mutex);
+       
+  /* the java process is started, the main thread unlocks the mutex
+   * used during the creation of the java process
+   */
+  xbt_mutex_unlock(creation_mutex);
+}
+
+
+xbt_context_t 
+xbt_context_new(xbt_context_function_t code, 
+               void_f_pvoid_t startup_func, void *startup_arg,
+               void_f_pvoid_t cleanup_func, void *cleanup_arg,
+               int argc, char *argv[]) {
+  xbt_context_t context = xbt_new0(s_xbt_context_t,1);
+
+  context->code = code;
+       
+  context->mutex = xbt_mutex_init();
+  context->cond = xbt_thcond_init();
+       
+       
+  context->argc = argc;
+  context->argv = argv;
+  context->startup_func = startup_func;
+  context->startup_arg = startup_arg;
+  context->cleanup_func = cleanup_func;
+  context->cleanup_arg = cleanup_arg;
+  context->exception = xbt_new(ex_ctx_t,1);
+  XBT_CTX_INITIALIZE(context->exception);
+       
+  xbt_swag_insert(context, context_living);
+       
+  return context;
+}
+
+
+void xbt_context_yield(void) {
+  __xbt_context_yield(current_context);
+}
+
+/** 
+ * \param context the winner
+ *
+ * Calling this function blocks the current context and schedule \a context.  
+ * When \a context will call xbt_context_yield, it will return
+ * to this function as if nothing had happened.
+ */
+void xbt_context_schedule(xbt_context_t context) {
+  xbt_assert0((current_context==init_context),"You are not supposed to run this function here!");
+  __xbt_context_yield(context);
+}
+
+/** 
+ * This function kill all existing context and free all the memory
+ * that has been allocated in this module.
+ */
+void xbt_context_exit(void)  {
+
+  xbt_context_t context=NULL;
+       
+  xbt_context_empty_trash();
+       
+  while((context=xbt_swag_extract(context_living))) {
+    if(context!=init_context) 
+      xbt_context_kill(context);
+  }
+
+  free(init_context->exception); 
+  free(init_context);   
+
+  init_context = current_context = NULL ;
+
+  xbt_context_empty_trash();
+
+  xbt_swag_free(context_to_destroy);
+  xbt_swag_free(context_living);
+       
+  xbt_mutex_destroy(creation_mutex);
+  xbt_thcond_destroy(creation_cond);
+  xbt_mutex_destroy(master_mutex);
+  xbt_thcond_destroy(master_cond);
+}
+
+/** 
+ * \param context poor victim
+ *
+ * This function simply kills \a context... scarry isn't it ?
+ */
+void xbt_context_kill(xbt_context_t context) {
+  context->iwannadie=1;
+  __xbt_context_yield(context);
+}
+
+xbt_thcond_t
+xbt_creation_cond_get(void) {
+  return creation_cond;
+}
+
+xbt_mutex_t
+xbt_creation_mutex_get(void) {
+  return creation_mutex;
+}
+
+void  xbt_context_set_jprocess(xbt_context_t context, void *jp) {
+  context->jprocess = jp;
+}
+void* xbt_context_get_jprocess(xbt_context_t context)           { 
+   return context->jprocess;
+}
+
+void  xbt_context_set_jmutex(xbt_context_t context,void *jm)    {
+   context->mutex = jm;
+}
+void* xbt_context_get_jmutex(xbt_context_t context)             { 
+   return context->mutex; 
+}
+
+void  xbt_context_set_jcond(xbt_context_t context,void *jc)     {
+   context->cond = jc;
+}
+void* xbt_context_get_jcond(xbt_context_t context)              { 
+   return context->cond;
+}
+
+void  xbt_context_set_jenv(xbt_context_t context,void* je)      {
+   context->jenv = je;
+}
+void* xbt_context_get_jenv(xbt_context_t context)               { 
+   return context->jenv;
+}
+
+
+/* @} */
diff --git a/src/java/jxbt_context.h b/src/java/jxbt_context.h
new file mode 100644 (file)
index 0000000..8fdd5a2
--- /dev/null
@@ -0,0 +1,69 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Arnaud Legrand, Martin Quinson, Malek Cherier         
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. 
+ */
+
+#ifndef XBT_JCONTEXT_H
+#define XBT_JCONTEXT_H
+
+
+#include "xbt/sysdep.h"
+#include "xbt/swag.h"
+#include "xbt/dynar.h" /* void_f_pvoid_t */
+#include "portable.h"  /* loads context system definitions */
+#include "xbt/context.h"
+#include "xbt/ex.h"
+#include "xbt/xbt_thread.h"
+#include <jni.h>
+
+SG_BEGIN_DECL()
+
+/**
+ * This function gets the context of a java process instance.
+ * 
+ * @param index                The id (index in the table) of the java process object.
+ *
+ * @return                     The context of the java process object.
+ */
+xbt_context_t xbt_context_get_by_id(jlong index);
+
+/*
+ * This function appends a context in the table of contexts of the simulation.
+ *
+ * @param context      The context to append.
+ *
+ * @return     Returns 0 if successful the function returns 0, and -1 otherwise.
+ */
+int xbt_context_append(xbt_context_t context);
+
+/*
+ * This function is called by the simulator to terminate a java process instance.
+ *
+ * @param context      The context of the java process to terminate.
+ * @param value                not used.
+ */
+void __context_exit(xbt_context_t context ,int value);
+
+/*
+ * This function is called by the java process to indicate it's done
+ * 
+ * @param context      The context of the process concerning by the ending.
+ * @parma value                not used.
+ * @param env          The jni interface pointer of the process.
+ */
+void jcontext_exit(xbt_context_t context ,int value,JNIEnv* env);
+
+/** Returns the condition used to synchronise the creation of a java process. */
+xbt_thcond_t xbt_creation_cond_get(void);
+
+/** Returns the mutex used to synchronise the creation of a java process */
+xbt_mutex_t xbt_creation_mutex_get(void);
+
+SG_END_DECL()
+
+#endif /* !_XBT_CONTEXT_PRIVATE_H */
diff --git a/src/java/jxbt_utilities.c b/src/java/jxbt_utilities.c
new file mode 100644 (file)
index 0000000..2ef04a3
--- /dev/null
@@ -0,0 +1,184 @@
+/*
+ * $Id$
+ *
+ * Various JNI helper functions
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ */
+
+#include <stdlib.h> /* abort */
+#include "xbt/misc.h"
+#include "xbt/sysdep.h"
+#include "xbt/str.h"
+#include "jxbt_utilities.h"
+
+XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(jmsg);
+
+/* *********** */
+/* JNI GETTERS */
+/* *********** */
+
+jclass jxbt_get_class(JNIEnv* env, const char*name) {
+  jclass cls = (*env)->FindClass(env, name);
+       
+  if(!cls) {
+    char *m=bprintf("Class %s not found",name);
+    jxbt_throw_jni(env, m);
+    free(m);
+    return NULL;
+  }
+
+  return cls;
+}
+
+jmethodID jxbt_get_jmethod(JNIEnv* env, jclass cls, 
+                          const char *name,const char *signature) {
+  jmethodID id;
+
+  if (!cls)
+    return 0;
+  id = (*env)->GetMethodID(env, cls, name,signature);
+       
+  if(!id) {
+
+    jmethodID tostr_id = (*env)->GetMethodID(env, cls, "getName", "()Ljava/lang/String;");
+    jstring jclassname = (jstring) (*env)->CallObjectMethod(env, cls, tostr_id, NULL);
+    const char *classname = (*env)->GetStringUTFChars(env, jclassname, 0);
+
+    char *m=bprintf("Cannot find method %s(%s) in %s", name, signature ,classname);
+
+    (*env)->ReleaseStringUTFChars(env, jclassname, classname);         
+
+    jxbt_throw_jni(env,m);
+
+    free(m);
+    return 0;
+  }
+
+  return id;
+}
+
+jmethodID jxbt_get_smethod(JNIEnv* env, const char *classname, 
+                         const char *name,const char *signature) { 
+  jclass cls = jxbt_get_class(env,classname);
+  jmethodID id;
+
+  if (!cls)
+    return 0;
+  id = (*env)->GetMethodID(env, cls, name,signature);
+       
+  if(!id) {
+    char *m=bprintf("Cannot find method %s(%s) in %s", name, signature,classname);
+
+    jxbt_throw_jni(env,m);
+
+    free(m);
+    return 0;
+  }
+
+  return id;
+}
+
+jfieldID jxbt_get_jfield(JNIEnv* env, jclass cls, 
+                        const char *name, const char *signature) {
+  jfieldID id;
+
+  if (!cls)
+    return 0;
+
+  id = (*env)->GetFieldID(env, cls, name, signature);
+       
+  if(!id) {
+    jmethodID getname_id = (*env)->GetMethodID(env, cls, "getName", "()Ljava/lang/String;");
+    jstring jclassname = (jstring) (*env)->CallObjectMethod(env,cls, getname_id, NULL);
+    const char *classname = (*env)->GetStringUTFChars(env, jclassname, 0);
+    char *m=bprintf("Cannot find field %s %s in %s",signature, name, classname);
+
+    (*env)->ReleaseStringUTFChars(env, jclassname, classname);         
+
+    jxbt_throw_jni(env,m);
+
+    free(m);
+    return 0;
+  }
+
+  return id;
+}
+
+jfieldID jxbt_get_sfield(JNIEnv* env, const char *classname, 
+                       const char *name, const char *signature) {
+  jclass cls = jxbt_get_class(env,classname);
+  jfieldID id;
+
+  if (!cls)
+    return 0;
+
+  id = (*env)->GetFieldID(env, cls, name, signature);
+       
+  if(!id) {
+    char *m=bprintf("Cannot find field %s %s in %s",signature, name, classname);
+
+    jxbt_throw_jni(env,m);
+
+    free(m);
+    return 0;
+  }
+
+  return id;
+}
+
+/* ***************** */
+/* EXCEPTION RAISING */
+/* ***************** */
+static void jxbt_throw_by_name(JNIEnv* env,const char* name, char *msg) {
+   jclass cls = (*env)->FindClass(env, name);
+
+   xbt_assert2(cls,"%s (Plus severe error: class %s not found)\n",
+              msg,name);
+
+   (*env)->ThrowNew(env,cls,msg);
+
+   free(msg);
+}
+
+
+/* Errors in MSG */
+void jxbt_throw_jni(JNIEnv* env,const char* msg) {
+  jxbt_throw_by_name(env,
+                    "simgrid/msg/JniException",
+                    bprintf("Internal or JNI error: %s",msg));
+}
+void jxbt_throw_notbound(JNIEnv* env,const char* kind, void *pointer) {
+  jxbt_throw_by_name(env,
+                    "simgrid/msg/JniException",
+                    bprintf("Internal error: %s %p not bound",kind, pointer));
+}
+
+void jxbt_throw_native(JNIEnv* env,char* msg) {
+  jxbt_throw_by_name(env, "simgrid/msg/NativeException", msg);
+}
+
+/* *** */
+void jxbt_throw_null(JNIEnv* env, char* msg) {
+  jxbt_throw_by_name(env, "java/lang/NullPointerException", msg);
+}
+
+
+/* Errors on user side */
+void jxbt_throw_illegal(JNIEnv* env, char* msg) {
+  jxbt_throw_by_name(env, "java/lang/IllegalArgumentException", msg);
+}
+void jxbt_throw_host_not_found(JNIEnv* env, const char *invalid_name) {
+  jxbt_throw_by_name(env,
+                    "simgrid/msg/HostNotFoundException",
+                    bprintf("No such host: %s",invalid_name));
+}
+void jxbt_throw_process_not_found(JNIEnv* env, const char *invalid_name) {
+  jxbt_throw_by_name(env,
+                    "simgrid/msg/ProcessNotFoundException",
+                    bprintf("No such process: %s",invalid_name));
+}
diff --git a/src/java/jxbt_utilities.h b/src/java/jxbt_utilities.h
new file mode 100644 (file)
index 0000000..97e5eb4
--- /dev/null
@@ -0,0 +1,71 @@
+/*
+ * $Id$
+ *
+ * Various JNI helper functions
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier All right reserved. 
+ *
+ * This program is free software; you can redistribute it and/or modify it 
+ * under the terms of the license (GNU LGPL) which comes with this package.
+ *
+ */
+
+#ifndef JXBT_UTILITY_H
+#define JXBT_UTILITY_H
+
+#include <jni.h>
+#include "jxbt_utilities.h"
+
+/* *********** */
+/* JNI GETTERS */
+/* *********** */
+
+/* Search a class and throw an exception if not found */
+jclass jxbt_get_class(JNIEnv* env, const char*name);
+
+/* Search a method in a class and throw an exception if not found
+   (it's ok to to pass a NULL class: it's a noop) */
+jmethodID jxbt_get_jmethod(JNIEnv* env, jclass class, 
+                          const char *name,const char *signature);
+
+/* Search a field in a class and throw an exception if not found
+   (it's ok to to pass a NULL class: it's a noop) */
+jfieldID jxbt_get_jfield(JNIEnv* env, jclass class, 
+                        const char *name, const char *signature);
+
+
+/* Search a method in a class and throw an exception if not found
+   (it's ok to to pass a NULL class: it's a noop) */
+jmethodID jxbt_get_smethod(JNIEnv* env, const char *classname, 
+                         const char *name,const char *signature);
+
+/* Search a field in a class and throw an exception if not found
+   (it's ok to to pass a NULL class: it's a noop) */
+jfieldID jxbt_get_sfield(JNIEnv* env, const char *classname, 
+                       const char *name, const char *signature);
+
+
+/* ***************** */
+/* EXCEPTION RAISING */
+/* ***************** */
+
+
+/** Thrown on internal error of this layer, or on problem with JNI */
+void jxbt_throw_jni(JNIEnv* env, const char* msg);
+/** Thrown when using an object not bound to a native one where it should, or reverse (kinda JNI issue) */
+void jxbt_throw_notbound(JNIEnv* env,const char* kind,void *pointer);
+
+/** Thrown on error in native MSG code */
+void jxbt_throw_native(JNIEnv* env, char *msg);
+
+/** Thrown if NULL gets used */
+void jxbt_throw_null(JNIEnv* env,char *msg);
+
+/** Thrown on illegal arguments */
+void jxbt_throw_illegal(JNIEnv* env,char *msg);
+/** Thrown when looking for an host from name does not lead to anything */
+void jxbt_throw_host_not_found(JNIEnv* env, const char *invalid_name);
+/** Thrown when looking for an host from name does not lead to anything */
+void jxbt_throw_process_not_found(JNIEnv* env, const char *invalid_name);
+
+#endif /* ! JXBT_UTILITY_H */
diff --git a/src/java/simgrid/msg/ApplicationHandler.java b/src/java/simgrid/msg/ApplicationHandler.java
new file mode 100644 (file)
index 0000000..e5fd30d
--- /dev/null
@@ -0,0 +1,97 @@
+/*
+ * simgrid.msg.ApplicationHandler.java 1.00 07/05/01
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ *(GNU LGPL) which comes with this package. 
+ */
+
+package simgrid.msg;
+
+import org.xml.sax.*;
+import org.xml.sax.helpers.*;
+import java.lang.reflect.*;
+
+/**
+ * The handler used to parse the deployment file which contains 
+ * the description of the application (simulation).
+ *
+ * @author  Abdelmalek Cherier
+ * @author  Martin Quinson
+ * @version 1.00, 07/05/01
+ * @see Host
+ * @see Process
+ * @see Simulation
+ * @since SimGrid 3.3
+ * @since JDK1.5011 
+ */
+public final class ApplicationHandler extends DefaultHandler
+{
+       /* the current process. */
+    public simgrid.msg.Process process;
+    
+    public ApplicationHandler() {
+        super();
+    }
+    
+    public void startDocument() {} // NOTHING TODO
+    public void endDocument() {}   // NOTHING TODO
+    
+    public void characters(char[] chars, int beg, int lgr) {}   // NOTHING TODO
+    
+   /**
+    * element handlers
+    */
+    public void startElement(String nameSpace, String localName,String qName,Attributes attr)  {
+        if(localName.equals("process"))
+            onStartProcess(attr);   
+       else if(localName.equals("argument"))
+            onArgument(attr);
+    }
+    public void endElement(String nameSpace, String localName,String qName)  {
+        if(localName.equals("process"))
+            onEndProcess();   
+    }
+    
+    /**
+     * process element handler.
+     */
+    public void onStartProcess(Attributes attr) {
+        String hostName = attr.getValue(0);
+        String className = attr.getValue(1);
+               
+        try {
+               
+           Class cls = Class.forName(className);
+               
+           process = (simgrid.msg.Process)cls.newInstance();
+           process.name = className;
+           process.id = simgrid.msg.Process.nextProcessId++;
+           
+           Host host = Host.getByName(hostName);
+               
+           Msg.processCreate(process,host);
+               
+       } catch(Exception e) {
+           e.printStackTrace();
+        } 
+    }
+    
+    public void onEndProcess() {} // NOTHING TODO   
+    
+    /**
+     * function arguments handler.
+     */
+    public void onArgument(Attributes attr) {
+       //Msg.info("Add "+attr.getValue(0)+" as argument to "+process.msgName());
+        process.addArg(attr.getValue(0));      
+    }
+    
+   /**
+    * end of element handler.
+    */
+    
+}
diff --git a/src/java/simgrid/msg/Channel.java b/src/java/simgrid/msg/Channel.java
new file mode 100644 (file)
index 0000000..05c5898
--- /dev/null
@@ -0,0 +1,205 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ *(GNU LGPL) which comes with this package. 
+ */
+
+package simgrid.msg;
+
+/**
+ * For convenience, the simulator provides the notion of
+ * channel that is close to the tag notion in MPI. A channel
+ * is not a socket. It doesn't need to be opened neither closed.
+ * It rather corresponds to the ports opened on the different
+ * machines.
+ * 
+ * @author  Abdelmalek Cherier
+ * @author  Martin Quinson
+ * @version $Id$
+ * @see Task
+ * @since SimGrid 3.3
+ * @since JDK1.5011
+ */
+public final class Channel
+{
+       /**
+        * The channel identifier (as a port number in the TCP protocol.
+        */
+       private int id;
+       
+       private Channel() {} /* disable the default constructor */
+       
+       /**
+        * Construct the channel with the specified identifier.
+        *
+        * @param id                    The channel identifier.
+        */
+       public Channel(int id){
+               this.id = id;
+       }
+       
+       /**
+        * This static method sets the number of channels for all the hosts
+        * of the simulation.
+        *
+        * param channelNumber  The channel number to set.
+        */             
+       public static void setNumber(int channelNumber) {
+               Msg.channelSetNumber(channelNumber);
+       }
+       
+       /**
+        * This static method gets the number of channel of the simulation.
+        *
+        * @return                              The channel numbers used in the simulation.
+        */
+       public static int getNumber() {
+               return Msg.channelGetNumber();
+       }
+       
+       /** Returns the identifier of the channel */
+       public int getId() {
+               return this.id;
+       }
+
+       /**
+        * Listen on the channel and wait for receiving a task.
+        *
+        * @return                              The task readed from the channel.
+        *
+        */
+       public Task get() throws JniException,NativeException {
+               return Msg.channelGet(this);
+       }
+       
+       /**
+        * Listen on the channel and wait for receiving a task with a timeout.
+        *
+        * @param timeout               The timeout of the listening.
+        *
+        * @return                              The task readed from the channel.
+        *
+        * @exception                   NativeException if the listening operation failed.
+        */
+       public Task getWithTimeout(double timeout) throws JniException, NativeException{
+               return Msg.channelGetWithTimeout(this,timeout);
+       }
+       
+       /**
+        * Listen on the channel and wait for receiving a task from a host.
+        *
+        * @param host                  The host.
+        *
+        * @return                              The task readed from the channel.
+        *
+        * @exception                   InvalidHostException if the specified host is not valid.
+        *                                              MsgException if the listening operation failed.
+        *
+        * @see                                 Host
+        */
+       public Task getFromHost(Host host) throws NativeException, JniException{
+               return Msg.channelGetFromHost(this,host);
+       }
+       
+       /**
+        * This method tests whether there is a pending communication on the channel.
+        *
+        * @return                              This method returns true if there is a pending communication
+        *                                              on the channel. Otherwise the method returns false.
+        */
+       public boolean hasPendingCommunication() throws NativeException, JniException{
+               return Msg.channelHasPendingCommunication(this);
+       }
+       
+       /**
+        * This method tests whether there is a pending communication on a 
+        * channel, and who sent it.
+        *
+        * @return                              The method returns -1 if there is no pending 
+        *                                              communication and the PID of the process who sent it otherwise
+        */
+       public int getCommunicatingProcess() throws JniException{
+               return Msg.channelGetCommunicatingProcess(this) ;
+       }
+       
+       /**
+        * Wait for at most timeout seconds for a task reception
+        * on channel. The PID is updated with the PID of the first process.
+        *
+        * @param timeout               The maximum time to wait for a task before
+        *                                              giving up. 
+        * @return                              The PID of the first process to send a task.
+        *
+        * @exception                   MsgException if the reception failed.
+        */                     
+       public int wait(double timeout) throws NativeException, JniException{
+               return Msg.channelWait(this,timeout);
+       }
+       
+       /**
+        * This method returns the number of tasks waiting to be received on a
+        * channel and sent by a host.
+        *
+        * @param host                  The host that is to be watched.
+        *
+        * @return                              The number of tasks waiting to be received on a channel
+        *                                              and sent by a host.
+        *
+        * @exception                   InvalidHostException if the specified host is not valid.
+        */
+       public int getHostWaitingTasks(Host host)  throws JniException{
+               return Msg.channelGetHostWaitingTasks(this,host);
+       }
+       
+       /**
+        * This method puts a task on a channel of an host and waits for the end of the 
+        * transmission.
+        *
+        * @param task                  The task to put.
+        * @param host                  The destinated host.
+        *
+        * @exception                   InvalidTaskException if the task is not valid.
+        *                                              InvalidHostException if the host is not valid.
+        *                                              MsgException if the operation failed.
+        */                             
+       public void put(Task task,Host host) throws NativeException, JniException {
+               Msg.channelPut(this,task,host);
+       }
+       
+       /**
+        * This method puts a task on a channel of an  host (with a timeout on the waiting 
+        * of the destination host) and waits for the end of the transmission.
+        *
+        * @param task                  The task to put.
+        * @param host                  The destination where to put the task.
+        * @param timeout               The timeout of the transmission.
+        *
+        * @exception                   InvalidTaskException if the task is not valid.
+        *                                              InvalidHostException if the host is not valid.
+        *                                              MsgException if the operation failed.
+        */
+       public void putWithTimeout(Task task,Host host,double timeout) throws NativeException, JniException {
+               Msg.channelPutWithTimeout(this,task,host,timeout);
+       }
+       
+       /**
+        * This method does exactly the same as put() but with a bounded transmition
+        * rate.
+        *
+        * @param task                  The task to put.
+        * @param host                  The destination where to put the task.
+        * @param maxRate               The bounded transmition rate.
+        *
+        * @exception                   InvalidTaskException if the task is not valid.
+        *                                              InvalidHostException if the host is not valid.
+        *                                              MsgException if the operation failed.
+        */
+       public void putBounded(Task task,Host host,double maxRate) throws NativeException, JniException {
+               Msg.channelPutBounded(this,task,host,maxRate);
+       }
+}
diff --git a/src/java/simgrid/msg/Host.java b/src/java/simgrid/msg/Host.java
new file mode 100644 (file)
index 0000000..09322d9
--- /dev/null
@@ -0,0 +1,192 @@
+/*
+ * simgrid.msg.Host.java       1.00 07/05/01
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ *(GNU LGPL) which comes with this package. 
+ *
+ */
+package simgrid.msg;
+
+import java.lang.String;
+
+/**
+ * A host object represents a location (any possible place) where a process may run. 
+ * Thus it is represented as a physical resource with computing capabilities, some 
+ * mailboxes to enable running process to communicate with remote ones, and some private 
+ * data that can be only accessed by local process. An instance of this class is always 
+ * binded with the corresponding native host. All the native hosts are automaticaly created 
+ * during the call of the method Msg.createEnvironment(). This method take as parameter a
+ * platform file which describes all elements of the platform (host, link, root..).
+ * You never need to create an host your self.
+ *
+ * The best way to get an host instance is to call the static method 
+ * Host.getByName().
+ *
+ * For example to get the instance of the host. If your platform
+ * file description contains an host named "Jacquelin" :
+ *
+ *     Host jacquelin;
+ *
+ *     try { 
+ *             jacquelin = Host.getByName("Jacquelin");
+ *     } catch(HostNotFoundException e) {
+ *             System.err.println(e.toString());
+ *     }
+ *     ...
+ *
+ * @author  Abdelmalek Cherier
+ * @author  Martin Quinson
+ * @version 1.00, 07/05/01
+ * @see Grid
+ * @see Simulation
+ * @see Process
+ * @since SimGrid 3.3
+ * @since JDK1.5011
+ */
+public class Host {
+       /**
+        * This attribute represents a bind between a java host object and
+        * a native host. Even if this attribute is public you must never
+        * access to it. It is set automaticatly during the call of the 
+        * static method Host.getByName().
+        *
+        * @see                         Host.getByName().
+        */
+       public long bind;
+       
+       /**
+        * User data.
+        */
+       private Object data;
+       
+       protected Host() {
+               this.bind = 0;
+               this.data = null;
+       };
+       
+       /**
+        * This static method gets an host instance associated with a native
+        * host of your platform. This is the best way to get a java host object.
+        *
+        * @param name          The name of the host to get.
+        *
+        * @exception           HostNotFoundException if the name of the host is not valid.
+        *                                      MsgException if the native version of this method failed.
+        */                     
+       public static Host getByName(String name)
+           throws HostNotFoundException, NativeException, JniException {
+
+           return Msg.hostGetByName(name);
+       }
+       
+       /**
+        * This static method returns the number of the installed hosts.
+        *
+        * @return                      The number of the installed hosts.
+        *
+        */
+       public static int getNumber()  throws NativeException, JniException {
+               return Msg.hostGetNumber();
+       }
+       
+       /**
+        * This static method return an instance to the host of the current process.
+        *
+        * @return                      The host on which the current process is executed.
+        *
+        * @exception           MsgException if the native version of this method failed.
+        */
+       public static Host currentHost()   throws JniException{
+               return Msg.hostSelf();
+       }
+       
+       /**
+        * This static method returns all of the hosts of the installed platform.
+        *
+        * @return                      An array containing all the hosts installed.
+        *
+        * @exception           MsgException if the native version of this method failed.
+        */
+       public static Host[] all()  throws JniException, NativeException{
+               return Msg.allHosts();
+       }
+       
+       /**
+        * This method returns the name of a host.
+        *
+        * @return                      The name of the host.
+        *
+        * @exception           InvalidHostException if the host is not valid.
+        */
+       public String getName()  throws NativeException, JniException{
+               return Msg.hostGetName(this);
+       }
+       
+       /**
+        * This method sets the data of the host.
+        *
+        */
+        public void setData(Object data) {
+               this.data = data;
+       }
+       
+       /**
+        * This method gets the data of the host.
+        */
+       public Object getData() {
+               return this.data;
+       }
+       
+       /**
+        * This function tests if a host has data.
+        */
+        public boolean hasData() {
+               return null != this.data;
+       }
+       
+       /**
+        * This method returns the number of tasks currently running on a host.
+        * The external load is not taken in account.
+        *
+        * @return                      The number of tasks currently running on a host.
+        *
+        * @exception           InvalidHostException if the host is invalid.
+        *
+        */
+       public int getLoad() throws JniException{
+               return Msg.hostGetLoad(this);
+       }
+       
+       /**
+        * This method returns the speed of the processor of a host,
+        * regardless of the current load of the machine.
+        *
+        * @return                      The speed of the processor of the host in flops.
+        *
+        * @exception           InvalidHostException if the host is not valid.
+        *
+        */
+
+       public double getSpeed() throws JniException {
+               return Msg.hostGetSpeed(this);
+       }
+       
+       /**
+        * This method tests if a host is avail.
+        * 
+        * @return                      If the host is avail the method returns true.
+        *                                      Otherwise the method returns false.
+        *
+        * @exception           JniException if the host is not valid.
+        *
+        *
+        */                      
+       public boolean isAvail()throws JniException {
+               return Msg.hostIsAvail(this);
+       }
+       
+}
diff --git a/src/java/simgrid/msg/HostNotFoundException.java b/src/java/simgrid/msg/HostNotFoundException.java
new file mode 100644 (file)
index 0000000..2449fcc
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ * (GNU LGPL) which comes with this package.
+ */
+package simgrid.msg;
+
+public class HostNotFoundException extends MsgException {
+       
+   private static final long serialVersionUID = 1L;
+
+   /**
+    * Constructs an <code>HostNotFoundException</code> without a 
+    * detail message. 
+    */
+   public HostNotFoundException() {
+      super();
+   }
+   
+   /**
+    * Constructs an <code>HostNotFoundException</code> with a detail message. 
+    *
+    * @param   s   the detail message.
+    */
+   public HostNotFoundException(String s) {
+      super(s);
+   }
+}
\ No newline at end of file
diff --git a/src/java/simgrid/msg/JniException.java b/src/java/simgrid/msg/JniException.java
new file mode 100644 (file)
index 0000000..58c12c1
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ * (GNU LGPL) which comes with this package.
+ */
+package simgrid.msg;
+
+public class JniException extends MsgException {
+       
+   private static final long serialVersionUID = 1L;
+
+   /**
+    * Constructs an <code>JniException</code> without a 
+    * detail message. 
+    */
+   public JniException() {
+      super();
+   }
+   
+   /**
+    * Constructs an <code>JniException</code> with a detail message. 
+    *
+    * @param   s   the detail message.
+    */
+   public JniException(String s) {
+      super(s);
+   }
+}
\ No newline at end of file
diff --git a/src/java/simgrid/msg/Msg.java b/src/java/simgrid/msg/Msg.java
new file mode 100644 (file)
index 0000000..241eb28
--- /dev/null
@@ -0,0 +1,939 @@
+/*
+ * simgrid.msg.Msg.java    1.00 07/05/01
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ *(GNU LGPL) which comes with this package. 
+ */
+package simgrid.msg;
+
+import java.lang.*;
+import org.xml.sax.*;
+import org.xml.sax.helpers.*;
+
+/** 
+ * MSG was the first distributed programming environment 
+ * provided within SimGrid. While almost realistic, it 
+ * remains quite simple.
+ * This class contains all the declaration of the natives methods
+ * of the MSG API.
+ * All of these methods are statics. You can't directly use these methods
+ * but it is recommanded to use the classes Process, Host, Task and ParallelTask
+ * of the package to build your application.
+ *
+ * @author  Abdelmalek Cherier
+ * @author  Martin Quinson
+ * @version 1.00, 07/05/01
+ * @see Host
+ * @see Process
+ * @see Task
+ * @see ParallelTask
+ * @since SimGrid 3.3
+ * @since JDK1.5011 
+ */
+public final class Msg {
+    /**
+     * The natively implemented method to get the last error code of the simulation.
+     *
+     * @return     The last error code of the simulation.
+     */
+    public final static native int getErrCode();
+    
+    /**
+     * Errors returned by the method Msg.getErrCode().
+     */
+    
+    /* Everything is right. Keep on goin the way !                                
+     *
+     */
+    public static final int SUCCESS                = 0;
+    
+    /* Something must be not perfectly clean. But I 
+     * may be paranoid freak... !    
+     */
+    public static final int WARNING                = 1;
+    
+    /* There has been a problem during you task treansfer.
+     * Either the network is  down or the remote host has 
+     * been shutdown.
+     */
+    public static final int TRANSFERT_FAILURE    = 2;
+    
+    /**
+     * System shutdown. The host on which you are running
+     * has just been rebooted. Free your datastructures and
+     * return now !
+     */
+    public static final int HOST_FAILURE        = 3;
+    
+    /**
+     * Cancelled task. This task has been cancelled by somebody !
+     */
+    public static final int TASK_CANCELLLED        = 4;
+    
+    /**
+     * You've done something wrong. You'd better look at it...
+     */
+    public static final int FATAL_ERROR            = 5;
+    
+    /**
+     * Staticaly load the SIMGRID4JAVA library
+     *  which contains all native functions used in here
+     */
+    static {
+        try {
+            System.loadLibrary("simgrid4java");
+        } catch(UnsatisfiedLinkError e){
+            System.err.println("Cannot load simgrid4java library : ");
+            e.printStackTrace();
+           System.err.println("Please check your LD_LIBRARY_PATH, "+
+                              "or copy the library to the current directory");
+           System.exit(1);
+        }
+    }
+    
+    /******************************************************************
+     * The natively implemented methods connected to the MSG Process  *
+     ******************************************************************/
+     
+    /**
+     * The natively implemented method to create an MSG process.
+     *
+     * @param process The java process object to bind with the MSG native process.
+     * @param host    A valid (binded) host where create the process.
+     *
+     * @exception  simgrid.msg.JniException if JNI stuff goes wrong.
+     *
+     * @see  Process constructors.
+     */
+    public final static native 
+       void processCreate(Process process, Host host) throws JniException;
+     
+    /**
+     * The natively implemented method to kill all the process of the simulation.
+     *
+     * @param resetPID        Should we reset the PID numbers. A negative number means no reset
+     *                        and a positive number will be used to set the PID of the next newly
+     *                        created process.
+     *
+     * @return                The function returns the PID of the next created process.
+     */
+    public final static native int processKillAll(int resetPID);
+       
+    /**
+     * The natively implemented method to suspend an MSG process.
+     *
+     * @param process        The valid (binded with a native process) java process to suspend.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *                       NativeException if the SimGrid native code failed.
+     *
+     * @see                 Process.pause()
+     */
+    public final static native void processSuspend(Process process) 
+       throws JniException, NativeException;
+     
+    /**
+     * The natively implemented method to kill a MSG process.
+     *
+     * @param process        The valid (binded with a native process) java process to kill.
+     *
+     * @see                 Process.kill()
+     */
+    public final static native void processKill(Process process)
+       throws JniException;
+     
+    /**
+     * The natively implemented method to resume a suspended MSG process.
+     *
+     * @param process        The valid (binded with a native process) java process to resume.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *                       NativeException if the SimGrid native code failed.
+     *
+     * @see                 Process.restart()
+     */
+    public final static native void processResume(Process process)
+       throws JniException, NativeException;
+     
+    /**
+     * The natively implemented method to test if MSG process is suspended.
+     *
+     * @param process        The valid (binded with a native process) java process to test.
+     *
+     * @return                If the process is suspended the method retuns true. Otherwise the
+     *                        method returns false.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     * @see                 Process.isSuspended()
+     */
+    public final static native boolean processIsSuspended(Process process) throws JniException;
+     
+    /**
+     * The natively implemented method to get the host of a MSG process.
+     *
+     * @param process        The valid (binded with a native process) java process to get the host.
+     *
+     * @return                The method returns the host where the process is running.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *                       NativeException if the SimGrid native code failed.
+     *
+     * @see                 Process.getHost()
+     */
+    public final static native Host processGetHost(Process process)
+       throws JniException, NativeException;
+     
+    /**
+     * The natively implemented method to get a MSG process from his PID.
+     *
+     * @param PID            The PID of the process to get.
+     *
+     * @return                The process with the specified PID.
+     *
+     * @exception            NativeException if the SimGrid native code failed.
+     *
+     * @see                 Process.getFromPID()
+     */
+    public final static native Process processFromPID(int PID) throws NativeException;
+     
+    /**
+     * The natively implemented method to get the PID of a MSG process.
+     *
+     * @param process        The valid (binded with a native process) java process to get the PID.
+     *
+     * @return                The PID of the specified process.
+     *
+     * @exception            NativeException if the SimGrid native code failed.
+     *
+     * @see                 Process.getPID()
+     */
+    public final static native int processGetPID(Process process) throws NativeException;
+     
+    /**
+     * The natively implemented method to get the PPID of a MSG process.
+     *
+     * @param process        The valid (binded with a native process) java process to get the PID.
+     *
+     * @return                The PPID of the specified process.
+     *
+     * @exception            NativeException if the SimGrid native code failed.
+     *
+     * @see                 Process.getPPID()
+     */
+    public final static native int processGetPPID(Process process) throws NativeException;
+     
+    /**
+     * The natively implemented method to get the current running process.
+     *
+     * @return             The current process.
+     *
+     * @exception            NativeException if the SimGrid native code failed.
+
+     * @see                Process.currentProcess()
+     */
+    public final static native Process processSelf() throws NativeException;
+     
+    /**
+     * The natively implemented method to get the current running process PID.
+     *
+     * @return                The PID of the current process.
+     *
+     * @see                Process.currentProcessPID()
+     */
+    public final static native int processSelfPID();
+     
+    /**
+     * The natively implemented method to get the current running process PPID.
+     *
+     * @return                The PPID of the current process.
+     *
+     * @see                Process.currentProcessPPID()
+     */
+    public final static native int processSelfPPID();
+     
+    /**
+     * The natively implemented method to migrate a process from his currnet host to a new host.
+     *
+     * @param process        The (valid) process to migrate.
+     * @param host            A (valid) host where move the process.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *                       NativeException if the SimGrid native code failed.
+     *
+     * @see                Process.migrate()
+     * @see                Host.getByName()
+     */
+    public final static native void processChangeHost(Process process,Host host) 
+       throws JniException, NativeException;
+     
+    /**
+     * Process synchronization. The process wait the signal of the simulator to start.
+     * 
+     * @exception            JniException if something goes wrong with JNI
+     */
+    public final static native void waitSignal(Process process) throws JniException;
+     
+    /**
+     * The natively implemented native to request the current process to sleep 
+     * until time seconds have elapsed.
+     *
+     * @param seconds        The time the current process must sleep.
+     *
+     * @exception            NativeException if the SimGrid native code failed.
+     *
+     * @see                 Process.waitFor()
+     */
+    public final static native void processWaitFor(double seconds) throws NativeException;
+     
+    /**
+     * The natively implemented native method to exit a process.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     * @see                Process.exit()
+     */
+    public final static native void processExit(Process process) throws JniException;
+      
+     
+    /******************************************************************
+     * The natively implemented methods connected to the MSG host     *
+     ******************************************************************/
+     
+    /**
+     * The natively implemented method to get an host from his name.
+     *
+     * @param name            The name of the host to get.
+     *
+     * @return                The host having the specified name.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *                       HostNotFoundException if there is no such host
+     *                       NativeException if the SimGrid native code failed.
+     *
+     * @see                Host.getByName()
+     */
+    public final static native Host hostGetByName(String name) 
+       throws JniException, HostNotFoundException, NativeException;
+     
+    /**
+     * The natively implemented method to get the name of an MSG host.
+     *
+     * @param host            The host (valid) to get the name.
+     *
+     * @return                The name of the specified host.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     * @see                Host.getName()
+     */
+    public final static native String hostGetName(Host host) throws JniException;
+     
+    /**
+     * The natively implemented method to get the number of hosts of the simulation.
+     *
+     * @return                The number of hosts of the simulation.
+     *
+     * @see                Host.getNumber()
+     */
+    public final static native int hostGetNumber();
+     
+    /**
+     * The natively implemented method to get the host of the current runing process.
+     *
+     * @return                The host of the current running process.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     * @see                Host.currentHost()
+     */
+    public final static native Host hostSelf() throws JniException;
+     
+    /**
+     * The natively implemented method to get the speed of a MSG host.
+     *
+     * @param host            The host to get the host.
+     *
+     * @return                The speed of the specified host.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     * @see                Host.getSpeed()
+     */
+      
+    public final static native double hostGetSpeed(Host host) throws JniException;
+     
+    /**
+     * The natively implemented native method to test if an host is avail.
+     *
+     * @param host            The host to test.
+     *
+     * @return                If the host is avail the method returns true. 
+     *                        Otherwise the method returns false.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     * @see                Host.isAvail()
+     */
+    public final static native boolean hostIsAvail(Host host) throws JniException;
+     
+    /**
+     * The natively implemented native method to get all the hosts of the simulation.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     * @return                A array which contains all the hosts of simulation.
+     */
+     
+    public final static native Host[] allHosts() throws JniException;
+     
+    /**
+     * The natively implemented native method to get the number of running tasks on a host.
+     *
+     * @param                The host concerned by the operation.
+     *
+     * @return                The number of running tasks.
+     *
+     * @exception            JniException if something goes wrong with JNI
+     *
+     */
+    public final static native int hostGetLoad(Host host) throws JniException;
+     
+    /******************************************************************
+     * The natively implemented methods connected to the MSG task     *
+     ******************************************************************/
+      
+    /**
+     * The natively implemented method to create a MSG task.
+     *
+     * @param name            The name of th task.
+     * @param computeDuration    A value of the processing amount (in flop) needed 
+     *                        to process the task. If 0, then it cannot be executed
+     *                        with the execute() method. This value has to be >= 0.
+     * @param messageSize        A value of amount of data (in bytes) needed to transfert 
+     *                        this task. If 0, then it cannot be transfered this task. 
+     *                        If 0, then it cannot be transfered with the get() and put() 
+     *                        methods. This value has to be >= 0.
+     * @param task            The java task object to bind with the native task to create.
+     *
+     * @exception             JniException if something goes wrong with JNI
+     *                        NullPointerException if the specified name is null.
+     *                        IllegalArgumentException if compute duration <0 or message size <0
+     *
+     * @see                    Task.create()
+     */
+    public final static native void taskCreate(Task task,String name,double computeDuration, double messageSize)
+       throws JniException, NullPointerException, IllegalArgumentException;
+      
+    /**
+     * The natively implemented method to get the sender of a task.
+     *
+     * @param    task            The task (valid) to get the sender.
+     *
+     * @return                The sender of the task.
+     *
+     * @exception                InvalidTaskException is the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *
+     * @see                    Task.getSender()
+     */
+    public final static native Process taskGetSender(Task task) throws JniException;
+      
+    /**
+     * The natively implementd method to get the source of a task.
+     *
+     * @param task            The task to get the source.
+     *
+     * @return                The source of the task.
+     *
+     * @exception                InvalidTaskException is the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *
+     * @see                    Task.getSource()
+     */
+    public final static native Host taskGetSource(Task task) throws JniException, NativeException;
+      
+    /**
+     * The natively implemented method to get the name of the task.
+     *
+     * @param task            The task to get the name.
+     *
+     * @return                 The name of the specified task.
+     *
+     * @exception                InvalidTaskException is the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *
+     * @see                    Task.getName()
+     */
+    public final static native String taskGetName(Task task) throws JniException;
+      
+    /**
+     * The natively implemented method to cancel a task.
+     *
+     * @param task            The task to cancel.
+     *
+     * @exception                InvalidTaskException if the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *                        MsgException if the cancelation failed.
+     *
+     * @see                    Task.cancel().
+     */
+    public final static native void taskCancel(Task task) throws JniException, NativeException;
+      
+    /**
+     * The natively implemented method to get the computing amount of the task.
+     *
+     * @param task            The task to get the computing amount.
+     *
+     * @return                The computing amount of the specified task.
+     *
+     * @exception                InvalidTaskException if the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *                        MsgException if the cancelation failed.
+     *
+     * @see                    Task.getComputeDuration()
+     */
+    public final static native double taskGetComputeDuration(Task task) throws JniException;
+      
+    /**
+     * The natively implemented method to get the remaining computation
+     *
+     * @param task            The task to get the remaining computation.
+     *
+     * @return                The remaining computation of the specified task.
+     *
+     * @exception                InvalidTaskException if the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *                        MsgException if the cancelation failed.
+     *
+     * @see                    Task.getRemainingDuration()
+     */
+    public final static native double taskGetRemainingDuration(Task task) throws JniException;
+      
+    /**
+     * The natively implemented method to set the priority of a task.
+     *
+     * @param task            The task to set the prirotity
+     *
+     * @param priority        The new priority of the specified task.
+     *
+     * @exception                InvalidTaskException if the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *                        MsgException if the cancelation failed.
+     *
+     * @see                    Task.setPriority()
+     */
+    public final static native void taskSetPriority(Task task,double priority) throws JniException;
+      
+    /**
+     * The natively implemented method to destroy a MSG task.
+     *
+     * @param                    The task to destroy.
+     *
+     * @exception                InvalidTaskException is the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *                        MsgException if the destruction failed.
+     *
+     * @see                    Task.destroy()
+     */
+    public final static native void taskDestroy(Task task) throws JniException, NativeException;
+      
+    /**
+     * The natively implemented method to execute a MSG task.
+     *
+     * @param task            The task to execute.
+     *
+     * @exception                InvalidTaskException is the specified task is not valid. A task
+     *                        is invalid if it is not binded with a native task.
+     *                        MsgException if the destruction failed.
+     *
+     * @see                    Task.execute()
+     */
+    public final static native void taskExecute(Task task) throws JniException, NativeException;
+      
+      
+     
+    /**************************************************************************
+     * The natively implemented methods connected to the MSG parallel task     *
+     ***************************************************************************/
+      
+    /**
+     * The natively implemented method to create a MSG parallel task.
+     *
+     * @param name                The name of the parallel task.
+     * @param hosts                The list of hosts implied by the parallel task.
+     * @param computeDurations    The total number of operations that have to be performed
+     *                            on the hosts.
+     * @param messageSizes        An array of doubles
+     *
+     * @see                        ParallelTask.create()
+     */
+    public final static native void parallelTaskCreate(ParallelTask parallelTask, String name, 
+                                                      Host[] hosts, double[] computeDurations, double[] messageSizes)
+       throws JniException, NullPointerException, IllegalArgumentException;
+      
+    /**
+     * The natively implemented method to get the sender of a parallel task.
+     *
+     * @param    parallelTask    The parallel task (valid) to get the sender.
+     *
+     * @return                The sender of the parallel task.
+     *
+     * @see                    ParallelTask.getSender()
+     */
+    public final static native Process parallelTaskGetSender(ParallelTask parallelTask) throws JniException;
+      
+    /**
+     * The natively implementd method to get the source of a parallel task.
+     *
+     * @param parallelTask    The parallel task to get the source.
+     *
+     * @return                The source of the parallel task.
+     *
+     * @see                    ParallelTask.getSource()
+     */
+    public final static native Host parallelTaskGetSource(ParallelTask parallelTask) throws JniException;
+      
+    /**
+     * The natively implemented method to get the name of the parallel task.
+     *
+     * @param parallelTask    The parallel task to get the name.
+     *
+     * @return                 The name of the specified parallel task.
+     *
+     * @see                    ParallelTask.getName()
+     */
+    public final static native String parallelTaskGetName(ParallelTask parallelTask) throws JniException;
+      
+    /**
+     * The natively implemented method to cancel a parallel task.
+     *
+     * @param parallelTask    The parallel task to cancel.
+     *
+     * @see                    ParallelTask.cancel().
+     */
+    public final static native void parallelTaskCancel(ParallelTask parallelTask) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to get the computing amount of the task.
+     *
+     * @param parallelTask    The parallel task to get the computing amount.
+     *
+     * @return                The computing amount of the specified parallel task.
+     *
+     * @see                    ParallelTask.getComputeDuration()
+     */
+    public final static native double parallelTaskGetComputeDuration(ParallelTask parallelTask) throws JniException;
+      
+    /**
+     * The natively implemented method to get the remaining computation
+     *
+     * @param parallelTask    The parallel task to get the remaining computation.
+     *
+     * @return                The remaining computation of the specified parallel task.
+     *
+     * @see                    ParallelTask.getRemainingDuration()
+     */
+    public final static native double parallelTaskGetRemainingDuration(ParallelTask parallelTask) throws JniException;
+      
+    /**
+     * The natively implemented method to set the priority of a parallel task.
+     *
+     * @param parallelTask    The parallel task to set the prirotity
+     *
+     * @param priority        The new priority of the specified parallel task.
+     *
+     * @see                    ParallelTask.setPriority()
+     */
+    public final static native void parallelTaskSetPriority(ParallelTask parallelTask,double priority) throws JniException;
+      
+    /**
+     * The natively implemented method to destroy a MSG parallel task.
+     *
+     * @param parallelTask    The parallel task to destroy.
+     *
+     * @see                    ParallelTask.destroy()
+     */
+    public final static native void parallelTaskDestroy(ParallelTask parallelTask) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to execute a MSG parallel task.
+     *
+     * @param parallelTask    The parallel task to execute.
+     *
+     * @see                    ParallelTask.execute()
+     */
+    public final static native void parallelTaskExecute(ParallelTask parallelTask) throws JniException, NativeException;
+      
+    /******************************************************************
+     * The natively implemented methods connected to the MSG channel  *
+     ******************************************************************/
+      
+    /**
+     * The natively implemented method to listen on the channel and wait for receiving a task.
+     *
+     * @param channel            The channel to listen            
+     *
+     * @return                The task readed from the channel.
+     *
+     * @exception                MsgException if the listening operation failed.
+     *
+     * @see                    Channel.get()
+     */
+    public final static native Task channelGet(Channel channel) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to listen on the channel and wait for receiving a task with a timeout.
+     *
+     * @param channel            The channel to listen.
+     * @param timeout            The timeout of the listening.
+     *
+     * @return                The task readed from the channel.
+     *
+     * @exception                MsgException if the listening operation failed.
+     *
+     * @see                    Channel.getWithTimeout()
+     *
+     */ 
+    public final static native Task channelGetWithTimeout(Channel channel,double timeout) throws JniException,NativeException;
+      
+      
+    /**
+     * The natively implemented method to listen on the channel of a specific host.
+     *
+     * @param    channel            The channel to listen.
+     *
+     * @param host            The specific host.
+     *
+     * @return                The task readed from the channel of the specific host.
+     *
+     * @exception                InvalidHostException if the specified host is not valid.
+     *                        MsgException if the listening operation failed.
+     *
+     * @see                    Channel.getFromHost()
+     */    
+    public final static native Task channelGetFromHost(Channel channel,Host host) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to test whether there is a pending communication on the channel.
+     *
+     * @param channel            The channel concerned by the operation.
+     *
+     * @return                The method returns true if there is a pending communication on the specified
+     *                        channel. Otherwise the method returns false.
+     *
+     * @see                    Channel.hasPendingCommunication()
+     */                
+    public final static native boolean channelHasPendingCommunication(Channel channel) throws JniException;
+      
+    /**
+     * The natively implemented method to test whether there is a pending communication on a 
+     * channel, and who sent it.
+     *
+     * @param                    The channel concerned by the operation.
+     *
+     * @return                The method returns -1 if there is no pending communication and 
+     *                        the PID of the process who sent it otherwise.
+     *
+     * @see                    Channel.getCummunicatingProcess()
+     */
+    public final static native int channelGetCommunicatingProcess(Channel channel) throws JniException;
+      
+    /**
+     * The natively implemented method to get the number of tasks waiting to be received on a
+     * channel and sent by a host.
+     *
+     * @param channel            The channel concerned by the operation.
+     *
+     * @param host            The sender of the tasks.
+     *
+     * @return                The number of tasks waiting to be received on a channel
+     *                         and sent by the specified host.
+     *
+     * @exception                InvalidHostException if the specified host is not valid.
+     *
+     * @see                    Channel.getHostWaiting()
+     */
+    public final static native int channelGetHostWaitingTasks(Channel channel,Host host) throws JniException;
+      
+    /**
+     * The natively implemented method to put a task on the channel of an host.
+     *
+     * @param channel            The channel where to put the task.
+     * @param task            The task to put.
+     * @param host            The host of the specified channel.
+     *
+     * @exception                InvalidTaskException if the task is not valid.
+     *                        InvalidHostException if the host is not valid.
+     *                        MsgException if the operation failed.
+     *
+     * @see                    Channel.put()
+     */                
+    public final static native void channelPut(Channel channel,Task task,Host host) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to put a task on a channel of an  host (with a timeout 
+     * on the waiting of the destination host) and waits for the end of the transmission.
+     *
+     * @param channel            The channel where to put the task.
+     * @param task            The task to put.
+     * @param host            The host containing the channel.
+     * @param timeout            The timeout of the transmission.
+     *
+     * @exception                InvalidTaskException if the task is not valid.
+     *                        InvalidHostException if the host is not valid.
+     *                        MsgException if the operation failed.
+     *
+     * @see                    Channel.putWithTimeout()
+     */
+    public final static native void channelPutWithTimeout(Channel channel,Task task,Host host,double timeout) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to put a task on channel with a bounded transmition
+     * rate.
+     * 
+     * @param channel            The channel where to put the task.
+     * @param task            The task to put.
+     * @param host            The host containing the channel.
+     * @param max_rate        The bounded transmition rate.
+     *
+     * @exception                InvalidTaskException if the task is not valid.
+     *                        InvalidHostException if the host is not valid.
+     *                        MsgException if the operation failed.
+     *
+     * @see                    Channel.putBounded()
+     */
+    public final static native void channelPutBounded(Channel channel,Task task,Host host,double max_rate) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to wait for at most timeout seconds for a task reception
+     * on channel. The PID is updated with the PID of the first process.
+     *
+     * @param channel            The channel concerned by the operation.
+     * @param timeout            The maximum time to wait for a task before
+     *                         giving up.
+     *
+     * @exception                MsgException if the reception operation failed.
+     *
+     * @see                    Channel.wait()
+     */
+    public final static native int channelWait(Channel channel, double timeout) throws JniException,NativeException;
+      
+    /**
+     * The natively implemented method to set the number of channel used by all the process
+     * of the simulation.
+     *
+     * @param channelNumber    The channel number of the process.
+     *
+     * @see                    Channel.setNumber()
+     */
+    public final static native void channelSetNumber(int channelNumber);
+      
+    /**
+     * The natively implemented method to get the number of channel of the process of the simulation.
+     *
+     * @return                The number of channel per process.
+     *
+     * @see                    Channel.getNumber()
+     */
+    public final static native int channelGetNumber();
+             
+    /*********************************************************************************
+     * Additional native methods                                                      *
+     **********************************************************************************/
+      
+    /**
+     * The natively implemented method to get the simulation time.
+     *
+     * @param                    The simulation time.
+     */
+    public final static native double getClock();
+      
+    public final static native void pajeOutput(String pajeFile);
+      
+       
+    public final static native void info(String s);
+                        
+    /*********************************************************************
+     * The natively implemented methods connected to the MSG simulation  *
+     *********************************************************************/
+       
+    /**
+     * The natively implemented method to initialize a MSG simulation.
+     *
+     * @param args            The arguments of the command line of the simulation.
+     *
+     * @see                    Msg.init()
+     */
+    public final static native void init(String[] args);
+       
+    /**
+     * Run the MSG simulation, and cleanup everything afterward.
+     *
+     * If you want to chain simulations in the same process, you
+     * should call again createEnvironment and deployApplication afterward.
+     *
+     * @see                    MSG_run, MSG_clean
+     */
+    public final static native void run() throws NativeException;
+       
+    /**
+     * The native implemented method to create the environment of the simulation.
+     *
+     * @param platformFile    The XML file which contains the description of the environment of the simulation
+     *
+     */
+    public final static native void createEnvironment(String platformFile) throws NativeException;
+       
+       
+    /**
+     * The method to deploy the simulation.
+     *
+     * @param appFile        The XML file which contains the description of the application to deploy.
+     */
+       
+        
+    public static void deployApplication(String platformFile) {
+       try {
+           Class c = Class.forName("com.sun.org.apache.xerces.internal.parsers.SAXParser");
+           XMLReader reader = (XMLReader)c.newInstance();
+           ApplicationHandler handler = new ApplicationHandler();
+           reader.setContentHandler(handler);
+           reader.setFeature("http://xml.org/sax/features/validation", false);
+           reader.parse(platformFile);
+
+       } catch(Exception e) {
+           /* FIXME: do not swallow exception ! */
+           System.out.println("Exception in Msg.launchApplication()");
+           System.out.println(e);
+           e.printStackTrace();
+       }        
+    }                    
+
+    /* The launcher */
+    static public void main(String[]args) throws MsgException {
+       /* initialize the MSG simulation. Must be done before anything else (even logging). */
+       Msg.init(args);
+
+       if(args.length < 2) {
+               
+           Msg.info("Usage: Msg platform_file deployment_file");
+           System.exit(1);
+       }
+               
+       /* specify the number of channel for the process of the simulation. */
+       Channel.setNumber(1);
+               
+       /* Load the platform and deploy the application */
+       Msg.createEnvironment(args[0]);
+       Msg.deployApplication(args[1]);
+               
+       /* Execute the simulation */
+       Msg.run();
+    }
+}
diff --git a/src/java/simgrid/msg/MsgException.java b/src/java/simgrid/msg/MsgException.java
new file mode 100644 (file)
index 0000000..be37980
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * java.com.simgrid.msg.MsgException.java      1.00 07/05/01
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ *(GNU LGPL) which comes with this package. 
+ */
+package simgrid.msg;
+
+import java.lang.Exception;
+
+public class MsgException extends Exception {
+       
+       private static final long serialVersionUID = 1L;
+
+    /**
+     * Constructs an <code>MsgException</code> without a 
+     * detail message. 
+     */
+    public MsgException() {
+       super();
+    }
+
+    /**
+     * Constructs an <code>MsgException</code> with a detail message. 
+     *
+     * @param   s   the detail message.
+     */
+    public MsgException(String s) {
+       super(s);
+    }
+}
\ No newline at end of file
diff --git a/src/java/simgrid/msg/NativeException.java b/src/java/simgrid/msg/NativeException.java
new file mode 100644 (file)
index 0000000..7af913c
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * $Id$
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ * (GNU LGPL) which comes with this package.
+ */
+package simgrid.msg;
+
+public class NativeException extends MsgException {
+       
+   private static final long serialVersionUID = 1L;
+
+   /**
+    * Constructs an <code>NativeException</code> without a 
+    * detail message. 
+    */
+   public NativeException() {
+      super();
+   }
+   
+   /**
+    * Constructs an <code>NativeException</code> with a detail message. 
+    *
+    * @param   s   the detail message.
+    */
+   public NativeException(String s) {
+      super(s);
+   }
+}
\ No newline at end of file
diff --git a/src/java/simgrid/msg/ParallelTask.java b/src/java/simgrid/msg/ParallelTask.java
new file mode 100644 (file)
index 0000000..753dd0c
--- /dev/null
@@ -0,0 +1,185 @@
+/*
+ * simgrid.msg.Task.java       1.00 07/05/01
+ *
+ * Copyright 2006,2007 Martin Quinson, Malek Cherier           
+ * All right reserved. 
+ *
+ * This program is free software; you can redistribute 
+ * it and/or modify it under the terms of the license 
+ *(GNU LGPL) which comes with this package. 
+ */
+package simgrid.msg;
+
+class ParallelTask {
+       
+    /**
+     * This attribute represents a bind between a java task object and
+     * a native task. Even if this attribute is public you must never
+     * access to it. It is set automaticatly during the build of the object.
+     */
+    public long bind = 0;
+       
+                       
+    /* Default constructor (disabled) */
+    protected ParallelTask() {};
+       
+    /**
+     * Construct an new parallel task with the specified processing amount and amount for each host
+     * implied.
+     *
+     * @param name                             The name of the parallel task.
+     * @param hosts                            The list of hosts implied by the parallel task.
+     * @param computeDurations The total number of operations that have to be performed
+     *                                                 on the hosts.
+     * @param messageSizes             An array of doubles
+     * @exception                              InvalidTaskNameException if the specified name is null.
+     *                                                 InvalidComputeDuration if the parameter computeDurations is null.
+     *                                                 InvalidMessageSize if the parameter messageSizes is null.
+     */
+    public ParallelTask(String name, Host[] hosts,double[] computeDurations, double[] messageSizes) 
+       throws JniException {
+       create(name,hosts,computeDurations,messageSizes); 
+    }
+       
+    /**
+     * This method creates a parallel task (if not already created).
+     *
+     * @param name                             The name of the parallel task.
+     * @param hosts                            The list of hosts implied by the parallel task.
+     * @param computeDurations The total number of operations that have to be performed
+     *                                                 on the hosts.
+     * @param messageSizes             An array of doubles
+     * @exception                              InvalidTaskNameException if the specified name is null.
+     *                                                 InvalidComputeDuration if the parameter computeDurations is null.
+     *                                                 InvalidMessageSize if the parameter messageSizes is null.
+     */
+    public void create(String name, Host[] hosts,double[] computeDurations, double[] messageSizes) 
+       throws JniException {
+               
+       if(bind != 0)
+         &nb