build.sh 4.42 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
echo "AHHHHHHHHHH: $(which mpirun)"

incardon's avatar
incardon committed
11
12
13
14
15
16
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
17
18
19
20
21
22
23
#### 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
24
25
26
27
28
29
30
mkdir src/config
mkdir openfpm_numerics/src/config


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

incardon's avatar
incardon committed
32
33
 source "$HOME/.bashrc"

incardon's avatar
incardon committed
34
35
 ## Check if MPI folder exist if not copy MPICH

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

incardon's avatar
incardon committed
42
 ### Activate MPI and binutils ###
incardon's avatar
incardon committed
43

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

incardon's avatar
incardon committed
47
 mkdir $HOME/$branch
incardon's avatar
incardon committed
48
 if [ x"$4" == x"full" ]; then
incardon's avatar
incardon committed
49
50
51
  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
52
 elif [ x"$3" == x"numerics" ]; then
incardon's avatar
incardon committed
53
54
55
56
  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
57
  make $3
incardon's avatar
incardon committed
58
 else
incardon's avatar
incardon committed
59
60
61
  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
62
  make $3
incardon's avatar
incardon committed
63
 fi
64

incardon's avatar
incardon committed
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
 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
91
92
93
94
 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
95
 make $3
incardon's avatar
incardon committed
96
97
98
99
100
101
102
103


 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
104
105
106

 echo "AHHHHHHHHHH: $(which mpirun)"

incardon's avatar
incardon committed
107
 source ~/.bashrc
incardon's avatar
incardon committed
108

incardon's avatar
incardon committed
109
 mkdir $HOME/$branch
incardon's avatar
incardon committed
110
 if [ x"$4" == x"full" ]; then
incardon's avatar
incardon committed
111
112
113
  ./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
114
 elif [ x"$3" == x"numerics" ]; then
incardon's avatar
incardon committed
115
116
117
  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
118
  make $3
incardon's avatar
incardon committed
119
 else
incardon's avatar
incardon committed
120
121
122
  ./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
123
  make $3
incardon's avatar
incardon committed
124
 fi
incardon's avatar
incardon committed
125
126
127
128
129
130
131
132
133

 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