Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix errors with relative includes with smpicc
authorpini <pini@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 27 Jan 2010 14:03:02 +0000 (14:03 +0000)
committerpini <pini@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 27 Jan 2010 14:03:02 +0000 (14:03 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7028 48e7efb5-ca39-0410-a469-dd3cf9ba447f

include/Makefile.am
include/smpi/mpi.h [new file with mode: 0644]
src/smpi/smpi_global.c
src/smpi/smpicc.in

index acc1b95..0256a4b 100644 (file)
@@ -40,6 +40,7 @@ nobase_include_HEADERS = \
        simdag/datatypes.h \
        \
        smpi/smpi.h \
+       smpi/mpi.h \
        \
        surf/surfxml_parse.h \
        surf/simgrid_dtd.h \
diff --git a/include/smpi/mpi.h b/include/smpi/mpi.h
new file mode 100644 (file)
index 0000000..c32b8de
--- /dev/null
@@ -0,0 +1,15 @@
+#ifndef MPI_H
+#define MPI_H
+
+#define SEED 221238
+
+#include <smpi/smpi.h>
+#include <xbt/sysdep.h>
+#include <xbt/log.h>
+#include <xbt/asserts.h>
+
+#define sleep(x) smpi_sleep(x)
+#define gettimeofday(x, y) smpi_gettimeofday(x, y)
+#define main(x, y) smpi_simulated_main(x, y)
+
+#endif
index 2c86f2b..e242d92 100644 (file)
@@ -364,3 +364,8 @@ int smpi_run_simulation(int *argc, char **argv)
 
   return 0;
 }
+
+int main(int argc, char** argv)
+{
+  return smpi_run_simulation(&argc, argv);
+}
index c46d186..42f8757 100755 (executable)
@@ -5,43 +5,8 @@ exec_prefix="@exec_prefix@"
 
 CC="gcc"
 
-SEED="221238"
-
-TMPDIR="$(mktemp -d tmpXXXXXXX)"
-
-function modsource {
-  SOURCE="$1"
-  ## basename is not available on MAcOSX : SOURCEFILE="$(basename ${SOURCE})"
-  SOURCEFILE="`echo ${SOURCE} | egrep -o '[^/]+$'`"
-
-  SOURCEDIR="${SOURCE%${SOURCEFILE}}"
-  if [ -n "${SOURCEDIR}" ]; then
-    mkdir -p ${TMPDIR}${SOURCEDIR}
-  fi
-  TMPSOURCE="${TMPDIR}${SOURCE}"
-  cat > ${TMPSOURCE} <<HEADER
-#define SEED ${SEED}
-#include "smpi/smpi.h"
-#include "xbt/sysdep.h"
-#include "xbt/log.h"
-#include "xbt/asserts.h"
-#define sleep(x) smpi_sleep(x)
-#define gettimeofday(x, y) smpi_gettimeofday(x, y)
-int smpi_run_simulation(int *argc, char **argv);
-HEADER
-  # very simplistic transform, will probably want full parser for next version
-  grep -v "mpi.h" < ${SOURCE} | perl -pe 's/main/smpi_simulated_main/;' >> ${TMPSOURCE}
-  grep -q "smpi_simulated_main" ${TMPSOURCE}
-  if [ $? -eq 0 ]; then
-    cat >> ${TMPSOURCE} <<FOOTER
-int main(int argc, char **argv) {
-    return smpi_run_simulation(&argc, argv);
-}
-FOOTER
-  fi
-}
-
-INCLUDEARGS="-I @top_srcdir@/include "
+#FIXME: probably only want the last two pairs after 'make install'
+INCLUDEARGS="-I@top_srcdir@/include -I@top_srcdir@/include/smpi -I@includedir@ -I@includedir@/smpi"
 LINKARGS="-L@top_builddir@/src/.libs -L@libdir@ -lsimgrid -lsmpi "
 
 CMDLINE=""
@@ -52,14 +17,11 @@ while [ -n "$1" ]; do
       LINKARGS=""
       CMDLINE="${CMDLINE} -c "
   elif [ "${ARG%.c}" != "${ARG}" ]; then
-    INCLUDEARGS="${INCLUDEARGS} -I . -I .. -I ../include -I @includedir@ "
-#    SRCFILE="$(realpath ${ARG})"
     SRCFILE="$(readlink -f ${ARG} 2>/dev/null)"
     if [ -z $SRCFILE ] ; then
       SRCFILE="$ARG"
     fi
-    modsource ${SRCFILE}
-    CMDLINE="${CMDLINE} ${TMPDIR}${SRCFILE} "
+    CMDLINE="${CMDLINE} ${SRCFILE} "
   else
     CMDLINE="${CMDLINE} ${ARG} "
   fi
@@ -69,4 +31,3 @@ CMDLINE="${CC} ${INCLUDEARGS} ${CFLAGS} ${CMDLINE} ${LINKARGS}"
 
 #echo "${CMDLINE}"
 ${CMDLINE}
-rm -rf ${TMPDIR}