build.sh 4.38 KB
Newer Older
incardon's avatar
incardon committed
1 2 3 4 5 6
#! /bin/bash

# Make a directory in /tmp/OpenFPM_pdata

echo "Directory: $1"
echo "Machine: $2"
incardon's avatar
incardon committed
7
echo "Branch name: $5"
incardon's avatar
incardon committed
8

incardon's avatar
incardon committed
9 10 11 12 13 14
if [ x"$5" == x"" ]; then
  branch=$(git ls-remote --heads origin | grep $(git rev-parse HEAD) | cut -d / -f 3)
else
  branch=$5
fi

incardon's avatar
Latest  
incardon committed
15 16 17 18 19 20 21
#### If you have a dep_dir file change the branch name to the dep_dir

dep_dir=$(cat dep_dir)
if [ x"$dep_dir" != x"" ]; then
  set -- "${@:1:4}" "$dep_dir"
fi

incardon's avatar
incardon committed
22 23 24 25 26 27 28
mkdir src/config
mkdir openfpm_numerics/src/config


if [ "$2" == "gin" ]
then
 echo "Compiling on gin\n"
incardon's avatar
incardon committed
29

incardon's avatar
incardon committed
30 31
 source "$HOME/.bashrc"

incardon's avatar
incardon committed
32 33
 ## Check if MPI folder exist if not copy MPICH

incardon's avatar
incardon committed
34
 if [ ! -d $HOME/$branch/MPI ]; then
incardon's avatar
incardon committed
35
   echo "COPY MPICH"
incardon's avatar
incardon committed
36 37
   cp -R $HOME/MPI $HOME/$branch/MPI
   echo 2 > $HOME/$branch/MPI/version
incardon's avatar
incardon committed
38 39
 fi

incardon's avatar
incardon committed
40
 ### Activate MPI and binutils ###
incardon's avatar
incardon committed
41

incardon's avatar
incardon committed
42
 export PATH="$PATH:$HOME/$branch/MPI/bin"
incardon's avatar
incardon committed
43
 export PATH="/usr/local/binutils/bin/:$PATH"
incardon's avatar
incardon committed
44

incardon's avatar
incardon committed
45
 mkdir $HOME/$branch
incardon's avatar
incardon committed
46
 if [ x"$4" == x"full" ]; then
incardon's avatar
incardon committed
47 48 49
  CC=gcc-4.9.2 CXX=g++-4.9.2 FC=gfortran-4.9.2 F77=gfortran-4.9.2 ./install -i $HOME/$branch  -s -c "--prefix=/home/jenkins/openfpm_install"
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch
  source $HOME/openfpm_vars_$branch
incardon's avatar
incardon committed
50
 elif [ x"$3" == x"numerics" ]; then
incardon's avatar
incardon committed
51 52 53 54
  branch=$(git ls-remote --heads origin | grep $(git rev-parse HEAD) | cut -d / -f 3)
  CC=gcc-4.9.2 CXX=g++-4.9.2 FC=gfortran-4.9.2 F77=gfortran-4.9.2 ./install -i $HOME/$branch  -m -s -c "--prefix=/home/jenkins/openfpm_install"
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch
  source $HOME/openfpm_vars_$branch
55
  make $3
incardon's avatar
incardon committed
56
 else
incardon's avatar
incardon committed
57 58 59
  CC=gcc-4.9.2 CXX=g++-4.9.2 FC=gfortran-4.9.2 F77=gfortran-4.9.2 ./install -i $HOME/$branch  -m -s -c "--prefix=/home/jenkins/openfpm_install --no-recursion"
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch
  source $HOME/openfpm_vars_$branch
incardon's avatar
incardon committed
60
  make $3
incardon's avatar
incardon committed
61
 fi
62

incardon's avatar
incardon committed
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
 if [ $? -ne 0 ]; then
   curl -X POST --data "payload={\"icon_emoji\": \":jenkins:\", \"username\": \"jenkins\"  , \"attachments\":[{ \"title\":\"Error:\", \"color\": \"#FF0000\", \"text\":\"$2 failed to complete the openfpm_pdata test \" }] }" https://hooks.slack.com/services/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
   exit 1 ;
 fi


 if [ $? -ne 0 ]; then
   curl -X POST --data "payload={\"icon_emoji\": \":jenkins:\", \"username\": \"jenkins\"  , \"attachments\":[{ \"title\":\"Error:\", \"color\": \"#FF0000\", \"text\":\"$2 failed to complete the openfpm_pdata test \" }] }" https://hooks.slack.com/services/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
   exit 1 ; 
 fi

elif [ "$2" == "taurus" ]
then
 echo "Compiling on taurus"

 source /etc/profile
 echo "$PATH"
 module load eigen/3.2.0
 module load suitesparse/4.2.1-gnu-multimkl
 module load boost/1.60.0
 module load gcc/5.3.0
 module load openmpi/1.10.2-gnu
 module unload bullxmpi
 
 export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/incard/PARMETIS/lib:/home/incard/METIS/lib:/home/incard/HDF5/lib"

incardon's avatar
incardon committed
89 90 91 92
 mkdir /scratch/p_ppm/$branch
 ./install -m -i "/scratch/p_ppm/$branch" -s -c"CXX=mpic++ --no-recursion"
 mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch
 source $HOME/openfpm_vars_$branch
incardon's avatar
incardon committed
93
 make $3
incardon's avatar
incardon committed
94 95 96 97 98 99 100 101


 if [ $? -ne 0 ]; then
   curl -X POST --data "payload={\"icon_emoji\": \":jenkins:\", \"username\": \"jenkins\"  , \"attachments\":[{ \"title\":\"Error:\", \"color\": \"#FF0000\", \"text\":\"$2 failed to complete the openfpm_pdata test \" }] }" https://hooks.slack.com/services/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
   exit 1 ; 
 fi
else
 echo "Compiling general"
incardon's avatar
incardon committed
102 103 104

 echo "AHHHHHHHHHH: $(which mpirun)"

incardon's avatar
incardon committed
105
 source ~/.bashrc
incardon's avatar
incardon committed
106

incardon's avatar
incardon committed
107
 mkdir $HOME/$branch
incardon's avatar
incardon committed
108
 if [ x"$4" == x"full" ]; then
incardon's avatar
incardon committed
109 110 111
  ./install -i $HOME/$branch  -s -c "--prefix=/Users/jenkins/openfpm_install"
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch
  source $HOME/openfpm_vars_$branch
incardon's avatar
incardon committed
112
 elif [ x"$3" == x"numerics" ]; then
incardon's avatar
incardon committed
113 114 115
  branch=$(git ls-remote --heads origin | grep $(git rev-parse HEAD) | cut -d / -f 3)
  ./install -i $HOME/$branch  -m -s -c "--prefix=/home/jenkins/openfpm_install"
  source $HOME/openfpm_vars_$branch
116
  make $3
incardon's avatar
incardon committed
117
 else
incardon's avatar
incardon committed
118 119 120
  ./install -i $HOME/$branch -m -s -c "--prefix=/Users/jenkins/openfpm_install --no-recursion"
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch
  source $HOME/openfpm_vars_$branch
incardon's avatar
incardon committed
121
  make $3
incardon's avatar
incardon committed
122
 fi
incardon's avatar
incardon committed
123 124 125 126 127 128 129 130 131

 if [ $? -ne 0 ]; then
   curl -X POST --data "payload={\"icon_emoji\": \":jenkins:\", \"username\": \"jenkins\"  , \"attachments\":[{ \"title\":\"Error:\", \"color\": \"#FF0000\", \"text\":\"$2 failed to complete the openfpm_pdata test \" }] }" https://hooks.slack.com/services/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
   exit 1 ;
 fi

fi