source: issm/trunk-jpl/externalpackages/dakota/install-pleiades-petsc3.3.sh@ 13912

Last change on this file since 13912 was 13912, checked in by schlegel, 12 years ago

NEW: add install script to match petsc3.3

  • Property svn:executable set to *
File size: 4.1 KB
Line 
1#!/bin/bash
2set -eu
3
4#Some cleanup
5rm -rf Dakota
6rm -rf src
7rm -rf install
8mkdir src install
9
10#Download from ISSM server
11$ISSM_DIR/scripts/DownloadExternalPackage.py 'http://issm.jpl.nasa.gov/files/externalpackages/Dakota_4_3.src.tar.gz' 'Dakota_4_3.src.tar.gz'
12
13#Untar
14tar -zxvf Dakota_4_3.src.tar.gz
15
16#Move Dakota to src directory
17mv Dakota/* src
18rm -rf Dakota
19
20#Apply patches
21patch src/src/ParallelLibrary.C ./ParallelLibrary.C.patch
22patch src/src/ParallelLibrary.H ./ParallelLibrary.H.patch
23patch src/src/NIDRProblemDescDB.C ./NIDRProblemDescDB.C.patch
24patch src/src/NonDSampling.C ./NonDSampling.C.patch
25patch src/src/NonDLocalReliability.C ./NonDLocalReliability.C.patch
26patch src/src/NonDUnilevelRBDO.C ./NonDUnilevelRBDO.C.patch # source not even used?
27#patch -R src/packages/Pecos/src/LHSDriver.cpp ./LHSDriver.cpp.patch
28
29#Configure dakota
30cd src
31./configure \
32--prefix="$ISSM_DIR/externalpackages/dakota/install/" \
33--without-graphics \
34--with-pic \
35--disable-mpi \
36--with-blas="-L$ISSM_DIR/externalpackages/petsc/install/lib -lfblas " \
37--with-lapack="-L$ISSM_DIR/externalpackages/petsc/install/lib -lflapack "
38
39#--with-blas="-L/nasa/intel/mkl/10.0.011/lib/64/ -lmkl -lmkl_lapack -liomp5 -lpthread" \
40#--with-lapack="-L/nasa/intel/mkl/10.0.011/lib/64/ -lmkl -lmkl_lapack -liomp5 -lpthread"
41#--with-blas="-L/nasa/intel/Compiler/11.1/046/mkl/lib/em64t/ -lmkl_intel_lp64 -lmkl_lapack" \
42#--with-lapack="-L/nasa/intel/Compiler/11.1/046/mkl/lib/em64t/ -lmkl_intel_lp64 -lmkl_lapack"
43
44cd ..
45
46#Before compiling, if running on 64 bits, we need to active fPIC compilation. Some packages
47#do not register -fPIC in Dakota, which is a problem. Edit the faulty Makefiles and add the -fPIC
48#flag to the compilation.
49cat ./src/methods/NCSUOpt/Makefile | sed 's/FFLAGS = -g -O2/FFLAGS = -g -O2 -fPIC/g' > temp
50mv temp ./src/methods/NCSUOpt/Makefile
51
52cat ./src/methods/acro/packages/pebbl/src/Makefile | sed 's/CXXFLAGS = -O2 -fpermissive/CXXFLAGS = -O2 -fpermissive -fPIC/g' > temp
53mv temp ./src/methods/acro/packages/pebbl/src/Makefile
54
55cat ./src/methods/hopspack/src-nappspack/Makefile | sed 's/CXXFLAGS = -g -O2/CXXFLAGS = -g -O2 -fPIC/g' > temp
56mv temp ./src/methods/hopspack/src-nappspack/Makefile
57
58cat ./src/methods/hopspack/src-cddlib/Makefile | sed 's/CFLAGS = -g -O2/CFLAGS = -g -O2 -fPIC/g' > temp
59mv temp ./src/methods/hopspack/src-cddlib/Makefile
60
61cat ./src/methods/hopspack/src-shared/Makefile | sed 's/CFLAGS = -g -O2/CFLAGS = -g -O2 -fPIC/g' > temp
62mv temp ./src/methods/hopspack/src-shared/Makefile
63
64cat ./src/methods/hopspack/src-shared/Makefile | sed 's/CXXFLAGS = -g -O2/CXXFLAGS = -g -O2 -fPIC/g' > temp
65mv temp ./src/methods/hopspack/src-shared/Makefile
66
67cat ./src/methods/hopspack/src-conveyor/Makefile | sed 's/CXXFLAGS = -g -O2/CXXFLAGS = -g -O2 -fPIC/g' > temp
68mv temp ./src/methods/hopspack/src-conveyor/Makefile
69
70cat ./src/methods/hopspack/src-appspack/Makefile | sed 's/CXXFLAGS = -g -O2/CXXFLAGS = -g -O2 -fPIC/g' > temp
71mv temp ./src/methods/hopspack/src-appspack/Makefile
72
73cat ./src/methods/acro/packages/colin/src/Makefile | sed 's/CXXFLAGS = -O2 -fpermissive/CXXFLAGS = -O2 -fpermissive -fPIC/g' > temp
74mv temp ./src/methods/acro/packages/colin/src/Makefile
75
76cat ./src/methods/acro/packages/coliny/src/Makefile | sed 's/CXXFLAGS = -O2 -fpermissive/CXXFLAGS = -O2 -fpermissive -fPIC/g' > temp
77mv temp ./src/methods/acro/packages/coliny/src/Makefile
78
79cat ./src/methods/acro/packages/tpl/3po/Makefile | sed 's/CFLAGS = -O2/CFLAGS = -O2 -fPIC/g' > temp
80mv temp ./src/methods/acro/packages/tpl/3po/Makefile
81
82cat ./src/methods/acro/packages/tpl/3po/Makefile | sed 's/CXXFLAGS = -O2 -fpermissive/CFLAGS = -O2 -fpermissive -fPIC/g' > temp
83mv temp ./src/methods/acro/packages/tpl/3po/Makefile
84
85cat ./src/packages/ampl/Makefile | sed 's/CFLAGS = -g -O2/CFLAGS = -g -O2 -fPIC/g' > temp
86mv temp ./src/packages/ampl/Makefile
87
88#Compile and install dakota
89cd src
90if [ $# -eq 0 ];
91then
92 make
93 make install
94else
95 make -j $1
96 make -j $1 install
97fi
98cd ..
99
100#Weird behaviour of Dakota: libamplsolver.a and amplsolver.a are not the same thing!
101cd install/lib
102mv libamplsolver.a libamplsolver.a.bak
103ln -s ../../src/packages/ampl/amplsolver.a ./libamplsolver.a
Note: See TracBrowser for help on using the repository browser.