1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
#!/bin/sh
# This configuration file was taken originally from the mpi4py project
# <http://mpi4py.scipy.org/>, and then modified for Julia
set -e
set -x
os=`uname`
TRAVIS_ROOT="$1"
MPI_IMPL="$2"
# this is where updated Autotools will be for Linux
export PATH=$TRAVIS_ROOT/bin:$PATH
case "$os" in
Darwin)
echo "Mac"
brew update
case "$MPI_IMPL" in
mpich)
brew install mpich
;;
openmpi)
# Homebrew is still at 1.10.1, which is broken for STRIDED/IOV=DIRECT.
brew install openmpi
;;
*)
echo "Unknown MPI implementation: $MPI_IMPL"
exit 10
;;
esac
;;
Linux)
echo "Linux"
case "$MPI_IMPL" in
mpich)
if [ ! -d "$TRAVIS_ROOT/mpich" ]; then
wget -q --no-check-certificate http://www.mpich.org/static/downloads/3.2/mpich-3.2.tar.gz
tar -xzf mpich-3.2.tar.gz
cd mpich-3.2
mkdir build && cd build
../configure CFLAGS="-w" --prefix=$TRAVIS_ROOT/mpich --disable-fortran --disable-static
make -j4
make install
else
echo "MPICH already installed"
fi
;;
openmpi)
if [ ! -d "$TRAVIS_ROOT/open-mpi" ]; then
wget -q --no-check-certificate http://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.2rc3.tar.bz2
tar -xjf openmpi-1.10.2rc3.tar.bz2
cd openmpi-1.10.2rc3
mkdir build && cd build
../configure CFLAGS="-w" --prefix=$TRAVIS_ROOT/open-mpi \
--without-verbs --without-fca --without-mxm --without-ucx \
--without-portals4 --without-psm --without-psm2 \
--without-libfabric --without-usnic \
--without-udreg --without-ugni --without-xpmem \
--without-alps --without-munge \
--without-sge --without-loadleveler --without-tm \
--without-lsf --without-slurm \
--without-pvfs2 --without-plfs \
--without-cuda --disable-oshmem \
--disable-mpi-fortran --disable-oshmem-fortran \
--disable-libompitrace \
--disable-mpi-io --disable-io-romio \
--disable-static
make -j4
make install
else
echo "Open-MPI already installed"
fi
;;
*)
echo "Unknown MPI implementation: $MPI_IMPL"
exit 20
;;
esac
;;
esac
|