source: issm/oecreview/Archive/24307-24683/ISSM-24320-24321.diff@ 24684

Last change on this file since 24684 was 24684, checked in by Mathieu Morlighem, 5 years ago

CHG: added new review

File size: 54.1 KB
RevLine 
[24684]1Index: ../trunk-jpl/externalpackages/sqlite/install.sh
2===================================================================
3--- ../trunk-jpl/externalpackages/sqlite/install.sh (revision 24320)
4+++ ../trunk-jpl/externalpackages/sqlite/install.sh (revision 24321)
5@@ -1,30 +1,33 @@
6 #!/bin/bash
7 set -eu
8
9-#Some cleanup
10-rm -rf src
11-rm -rf install
12-rm -rf sqlite-autoconf-3071300
13-mkdir src install
14
15-#Download from ISSM server
16-$ISSM_DIR/scripts/DownloadExternalPackage.sh 'https://issm.ess.uci.edu/files/externalpackages/sqlite-autoconf-3071300.tar.gz' 'sqlite-autoconf-3071300.tar.gz'
17+VER="3300100"
18
19-#Untar
20-tar -zxvf sqlite-autoconf-3071300.tar.gz
21+# Cleanup
22+rm -rf install src
23+mkdir install src
24
25-#Move sqlite-autoconf into src directory
26-mv sqlite-autoconf-3071300/* src
27-rm -rf sqlite-autoconf-3071300
28+# Download source
29+$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/sqlite-autoconf-${VER}.tar.gz" "sqlite-autoconf-${VER}.tar.gz"
30
31-#Configure sqlite-autoconf
32+# Unpack source
33+tar -zxvf sqlite-autoconf-$VER.tar.gz
34+
35+# Move source into 'src' directory
36+mv sqlite-autoconf-$VER/* src
37+rm -rf sqlite-autoconf-$VER
38+
39+# Configure
40 cd src
41-./configure --prefix="$ISSM_DIR/externalpackages/sqlite/install"
42+./configure \
43+ --prefix="${ISSM_DIR}/externalpackages/sqlite/install"
44
45-#Compile and install sqlite-autoconf
46+# Compile and install
47 if [ $# -eq 0 ]; then
48 make
49+ make install
50 else
51 make -j $1
52+ make -j $1 install
53 fi
54-make install
55Index: ../trunk-jpl/externalpackages/gmt/configs/ConfigUser.cmake
56===================================================================
57--- ../trunk-jpl/externalpackages/gmt/configs/ConfigUser.cmake (revision 24320)
58+++ ../trunk-jpl/externalpackages/gmt/configs/ConfigUser.cmake (revision 24321)
59@@ -102,7 +102,7 @@
60 #set (COPY_GSHHG TRUE)
61
62 # Set path to DCW Digital Chart of the World for GMT [auto]:
63-#set (DCW_ROOT "dcw-gmt_path")
64+#set (DCW_ROOT "$ENV{ISSM_DIR}/externalpackages/dcw/install")
65
66 # Copy DCW files to $/dcw [FALSE]:
67 #set (COPY_DCW TRUE)
68@@ -140,10 +140,10 @@
69
70 # Enable building of shared libraries [TRUE] (disable to use static libraries;
71 # not recommended):
72-#set (BUILD_SHARED_LIBS FALSE)
73+#set (BUILD_SHARED_LIBS TRUE)
74
75 # Build GMT shared lib with supplemental modules [TRUE]:
76-#set (BUILD_SUPPLEMENTS FALSE)
77+#set (BUILD_SUPPLEMENTS TRUE)
78
79 ##
80 ## Section 4: Advanced tweaking
81Index: ../trunk-jpl/externalpackages/gmt/install.sh
82===================================================================
83--- ../trunk-jpl/externalpackages/gmt/install.sh (revision 24320)
84+++ ../trunk-jpl/externalpackages/gmt/install.sh (revision 24321)
85@@ -1,27 +1,35 @@
86 #!/bin/bash
87 set -eu
88
89-#Erase install
90-rm -rf install src gmt
91
92-#Download from ISSM server
93-$ISSM_DIR/scripts/DownloadExternalPackage.sh 'https://issm.ess.uci.edu/files/externalpackages/gmt-5.1.1.tar.gz' 'gmt-5.1.1.tar.gz'
94+# Constants
95+#
96+VER="5.1.1"
97
98-#install directory
99-mkdir src
100-tar -zxvf gmt-5.1.1.tar.gz
101-mv gmt-5.1.1/* src
102-rm -rf gmt-5.1.1
103+# Download source
104+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/gmt-${VER}.tar.gz" "gmt-${VER}.tar.gz"
105
106-#configure:
107-cp configs/ConfigUser.cmake ./src/cmake
108+# Unpack source
109+tar -zxvf gmt-$VER.tar.gz
110
111+# Cleanup
112+rm -rf install src
113+mkdir install src
114+
115+# Move source to 'src' directory
116+mv gmt-$VER/* src
117+rm -rf gmt-$VER
118+
119+# Copy source customizations
120+cp configs/ConfigUser.cmake src/cmake
121+
122+# Configure
123 cd src
124 mkdir build
125 cd build
126-cmake ../
127+cmake ..
128
129-#compile
130+# Install
131 if [ $# -eq 0 ]; then
132 make install
133 else
134@@ -28,5 +36,5 @@
135 make -j $1 install
136 fi
137
138-#come back:
139-cd ../../
140+# Return to initial directory
141+cd ../..
142Index: ../trunk-jpl/externalpackages/gmsh/install.sh
143===================================================================
144--- ../trunk-jpl/externalpackages/gmsh/install.sh (revision 24320)
145+++ ../trunk-jpl/externalpackages/gmsh/install.sh (revision 24321)
146@@ -1,6 +1,9 @@
147 #!/bin/bash
148 set -eu
149
150+
151+## Constants
152+#
153 VER="3.0.5"
154
155 # Cleanup
156@@ -23,12 +26,15 @@
157 -DCMAKE_INSTALL_PREFIX="$ISSM_DIR/externalpackages/gmsh/install" \
158 -DENABLE_MPI=1
159
160-# Compile
161+# Compile and install
162 if [ $# -eq 0 ]; then
163 make
164+ make install
165 else
166 make -j $1
167+ make -j $1 install
168 fi
169
170-# Install
171-make install
172+# Return to initial directory
173+cd ..
174+
175Index: ../trunk-jpl/externalpackages/gshhg/install.sh
176===================================================================
177--- ../trunk-jpl/externalpackages/gshhg/install.sh (revision 24320)
178+++ ../trunk-jpl/externalpackages/gshhg/install.sh (revision 24321)
179@@ -1,16 +1,19 @@
180 #!/bin/bash
181 set -eu
182
183-rm -rf gssh-gmt-2.3.4.tar.gz src install
184
185-#get gssh database from noaa's website: http://www.ngdc.noaa.gov/mgg/shorelines/gshhs.html
186-#curl http://www.ngdc.noaa.gov/mgg/shorelines/data/gshhg/latest/gshhg-gmt-2.3.4.tar.gz > gshhg-gmt-2.3.4.tar.gz
187+## Constants
188+#
189+VER="2.3.4"
190
191-#Download from ISSM server
192-$ISSM_DIR/scripts/DownloadExternalPackage.sh 'https://issm.ess.uci.edu/files/externalpackages/gshhg-gmt-2.3.4.tar.gz' 'gshhg-gmt-2.3.4.tar.gz'
193+# Cleanup
194+rm -rf install
195
196-#untar:
197-tar -zxvf gshhg-gmt-2.3.4.tar.gz
198+# Download source
199+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/gshhg-gmt-${VER}.tar.gz" "gshhg-gmt-${VER}.tar.gz"
200
201-#move:
202-mv gshhg-gmt-2.3.4 install
203+# Unpack source
204+tar -zxvf gshhg-gmt-${VER}.tar.gz
205+
206+# Install
207+mv gshhg-gmt-${VER} install
208Index: ../trunk-jpl/jenkins/jenkins.sh
209===================================================================
210--- ../trunk-jpl/jenkins/jenkins.sh (revision 24320)
211+++ ../trunk-jpl/jenkins/jenkins.sh (revision 24321)
212@@ -34,11 +34,11 @@
213 exit 1
214 fi
215
216-#Defaults (to avoid -eq: unary operator expected)
217-EXAMPLES_TEST=0
218+# Initialize test suite variables (to avoid "-eq: unary operator expected")
219 MATLAB_TEST=0
220 PYTHON_TEST=0
221 JAVASCRIPT_TEST=0
222+EXAMPLES_TEST=0
223
224 #source configuration script
225 source $1;
226@@ -431,11 +431,11 @@
227 do
228 if [ -d "${dir}" ];
229 then
230- # Some of the examples are incomplete (on purpose). As such, we will have to populate the
231- # missing steps in order to make sure that everything is working.
232+ # Some of the examples are incomplete (on purpose). As such, we will
233+ # have to populate the missing steps in order to make sure that
234+ # everything is working.
235 echo "Testing directory example: $(basename $dir)"
236
237- # Greenland is missing step 8
238 if [ -z "$SED" ];
239 then
240 SED='sed'
241@@ -445,55 +445,56 @@
242
243 if [ "${dir}" == "./Greenland" ];
244 then
245+ # Greenland is missing step 8
246 STEP_EIGHT="\n disp(' Step 8: Plotting exercise');\n md = loadmodel('.\/Models\/Greenland.HistoricTransient');\n figure\n surfmb=[]; for i=2:201; surfmb=[surfmb ...\n md.results.TransientSolution(i).SmbMassBalance]; end\n subplot(3,1,1); plot([1:200],mean(surfmb));\n title('Mean Surface mass balance');\n vel=[]; for i=2:201; vel=[vel md.results.TransientSolution(i).Vel]; end\n subplot(3,1,2); plot([1:200],mean(vel));\n title('Mean Velocity');\n volume=[]; for i=2:201; volume=[volume md.results.TransientSolution(i).IceVolume]; end\n subplot(3,1,3); plot([1:200],volume);\n title('Ice Volume'); xlabel('years');"
247
248- $SED -i.bak 's/steps=\[1\];/steps=\[1:8\];\n\ntry\n/' $FILE
249- $SED -i.bak "s/if any(steps==8)/&${STEP_EIGHT}/" $FILE
250+ $SED -i .bak 's/steps=\[1\];/steps=\[1:8\];\n\ntry\n/' $FILE
251+ $SED -i .bak "s/if any(steps==8)/&${STEP_EIGHT}/" $FILE
252 elif [ "${dir}" == "./IceBridge" ];
253 then
254- $SED -i.bak 's/steps=\[1\];/steps=\[1:5\];\n\ntry\n/' $FILE
255+ $SED -i .bak 's/steps=\[1\];/steps=\[1:5\];\n\ntry\n/' $FILE
256 elif [ "${dir}" == "./IceflowModels" ];
257 then
258 # Almost nothing to this example
259- $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE
260+ $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE
261 elif [ "${dir}" == "./ISMIP" ];
262 then
263 # Eight steps... none of which are implmented in the script...
264- $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE
265+ $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE
266 elif [ "${dir}" == "./Inversion" ];
267 then
268- $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
269+ $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
270 elif [ "${dir}" == "./Jakobshavn" ];
271 then
272- $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
273+ $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
274 elif [ "${dir}" == "./Jakobshavn" ];
275 then
276- $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
277+ $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
278 elif [ "${dir}" == "./Pig" ];
279 then
280 # Step 6 is needed
281 STEP_SIX="\n disp('Needs work!')"
282- $SED -i.bak 's/steps=\[1\];/steps=\[1:7\];\n!mv DomainOutline.bkp DomainOutline.exp;\n\ntry\n/' $FILE
283- $SED -i.bak "s/if any(steps==6)/&${STEP_SIX}/" $FILE
284+ $SED -i .bak 's/steps=\[1\];/steps=\[1:7\];\n!mv DomainOutline.bkp DomainOutline.exp;\n\ntry\n/' $FILE
285+ $SED -i .bak "s/if any(steps==6)/&${STEP_SIX}/" $FILE
286 elif [ "${dir}" == "./PigSensitivity" ];
287 then
288 # Step 4 is needed
289 STEP_FOUR="\n disp('Needs work!')"
290- $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
291- $SED -i.bak "s/if any(steps==6)/&${STEP_FOUR}/" $FILE
292+ $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE
293+ $SED -i .bak "s/if any(steps==6)/&${STEP_FOUR}/" $FILE
294 elif [ "${dir}" == "./SquareIceShelf" ];
295 then
296 # Almost nothing to this example
297- $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE
298+ $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE
299 elif [ "${dir}" == "./UncertaintyQuantification" ];
300 then
301- $SED -i.bak 's/steps=\[1\];/steps=\[1:7\];\n\ntry\n/' $FILE
302+ $SED -i .bak 's/steps=\[1\];/steps=\[1:7\];\n\ntry\n/' $FILE
303 elif [ "${dir}" == "./Data" ];
304 then
305 echo "Data directory is used by examples. No modifications required."
306 else
307 echo "Not implemented yet!"
308- $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE
309+ $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE
310 fi
311
312 if [ "${dir}" == "./Data" ];
313@@ -572,7 +573,7 @@
314 if [ $EXAMPLES_TEST -eq 1 ];
315 then
316 # Inexplicably, there are backspace chars in the error output that are causing issues
317- $SED -i.bak 's///g' matlab_log_examples.log
318+ $SED -i .bak 's///g' matlab_log_examples.log
319
320 numtests=`cat matlab_log_examples.log | grep "starting: " | wc -l`
321 testlist=`cat matlab_log_examples.log | grep "starting: " | sed 's/starting: //'`
322Index: ../trunk-jpl/jenkins/macosx_pine-island_examples
323===================================================================
324--- ../trunk-jpl/jenkins/macosx_pine-island_examples (revision 24320)
325+++ ../trunk-jpl/jenkins/macosx_pine-island_examples (revision 24321)
326@@ -1,29 +1,31 @@
327-
328 #-------------------------------#
329 # 1: ISSM general configuration #
330 #-------------------------------#
331
332-#MATLAB path
333+# MATLAB path
334 MATLAB_PATH="/Applications/MATLAB_R2015b.app"
335
336-#ISSM CONFIGURATION
337-ISSM_CONFIG='--prefix=$ISSM_DIR \
338+# ISSM CONFIGURATION
339+ISSM_CONFIG='\
340+ --prefix=$ISSM_DIR \
341 --with-matlab-dir=$MATLAB_PATH \
342- --with-triangle-dir=$ISSM_DIR/externalpackages/triangle/install \
343- --with-mpi-include=$ISSM_DIR/externalpackages/mpich/install/include \
344+ --with-mpi-include=$ISSM_DIR/externalpackages/mpich/install/include \
345 --with-mpi-libflags="-L$ISSM_DIR/externalpackages/mpich/install/lib -lmpi" \
346- --with-petsc-dir=$ISSM_DIR/externalpackages/petsc/install \
347- --with-scalapack-dir=$ISSM_DIR/externalpackages/petsc/install/ \
348+ --with-m1qn3-dir=$ISSM_DIR/externalpackages/m1qn3/install \
349+ --with-metis-dir=$ISSM_DIR/externalpackages/petsc/install \
350 --with-mumps-dir=$ISSM_DIR/externalpackages/petsc/install \
351- --with-metis-dir=$ISSM_DIR/externalpackages/petsc/install \
352- --with-m1qn3-dir=$ISSM_DIR/externalpackages/m1qn3/install \
353+ --with-scalapack-dir=$ISSM_DIR/externalpackages/petsc/install \
354+ --with-petsc-dir=$ISSM_DIR/externalpackages/petsc/install \
355+ --with-triangle-dir=$ISSM_DIR/externalpackages/triangle/install \
356 --with-numthreads=4 \
357 --enable-debugging \
358- --enable-development'
359+ --enable-development \
360+'
361
362-#PYTHON and MATLAB testing
363+# Test suites
364 MATLAB_TEST=0
365 PYTHON_TEST=0
366+JAVASCRIPT_TEST=0
367 EXAMPLES_TEST=1
368
369 #-----------------------------------#
370@@ -30,19 +32,31 @@
371 # 3: External packages installation #
372 #-----------------------------------#
373
374-#List of external pakages to be installed and their installation scripts
375-EXTERNALPACKAGES="autotools install.sh
376- cmake install.sh
377- mpich install-3.2-macosx64.sh
378- m1qn3 install.sh
379- petsc install-3.7-macosx64.sh
380- triangle install-macosx64.sh
381- shell2junit install.sh"
382+# List of external pakages to be installed and their installation scripts
383+EXTERNALPACKAGES="
384+ autotools install.sh
385+ cmake install.sh
386+ mpich install-3.3-macOS_64.sh
387+ m1qn3 install.sh
388+ petsc install-3.7-macosx64.sh
389+ triangle install-macosx64.sh
390+ hdf5 install-1.10.sh
391+ netcdf install-4.7.sh
392+ proj install-6.2-macOS_64.sh
393+ gdal install-3.0-macOS_64-netcdf.sh
394+ gshhg install.sh
395+ gmt install.sh
396+ gmsh install.sh
397+ shell2junit install.sh
398+"
399
400 #-----------------#
401 # 4: test options #
402 #-----------------#
403
404-#number of cpus used in ISSM installation and compilation (one is usually
405-#safer as some packages are very sensitive to parallel compilation)
406-NUMCPUS_INSTALL=4
407+# Number of CPUs used in ISSM compilation
408+#
409+# NOTE: One is usually safer as some packages are very sensitive to parallel
410+# compilation.
411+#
412+NUMCPUS_INSTALL=10
413Index: ../trunk-jpl/etc/environment.sh
414===================================================================
415--- ../trunk-jpl/etc/environment.sh (revision 24320)
416+++ ../trunk-jpl/etc/environment.sh (revision 24321)
417@@ -1,90 +1,166 @@
418-# Modifies path-related envrionment variables based on which external packages
419+# Modifies path-related envrionment variables based on which external packages
420 # have been installed.
421 #
422-# ISSM_DIR and ISSM_ARCH should have been defined already in your shell
423+# ISSM_DIR and ISSM_ARCH should have been defined already in your shell
424 # settings file (i.e. .bashrc, .cshrc).
425
426 ## Functions
427 #
428-pathprepend(){ #{{{
429- if [ -d "$1" ] && [[ ":$PATH:" != *":$1:"* ]]; then
430- name=$1
431- if [[ "$ISSM_ARCH" == "cygwin-intel" ]]; then
432- #export path using the cygwin convention
433- name=`cygpath -u $1`
434+c_include_path_append(){ #{{{
435+ if [ -d "${1}" ]; then
436+ if [ -z $C_INCLUDE_PATH ]; then
437+ export C_INCLUDE_PATH="${1}"
438+ elif [[ ":${C_INCLUDE_PATH}:" != *":${1}:"* ]]; then
439+ export C_INCLUDE_PATH="${C_INCLUDE_PATH}:${1}"
440 fi
441- export PATH="$name:$PATH"
442 fi
443 } #}}}
444-pathappend(){ #{{{
445- if [ -d "$1" ] && [[ ":$PATH:" != *":$1:"* ]]; then
446- name=$1
447- if [[ "$ISSM_ARCH" == "cygwin-intel" ]]; then
448- #export path in cygwin convention
449- name=`cygpath -u $1`
450+c_include_path_prepend(){ #{{{
451+ if [ -d "${1}" ]; then
452+ if [ -z $C_INCLUDE_PATH ]; then
453+ export C_INCLUDE_PATH="${1}"
454+ elif [[ ":${C_INCLUDE_PATH}:" != *":${1}:"* ]]; then
455+ export C_INCLUDE_PATH="${1}:${C_INCLUDE_PATH}"
456 fi
457- export PATH="$PATH:$name"
458 fi
459 } #}}}
460-libpathprepend(){ #{{{
461- if [ -d "$1" ]; then
462- if [ -z $LD_LIBRARY_PATH ]; then
463- export LD_LIBRARY_PATH="$1"
464- elif [[ ":$LD_LIBRARY_PATH:" != *":$1:"* ]]; then
465- export LD_LIBRARY_PATH="$1:$LD_LIBRARY_PATH"
466+\
467+cpath_append(){ #{{{
468+ if [ -d "${1}" ]; then
469+ if [ -z $CPATH ]; then
470+ export CPATH="${1}"
471+ elif [[ ":${CPATH}:" != *":${1}:"* ]]; then
472+ export CPATH="${CPATH}:${1}"
473 fi
474- if [ -z $LD_RUN_PATH ]; then
475- export LD_RUN_PATH="$1"
476- elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then
477- export LD_RUN_PATH="$1:$LD_RUN_PATH"
478+ fi
479+} #}}}
480+cpath_prepend(){ #{{{
481+ if [ -d "${1}" ]; then
482+ if [ -z $CPATH ]; then
483+ export CPATH="${1}"
484+ elif [[ ":${CPATH}:" != *":${1}:"* ]]; then
485+ export CPATH="${1}:${CPATH}"
486 fi
487 fi
488 } #}}}
489-libpathappend(){ #{{{
490- if [ -d "$1" ]; then
491- if [ -z $LD_LIBRARY_PATH ]; then
492- export LD_LIBRARY_PATH=$1
493- elif [[ ":$LD_LIBRARY_PATH:" != *":$1:"* ]]; then
494- export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$1"
495+
496+cplus_include_path_append(){ #{{{
497+ if [ -d "${1}" ]; then
498+ if [ -z $CPLUS_INCLUDE_PATH ]; then
499+ export CPLUS_INCLUDE_PATH="${1}"
500+ elif [[ ":${CPLUS_INCLUDE_PATH}:" != *":${1}:"* ]]; then
501+ export CPLUS_INCLUDE_PATH="${CPLUS_INCLUDE_PATH}:${1}"
502 fi
503- if [ -z $LD_RUN_PATH ]; then
504- export LD_RUN_PATH=$1
505- elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then
506- export LD_RUN_PATH="$LD_RUN_PATH:$1"
507+ fi
508+} #}}}
509+cplus_include_path_prepend(){ #{{{
510+ if [ -d "${1}" ]; then
511+ if [ -z $CPLUS_INCLUDE_PATH ]; then
512+ export CPLUS_INCLUDE_PATH="${1}"
513+ elif [[ ":${CPLUS_INCLUDE_PATH}:" != *":${1}:"* ]]; then
514+ export CPLUS_INCLUDE_PATH="${1}:${CPLUS_INCLUDE_PATH}"
515 fi
516 fi
517 } #}}}
518-dylibpathprepend(){ #{{{
519- if [ -d "$1" ]; then
520+
521+dyld_library_path_append(){ #{{{
522+ if [ -d "${1}" ]; then
523 if [ -z $DYLD_LIBRARY_PATH ]; then
524- export DYLD_LIBRARY_PATH=$1
525- elif [[ ":$DYLD_LIBRARY_PATH:" != *":$1:"* ]]; then
526- export DYLD_LIBRARY_PATH="$1:$DYLD_LIBRARY_PATH"
527+ export DYLD_LIBRARY_PATH="${1}"
528+ elif [[ ":${DYLD_LIBRARY_PATH}:" != *":${1}:"* ]]; then
529+ export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}:${1}"
530 fi
531 if [ -z $LD_RUN_PATH ]; then
532 export LD_RUN_PATH=$1
533- elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then
534- export LD_RUN_PATH="$1:$LD_RUN_PATH"
535+ elif [[ ":${LD_RUN_PATH}:" != *":${1}:"* ]]; then
536+ export LD_RUN_PATH="${LD_RUN_PATH}:${1}"
537 fi
538 fi
539 } #}}}
540-dylibpathappend(){ #{{{
541- if [ -d "$1" ]; then
542+dyld_library_path_prepend(){ #{{{
543+ if [ -d "${1}" ]; then
544 if [ -z $DYLD_LIBRARY_PATH ]; then
545- export DYLD_LIBRARY_PATH=$1
546- elif [[ ":$DYLD_LIBRARY_PATH:" != *":$1:"* ]]; then
547- export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:$1"
548+ export DYLD_LIBRARY_PATH="${1}"
549+ elif [[ ":${DYLD_LIBRARY_PATH}:" != *":${1}:"* ]]; then
550+ export DYLD_LIBRARY_PATH="${1}:${DYLD_LIBRARY_PATH}"
551 fi
552 if [ -z $LD_RUN_PATH ]; then
553- export LD_RUN_PATH=$1
554- elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then
555- export LD_RUN_PATH="$LD_RUN_PATH:$1"
556+ export LD_RUN_PATH="${1}"
557+ elif [[ ":${LD_RUN_PATH}:" != *":${1}:"* ]]; then
558+ export LD_RUN_PATH="${1}:${LD_RUN_PATH}"
559 fi
560 fi
561 } #}}}
562
563-# FIXME: during installation packages are installed one by one but
564-# environment.sh was sourced before so new packages are NOT in the path. May
565+ld_library_path_append(){ #{{{
566+ if [ -d "${1}" ]; then
567+ if [ -z $LD_LIBRARY_PATH ]; then
568+ export LD_LIBRARY_PATH="${1}"
569+ elif [[ ":${LD_LIBRARY_PATH}:" != *":${1}:"* ]]; then
570+ export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${1}"
571+ fi
572+ if [ -z $LD_RUN_PATH ]; then
573+ export LD_RUN_PATH="${1}"
574+ elif [[ ":${LD_RUN_PATH}:" != *":$1:"* ]]; then
575+ export LD_RUN_PATH="${LD_RUN_PATH}:${1}"
576+ fi
577+ fi
578+} #}}}
579+ld_library_path_prepend(){ #{{{
580+ if [ -d "${1}" ]; then
581+ if [ -z $LD_LIBRARY_PATH ]; then
582+ export LD_LIBRARY_PATH="${1}"
583+ elif [[ ":${LD_LIBRARY_PATH}:" != *":${1}:"* ]]; then
584+ export LD_LIBRARY_PATH="${1}:${LD_LIBRARY_PATH}"
585+ fi
586+ if [ -z $LD_RUN_PATH ]; then
587+ export LD_RUN_PATH="${1}"
588+ elif [[ ":${LD_RUN_PATH}:" != *":${1}:"* ]]; then
589+ export LD_RUN_PATH="${1}:${LD_RUN_PATH}"
590+ fi
591+ fi
592+} #}}}
593+
594+library_path_append(){ #{{{
595+ if [ -d "${1}" ]; then
596+ if [ -z $LIBRARY_PATH ]; then
597+ export LIBRARY_PATH="${1}"
598+ elif [[ ":${LIBRARY_PATH}:" != *":$1:"* ]]; then
599+ export LIBRARY_PATH="${LIBRARY_PATH}:${1}"
600+ fi
601+ fi
602+} #}}}
603+library_path_prepend(){ #{{{
604+ if [ -d "${1}" ]; then
605+ if [ -z $LIBRARY_PATH ]; then
606+ export LIBRARY_PATH="${1}"
607+ elif [[ ":${LIBRARY_PATH}:" != *":$1:"* ]]; then
608+ export LIBRARY_PATH="${1}:${LIBRARY_PATH}"
609+ fi
610+ fi
611+} #}}}
612+
613+path_append(){ #{{{
614+ if [ -d "${1}" ] && [[ ":${PATH}:" != *":${1}:"* ]]; then
615+ path="${1}"
616+ if [[ "${ISSM_ARCH}" == "cygwin-intel" ]]; then
617+ path=`cygpath -u "${1}"`
618+ fi
619+ export PATH="${PATH}:${path}"
620+ fi
621+} #}}}
622+path_prepend(){ #{{{
623+ if [ -d "${1}" ] && [[ ":${PATH}:" != *":${1}:"* ]]; then
624+ path="${1}"
625+ if [[ "${ISSM_ARCH}" == "cygwin-intel" ]]; then
626+ path=`cygpath -u "${1}"`
627+ fi
628+ export PATH="${path}:${PATH}"
629+ fi
630+} #}}}
631+
632+# FIXME: during installation packages are installed one by one but
633+# environment.sh was sourced before so new packages are NOT in the path. May
634 # source environment.sh again with:
635 # if [ -z $(echo "$PATH" | grep "$MATLAB_DIR") ]; then export $PATH...; fi
636
637@@ -94,98 +170,94 @@
638 fi
639
640 # Load ISSM scripts
641-pathappend "$ISSM_DIR/scripts"
642+path_append "${ISSM_DIR}/scripts"
643
644-GMT_DIR="$ISSM_DIR/externalpackages/gmt/install"
645-if [ -d "$GMT_DIR" ]; then
646- export GMT_DIR
647- pathprepend "$GMT_DIR/bin"
648- libpathappend "$GMT_DIR/lib"
649+SVN_DIR="${ISSM_DIR}/externalpackages/svn/install"
650+if [ -d "${SVN_DIR}" ]; then
651+ path_prepend "${SVN_DIR}/bin"
652+ ld_library_path_append "${SVN_DIR}/lib"
653 fi
654
655-MPI_DIR="$ISSM_DIR/externalpackages/mpich/install"
656+GIT_DIR="${ISSM_DIR}/externalpackages/git/install"
657+if [ -d "${GIT_DIR}" ]; then
658+ path_prepend "${GIT_DIR}/bin"
659+fi
660+
661+MPI_DIR="${ISSM_DIR}/externalpackages/mpich/install"
662 if [ -d "$MPI_DIR" ]; then
663 export MPI_DIR
664 export MPI_INC_DIR="$MPI_DIR/include"
665- pathprepend "$MPI_DIR/bin"
666- libpathprepend "$MPI_DIR/lib"
667+ path_prepend "$MPI_DIR/bin"
668+ ld_library_path_prepend "$MPI_DIR/lib"
669 fi
670
671-PETSC_DIR="$ISSM_DIR/externalpackages/petsc/install"
672+PETSC_DIR="${ISSM_DIR}/externalpackages/petsc/install"
673 if [ -d "$PETSC_DIR" ]; then
674 export PETSC_DIR
675- libpathappend "$PETSC_DIR/lib"
676+ ld_library_path_append "$PETSC_DIR/lib"
677 fi
678
679-SCOTCH_DIR="$ISSM_DIR/externalpackages/scotch/install"
680-libpathappend "$SCOTCH_DIR/lib"
681+SCOTCH_DIR="${ISSM_DIR}/externalpackages/scotch/install"
682+ld_library_path_append "$SCOTCH_DIR/lib"
683
684-SLEPC_DIR="$ISSM_DIR/externalpackages/slepc/install"
685-libpathappend "$SLEPC_DIR/lib"
686+SLEPC_DIR="${ISSM_DIR}/externalpackages/slepc/install"
687+ld_library_path_append "$SLEPC_DIR/lib"
688
689-TAO_DIR="$ISSM_DIR/externalpackages/tao/install"
690-libpathappend "$TAO_DIR/lib"
691+TAO_DIR="${ISSM_DIR}/externalpackages/tao/install"
692+ld_library_path_append "$TAO_DIR/lib"
693
694-DAKOTA_DIR="$ISSM_DIR/externalpackages/dakota/install"
695-pathappend "$DAKOTA_DIR/bin"
696-libpathappend "$DAKOTA_DIR/lib"
697-dylibpathprepend "$DAKOTA_DIR/lib"
698+DAKOTA_DIR="${ISSM_DIR}/externalpackages/dakota/install"
699+path_append "$DAKOTA_DIR/bin"
700+ld_library_path_append "$DAKOTA_DIR/lib"
701+dyld_library_path_prepend "$DAKOTA_DIR/lib"
702
703-DOXYGEN_DIR="$ISSM_DIR/externalpackages/doxygen/install"
704-pathprepend "$DOXYGEN_DIR/bin"
705+DOXYGEN_DIR="${ISSM_DIR}/externalpackages/doxygen/install"
706+path_prepend "$DOXYGEN_DIR/bin"
707
708-AUTOTOOLS_DIR="$ISSM_DIR/externalpackages/autotools/install"
709-pathprepend "$AUTOTOOLS_DIR/bin"
710+AUTOTOOLS_DIR="${ISSM_DIR}/externalpackages/autotools/install"
711+path_prepend "$AUTOTOOLS_DIR/bin"
712
713 SDK_DIR="C:/MicrosoftVisualStudio 9.0/Microsoft Visual C++ 2008 Express Edition with SP1 - ENU"
714-pathappend "$SDK_DIR"
715+path_append "$SDK_DIR"
716
717-SSH_DIR="$ISSM_DIR/externalpackages/ssh"
718-pathappend "$SSH_DIR"
719+SSH_DIR="${ISSM_DIR}/externalpackages/ssh"
720+path_append "$SSH_DIR"
721
722-VALGRIND_DIR="$ISSM_DIR/externalpackages/valgrind/install"
723-pathprepend "$VALGRIND_DIR/bin"
724+VALGRIND_DIR="${ISSM_DIR}/externalpackages/valgrind/install"
725+path_prepend "$VALGRIND_DIR/bin"
726
727-NCO_DIR="$ISSM_DIR/externalpackages/nco/install/bin"
728-pathprepend "$NCO_DIR/bin"
729+NCO_DIR="${ISSM_DIR}/externalpackages/nco/install/bin"
730+path_prepend "$NCO_DIR/bin"
731
732-CPPCHECK_DIR="$ISSM_DIR/externalpackages/cppcheck/install"
733-pathappend "$CPPCHECK_DIR/bin"
734+CPPCHECK_DIR="${ISSM_DIR}/externalpackages/cppcheck/install"
735+path_append "$CPPCHECK_DIR/bin"
736
737-GDAL_DIR="$ISSM_DIR/externalpackages/gdal/install"
738-pathprepend "$GDAL_DIR/bin"
739-libpathappend "$GDAL_DIR/lib"
740-
741-PROJ4_DIR="$ISSM_DIR/externalpackages/proj.4/install"
742-dylibpathprepend "$PROJ4_DIR/lib"
743-libpathprepend "$PROJ4_DIR/lib"
744-
745-MERCURIAL_DIR="$ISSM_DIR/externalpackages/mercurial/install"
746+MERCURIAL_DIR="${ISSM_DIR}/externalpackages/mercurial/install"
747 if [ -d "$MERCURIAL_DIR" ]; then
748 export PYTHONPATH="$PYTHONPATH:$MERCURIAL_DIR/mercurial/pure/"
749- pathappend "$MERCURIAL_DIR"
750+ path_append "$MERCURIAL_DIR"
751 fi
752
753-BOOST_DIR="$ISSM_DIR/externalpackages/boost/install"
754-BOOSTROOT="$ISSM_DIR/externalpackages/boost/install"
755+BOOST_DIR="${ISSM_DIR}/externalpackages/boost/install"
756+BOOSTROOT="${ISSM_DIR}/externalpackages/boost/install"
757 if [ -d "$BOOST_DIR" ]; then
758 export BOOSTROOT
759 export BOOST_DIR
760- libpathprepend "$BOOST_DIR/lib"
761- dylibpathprepend "$BOOST_DIR/lib"
762- pathprepend "$BOOST_DIR/bin"
763+ ld_library_path_prepend "$BOOST_DIR/lib"
764+ dyld_library_path_prepend "$BOOST_DIR/lib"
765+ path_prepend "$BOOST_DIR/bin"
766 fi
767
768-XERCESROOT="$ISSM_DIR/externalpackages/xerces/install"
769-XERCESCROOT="$ISSM_DIR/externalpackages/xerces/src"
770+XERCESROOT="${ISSM_DIR}/externalpackages/xerces/install"
771+XERCESCROOT="${ISSM_DIR}/externalpackages/xerces/src"
772 if [ -d "$XERCESROOT" ]; then
773- export XERCESROOT
774+ export XERCESROOT
775 export XERCESCROOT
776 fi
777
778-XAIF_DIR="$ISSM_DIR/externalpackages/xaifbooster/xaifBooster"
779-XAIFBOOSTERROOT="$ISSM_DIR/externalpackages/xaifbooster/"
780-XAIFBOOSTER_HOME="$ISSM_DIR/externalpackages/xaifbooster/xaifBooster"
781+XAIF_DIR="${ISSM_DIR}/externalpackages/xaifbooster/xaifBooster"
782+XAIFBOOSTERROOT="${ISSM_DIR}/externalpackages/xaifbooster/"
783+XAIFBOOSTER_HOME="${ISSM_DIR}/externalpackages/xaifbooster/xaifBooster"
784 PLATFORM="x86-Linux"
785 if [ -d "$XAIF_DIR" ]; then
786 export XAIFBOOSTERROOT
787@@ -194,157 +266,176 @@
788 export PLATFORM
789 fi
790
791-ANGELROOT="$ISSM_DIR/externalpackages/angel/angel"
792+ANGELROOT="${ISSM_DIR}/externalpackages/angel/angel"
793 if [ -d "$ANGELROOT" ]; then
794 export ANGELROOT
795 fi
796
797-OPENANALYSISROOT="$ISSM_DIR/externalpackages/openanalysis/install"
798+OPENANALYSISROOT="${ISSM_DIR}/externalpackages/openanalysis/install"
799 if [ -d "$OPENANALYSISROOT" ]; then
800 export OPENANALYSISROOT
801- libpathappend "$OPENANALYSISROOT/lib"
802+ ld_library_path_append "$OPENANALYSISROOT/lib"
803 fi
804
805 JVM_DIR="/usr/local/gcc/4.3.2/lib64/gcj-4.3.2-9/"
806-libpathappend "$JVM_DIR"
807+ld_library_path_append "$JVM_DIR"
808
809-BBFTP_DIR="$ISSM_DIR/externalpackages/bbftp/install"
810-pathappend "$BBFTP_DIR/bin"
811+BBFTP_DIR="${ISSM_DIR}/externalpackages/bbftp/install"
812+path_append "$BBFTP_DIR/bin"
813
814-ADIC_DIR="$ISSM_DIR/externalpackages/adic/install"
815-pathappend "$ADIC_DIR/bin"
816-libpathappend "$ADIC_DIR/lib"
817+ADIC_DIR="${ISSM_DIR}/externalpackages/adic/install"
818+path_append "$ADIC_DIR/bin"
819+ld_library_path_append "$ADIC_DIR/lib"
820
821-COLPACK_DIR="$ISSM_DIR/externalpackages/colpack/install"
822-libpathappend "$COLPACK_DIR/lib"
823+COLPACK_DIR="${ISSM_DIR}/externalpackages/colpack/install"
824+ld_library_path_append "$COLPACK_DIR/lib"
825
826-ECLIPSE_DIR="$ISSM_DIR/externalpackages/eclipse/install"
827-pathappend "$ECLIPSE_DIR"
828+ECLIPSE_DIR="${ISSM_DIR}/externalpackages/eclipse/install"
829+path_append "$ECLIPSE_DIR"
830
831-APPSCAN_DIR="$ISSM_DIR/externalpackages/appscan/install"
832-pathappend "$APPSCAN_DIR/bin"
833+APPSCAN_DIR="${ISSM_DIR}/externalpackages/appscan/install"
834+path_append "$APPSCAN_DIR/bin"
835
836-RATS_DIR="$ISSM_DIR/externalpackages/rats/install"
837-pathappend "$RATS_DIR/bin"
838+RATS_DIR="${ISSM_DIR}/externalpackages/rats/install"
839+path_append "$RATS_DIR/bin"
840
841-DYSON_DIR="$ISSM_DIR/externalpackages/dyson/"
842-pathappend "$DYSON_DIR"
843+DYSON_DIR="${ISSM_DIR}/externalpackages/dyson/"
844+path_append "$DYSON_DIR"
845
846-CMAKE_DIR="$ISSM_DIR/externalpackages/cmake/install"
847-pathprepend "$CMAKE_DIR/bin"
848+CMAKE_DIR="${ISSM_DIR}/externalpackages/cmake/install"
849+path_prepend "$CMAKE_DIR/bin"
850
851-SHAPELIB_DIR="$ISSM_DIR/externalpackages/shapelib/install"
852-pathappend "$SHAPELIB_DIR/exec"
853+SHAPELIB_DIR="${ISSM_DIR}/externalpackages/shapelib/install"
854+path_append "$SHAPELIB_DIR/exec"
855
856-CCCL_DIR="$ISSM_DIR/externalpackages/cccl/install"
857-pathappend "$CCCL_DIR/bin"
858+CCCL_DIR="${ISSM_DIR}/externalpackages/cccl/install"
859+path_append "$CCCL_DIR/bin"
860
861-PACKAGEMAKER_DIR="$ISSM_DIR/externalpackages/packagemaker/install"
862-pathappend "$PACKAGEMAKER_DIR"
863+PACKAGEMAKER_DIR="${ISSM_DIR}/externalpackages/packagemaker/install"
864+path_append "$PACKAGEMAKER_DIR"
865
866 #android-dev-dir
867-export ANDROID_DIR="$ISSM_DIR/externalpackages/android"
868+export ANDROID_DIR="${ISSM_DIR}/externalpackages/android"
869
870 export ANDROID_NDK_DIR="$ANDROID_DIR/android-ndk/install"
871-pathappend "$ANDROID_NDK_DIR/arm-linux-android-install/bin"
872+path_append "$ANDROID_NDK_DIR/arm-linux-android-install/bin"
873
874 export ANDROID_SDK_DIR="$ANDROID_DIR/android-sdk/install"
875-pathappend "$ANDROID_SDK_DIR/"
876+path_append "$ANDROID_SDK_DIR/"
877
878-GSL_DIR="$ISSM_DIR/externalpackages/gsl/install"
879-libpathappend "$GSL_DIR/lib"
880+GSL_DIR="${ISSM_DIR}/externalpackages/gsl/install"
881+ld_library_path_append "$GSL_DIR/lib"
882
883-GMAKE_DIR="$ISSM_DIR/externalpackages/gmake/install"
884-pathprepend "$GMAKE_DIR/bin"
885+GMAKE_DIR="${ISSM_DIR}/externalpackages/gmake/install"
886+path_prepend "$GMAKE_DIR/bin"
887
888-MODELE_DIR="$ISSM_DIR/externalpackages/modelE/install"
889-pathappend "$MODELE_DIR/src/exec"
890+MODELE_DIR="${ISSM_DIR}/externalpackages/modelE/install"
891+path_append "$MODELE_DIR/src/exec"
892
893-GIT_DIR="$ISSM_DIR/externalpackages/git/install"
894-pathprepend "$GIT_DIR/bin"
895+NCVIEW_DIR="${ISSM_DIR}/externalpackages/ncview/install"
896+path_append "$NCVIEW_DIR"
897
898-NCVIEW_DIR="$ISSM_DIR/externalpackages/ncview/install"
899-pathappend "$NCVIEW_DIR"
900+TCLX_DIR="${ISSM_DIR}/externalpackages/tclx/install/lib/tclx8.4"
901+ld_library_path_append "$TCLX_DIR"
902
903-TCLX_DIR="$ISSM_DIR/externalpackages/tclx/install/lib/tclx8.4"
904-libpathappend "$TCLX_DIR"
905+ASPELL_DIR="${ISSM_DIR}/externalpackages/aspell/install"
906+path_append "$ASPELL_DIR/bin"
907
908-ASPELL_DIR="$ISSM_DIR/externalpackages/aspell/install"
909-pathappend "$ASPELL_DIR/bin"
910+HDF5_DIR="${ISSM_DIR}/externalpackages/hdf5/install"
911+if [ -d "${HDF5_DIR}" ]; then
912+ c_include_path_append "${C_INCLUDE_PATH}:${HDF5_DIR}/include"
913+ library_path_append "${LIBRARY_PATH}:${HDF5_DIR}/lib"
914+ dyld_library_path_append "${HDF5_DIR}/lib"
915+ ld_library_path_append "${HDF5_DIR}/lib"
916+fi
917
918-HDF5_DIR="$ISSM_DIR/externalpackages/hdf5/install"
919-dylibpathappend "$HDF5_DIR/lib"
920-libpathappend "$HDF5_DIR/lib"
921-if [ -d "$HDF5_DIR" ]; then
922- export LIBRARY_PATH="$LIBRARY_PATH:$HDF5_DIR/lib"
923- export C_INCLUDE_PATH="$C_INCLUDE_PATH:$HDF5_DIR/include"
924+NETCDF_DIR="${ISSM_DIR}/externalpackages/netcdf/install"
925+if [ -d "${NETCDF_DIR}" ]; then
926+ c_include_path_append "${C_INCLUDE_PATH}:${NETCDF_DIR}/include"
927+ library_path_append "${LIBRARY_PATH}:${NETCDF_DIR}/lib"
928+ path_append "${NETCDF_DIR}/bin"
929+ dyld_library_path_append "${NETCDF_DIR}/lib"
930+ ld_library_path_append "${NETCDF_DIR}/lib"
931 fi
932
933-NETCDF_DIR="$ISSM_DIR/externalpackages/netcdf/install"
934-pathappend "$NETCDF_DIR/bin"
935-dylibpathappend "$NETCDF_DIR/lib"
936-libpathappend "$NETCDF_DIR/lib"
937-if [ -d "$NETCDF_DIR" ]; then
938- export LIBRARY_PATH="$LIBRARY_PATH:$NETCDF_DIR/lib"
939- dylibpathappend "$NETCDF_DIR/lib"
940- libpathappend "$NETCDF_DIR/lib"
941- export C_INCLUDE_PATH="$C_INCLUDE_PATH:$NETCDF_DIR/include"
942+NETCDF_CXX_DIR="${ISSM_DIR}/externalpackages/netcdf-cxx/install"
943+if [ -d "${NETCDF_CXX_DIR}" ]; then
944+ ld_library_path_append "${NETCDF_CXX_DIR}/lib"
945 fi
946
947-NETCDF_CXX_DIR="$ISSM_DIR/externalpackages/netcdf-cxx/install"
948-libpathappend "$NETCDF_CXX_DIR/lib"
949+SQLITE_DIR="${ISSM_DIR}/externalpackages/sqlite/install"
950+if [ -d "${SQLITE_DIR}" ]; then
951+ path_append "${SQLITE_DIR}/bin"
952+ ld_library_path_append "${SQLITE_DIR}/lib"
953+fi
954
955-SVN_DIR="$ISSM_DIR/externalpackages/svn/install"
956-pathprepend "$SVN_DIR/bin"
957-libpathappend "$SVN_DIR/lib"
958+PROJ4_DIR="${ISSM_DIR}/externalpackages/proj.4/install"
959+if [ -d "${PROJ4_DIR}" ]; then
960+ dyld_library_path_prepend "${PROJ4_DIR}/lib"
961+ ld_library_path_prepend "${PROJ4_DIR}/lib"
962+fi
963
964-CVS_DIR="$ISSM_DIR/externalpackages/cvs/install"
965-pathprepend "$CVS_DIR/bin"
966+PROJ_DIR="${ISSM_DIR}/externalpackages/proj/install"
967+if [ -d "${PROJ_DIR}" ]; then
968+ dyld_library_path_prepend "${PROJ_DIR}/lib"
969+ ld_library_path_prepend "${PROJ_DIR}/lib"
970+fi
971
972-APR_DIR="$ISSM_DIR/externalpackages/apr/install"
973-pathappend "$APR_DIR/bin"
974-libpathappend "$APR_DIR/lib"
975+GDAL_DIR="${ISSM_DIR}/externalpackages/gdal/install"
976+if [ -d "${GDAL_DIR}" ]; then
977+ path_prepend "${GDAL_DIR}/bin"
978+ ld_library_path_append "${GDAL_DIR}/lib"
979+fi
980
981-APR_UTIL_DIR="$ISSM_DIR/externalpackages/apr-util/install"
982-pathappend "$APR_UTIL_DIR/bin:$PATH"
983-libpathappend "$APR_UTIL_DIR/lib"
984+GMT_DIR="${ISSM_DIR}/externalpackages/gmt/install"
985+if [ -d "${GMT_DIR}" ]; then
986+ export GMT_DIR
987+ path_prepend "${GMT_DIR}/bin"
988+ ld_library_path_append "${GMT_DIR}/lib"
989+fi
990
991-SQLITE_DIR="$ISSM_DIR/externalpackages/sqlite/install"
992-pathappend "$SQLITE_DIR/bin"
993-libpathappend "$SQLITE_DIR/lib"
994+GMSH_DIR="${ISSM_DIR}/externalpackages/gmsh/install"
995+if [ -d "${GMSH_DIR}" ]; then
996+ path_append "${ISSM_DIR}/externalpackages/gmsh/install"
997+fi
998
999-YAMS_DIR="$ISSM_DIR/externalpackages/yams/install"
1000-pathappend "$YAMS_DIR"
1001+CVS_DIR="${ISSM_DIR}/externalpackages/cvs/install"
1002+path_prepend "$CVS_DIR/bin"
1003
1004-SWIG_DIR="$ISSM_DIR/externalpackages/swig/install"
1005-pathappend "$SWIG_DIR"
1006+APR_DIR="${ISSM_DIR}/externalpackages/apr/install"
1007+path_append "$APR_DIR/bin"
1008+ld_library_path_append "$APR_DIR/lib"
1009
1010+APR_UTIL_DIR="${ISSM_DIR}/externalpackages/apr-util/install"
1011+path_append "$APR_UTIL_DIR/bin:$PATH"
1012+ld_library_path_append "$APR_UTIL_DIR/lib"
1013+
1014+YAMS_DIR="${ISSM_DIR}/externalpackages/yams/install"
1015+path_append "$YAMS_DIR"
1016+
1017+SWIG_DIR="${ISSM_DIR}/externalpackages/swig/install"
1018+path_append "$SWIG_DIR"
1019+
1020 #AUX-CONFIG
1021-pathappend "$ISSM_DIR/aux-config"
1022+path_append "${ISSM_DIR}/aux-config"
1023
1024 #INISHELL
1025-pathappend "$ISSM_DIR/externalpackages/inishell/install"
1026+path_append "${ISSM_DIR}/externalpackages/inishell/install"
1027
1028 #SHELL2JUNIT
1029-pathappend "$ISSM_DIR/externalpackages/shell2junit/install"
1030+path_append "${ISSM_DIR}/externalpackages/shell2junit/install"
1031
1032 #EXPAT
1033-libpathprepend "$ISSM_DIR/externalpackages/expat/install"
1034-dylibpathprepend "$ISSM_DIR/externalpackages/expat/install"
1035+ld_library_path_prepend "${ISSM_DIR}/externalpackages/expat/install"
1036+dyld_library_path_prepend "${ISSM_DIR}/externalpackages/expat/install"
1037
1038-#GMSH
1039-pathappend "$ISSM_DIR/externalpackages/gmsh/install"
1040-
1041 #CURL
1042-libpathprepend "$ISSM_DIR/externalpackages/curl/install/lib"
1043-dylibpathprepend "$ISSM_DIR/externalpackages/curl/install/lib"
1044-pathprepend "$ISSM_DIR/externalpackages/curl/install/bin"
1045+ld_library_path_prepend "${ISSM_DIR}/externalpackages/curl/install/lib"
1046+dyld_library_path_prepend "${ISSM_DIR}/externalpackages/curl/install/lib"
1047+path_prepend "${ISSM_DIR}/externalpackages/curl/install/bin"
1048
1049-#GMT
1050-pathprepend "$ISSM_DIR/externalpackages/gmt/install/bin"
1051-
1052 #NEOPZ
1053-NEOPZ_DIR="$ISSM_DIR/externalpackages/neopz/install"
1054+NEOPZ_DIR="${ISSM_DIR}/externalpackages/neopz/install"
1055 if [ -d "$NEOPZ_DIR" ]; then
1056 export REFPATTERNDIR="$NEOPZ_DIR/include/refpatterns"
1057 fi
1058Index: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh
1059===================================================================
1060--- ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh (nonexistent)
1061+++ ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh (revision 24321)
1062@@ -0,0 +1,41 @@
1063+#!/bin/bash
1064+set -eu
1065+
1066+
1067+# Constants
1068+#
1069+VER="6.2.1"
1070+
1071+## Environnment
1072+#
1073+export SQLITE3_LIBS="-lsqlite3" # SQLite3 ships with macOS
1074+
1075+# Cleanup
1076+rm -rf install src
1077+mkdir install src
1078+
1079+# Download source
1080+$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/proj-${VER}.tar.gz" "proj-${VER}.tar.gz"
1081+
1082+# Unpack source
1083+tar -zxvf proj-$VER.tar.gz
1084+
1085+# Move source into 'src' directory
1086+mv proj-$VER/* src
1087+rm -rf proj-$VER
1088+
1089+# Configure
1090+cd src
1091+./configure \
1092+ --prefix="${ISSM_DIR}/externalpackages/proj/install"
1093+
1094+# Compile and install
1095+if [ $# -eq 0 ]; then
1096+ make
1097+ make check
1098+ make install
1099+else
1100+ make -j $1
1101+ make -j $1 check
1102+ make -j $1 install
1103+fi
1104
1105Property changes on: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh
1106___________________________________________________________________
1107Added: svn:executable
1108## -0,0 +1 ##
1109+*
1110\ No newline at end of property
1111Index: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh
1112===================================================================
1113--- ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh (nonexistent)
1114+++ ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh (revision 24321)
1115@@ -0,0 +1,39 @@
1116+#!/bin/bash
1117+set -eu
1118+
1119+
1120+# Constants
1121+#
1122+VER="6.2.1"
1123+
1124+## Environnment
1125+#
1126+export SQLITE3_LIBS="-lsqlite3" # SQLite3 ships with macOS
1127+
1128+# Cleanup
1129+rm -rf install src
1130+mkdir install src
1131+
1132+# Download source
1133+$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/proj-${VER}.tar.gz" "proj-${VER}.tar.gz"
1134+
1135+# Unpack source
1136+tar -zxvf proj-$VER.tar.gz
1137+
1138+# Move source into 'src' directory
1139+mv proj-$VER/* src
1140+rm -rf proj-$VER
1141+
1142+# Configure
1143+cd src
1144+./configure \
1145+ --prefix="${ISSM_DIR}/externalpackages/proj/install"
1146+
1147+# Compile and install
1148+if [ $# -eq 0 ]; then
1149+ make
1150+ make install
1151+else
1152+ make -j $1
1153+ make -j $1 install
1154+fi
1155
1156Property changes on: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh
1157___________________________________________________________________
1158Added: svn:executable
1159## -0,0 +1 ##
1160+*
1161\ No newline at end of property
1162Index: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh
1163===================================================================
1164--- ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh (nonexistent)
1165+++ ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh (revision 24321)
1166@@ -0,0 +1,43 @@
1167+#!/bin/bash
1168+set -eu
1169+
1170+
1171+# Constants
1172+#
1173+VER="1.10.5"
1174+
1175+## Environnment
1176+#
1177+export CC=mpicc
1178+
1179+# Download source
1180+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz"
1181+
1182+# Untar source
1183+tar -zxvf hdf5-$VER.tar.gz
1184+
1185+# Cleanup
1186+rm -rf install src
1187+mkdir install src
1188+
1189+# Move source to 'src' directory
1190+mv hdf5-$VER/* src/
1191+rm -rf hdf5-$VER
1192+
1193+# Configure
1194+cd src
1195+./configure \
1196+ --prefix="${ISSM_DIR}/externalpackages/hdf5/install" \
1197+ --enable-parallel
1198+
1199+# Compile, test, and install
1200+#
1201+if [ $# -eq 0 ]; then
1202+ make
1203+ make check
1204+ make install
1205+else
1206+ make -j $1
1207+ make -j $1 check
1208+ make -j $1 install
1209+fi
1210
1211Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh
1212___________________________________________________________________
1213Added: svn:executable
1214## -0,0 +1 ##
1215+*
1216\ No newline at end of property
1217Index: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh
1218===================================================================
1219--- ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh (nonexistent)
1220+++ ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh (revision 24321)
1221@@ -0,0 +1,41 @@
1222+#!/bin/bash
1223+set -eu
1224+
1225+
1226+# Constants
1227+#
1228+VER="1.10.5"
1229+
1230+## Environnment
1231+#
1232+export CC=mpicc
1233+
1234+# Download source
1235+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz"
1236+
1237+# Untar source
1238+tar -zxvf hdf5-$VER.tar.gz
1239+
1240+# Cleanup
1241+rm -rf install src
1242+mkdir install src
1243+
1244+# Move source to 'src' directory
1245+mv hdf5-$VER/* src/
1246+rm -rf hdf5-$VER
1247+
1248+# Configure
1249+cd src
1250+./configure \
1251+ --prefix="${ISSM_DIR}/externalpackages/hdf5/install" \
1252+ --enable-parallel
1253+
1254+# Compile and install
1255+#
1256+if [ $# -eq 0 ]; then
1257+ make
1258+ make install
1259+else
1260+ make -j $1
1261+ make -j $1 install
1262+fi
1263
1264Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh
1265___________________________________________________________________
1266Added: svn:executable
1267## -0,0 +1 ##
1268+*
1269\ No newline at end of property
1270Index: ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh
1271===================================================================
1272--- ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh (nonexistent)
1273+++ ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh (revision 24321)
1274@@ -0,0 +1,38 @@
1275+#!/bin/bash
1276+set -eu
1277+
1278+
1279+## Constants
1280+#
1281+VER="1.10.5"
1282+
1283+# Download source
1284+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz"
1285+
1286+# Untar source
1287+tar -zxvf hdf5-$VER.tar.gz
1288+
1289+# Cleanup
1290+rm -rf install src
1291+mkdir install src
1292+
1293+# Move source to 'src' directory
1294+mv hdf5-$VER/* src/
1295+rm -rf hdf5-$VER
1296+
1297+# Configure
1298+cd src
1299+./configure \
1300+ --prefix="${ISSM_DIR}/externalpackages/hdf5/install"
1301+
1302+# Compile, test, and install
1303+#
1304+if [ $# -eq 0 ]; then
1305+ make
1306+ make check
1307+ make install
1308+else
1309+ make -j $1
1310+ make -j $1 check
1311+ make -j $1 install
1312+fi
1313
1314Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh
1315___________________________________________________________________
1316Added: svn:executable
1317## -0,0 +1 ##
1318+*
1319\ No newline at end of property
1320Index: ../trunk-jpl/externalpackages/hdf5/install-1.10.sh
1321===================================================================
1322--- ../trunk-jpl/externalpackages/hdf5/install-1.10.sh (nonexistent)
1323+++ ../trunk-jpl/externalpackages/hdf5/install-1.10.sh (revision 24321)
1324@@ -0,0 +1,36 @@
1325+#!/bin/bash
1326+set -eu
1327+
1328+
1329+## Constants
1330+#
1331+VER="1.10.5"
1332+
1333+# Download source
1334+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz"
1335+
1336+# Untar source
1337+tar -zxvf hdf5-$VER.tar.gz
1338+
1339+# Cleanup
1340+rm -rf install src
1341+mkdir install src
1342+
1343+# Move source to 'src' directory
1344+mv hdf5-$VER/* src/
1345+rm -rf hdf5-$VER
1346+
1347+# Configure
1348+cd src
1349+./configure \
1350+ --prefix="${ISSM_DIR}/externalpackages/hdf5/install"
1351+
1352+# Compile and install
1353+#
1354+if [ $# -eq 0 ]; then
1355+ make
1356+ make install
1357+else
1358+ make -j $1
1359+ make -j $1 install
1360+fi
1361
1362Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10.sh
1363___________________________________________________________________
1364Added: svn:executable
1365## -0,0 +1 ##
1366+*
1367\ No newline at end of property
1368Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh
1369===================================================================
1370--- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh (nonexistent)
1371+++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh (revision 24321)
1372@@ -0,0 +1,44 @@
1373+#!/bin/bash
1374+set -eu
1375+
1376+
1377+## TODO
1378+# - May want to supply path to Python instead of, effectively, using result of `which python`
1379+#
1380+
1381+## Constants
1382+#
1383+VER="3.0.2"
1384+PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install"
1385+
1386+# Cleanup
1387+rm -rf install src
1388+mkdir install src
1389+
1390+# Download source
1391+$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz"
1392+
1393+# Unpack source
1394+tar -zxvf gdal-$VER.tar.gz
1395+
1396+# Move source into 'src' directory
1397+mv gdal-$VER/* src
1398+rm -rf gdal-$VER
1399+
1400+# Configure
1401+cd src
1402+./configure \
1403+ --prefix="${ISSM_DIR}/externalpackages/gdal/install" \
1404+ --with-python \
1405+ --without-hdf5 \
1406+ --without-netcdf \
1407+ --with-proj="${PROJ_ROOT}"
1408+
1409+# Compile and install
1410+if [ $# -eq 0 ]; then
1411+ make
1412+ make install
1413+else
1414+ make -j $1
1415+ make -j $1 install
1416+fi
1417
1418Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh
1419___________________________________________________________________
1420Added: svn:executable
1421## -0,0 +1 ##
1422+*
1423\ No newline at end of property
1424Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh
1425===================================================================
1426--- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh (nonexistent)
1427+++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh (revision 24321)
1428@@ -0,0 +1,42 @@
1429+#!/bin/bash
1430+set -eu
1431+
1432+
1433+## TODO
1434+# - May want to supply path to Python instead of, effectively, using result of `which python`
1435+#
1436+
1437+## Constants
1438+#
1439+VER="3.0.2"
1440+PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install"
1441+
1442+# Cleanup
1443+rm -rf install src
1444+mkdir install src
1445+
1446+# Download source
1447+$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz"
1448+
1449+# Unpack source
1450+tar -zxvf gdal-$VER.tar.gz
1451+
1452+# Move source into 'src' directory
1453+mv gdal-$VER/* src
1454+rm -rf gdal-$VER
1455+
1456+# Configure
1457+cd src
1458+./configure \
1459+ --prefix="${ISSM_DIR}/externalpackages/gdal/install" \
1460+ --with-python \
1461+ --with-proj="${PROJ_ROOT}"
1462+
1463+# Compile and install
1464+if [ $# -eq 0 ]; then
1465+ make
1466+ make install
1467+else
1468+ make -j $1
1469+ make -j $1 install
1470+fi
1471
1472Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh
1473___________________________________________________________________
1474Added: svn:executable
1475## -0,0 +1 ##
1476+*
1477\ No newline at end of property
1478Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh
1479===================================================================
1480--- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh (nonexistent)
1481+++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh (revision 24321)
1482@@ -0,0 +1,39 @@
1483+#!/bin/bash
1484+set -eu
1485+
1486+
1487+# Constants
1488+#
1489+VER="3.0.2"
1490+PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install"
1491+
1492+# Cleanup
1493+rm -rf install src
1494+mkdir install src
1495+
1496+# Download source
1497+$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz"
1498+
1499+# Unpack source
1500+tar -zxvf gdal-$VER.tar.gz
1501+
1502+# Move source into 'src' directory
1503+mv gdal-$VER/* src
1504+rm -rf gdal-$VER
1505+
1506+# Configure
1507+cd src
1508+./configure \
1509+ --prefix="${ISSM_DIR}/externalpackages/gdal/install" \
1510+ --without-hdf5 \
1511+ --without-netcdf \
1512+ --with-proj="${PROJ_ROOT}"
1513+
1514+# Compile and install
1515+if [ $# -eq 0 ]; then
1516+ make
1517+ make install
1518+else
1519+ make -j $1
1520+ make -j $1 install
1521+fi
1522
1523Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh
1524___________________________________________________________________
1525Added: svn:executable
1526## -0,0 +1 ##
1527+*
1528\ No newline at end of property
1529Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh
1530===================================================================
1531--- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh (nonexistent)
1532+++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh (revision 24321)
1533@@ -0,0 +1,37 @@
1534+#!/bin/bash
1535+set -eu
1536+
1537+
1538+# Constants
1539+#
1540+VER="3.0.2"
1541+PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install"
1542+
1543+# Cleanup
1544+rm -rf install src
1545+mkdir install src
1546+
1547+# Download source
1548+$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz"
1549+
1550+# Unpack source
1551+tar -zxvf gdal-$VER.tar.gz
1552+
1553+# Move source into 'src' directory
1554+mv gdal-$VER/* src
1555+rm -rf gdal-$VER
1556+
1557+# Configure
1558+cd src
1559+./configure \
1560+ --prefix="${ISSM_DIR}/externalpackages/gdal/install" \
1561+ --with-proj="${PROJ_ROOT}"
1562+
1563+# Compile and install
1564+if [ $# -eq 0 ]; then
1565+ make
1566+ make install
1567+else
1568+ make -j $1
1569+ make -j $1 install
1570+fi
1571
1572Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh
1573___________________________________________________________________
1574Added: svn:executable
1575## -0,0 +1 ##
1576+*
1577\ No newline at end of property
1578Index: ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh
1579===================================================================
1580--- ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh (nonexistent)
1581+++ ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh (revision 24321)
1582@@ -0,0 +1,39 @@
1583+#!/bin/bash
1584+set -eu
1585+
1586+
1587+## Constants
1588+#
1589+VER="3.3"
1590+
1591+# Cleanup
1592+rm -rf src install
1593+mkdir src install
1594+
1595+#Download from ISSM server
1596+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/mpich-${VER}.tar.gz" "mpich-${VER}.tar.gz"
1597+
1598+# Unpack source
1599+tar -zxvf mpich-$VER.tar.gz
1600+
1601+# Move source into 'src' directory
1602+mv mpich-$VER/* src
1603+rm -rf mpich-$VER
1604+
1605+# Configure
1606+cd src
1607+./configure \
1608+ --prefix="${ISSM_DIR}/externalpackages/mpich/install" \
1609+ --enable-shared
1610+
1611+# Compile and install
1612+if [ $# -eq 0 ]; then
1613+ make
1614+ make install
1615+else
1616+ make -j $1
1617+ make -j $1 install
1618+fi
1619+
1620+# Return to initial directory
1621+cd ..
1622
1623Property changes on: ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh
1624___________________________________________________________________
1625Added: svn:executable
1626## -0,0 +1 ##
1627+*
1628\ No newline at end of property
1629Index: ../trunk-jpl/externalpackages/netcdf/install-4.7.sh
1630===================================================================
1631--- ../trunk-jpl/externalpackages/netcdf/install-4.7.sh (nonexistent)
1632+++ ../trunk-jpl/externalpackages/netcdf/install-4.7.sh (revision 24321)
1633@@ -0,0 +1,50 @@
1634+#!/bin/bash
1635+set -eu
1636+
1637+
1638+# Dependencies
1639+# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support)
1640+# - zlib (1.2.5 or later, for netCDF-4 compression)
1641+# - curl (7.18.0 or later, for DAP remote access client support)
1642+#
1643+# For most ISSM installations, only hdf5 will be necessary
1644+#
1645+
1646+# Constants
1647+#
1648+VER="4.7.2"
1649+HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install"
1650+
1651+# Environment
1652+#
1653+export CPPFLAGS="-I${HDF5_ROOT}/include"
1654+export LDFLAGS="-L${HDF5_ROOT}/lib"
1655+
1656+# Download source
1657+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz"
1658+
1659+# Unpack source
1660+tar -zxvf netcdf-c-$VER.tar.gz
1661+
1662+# Cleanup
1663+rm -rf install src
1664+mkdir install src
1665+
1666+# Move source to 'src' directory
1667+mv netcdf-c-$VER/* src/
1668+rm -rf netcdf-c-$VER
1669+
1670+# Configure
1671+cd src
1672+./configure \
1673+ --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \
1674+ --disable-doxygen
1675+
1676+# Compile and install
1677+if [ $# -eq 0 ]; then
1678+ make
1679+ make install
1680+else
1681+ make -j $1
1682+ make -j $1 install
1683+fi
1684
1685Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7.sh
1686___________________________________________________________________
1687Added: svn:executable
1688## -0,0 +1 ##
1689+*
1690\ No newline at end of property
1691Index: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh
1692===================================================================
1693--- ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh (nonexistent)
1694+++ ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh (revision 24321)
1695@@ -0,0 +1,56 @@
1696+#!/bin/bash
1697+set -eu
1698+
1699+
1700+# Dependencies
1701+# - MPI implementation (for parallel I/O support)
1702+# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support)
1703+# - zlib (1.2.5 or later, for netCDF-4 compression)
1704+# - curl (7.18.0 or later, for DAP remote access client support)
1705+#
1706+# For most ISSM installations, only hdf5 will be necessary
1707+#
1708+
1709+# Constants
1710+#
1711+VER="4.7.2"
1712+HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install"
1713+
1714+# Environment
1715+#
1716+export CC=mpicc
1717+export CPPFLAGS="-I${HDF5_ROOT}/include"
1718+export LDFLAGS="-L${HDF5_ROOT}/lib"
1719+
1720+# Download source
1721+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz"
1722+
1723+# Unpack source
1724+tar -zxvf netcdf-c-$VER.tar.gz
1725+
1726+# Cleanup
1727+rm -rf install src
1728+mkdir install src
1729+
1730+# Move source to 'src' directory
1731+mv netcdf-c-$VER/* src/
1732+rm -rf netcdf-c-$VER
1733+
1734+# Configure
1735+cd src
1736+./configure \
1737+ --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \
1738+ --disbable-shared \
1739+ --enable-parallel-tests \
1740+ --disable-doxygen
1741+
1742+# Compile, test, and install
1743+if [ $# -eq 0 ]; then
1744+ make
1745+ make check
1746+ make install
1747+else
1748+ make -j $1
1749+ make -j $1 check
1750+ make -j $1 install
1751+fi
1752
1753Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh
1754___________________________________________________________________
1755Added: svn:executable
1756## -0,0 +1 ##
1757+*
1758\ No newline at end of property
1759Index: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh
1760===================================================================
1761--- ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh (nonexistent)
1762+++ ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh (revision 24321)
1763@@ -0,0 +1,53 @@
1764+#!/bin/bash
1765+set -eu
1766+
1767+
1768+# Dependencies
1769+# - MPI implementation (for parallel I/O support)
1770+# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support)
1771+# - zlib (1.2.5 or later, for netCDF-4 compression)
1772+# - curl (7.18.0 or later, for DAP remote access client support)
1773+#
1774+# For most ISSM installations, only hdf5 will be necessary
1775+#
1776+
1777+# Constants
1778+#
1779+VER="4.7.2"
1780+HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install"
1781+
1782+# Environment
1783+#
1784+export CC=mpicc
1785+export CPPFLAGS="-I${HDF5_ROOT}/include"
1786+export LDFLAGS="-L${HDF5_ROOT}/lib"
1787+
1788+# Download source
1789+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz"
1790+
1791+# Unpack source
1792+tar -zxvf netcdf-c-$VER.tar.gz
1793+
1794+# Cleanup
1795+rm -rf install src
1796+mkdir install src
1797+
1798+# Move source to 'src' directory
1799+mv netcdf-c-$VER/* src/
1800+rm -rf netcdf-c-$VER
1801+
1802+# Configure
1803+cd src
1804+./configure \
1805+ --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \
1806+ --disbable-shared \
1807+ --disable-doxygen
1808+
1809+# Compile and install
1810+if [ $# -eq 0 ]; then
1811+ make
1812+ make install
1813+else
1814+ make -j $1
1815+ make -j $1 install
1816+fi
1817
1818Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh
1819___________________________________________________________________
1820Added: svn:executable
1821## -0,0 +1 ##
1822+*
1823\ No newline at end of property
1824Index: ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh
1825===================================================================
1826--- ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh (nonexistent)
1827+++ ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh (revision 24321)
1828@@ -0,0 +1,52 @@
1829+#!/bin/bash
1830+set -eu
1831+
1832+
1833+# Dependencies
1834+# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support)
1835+# - zlib (1.2.5 or later, for netCDF-4 compression)
1836+# - curl (7.18.0 or later, for DAP remote access client support)
1837+#
1838+# For most ISSM installations, only hdf5 will be necessary
1839+#
1840+
1841+# Constants
1842+#
1843+VER="4.7.2"
1844+HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install"
1845+
1846+# Environment
1847+#
1848+export CPPFLAGS="-I${HDF5_ROOT}/include"
1849+export LDFLAGS="-L${HDF5_ROOT}/lib"
1850+
1851+# Download source
1852+$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz"
1853+
1854+# Unpack source
1855+tar -zxvf netcdf-c-$VER.tar.gz
1856+
1857+# Cleanup
1858+rm -rf install src
1859+mkdir install src
1860+
1861+# Move source to 'src' directory
1862+mv netcdf-c-$VER/* src/
1863+rm -rf netcdf-c-$VER
1864+
1865+# Configure
1866+cd src
1867+./configure \
1868+ --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \
1869+ --disable-doxygen
1870+
1871+# Compile, test, and install
1872+if [ $# -eq 0 ]; then
1873+ make
1874+ make check
1875+ make install
1876+else
1877+ make
1878+ make -j $1 check
1879+ make -j $1 install
1880+fi
1881
1882Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh
1883___________________________________________________________________
1884Added: svn:executable
1885## -0,0 +1 ##
1886+*
1887\ No newline at end of property
Note: See TracBrowser for help on using the repository browser.