The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
use ExtUtils::MakeMaker;

$MPIDIR = "/usr/local/mpich/include";
foreach (qw(/usr/mpich/include /usr/local/mpich/include
	    /usr/include/mpi /usr/local/include/mpi
	    /usr/lib/mpich/include /usr/local/lib/mpich/include))
{
    if(-e "$_/mpi.h") { $MPIDIR = $_; last }
}

WriteMakefile(
    'NAME'	=> 'Parallel::MPI',
    'VERSION_FROM' => 'MPI.pm',
    'LD'        => 'mpicc',
    'CC'        => 'mpicc',      
    'LIBS'	=> [''],
    'DEFINE'	=> '-DFLOAT_HACK',
    'INC'	=> "-I$MPIDIR",
    PL_FILES    => { 't/01_mpi_init.PL'          => 't/01_mpi_init.pl',
                     't/02_mpi_finalize.PL'      => 't/02_mpi_finalize.pl',
                     't/03_mpi_comm_rank.PL'     => 't/03_mpi_comm_rank.pl',
                     't/04_mpi_comm_size.PL'     => 't/04_mpi_comm_size.pl',
                     't/05_mpi_initialized.PL'   => 't/05_mpi_initialized.pl',
                     't/06_mpi_sendrecv.PL'      => 't/06_mpi_sendrecv.pl',
                     't/06_sendrecv_int.PL'      => 't/06_sendrecv_int.pl',
                     't/06_sendrecv_intarray.PL' => 't/06_sendrecv_intarray.pl',
                     't/06_sendrecv_dbl.PL'      => 't/06_sendrecv_dbl.pl',
                     't/06_sendrecv_dblarray.PL' => 't/06_sendrecv_dblarray.pl',
                     't/06_sendrecv_flt.PL'      => 't/06_sendrecv_flt.pl',
                     't/06_sendrecv_fltarray.PL' => 't/06_sendrecv_fltarray.pl',
                     't/07_mpi_bcast.PL'         => 't/07_mpi_bcast.pl',
                     't/07_mpi_bcastarray.PL'    => 't/07_mpi_bcastarray.pl',
                     't/08_mpi_reduce.PL'        => 't/08_mpi_reduce.pl',
                     't/09_mpi_barrier.PL'       => 't/09_mpi_barrier.pl',
                     't/10_mpi_wtime.PL'         => 't/10_mpi_wtime.pl',
                     't/11_mpi_scattergather.PL' => 't/11_mpi_scattergather.pl',
                     't/11_mpi_scattergatherarray.PL' => 't/11_mpi_scattergatherarray.pl',
                     't/12_mpi_allreduce.PL'     => 't/12_mpi_allreduce.pl',
                     't/13_mpi_sendrecv.PL'     => 't/13_mpi_sendrecv.pl',
                   },
    dist        => { COMPRESS => 'gzip -9 -f', SUFFIX => 'gz' },
    clean       => { FILES => 't/*.pl PI[0-9][0-9][0-9]*'}
);