build.sh 4.18 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
Latest    
incardon committed
9
10
11
12
13
14
15
#### 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
16
17
18
19
20
21
22
mkdir src/config
mkdir openfpm_numerics/src/config


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

incardon's avatar
incardon committed
24
 source "$HOME/.bashrc"
incardon's avatar
incardon committed
25
26
 echo "AHHHHHHHHHH: $(which mpic++)"
 echo "AHHHHHHHHHH: $(which mpirun)"
incardon's avatar
incardon committed
27

incardon's avatar
incardon committed
28
29
30
31
 ## Check if MPI folder exist if not copy MPICH

 if [ ! -d $HOME/$5/MPI ]; then
   echo "COPY MPICH"
incardon's avatar
incardon committed
32
   cp -R $HOME/MPI $HOME/$5/MPI
incardon's avatar
incardon committed
33
   echo 2 > $HOME/$5/MPI/version
incardon's avatar
incardon committed
34
35
 fi

incardon's avatar
incardon committed
36
 ### Activate MPI and binutils ###
incardon's avatar
incardon committed
37
38

 export PATH="$PATH:$HOME/$5/MPI/bin"
incardon's avatar
incardon committed
39
 export PATH="/usr/local/binutils/bin/:$PATH"
incardon's avatar
incardon committed
40

incardon's avatar
incardon committed
41
 mkdir $HOME/$5
incardon's avatar
incardon committed
42
 if [ x"$4" == x"full" ]; then
incardon's avatar
incardon committed
43
  CC=gcc-4.9.2 CXX=g++-4.9.2 FC=gfortran-4.9.2 F77=gfortran-4.9.2 ./install -i $HOME/$5  -s -c "--prefix=/home/jenkins/openfpm_install"
44
45
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$5
  source $HOME/openfpm_vars_$5
incardon's avatar
incardon committed
46
 elif [ x"$3" == x"numerics" ]; then
incardon's avatar
incardon committed
47
48
49
50
  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
51
  make $3
incardon's avatar
incardon committed
52
 else
incardon's avatar
incardon committed
53
  CC=gcc-4.9.2 CXX=g++-4.9.2 FC=gfortran-4.9.2 F77=gfortran-4.9.2 ./install -i $HOME/$5  -m -s -c "--prefix=/home/jenkins/openfpm_install --no-recursion"
54
55
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$5
  source $HOME/openfpm_vars_$5
incardon's avatar
incardon committed
56
  make $3
incardon's avatar
incardon committed
57
 fi
58

incardon's avatar
incardon committed
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
 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
85
 mkdir /scratch/p_ppm/$5
incardon's avatar
incardon committed
86
 ./install -m -i "/scratch/p_ppm/$5" -s -c"CXX=mpic++ --no-recursion"
87
 mv $HOME/openfpm_vars $HOME/openfpm_vars_$5
88
 source $HOME/openfpm_vars_$5
incardon's avatar
incardon committed
89
 make $3
incardon's avatar
incardon committed
90
91
92
93
94
95
96
97
98


 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"
 source ~/.bashrc
incardon's avatar
incardon committed
99

incardon's avatar
incardon committed
100
 mkdir $HOME/$5
incardon's avatar
incardon committed
101
 if [ x"$4" == x"full" ]; then
incardon's avatar
incardon committed
102
  ./install -i $HOME/$5  -s -c "--prefix=/Users/jenkins/openfpm_install"
103
104
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$5
  source $HOME/openfpm_vars_$5
incardon's avatar
incardon committed
105
 elif [ x"$3" == x"numerics" ]; then
incardon's avatar
incardon committed
106
107
108
  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
109
  make $3
incardon's avatar
incardon committed
110
 else
incardon's avatar
incardon committed
111
  ./install -i $HOME/$5 -m -s -c "--prefix=/Users/jenkins/openfpm_install --no-recursion"
112
113
  mv $HOME/openfpm_vars $HOME/openfpm_vars_$5
  source $HOME/openfpm_vars_$5
incardon's avatar
incardon committed
114
  make $3
incardon's avatar
incardon committed
115
 fi
incardon's avatar
incardon committed
116
117
118
119
120
121
122
123
124

 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