Salome HOME
spns #26828: implement ptscotch used by MEDCOUPLING for mesh partitionning
[tools/sat_salome.git] / products / compil_scripts / scotch-6.0.4.sh
1 #!/bin/bash
2
3 echo "##########################################################################"
4 echo "ptscotch" $VERSION
5 echo "##########################################################################"
6
7 echo
8 echo "*** mkdir" $PRODUCT_INSTALL
9 mkdir -p $PRODUCT_INSTALL
10 if [ $? -ne 0 ]
11 then
12     echo "ERROR on mkdir"
13     exit 1
14 fi
15 cp -ar $SOURCE_DIR/* ${BUILD_DIR}/
16 cd ${BUILD_DIR}/src
17
18 echo
19 echo "*** create Makefile"
20 if [ -n "$SAT_HPC" ]; then
21     sed -e "s%CFLAGS\([[:space:]]*\)=\([[:space:]]*\)\(.*\)%CFLAGS\1=\2-fPIC -DPIC -DINTSIZE64 -DSCOTCH_PTHREAD -I${MPI_INCLUDE_DIR} \3%g" Make.inc/Makefile.inc.x86-64_pc_linux2 > Makefile.inc
22 else
23     sed -e "s%CFLAGS\([[:space:]]*\)=\([[:space:]]*\)\(.*\)%CFLAGS\1=\2-fPIC -DPIC -DINTSIZE64 -DSCOTCH_PTHREAD \3%g" Make.inc/Makefile.inc.x86-64_pc_linux2 > Makefile.inc
24 fi
25 sed -e "s%LDFLAGS\([[:space:]]*\)=\([[:space:]]*\)\(.*\)%LDFLAGS\1=\2 \3 -lpthread%g" Makefile.inc > Makefile.in_new
26 mv Makefile.in_new Makefile.inc
27
28 echo
29 echo "*** make" $MAKE_OPTIONS
30 make $MAKE_OPTIONS
31 if [ $? -ne 0 ]
32 then
33     echo "ERROR on make"
34     exit 2
35 fi
36
37 echo
38 echo "*** Check if node is a virtual machine"
39 ISVM=$(hostnamectl status|grep -i chassis:|grep vm)
40 if [ ! -z "$ISVM" ]; then
41     echo "*** oversubscribe..."
42     sed -i 's/mpirun -n 4/mpirun -n 4 --oversubscribe/g' $BUILD_DIR/src/check/Makefile
43 else
44     echo "*** hostnamectl says that $HOSTNAME is *NOT* a virtual machine"
45 fi
46
47 echo
48 echo "*** make ptcheck"
49 cd $BUILD_DIR/src
50 if [ -n "$SAT_HPC" ]; then
51     make ptcheck
52 else
53     make check
54 fi
55 if [ $? -ne 0 ]
56 then
57     echo "ERROR on make check"
58     exit 3
59 fi
60
61 echo
62 echo "*** Install"
63 cd $BUILD_DIR
64 for d in include lib bin; do
65     cp -r $d $PRODUCT_INSTALL/$d
66     if [ $? -ne 0 ]; then
67         echo "FATAL: failed to deploy: $d"
68         exit 3
69     fi
70 done
71
72 echo
73 echo "########## END"