X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5c8ede40c4f5e920bd12b2e4ede74db2892e0d60..7f28d0c88e047b142cfc7d5f73c19762cb27c0c5:/src/smpi/fixsrc.pl diff --git a/src/smpi/fixsrc.pl b/src/smpi/fixsrc.pl new file mode 100755 index 0000000000..096c72050d --- /dev/null +++ b/src/smpi/fixsrc.pl @@ -0,0 +1,30 @@ +#!/usr/bin/perl + +# FIXME: here we make the assumption that people don't do things like put +# multiple statements after a declaration, but separated by semicolons. It's a +# reasonable assumption for the time being, but technically it could cause +# problems for some code. +OUTER: while ($line = ) { + if ($line =~ /#include /) { + print "#include \n"; + print "#include \n"; + } elsif ($line =~ /SMPI_VARINIT/) { + do { + chomp $line; + $line =~ s/\s+/ /g; + while ($line =~ s/(SMPI_VARINIT[A-Z0-9_]*?\(.*?\))//) { + print "$1\n"; + } + if ($line =~ /SMPI_VARINIT/) { + # should only happen for bad code... + if (!($nextline = )) { + last OUTER; + } + $line .= $nextline; + + } + } while ($line =~ /SMPI_VARINIT/); + } else { + print $line; + } +}