Index: ../trunk-jpl/externalpackages/sqlite/install.sh =================================================================== --- ../trunk-jpl/externalpackages/sqlite/install.sh (revision 24320) +++ ../trunk-jpl/externalpackages/sqlite/install.sh (revision 24321) @@ -1,30 +1,33 @@ #!/bin/bash set -eu -#Some cleanup -rm -rf src -rm -rf install -rm -rf sqlite-autoconf-3071300 -mkdir src install -#Download from ISSM server -$ISSM_DIR/scripts/DownloadExternalPackage.sh 'https://issm.ess.uci.edu/files/externalpackages/sqlite-autoconf-3071300.tar.gz' 'sqlite-autoconf-3071300.tar.gz' +VER="3300100" -#Untar -tar -zxvf sqlite-autoconf-3071300.tar.gz +# Cleanup +rm -rf install src +mkdir install src -#Move sqlite-autoconf into src directory -mv sqlite-autoconf-3071300/* src -rm -rf sqlite-autoconf-3071300 +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/sqlite-autoconf-${VER}.tar.gz" "sqlite-autoconf-${VER}.tar.gz" -#Configure sqlite-autoconf +# Unpack source +tar -zxvf sqlite-autoconf-$VER.tar.gz + +# Move source into 'src' directory +mv sqlite-autoconf-$VER/* src +rm -rf sqlite-autoconf-$VER + +# Configure cd src -./configure --prefix="$ISSM_DIR/externalpackages/sqlite/install" +./configure \ + --prefix="${ISSM_DIR}/externalpackages/sqlite/install" -#Compile and install sqlite-autoconf +# Compile and install if [ $# -eq 0 ]; then make + make install else make -j $1 + make -j $1 install fi -make install Index: ../trunk-jpl/externalpackages/gmt/configs/ConfigUser.cmake =================================================================== --- ../trunk-jpl/externalpackages/gmt/configs/ConfigUser.cmake (revision 24320) +++ ../trunk-jpl/externalpackages/gmt/configs/ConfigUser.cmake (revision 24321) @@ -102,7 +102,7 @@ #set (COPY_GSHHG TRUE) # Set path to DCW Digital Chart of the World for GMT [auto]: -#set (DCW_ROOT "dcw-gmt_path") +#set (DCW_ROOT "$ENV{ISSM_DIR}/externalpackages/dcw/install") # Copy DCW files to $/dcw [FALSE]: #set (COPY_DCW TRUE) @@ -140,10 +140,10 @@ # Enable building of shared libraries [TRUE] (disable to use static libraries; # not recommended): -#set (BUILD_SHARED_LIBS FALSE) +#set (BUILD_SHARED_LIBS TRUE) # Build GMT shared lib with supplemental modules [TRUE]: -#set (BUILD_SUPPLEMENTS FALSE) +#set (BUILD_SUPPLEMENTS TRUE) ## ## Section 4: Advanced tweaking Index: ../trunk-jpl/externalpackages/gmt/install.sh =================================================================== --- ../trunk-jpl/externalpackages/gmt/install.sh (revision 24320) +++ ../trunk-jpl/externalpackages/gmt/install.sh (revision 24321) @@ -1,27 +1,35 @@ #!/bin/bash set -eu -#Erase install -rm -rf install src gmt -#Download from ISSM server -$ISSM_DIR/scripts/DownloadExternalPackage.sh 'https://issm.ess.uci.edu/files/externalpackages/gmt-5.1.1.tar.gz' 'gmt-5.1.1.tar.gz' +# Constants +# +VER="5.1.1" -#install directory -mkdir src -tar -zxvf gmt-5.1.1.tar.gz -mv gmt-5.1.1/* src -rm -rf gmt-5.1.1 +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/gmt-${VER}.tar.gz" "gmt-${VER}.tar.gz" -#configure: -cp configs/ConfigUser.cmake ./src/cmake +# Unpack source +tar -zxvf gmt-$VER.tar.gz +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv gmt-$VER/* src +rm -rf gmt-$VER + +# Copy source customizations +cp configs/ConfigUser.cmake src/cmake + +# Configure cd src mkdir build cd build -cmake ../ +cmake .. -#compile +# Install if [ $# -eq 0 ]; then make install else @@ -28,5 +36,5 @@ make -j $1 install fi -#come back: -cd ../../ +# Return to initial directory +cd ../.. Index: ../trunk-jpl/externalpackages/gmsh/install.sh =================================================================== --- ../trunk-jpl/externalpackages/gmsh/install.sh (revision 24320) +++ ../trunk-jpl/externalpackages/gmsh/install.sh (revision 24321) @@ -1,6 +1,9 @@ #!/bin/bash set -eu + +## Constants +# VER="3.0.5" # Cleanup @@ -23,12 +26,15 @@ -DCMAKE_INSTALL_PREFIX="$ISSM_DIR/externalpackages/gmsh/install" \ -DENABLE_MPI=1 -# Compile +# Compile and install if [ $# -eq 0 ]; then make + make install else make -j $1 + make -j $1 install fi -# Install -make install +# Return to initial directory +cd .. + Index: ../trunk-jpl/externalpackages/gshhg/install.sh =================================================================== --- ../trunk-jpl/externalpackages/gshhg/install.sh (revision 24320) +++ ../trunk-jpl/externalpackages/gshhg/install.sh (revision 24321) @@ -1,16 +1,19 @@ #!/bin/bash set -eu -rm -rf gssh-gmt-2.3.4.tar.gz src install -#get gssh database from noaa's website: http://www.ngdc.noaa.gov/mgg/shorelines/gshhs.html -#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 +## Constants +# +VER="2.3.4" -#Download from ISSM server -$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' +# Cleanup +rm -rf install -#untar: -tar -zxvf gshhg-gmt-2.3.4.tar.gz +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/gshhg-gmt-${VER}.tar.gz" "gshhg-gmt-${VER}.tar.gz" -#move: -mv gshhg-gmt-2.3.4 install +# Unpack source +tar -zxvf gshhg-gmt-${VER}.tar.gz + +# Install +mv gshhg-gmt-${VER} install Index: ../trunk-jpl/jenkins/jenkins.sh =================================================================== --- ../trunk-jpl/jenkins/jenkins.sh (revision 24320) +++ ../trunk-jpl/jenkins/jenkins.sh (revision 24321) @@ -34,11 +34,11 @@ exit 1 fi -#Defaults (to avoid -eq: unary operator expected) -EXAMPLES_TEST=0 +# Initialize test suite variables (to avoid "-eq: unary operator expected") MATLAB_TEST=0 PYTHON_TEST=0 JAVASCRIPT_TEST=0 +EXAMPLES_TEST=0 #source configuration script source $1; @@ -431,11 +431,11 @@ do if [ -d "${dir}" ]; then - # Some of the examples are incomplete (on purpose). As such, we will have to populate the - # missing steps in order to make sure that everything is working. + # Some of the examples are incomplete (on purpose). As such, we will + # have to populate the missing steps in order to make sure that + # everything is working. echo "Testing directory example: $(basename $dir)" - # Greenland is missing step 8 if [ -z "$SED" ]; then SED='sed' @@ -445,55 +445,56 @@ if [ "${dir}" == "./Greenland" ]; then + # Greenland is missing step 8 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');" - $SED -i.bak 's/steps=\[1\];/steps=\[1:8\];\n\ntry\n/' $FILE - $SED -i.bak "s/if any(steps==8)/&${STEP_EIGHT}/" $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:8\];\n\ntry\n/' $FILE + $SED -i .bak "s/if any(steps==8)/&${STEP_EIGHT}/" $FILE elif [ "${dir}" == "./IceBridge" ]; then - $SED -i.bak 's/steps=\[1\];/steps=\[1:5\];\n\ntry\n/' $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:5\];\n\ntry\n/' $FILE elif [ "${dir}" == "./IceflowModels" ]; then # Almost nothing to this example - $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE + $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE elif [ "${dir}" == "./ISMIP" ]; then # Eight steps... none of which are implmented in the script... - $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE + $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE elif [ "${dir}" == "./Inversion" ]; then - $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE elif [ "${dir}" == "./Jakobshavn" ]; then - $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE elif [ "${dir}" == "./Jakobshavn" ]; then - $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE elif [ "${dir}" == "./Pig" ]; then # Step 6 is needed STEP_SIX="\n disp('Needs work!')" - $SED -i.bak 's/steps=\[1\];/steps=\[1:7\];\n!mv DomainOutline.bkp DomainOutline.exp;\n\ntry\n/' $FILE - $SED -i.bak "s/if any(steps==6)/&${STEP_SIX}/" $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:7\];\n!mv DomainOutline.bkp DomainOutline.exp;\n\ntry\n/' $FILE + $SED -i .bak "s/if any(steps==6)/&${STEP_SIX}/" $FILE elif [ "${dir}" == "./PigSensitivity" ]; then # Step 4 is needed STEP_FOUR="\n disp('Needs work!')" - $SED -i.bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE - $SED -i.bak "s/if any(steps==6)/&${STEP_FOUR}/" $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:4\];\n\ntry\n/' $FILE + $SED -i .bak "s/if any(steps==6)/&${STEP_FOUR}/" $FILE elif [ "${dir}" == "./SquareIceShelf" ]; then # Almost nothing to this example - $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE + $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE elif [ "${dir}" == "./UncertaintyQuantification" ]; then - $SED -i.bak 's/steps=\[1\];/steps=\[1:7\];\n\ntry\n/' $FILE + $SED -i .bak 's/steps=\[1\];/steps=\[1:7\];\n\ntry\n/' $FILE elif [ "${dir}" == "./Data" ]; then echo "Data directory is used by examples. No modifications required." else echo "Not implemented yet!" - $SED -i.bak '1 s/^.*$/try\n\n&/' $FILE + $SED -i .bak '1 s/^.*$/try\n\n&/' $FILE fi if [ "${dir}" == "./Data" ]; @@ -572,7 +573,7 @@ if [ $EXAMPLES_TEST -eq 1 ]; then # Inexplicably, there are backspace chars in the error output that are causing issues - $SED -i.bak 's///g' matlab_log_examples.log + $SED -i .bak 's///g' matlab_log_examples.log numtests=`cat matlab_log_examples.log | grep "starting: " | wc -l` testlist=`cat matlab_log_examples.log | grep "starting: " | sed 's/starting: //'` Index: ../trunk-jpl/jenkins/macosx_pine-island_examples =================================================================== --- ../trunk-jpl/jenkins/macosx_pine-island_examples (revision 24320) +++ ../trunk-jpl/jenkins/macosx_pine-island_examples (revision 24321) @@ -1,29 +1,31 @@ - #-------------------------------# # 1: ISSM general configuration # #-------------------------------# -#MATLAB path +# MATLAB path MATLAB_PATH="/Applications/MATLAB_R2015b.app" -#ISSM CONFIGURATION -ISSM_CONFIG='--prefix=$ISSM_DIR \ +# ISSM CONFIGURATION +ISSM_CONFIG='\ + --prefix=$ISSM_DIR \ --with-matlab-dir=$MATLAB_PATH \ - --with-triangle-dir=$ISSM_DIR/externalpackages/triangle/install \ - --with-mpi-include=$ISSM_DIR/externalpackages/mpich/install/include \ + --with-mpi-include=$ISSM_DIR/externalpackages/mpich/install/include \ --with-mpi-libflags="-L$ISSM_DIR/externalpackages/mpich/install/lib -lmpi" \ - --with-petsc-dir=$ISSM_DIR/externalpackages/petsc/install \ - --with-scalapack-dir=$ISSM_DIR/externalpackages/petsc/install/ \ + --with-m1qn3-dir=$ISSM_DIR/externalpackages/m1qn3/install \ + --with-metis-dir=$ISSM_DIR/externalpackages/petsc/install \ --with-mumps-dir=$ISSM_DIR/externalpackages/petsc/install \ - --with-metis-dir=$ISSM_DIR/externalpackages/petsc/install \ - --with-m1qn3-dir=$ISSM_DIR/externalpackages/m1qn3/install \ + --with-scalapack-dir=$ISSM_DIR/externalpackages/petsc/install \ + --with-petsc-dir=$ISSM_DIR/externalpackages/petsc/install \ + --with-triangle-dir=$ISSM_DIR/externalpackages/triangle/install \ --with-numthreads=4 \ --enable-debugging \ - --enable-development' + --enable-development \ +' -#PYTHON and MATLAB testing +# Test suites MATLAB_TEST=0 PYTHON_TEST=0 +JAVASCRIPT_TEST=0 EXAMPLES_TEST=1 #-----------------------------------# @@ -30,19 +32,31 @@ # 3: External packages installation # #-----------------------------------# -#List of external pakages to be installed and their installation scripts -EXTERNALPACKAGES="autotools install.sh - cmake install.sh - mpich install-3.2-macosx64.sh - m1qn3 install.sh - petsc install-3.7-macosx64.sh - triangle install-macosx64.sh - shell2junit install.sh" +# List of external pakages to be installed and their installation scripts +EXTERNALPACKAGES=" + autotools install.sh + cmake install.sh + mpich install-3.3-macOS_64.sh + m1qn3 install.sh + petsc install-3.7-macosx64.sh + triangle install-macosx64.sh + hdf5 install-1.10.sh + netcdf install-4.7.sh + proj install-6.2-macOS_64.sh + gdal install-3.0-macOS_64-netcdf.sh + gshhg install.sh + gmt install.sh + gmsh install.sh + shell2junit install.sh +" #-----------------# # 4: test options # #-----------------# -#number of cpus used in ISSM installation and compilation (one is usually -#safer as some packages are very sensitive to parallel compilation) -NUMCPUS_INSTALL=4 +# Number of CPUs used in ISSM compilation +# +# NOTE: One is usually safer as some packages are very sensitive to parallel +# compilation. +# +NUMCPUS_INSTALL=10 Index: ../trunk-jpl/etc/environment.sh =================================================================== --- ../trunk-jpl/etc/environment.sh (revision 24320) +++ ../trunk-jpl/etc/environment.sh (revision 24321) @@ -1,90 +1,166 @@ -# Modifies path-related envrionment variables based on which external packages +# Modifies path-related envrionment variables based on which external packages # have been installed. # -# ISSM_DIR and ISSM_ARCH should have been defined already in your shell +# ISSM_DIR and ISSM_ARCH should have been defined already in your shell # settings file (i.e. .bashrc, .cshrc). ## Functions # -pathprepend(){ #{{{ - if [ -d "$1" ] && [[ ":$PATH:" != *":$1:"* ]]; then - name=$1 - if [[ "$ISSM_ARCH" == "cygwin-intel" ]]; then - #export path using the cygwin convention - name=`cygpath -u $1` +c_include_path_append(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $C_INCLUDE_PATH ]; then + export C_INCLUDE_PATH="${1}" + elif [[ ":${C_INCLUDE_PATH}:" != *":${1}:"* ]]; then + export C_INCLUDE_PATH="${C_INCLUDE_PATH}:${1}" fi - export PATH="$name:$PATH" fi } #}}} -pathappend(){ #{{{ - if [ -d "$1" ] && [[ ":$PATH:" != *":$1:"* ]]; then - name=$1 - if [[ "$ISSM_ARCH" == "cygwin-intel" ]]; then - #export path in cygwin convention - name=`cygpath -u $1` +c_include_path_prepend(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $C_INCLUDE_PATH ]; then + export C_INCLUDE_PATH="${1}" + elif [[ ":${C_INCLUDE_PATH}:" != *":${1}:"* ]]; then + export C_INCLUDE_PATH="${1}:${C_INCLUDE_PATH}" fi - export PATH="$PATH:$name" fi } #}}} -libpathprepend(){ #{{{ - if [ -d "$1" ]; then - if [ -z $LD_LIBRARY_PATH ]; then - export LD_LIBRARY_PATH="$1" - elif [[ ":$LD_LIBRARY_PATH:" != *":$1:"* ]]; then - export LD_LIBRARY_PATH="$1:$LD_LIBRARY_PATH" +\ +cpath_append(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $CPATH ]; then + export CPATH="${1}" + elif [[ ":${CPATH}:" != *":${1}:"* ]]; then + export CPATH="${CPATH}:${1}" fi - if [ -z $LD_RUN_PATH ]; then - export LD_RUN_PATH="$1" - elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then - export LD_RUN_PATH="$1:$LD_RUN_PATH" + fi +} #}}} +cpath_prepend(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $CPATH ]; then + export CPATH="${1}" + elif [[ ":${CPATH}:" != *":${1}:"* ]]; then + export CPATH="${1}:${CPATH}" fi fi } #}}} -libpathappend(){ #{{{ - if [ -d "$1" ]; then - if [ -z $LD_LIBRARY_PATH ]; then - export LD_LIBRARY_PATH=$1 - elif [[ ":$LD_LIBRARY_PATH:" != *":$1:"* ]]; then - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$1" + +cplus_include_path_append(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $CPLUS_INCLUDE_PATH ]; then + export CPLUS_INCLUDE_PATH="${1}" + elif [[ ":${CPLUS_INCLUDE_PATH}:" != *":${1}:"* ]]; then + export CPLUS_INCLUDE_PATH="${CPLUS_INCLUDE_PATH}:${1}" fi - if [ -z $LD_RUN_PATH ]; then - export LD_RUN_PATH=$1 - elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then - export LD_RUN_PATH="$LD_RUN_PATH:$1" + fi +} #}}} +cplus_include_path_prepend(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $CPLUS_INCLUDE_PATH ]; then + export CPLUS_INCLUDE_PATH="${1}" + elif [[ ":${CPLUS_INCLUDE_PATH}:" != *":${1}:"* ]]; then + export CPLUS_INCLUDE_PATH="${1}:${CPLUS_INCLUDE_PATH}" fi fi } #}}} -dylibpathprepend(){ #{{{ - if [ -d "$1" ]; then + +dyld_library_path_append(){ #{{{ + if [ -d "${1}" ]; then if [ -z $DYLD_LIBRARY_PATH ]; then - export DYLD_LIBRARY_PATH=$1 - elif [[ ":$DYLD_LIBRARY_PATH:" != *":$1:"* ]]; then - export DYLD_LIBRARY_PATH="$1:$DYLD_LIBRARY_PATH" + export DYLD_LIBRARY_PATH="${1}" + elif [[ ":${DYLD_LIBRARY_PATH}:" != *":${1}:"* ]]; then + export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}:${1}" fi if [ -z $LD_RUN_PATH ]; then export LD_RUN_PATH=$1 - elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then - export LD_RUN_PATH="$1:$LD_RUN_PATH" + elif [[ ":${LD_RUN_PATH}:" != *":${1}:"* ]]; then + export LD_RUN_PATH="${LD_RUN_PATH}:${1}" fi fi } #}}} -dylibpathappend(){ #{{{ - if [ -d "$1" ]; then +dyld_library_path_prepend(){ #{{{ + if [ -d "${1}" ]; then if [ -z $DYLD_LIBRARY_PATH ]; then - export DYLD_LIBRARY_PATH=$1 - elif [[ ":$DYLD_LIBRARY_PATH:" != *":$1:"* ]]; then - export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:$1" + export DYLD_LIBRARY_PATH="${1}" + elif [[ ":${DYLD_LIBRARY_PATH}:" != *":${1}:"* ]]; then + export DYLD_LIBRARY_PATH="${1}:${DYLD_LIBRARY_PATH}" fi if [ -z $LD_RUN_PATH ]; then - export LD_RUN_PATH=$1 - elif [[ ":$LD_RUN_PATH:" != *":$1:"* ]]; then - export LD_RUN_PATH="$LD_RUN_PATH:$1" + export LD_RUN_PATH="${1}" + elif [[ ":${LD_RUN_PATH}:" != *":${1}:"* ]]; then + export LD_RUN_PATH="${1}:${LD_RUN_PATH}" fi fi } #}}} -# FIXME: during installation packages are installed one by one but -# environment.sh was sourced before so new packages are NOT in the path. May +ld_library_path_append(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $LD_LIBRARY_PATH ]; then + export LD_LIBRARY_PATH="${1}" + elif [[ ":${LD_LIBRARY_PATH}:" != *":${1}:"* ]]; then + export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${1}" + fi + if [ -z $LD_RUN_PATH ]; then + export LD_RUN_PATH="${1}" + elif [[ ":${LD_RUN_PATH}:" != *":$1:"* ]]; then + export LD_RUN_PATH="${LD_RUN_PATH}:${1}" + fi + fi +} #}}} +ld_library_path_prepend(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $LD_LIBRARY_PATH ]; then + export LD_LIBRARY_PATH="${1}" + elif [[ ":${LD_LIBRARY_PATH}:" != *":${1}:"* ]]; then + export LD_LIBRARY_PATH="${1}:${LD_LIBRARY_PATH}" + fi + if [ -z $LD_RUN_PATH ]; then + export LD_RUN_PATH="${1}" + elif [[ ":${LD_RUN_PATH}:" != *":${1}:"* ]]; then + export LD_RUN_PATH="${1}:${LD_RUN_PATH}" + fi + fi +} #}}} + +library_path_append(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $LIBRARY_PATH ]; then + export LIBRARY_PATH="${1}" + elif [[ ":${LIBRARY_PATH}:" != *":$1:"* ]]; then + export LIBRARY_PATH="${LIBRARY_PATH}:${1}" + fi + fi +} #}}} +library_path_prepend(){ #{{{ + if [ -d "${1}" ]; then + if [ -z $LIBRARY_PATH ]; then + export LIBRARY_PATH="${1}" + elif [[ ":${LIBRARY_PATH}:" != *":$1:"* ]]; then + export LIBRARY_PATH="${1}:${LIBRARY_PATH}" + fi + fi +} #}}} + +path_append(){ #{{{ + if [ -d "${1}" ] && [[ ":${PATH}:" != *":${1}:"* ]]; then + path="${1}" + if [[ "${ISSM_ARCH}" == "cygwin-intel" ]]; then + path=`cygpath -u "${1}"` + fi + export PATH="${PATH}:${path}" + fi +} #}}} +path_prepend(){ #{{{ + if [ -d "${1}" ] && [[ ":${PATH}:" != *":${1}:"* ]]; then + path="${1}" + if [[ "${ISSM_ARCH}" == "cygwin-intel" ]]; then + path=`cygpath -u "${1}"` + fi + export PATH="${path}:${PATH}" + fi +} #}}} + +# FIXME: during installation packages are installed one by one but +# environment.sh was sourced before so new packages are NOT in the path. May # source environment.sh again with: # if [ -z $(echo "$PATH" | grep "$MATLAB_DIR") ]; then export $PATH...; fi @@ -94,98 +170,94 @@ fi # Load ISSM scripts -pathappend "$ISSM_DIR/scripts" +path_append "${ISSM_DIR}/scripts" -GMT_DIR="$ISSM_DIR/externalpackages/gmt/install" -if [ -d "$GMT_DIR" ]; then - export GMT_DIR - pathprepend "$GMT_DIR/bin" - libpathappend "$GMT_DIR/lib" +SVN_DIR="${ISSM_DIR}/externalpackages/svn/install" +if [ -d "${SVN_DIR}" ]; then + path_prepend "${SVN_DIR}/bin" + ld_library_path_append "${SVN_DIR}/lib" fi -MPI_DIR="$ISSM_DIR/externalpackages/mpich/install" +GIT_DIR="${ISSM_DIR}/externalpackages/git/install" +if [ -d "${GIT_DIR}" ]; then + path_prepend "${GIT_DIR}/bin" +fi + +MPI_DIR="${ISSM_DIR}/externalpackages/mpich/install" if [ -d "$MPI_DIR" ]; then export MPI_DIR export MPI_INC_DIR="$MPI_DIR/include" - pathprepend "$MPI_DIR/bin" - libpathprepend "$MPI_DIR/lib" + path_prepend "$MPI_DIR/bin" + ld_library_path_prepend "$MPI_DIR/lib" fi -PETSC_DIR="$ISSM_DIR/externalpackages/petsc/install" +PETSC_DIR="${ISSM_DIR}/externalpackages/petsc/install" if [ -d "$PETSC_DIR" ]; then export PETSC_DIR - libpathappend "$PETSC_DIR/lib" + ld_library_path_append "$PETSC_DIR/lib" fi -SCOTCH_DIR="$ISSM_DIR/externalpackages/scotch/install" -libpathappend "$SCOTCH_DIR/lib" +SCOTCH_DIR="${ISSM_DIR}/externalpackages/scotch/install" +ld_library_path_append "$SCOTCH_DIR/lib" -SLEPC_DIR="$ISSM_DIR/externalpackages/slepc/install" -libpathappend "$SLEPC_DIR/lib" +SLEPC_DIR="${ISSM_DIR}/externalpackages/slepc/install" +ld_library_path_append "$SLEPC_DIR/lib" -TAO_DIR="$ISSM_DIR/externalpackages/tao/install" -libpathappend "$TAO_DIR/lib" +TAO_DIR="${ISSM_DIR}/externalpackages/tao/install" +ld_library_path_append "$TAO_DIR/lib" -DAKOTA_DIR="$ISSM_DIR/externalpackages/dakota/install" -pathappend "$DAKOTA_DIR/bin" -libpathappend "$DAKOTA_DIR/lib" -dylibpathprepend "$DAKOTA_DIR/lib" +DAKOTA_DIR="${ISSM_DIR}/externalpackages/dakota/install" +path_append "$DAKOTA_DIR/bin" +ld_library_path_append "$DAKOTA_DIR/lib" +dyld_library_path_prepend "$DAKOTA_DIR/lib" -DOXYGEN_DIR="$ISSM_DIR/externalpackages/doxygen/install" -pathprepend "$DOXYGEN_DIR/bin" +DOXYGEN_DIR="${ISSM_DIR}/externalpackages/doxygen/install" +path_prepend "$DOXYGEN_DIR/bin" -AUTOTOOLS_DIR="$ISSM_DIR/externalpackages/autotools/install" -pathprepend "$AUTOTOOLS_DIR/bin" +AUTOTOOLS_DIR="${ISSM_DIR}/externalpackages/autotools/install" +path_prepend "$AUTOTOOLS_DIR/bin" SDK_DIR="C:/MicrosoftVisualStudio 9.0/Microsoft Visual C++ 2008 Express Edition with SP1 - ENU" -pathappend "$SDK_DIR" +path_append "$SDK_DIR" -SSH_DIR="$ISSM_DIR/externalpackages/ssh" -pathappend "$SSH_DIR" +SSH_DIR="${ISSM_DIR}/externalpackages/ssh" +path_append "$SSH_DIR" -VALGRIND_DIR="$ISSM_DIR/externalpackages/valgrind/install" -pathprepend "$VALGRIND_DIR/bin" +VALGRIND_DIR="${ISSM_DIR}/externalpackages/valgrind/install" +path_prepend "$VALGRIND_DIR/bin" -NCO_DIR="$ISSM_DIR/externalpackages/nco/install/bin" -pathprepend "$NCO_DIR/bin" +NCO_DIR="${ISSM_DIR}/externalpackages/nco/install/bin" +path_prepend "$NCO_DIR/bin" -CPPCHECK_DIR="$ISSM_DIR/externalpackages/cppcheck/install" -pathappend "$CPPCHECK_DIR/bin" +CPPCHECK_DIR="${ISSM_DIR}/externalpackages/cppcheck/install" +path_append "$CPPCHECK_DIR/bin" -GDAL_DIR="$ISSM_DIR/externalpackages/gdal/install" -pathprepend "$GDAL_DIR/bin" -libpathappend "$GDAL_DIR/lib" - -PROJ4_DIR="$ISSM_DIR/externalpackages/proj.4/install" -dylibpathprepend "$PROJ4_DIR/lib" -libpathprepend "$PROJ4_DIR/lib" - -MERCURIAL_DIR="$ISSM_DIR/externalpackages/mercurial/install" +MERCURIAL_DIR="${ISSM_DIR}/externalpackages/mercurial/install" if [ -d "$MERCURIAL_DIR" ]; then export PYTHONPATH="$PYTHONPATH:$MERCURIAL_DIR/mercurial/pure/" - pathappend "$MERCURIAL_DIR" + path_append "$MERCURIAL_DIR" fi -BOOST_DIR="$ISSM_DIR/externalpackages/boost/install" -BOOSTROOT="$ISSM_DIR/externalpackages/boost/install" +BOOST_DIR="${ISSM_DIR}/externalpackages/boost/install" +BOOSTROOT="${ISSM_DIR}/externalpackages/boost/install" if [ -d "$BOOST_DIR" ]; then export BOOSTROOT export BOOST_DIR - libpathprepend "$BOOST_DIR/lib" - dylibpathprepend "$BOOST_DIR/lib" - pathprepend "$BOOST_DIR/bin" + ld_library_path_prepend "$BOOST_DIR/lib" + dyld_library_path_prepend "$BOOST_DIR/lib" + path_prepend "$BOOST_DIR/bin" fi -XERCESROOT="$ISSM_DIR/externalpackages/xerces/install" -XERCESCROOT="$ISSM_DIR/externalpackages/xerces/src" +XERCESROOT="${ISSM_DIR}/externalpackages/xerces/install" +XERCESCROOT="${ISSM_DIR}/externalpackages/xerces/src" if [ -d "$XERCESROOT" ]; then - export XERCESROOT + export XERCESROOT export XERCESCROOT fi -XAIF_DIR="$ISSM_DIR/externalpackages/xaifbooster/xaifBooster" -XAIFBOOSTERROOT="$ISSM_DIR/externalpackages/xaifbooster/" -XAIFBOOSTER_HOME="$ISSM_DIR/externalpackages/xaifbooster/xaifBooster" +XAIF_DIR="${ISSM_DIR}/externalpackages/xaifbooster/xaifBooster" +XAIFBOOSTERROOT="${ISSM_DIR}/externalpackages/xaifbooster/" +XAIFBOOSTER_HOME="${ISSM_DIR}/externalpackages/xaifbooster/xaifBooster" PLATFORM="x86-Linux" if [ -d "$XAIF_DIR" ]; then export XAIFBOOSTERROOT @@ -194,157 +266,176 @@ export PLATFORM fi -ANGELROOT="$ISSM_DIR/externalpackages/angel/angel" +ANGELROOT="${ISSM_DIR}/externalpackages/angel/angel" if [ -d "$ANGELROOT" ]; then export ANGELROOT fi -OPENANALYSISROOT="$ISSM_DIR/externalpackages/openanalysis/install" +OPENANALYSISROOT="${ISSM_DIR}/externalpackages/openanalysis/install" if [ -d "$OPENANALYSISROOT" ]; then export OPENANALYSISROOT - libpathappend "$OPENANALYSISROOT/lib" + ld_library_path_append "$OPENANALYSISROOT/lib" fi JVM_DIR="/usr/local/gcc/4.3.2/lib64/gcj-4.3.2-9/" -libpathappend "$JVM_DIR" +ld_library_path_append "$JVM_DIR" -BBFTP_DIR="$ISSM_DIR/externalpackages/bbftp/install" -pathappend "$BBFTP_DIR/bin" +BBFTP_DIR="${ISSM_DIR}/externalpackages/bbftp/install" +path_append "$BBFTP_DIR/bin" -ADIC_DIR="$ISSM_DIR/externalpackages/adic/install" -pathappend "$ADIC_DIR/bin" -libpathappend "$ADIC_DIR/lib" +ADIC_DIR="${ISSM_DIR}/externalpackages/adic/install" +path_append "$ADIC_DIR/bin" +ld_library_path_append "$ADIC_DIR/lib" -COLPACK_DIR="$ISSM_DIR/externalpackages/colpack/install" -libpathappend "$COLPACK_DIR/lib" +COLPACK_DIR="${ISSM_DIR}/externalpackages/colpack/install" +ld_library_path_append "$COLPACK_DIR/lib" -ECLIPSE_DIR="$ISSM_DIR/externalpackages/eclipse/install" -pathappend "$ECLIPSE_DIR" +ECLIPSE_DIR="${ISSM_DIR}/externalpackages/eclipse/install" +path_append "$ECLIPSE_DIR" -APPSCAN_DIR="$ISSM_DIR/externalpackages/appscan/install" -pathappend "$APPSCAN_DIR/bin" +APPSCAN_DIR="${ISSM_DIR}/externalpackages/appscan/install" +path_append "$APPSCAN_DIR/bin" -RATS_DIR="$ISSM_DIR/externalpackages/rats/install" -pathappend "$RATS_DIR/bin" +RATS_DIR="${ISSM_DIR}/externalpackages/rats/install" +path_append "$RATS_DIR/bin" -DYSON_DIR="$ISSM_DIR/externalpackages/dyson/" -pathappend "$DYSON_DIR" +DYSON_DIR="${ISSM_DIR}/externalpackages/dyson/" +path_append "$DYSON_DIR" -CMAKE_DIR="$ISSM_DIR/externalpackages/cmake/install" -pathprepend "$CMAKE_DIR/bin" +CMAKE_DIR="${ISSM_DIR}/externalpackages/cmake/install" +path_prepend "$CMAKE_DIR/bin" -SHAPELIB_DIR="$ISSM_DIR/externalpackages/shapelib/install" -pathappend "$SHAPELIB_DIR/exec" +SHAPELIB_DIR="${ISSM_DIR}/externalpackages/shapelib/install" +path_append "$SHAPELIB_DIR/exec" -CCCL_DIR="$ISSM_DIR/externalpackages/cccl/install" -pathappend "$CCCL_DIR/bin" +CCCL_DIR="${ISSM_DIR}/externalpackages/cccl/install" +path_append "$CCCL_DIR/bin" -PACKAGEMAKER_DIR="$ISSM_DIR/externalpackages/packagemaker/install" -pathappend "$PACKAGEMAKER_DIR" +PACKAGEMAKER_DIR="${ISSM_DIR}/externalpackages/packagemaker/install" +path_append "$PACKAGEMAKER_DIR" #android-dev-dir -export ANDROID_DIR="$ISSM_DIR/externalpackages/android" +export ANDROID_DIR="${ISSM_DIR}/externalpackages/android" export ANDROID_NDK_DIR="$ANDROID_DIR/android-ndk/install" -pathappend "$ANDROID_NDK_DIR/arm-linux-android-install/bin" +path_append "$ANDROID_NDK_DIR/arm-linux-android-install/bin" export ANDROID_SDK_DIR="$ANDROID_DIR/android-sdk/install" -pathappend "$ANDROID_SDK_DIR/" +path_append "$ANDROID_SDK_DIR/" -GSL_DIR="$ISSM_DIR/externalpackages/gsl/install" -libpathappend "$GSL_DIR/lib" +GSL_DIR="${ISSM_DIR}/externalpackages/gsl/install" +ld_library_path_append "$GSL_DIR/lib" -GMAKE_DIR="$ISSM_DIR/externalpackages/gmake/install" -pathprepend "$GMAKE_DIR/bin" +GMAKE_DIR="${ISSM_DIR}/externalpackages/gmake/install" +path_prepend "$GMAKE_DIR/bin" -MODELE_DIR="$ISSM_DIR/externalpackages/modelE/install" -pathappend "$MODELE_DIR/src/exec" +MODELE_DIR="${ISSM_DIR}/externalpackages/modelE/install" +path_append "$MODELE_DIR/src/exec" -GIT_DIR="$ISSM_DIR/externalpackages/git/install" -pathprepend "$GIT_DIR/bin" +NCVIEW_DIR="${ISSM_DIR}/externalpackages/ncview/install" +path_append "$NCVIEW_DIR" -NCVIEW_DIR="$ISSM_DIR/externalpackages/ncview/install" -pathappend "$NCVIEW_DIR" +TCLX_DIR="${ISSM_DIR}/externalpackages/tclx/install/lib/tclx8.4" +ld_library_path_append "$TCLX_DIR" -TCLX_DIR="$ISSM_DIR/externalpackages/tclx/install/lib/tclx8.4" -libpathappend "$TCLX_DIR" +ASPELL_DIR="${ISSM_DIR}/externalpackages/aspell/install" +path_append "$ASPELL_DIR/bin" -ASPELL_DIR="$ISSM_DIR/externalpackages/aspell/install" -pathappend "$ASPELL_DIR/bin" +HDF5_DIR="${ISSM_DIR}/externalpackages/hdf5/install" +if [ -d "${HDF5_DIR}" ]; then + c_include_path_append "${C_INCLUDE_PATH}:${HDF5_DIR}/include" + library_path_append "${LIBRARY_PATH}:${HDF5_DIR}/lib" + dyld_library_path_append "${HDF5_DIR}/lib" + ld_library_path_append "${HDF5_DIR}/lib" +fi -HDF5_DIR="$ISSM_DIR/externalpackages/hdf5/install" -dylibpathappend "$HDF5_DIR/lib" -libpathappend "$HDF5_DIR/lib" -if [ -d "$HDF5_DIR" ]; then - export LIBRARY_PATH="$LIBRARY_PATH:$HDF5_DIR/lib" - export C_INCLUDE_PATH="$C_INCLUDE_PATH:$HDF5_DIR/include" +NETCDF_DIR="${ISSM_DIR}/externalpackages/netcdf/install" +if [ -d "${NETCDF_DIR}" ]; then + c_include_path_append "${C_INCLUDE_PATH}:${NETCDF_DIR}/include" + library_path_append "${LIBRARY_PATH}:${NETCDF_DIR}/lib" + path_append "${NETCDF_DIR}/bin" + dyld_library_path_append "${NETCDF_DIR}/lib" + ld_library_path_append "${NETCDF_DIR}/lib" fi -NETCDF_DIR="$ISSM_DIR/externalpackages/netcdf/install" -pathappend "$NETCDF_DIR/bin" -dylibpathappend "$NETCDF_DIR/lib" -libpathappend "$NETCDF_DIR/lib" -if [ -d "$NETCDF_DIR" ]; then - export LIBRARY_PATH="$LIBRARY_PATH:$NETCDF_DIR/lib" - dylibpathappend "$NETCDF_DIR/lib" - libpathappend "$NETCDF_DIR/lib" - export C_INCLUDE_PATH="$C_INCLUDE_PATH:$NETCDF_DIR/include" +NETCDF_CXX_DIR="${ISSM_DIR}/externalpackages/netcdf-cxx/install" +if [ -d "${NETCDF_CXX_DIR}" ]; then + ld_library_path_append "${NETCDF_CXX_DIR}/lib" fi -NETCDF_CXX_DIR="$ISSM_DIR/externalpackages/netcdf-cxx/install" -libpathappend "$NETCDF_CXX_DIR/lib" +SQLITE_DIR="${ISSM_DIR}/externalpackages/sqlite/install" +if [ -d "${SQLITE_DIR}" ]; then + path_append "${SQLITE_DIR}/bin" + ld_library_path_append "${SQLITE_DIR}/lib" +fi -SVN_DIR="$ISSM_DIR/externalpackages/svn/install" -pathprepend "$SVN_DIR/bin" -libpathappend "$SVN_DIR/lib" +PROJ4_DIR="${ISSM_DIR}/externalpackages/proj.4/install" +if [ -d "${PROJ4_DIR}" ]; then + dyld_library_path_prepend "${PROJ4_DIR}/lib" + ld_library_path_prepend "${PROJ4_DIR}/lib" +fi -CVS_DIR="$ISSM_DIR/externalpackages/cvs/install" -pathprepend "$CVS_DIR/bin" +PROJ_DIR="${ISSM_DIR}/externalpackages/proj/install" +if [ -d "${PROJ_DIR}" ]; then + dyld_library_path_prepend "${PROJ_DIR}/lib" + ld_library_path_prepend "${PROJ_DIR}/lib" +fi -APR_DIR="$ISSM_DIR/externalpackages/apr/install" -pathappend "$APR_DIR/bin" -libpathappend "$APR_DIR/lib" +GDAL_DIR="${ISSM_DIR}/externalpackages/gdal/install" +if [ -d "${GDAL_DIR}" ]; then + path_prepend "${GDAL_DIR}/bin" + ld_library_path_append "${GDAL_DIR}/lib" +fi -APR_UTIL_DIR="$ISSM_DIR/externalpackages/apr-util/install" -pathappend "$APR_UTIL_DIR/bin:$PATH" -libpathappend "$APR_UTIL_DIR/lib" +GMT_DIR="${ISSM_DIR}/externalpackages/gmt/install" +if [ -d "${GMT_DIR}" ]; then + export GMT_DIR + path_prepend "${GMT_DIR}/bin" + ld_library_path_append "${GMT_DIR}/lib" +fi -SQLITE_DIR="$ISSM_DIR/externalpackages/sqlite/install" -pathappend "$SQLITE_DIR/bin" -libpathappend "$SQLITE_DIR/lib" +GMSH_DIR="${ISSM_DIR}/externalpackages/gmsh/install" +if [ -d "${GMSH_DIR}" ]; then + path_append "${ISSM_DIR}/externalpackages/gmsh/install" +fi -YAMS_DIR="$ISSM_DIR/externalpackages/yams/install" -pathappend "$YAMS_DIR" +CVS_DIR="${ISSM_DIR}/externalpackages/cvs/install" +path_prepend "$CVS_DIR/bin" -SWIG_DIR="$ISSM_DIR/externalpackages/swig/install" -pathappend "$SWIG_DIR" +APR_DIR="${ISSM_DIR}/externalpackages/apr/install" +path_append "$APR_DIR/bin" +ld_library_path_append "$APR_DIR/lib" +APR_UTIL_DIR="${ISSM_DIR}/externalpackages/apr-util/install" +path_append "$APR_UTIL_DIR/bin:$PATH" +ld_library_path_append "$APR_UTIL_DIR/lib" + +YAMS_DIR="${ISSM_DIR}/externalpackages/yams/install" +path_append "$YAMS_DIR" + +SWIG_DIR="${ISSM_DIR}/externalpackages/swig/install" +path_append "$SWIG_DIR" + #AUX-CONFIG -pathappend "$ISSM_DIR/aux-config" +path_append "${ISSM_DIR}/aux-config" #INISHELL -pathappend "$ISSM_DIR/externalpackages/inishell/install" +path_append "${ISSM_DIR}/externalpackages/inishell/install" #SHELL2JUNIT -pathappend "$ISSM_DIR/externalpackages/shell2junit/install" +path_append "${ISSM_DIR}/externalpackages/shell2junit/install" #EXPAT -libpathprepend "$ISSM_DIR/externalpackages/expat/install" -dylibpathprepend "$ISSM_DIR/externalpackages/expat/install" +ld_library_path_prepend "${ISSM_DIR}/externalpackages/expat/install" +dyld_library_path_prepend "${ISSM_DIR}/externalpackages/expat/install" -#GMSH -pathappend "$ISSM_DIR/externalpackages/gmsh/install" - #CURL -libpathprepend "$ISSM_DIR/externalpackages/curl/install/lib" -dylibpathprepend "$ISSM_DIR/externalpackages/curl/install/lib" -pathprepend "$ISSM_DIR/externalpackages/curl/install/bin" +ld_library_path_prepend "${ISSM_DIR}/externalpackages/curl/install/lib" +dyld_library_path_prepend "${ISSM_DIR}/externalpackages/curl/install/lib" +path_prepend "${ISSM_DIR}/externalpackages/curl/install/bin" -#GMT -pathprepend "$ISSM_DIR/externalpackages/gmt/install/bin" - #NEOPZ -NEOPZ_DIR="$ISSM_DIR/externalpackages/neopz/install" +NEOPZ_DIR="${ISSM_DIR}/externalpackages/neopz/install" if [ -d "$NEOPZ_DIR" ]; then export REFPATTERNDIR="$NEOPZ_DIR/include/refpatterns" fi Index: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh =================================================================== --- ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh (nonexistent) +++ ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh (revision 24321) @@ -0,0 +1,41 @@ +#!/bin/bash +set -eu + + +# Constants +# +VER="6.2.1" + +## Environnment +# +export SQLITE3_LIBS="-lsqlite3" # SQLite3 ships with macOS + +# Cleanup +rm -rf install src +mkdir install src + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/proj-${VER}.tar.gz" "proj-${VER}.tar.gz" + +# Unpack source +tar -zxvf proj-$VER.tar.gz + +# Move source into 'src' directory +mv proj-$VER/* src +rm -rf proj-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/proj/install" + +# Compile and install +if [ $# -eq 0 ]; then + make + make check + make install +else + make -j $1 + make -j $1 check + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64-with_tests.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh =================================================================== --- ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh (nonexistent) +++ ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh (revision 24321) @@ -0,0 +1,39 @@ +#!/bin/bash +set -eu + + +# Constants +# +VER="6.2.1" + +## Environnment +# +export SQLITE3_LIBS="-lsqlite3" # SQLite3 ships with macOS + +# Cleanup +rm -rf install src +mkdir install src + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/proj-${VER}.tar.gz" "proj-${VER}.tar.gz" + +# Unpack source +tar -zxvf proj-$VER.tar.gz + +# Move source into 'src' directory +mv proj-$VER/* src +rm -rf proj-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/proj/install" + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/proj/install-6.2-macOS_64.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh =================================================================== --- ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh (nonexistent) +++ ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh (revision 24321) @@ -0,0 +1,43 @@ +#!/bin/bash +set -eu + + +# Constants +# +VER="1.10.5" + +## Environnment +# +export CC=mpicc + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz" + +# Untar source +tar -zxvf hdf5-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv hdf5-$VER/* src/ +rm -rf hdf5-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/hdf5/install" \ + --enable-parallel + +# Compile, test, and install +# +if [ $# -eq 0 ]; then + make + make check + make install +else + make -j $1 + make -j $1 check + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel-with_tests.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh =================================================================== --- ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh (nonexistent) +++ ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh (revision 24321) @@ -0,0 +1,41 @@ +#!/bin/bash +set -eu + + +# Constants +# +VER="1.10.5" + +## Environnment +# +export CC=mpicc + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz" + +# Untar source +tar -zxvf hdf5-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv hdf5-$VER/* src/ +rm -rf hdf5-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/hdf5/install" \ + --enable-parallel + +# Compile and install +# +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10-parallel.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh =================================================================== --- ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh (nonexistent) +++ ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh (revision 24321) @@ -0,0 +1,38 @@ +#!/bin/bash +set -eu + + +## Constants +# +VER="1.10.5" + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz" + +# Untar source +tar -zxvf hdf5-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv hdf5-$VER/* src/ +rm -rf hdf5-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/hdf5/install" + +# Compile, test, and install +# +if [ $# -eq 0 ]; then + make + make check + make install +else + make -j $1 + make -j $1 check + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10-with_tests.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/hdf5/install-1.10.sh =================================================================== --- ../trunk-jpl/externalpackages/hdf5/install-1.10.sh (nonexistent) +++ ../trunk-jpl/externalpackages/hdf5/install-1.10.sh (revision 24321) @@ -0,0 +1,36 @@ +#!/bin/bash +set -eu + + +## Constants +# +VER="1.10.5" + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/hdf5-${VER}.tar.gz" "hdf5-${VER}.tar.gz" + +# Untar source +tar -zxvf hdf5-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv hdf5-$VER/* src/ +rm -rf hdf5-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/hdf5/install" + +# Compile and install +# +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/hdf5/install-1.10.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh =================================================================== --- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh (nonexistent) +++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh (revision 24321) @@ -0,0 +1,44 @@ +#!/bin/bash +set -eu + + +## TODO +# - May want to supply path to Python instead of, effectively, using result of `which python` +# + +## Constants +# +VER="3.0.2" +PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install" + +# Cleanup +rm -rf install src +mkdir install src + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz" + +# Unpack source +tar -zxvf gdal-$VER.tar.gz + +# Move source into 'src' directory +mv gdal-$VER/* src +rm -rf gdal-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/gdal/install" \ + --with-python \ + --without-hdf5 \ + --without-netcdf \ + --with-proj="${PROJ_ROOT}" + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh =================================================================== --- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh (nonexistent) +++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh (revision 24321) @@ -0,0 +1,42 @@ +#!/bin/bash +set -eu + + +## TODO +# - May want to supply path to Python instead of, effectively, using result of `which python` +# + +## Constants +# +VER="3.0.2" +PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install" + +# Cleanup +rm -rf install src +mkdir install src + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz" + +# Unpack source +tar -zxvf gdal-$VER.tar.gz + +# Move source into 'src' directory +mv gdal-$VER/* src +rm -rf gdal-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/gdal/install" \ + --with-python \ + --with-proj="${PROJ_ROOT}" + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-python-netcdf.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh =================================================================== --- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh (nonexistent) +++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh (revision 24321) @@ -0,0 +1,39 @@ +#!/bin/bash +set -eu + + +# Constants +# +VER="3.0.2" +PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install" + +# Cleanup +rm -rf install src +mkdir install src + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz" + +# Unpack source +tar -zxvf gdal-$VER.tar.gz + +# Move source into 'src' directory +mv gdal-$VER/* src +rm -rf gdal-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/gdal/install" \ + --without-hdf5 \ + --without-netcdf \ + --with-proj="${PROJ_ROOT}" + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh =================================================================== --- ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh (nonexistent) +++ ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh (revision 24321) @@ -0,0 +1,37 @@ +#!/bin/bash +set -eu + + +# Constants +# +VER="3.0.2" +PROJ_ROOT="${ISSM_DIR}/externalpackages/proj/install" + +# Cleanup +rm -rf install src +mkdir install src + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "http://issm.jpl.nasa.gov/files/externalpackages/gdal-${VER}.tar.gz" "gdal-${VER}.tar.gz" + +# Unpack source +tar -zxvf gdal-$VER.tar.gz + +# Move source into 'src' directory +mv gdal-$VER/* src +rm -rf gdal-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/gdal/install" \ + --with-proj="${PROJ_ROOT}" + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/gdal/install-3.0-macOS_64-netcdf.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh =================================================================== --- ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh (nonexistent) +++ ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh (revision 24321) @@ -0,0 +1,39 @@ +#!/bin/bash +set -eu + + +## Constants +# +VER="3.3" + +# Cleanup +rm -rf src install +mkdir src install + +#Download from ISSM server +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/mpich-${VER}.tar.gz" "mpich-${VER}.tar.gz" + +# Unpack source +tar -zxvf mpich-$VER.tar.gz + +# Move source into 'src' directory +mv mpich-$VER/* src +rm -rf mpich-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/mpich/install" \ + --enable-shared + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi + +# Return to initial directory +cd .. Property changes on: ../trunk-jpl/externalpackages/mpich/install-3.3-macOS_64.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/netcdf/install-4.7.sh =================================================================== --- ../trunk-jpl/externalpackages/netcdf/install-4.7.sh (nonexistent) +++ ../trunk-jpl/externalpackages/netcdf/install-4.7.sh (revision 24321) @@ -0,0 +1,50 @@ +#!/bin/bash +set -eu + + +# Dependencies +# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support) +# - zlib (1.2.5 or later, for netCDF-4 compression) +# - curl (7.18.0 or later, for DAP remote access client support) +# +# For most ISSM installations, only hdf5 will be necessary +# + +# Constants +# +VER="4.7.2" +HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install" + +# Environment +# +export CPPFLAGS="-I${HDF5_ROOT}/include" +export LDFLAGS="-L${HDF5_ROOT}/lib" + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz" + +# Unpack source +tar -zxvf netcdf-c-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv netcdf-c-$VER/* src/ +rm -rf netcdf-c-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \ + --disable-doxygen + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh =================================================================== --- ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh (nonexistent) +++ ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh (revision 24321) @@ -0,0 +1,56 @@ +#!/bin/bash +set -eu + + +# Dependencies +# - MPI implementation (for parallel I/O support) +# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support) +# - zlib (1.2.5 or later, for netCDF-4 compression) +# - curl (7.18.0 or later, for DAP remote access client support) +# +# For most ISSM installations, only hdf5 will be necessary +# + +# Constants +# +VER="4.7.2" +HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install" + +# Environment +# +export CC=mpicc +export CPPFLAGS="-I${HDF5_ROOT}/include" +export LDFLAGS="-L${HDF5_ROOT}/lib" + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz" + +# Unpack source +tar -zxvf netcdf-c-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv netcdf-c-$VER/* src/ +rm -rf netcdf-c-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \ + --disbable-shared \ + --enable-parallel-tests \ + --disable-doxygen + +# Compile, test, and install +if [ $# -eq 0 ]; then + make + make check + make install +else + make -j $1 + make -j $1 check + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel-with_tests.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh =================================================================== --- ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh (nonexistent) +++ ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh (revision 24321) @@ -0,0 +1,53 @@ +#!/bin/bash +set -eu + + +# Dependencies +# - MPI implementation (for parallel I/O support) +# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support) +# - zlib (1.2.5 or later, for netCDF-4 compression) +# - curl (7.18.0 or later, for DAP remote access client support) +# +# For most ISSM installations, only hdf5 will be necessary +# + +# Constants +# +VER="4.7.2" +HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install" + +# Environment +# +export CC=mpicc +export CPPFLAGS="-I${HDF5_ROOT}/include" +export LDFLAGS="-L${HDF5_ROOT}/lib" + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz" + +# Unpack source +tar -zxvf netcdf-c-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv netcdf-c-$VER/* src/ +rm -rf netcdf-c-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \ + --disbable-shared \ + --disable-doxygen + +# Compile and install +if [ $# -eq 0 ]; then + make + make install +else + make -j $1 + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7-parallel.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh =================================================================== --- ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh (nonexistent) +++ ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh (revision 24321) @@ -0,0 +1,52 @@ +#!/bin/bash +set -eu + + +# Dependencies +# - hdf5 (1.8.9 / 1.10.1 or later, for netCDF-4 support) +# - zlib (1.2.5 or later, for netCDF-4 compression) +# - curl (7.18.0 or later, for DAP remote access client support) +# +# For most ISSM installations, only hdf5 will be necessary +# + +# Constants +# +VER="4.7.2" +HDF5_ROOT="${ISSM_DIR}/externalpackages/hdf5/install" + +# Environment +# +export CPPFLAGS="-I${HDF5_ROOT}/include" +export LDFLAGS="-L${HDF5_ROOT}/lib" + +# Download source +$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/netcdf-c-${VER}.tar.gz" "netcdf-c-${VER}.tar.gz" + +# Unpack source +tar -zxvf netcdf-c-$VER.tar.gz + +# Cleanup +rm -rf install src +mkdir install src + +# Move source to 'src' directory +mv netcdf-c-$VER/* src/ +rm -rf netcdf-c-$VER + +# Configure +cd src +./configure \ + --prefix="${ISSM_DIR}/externalpackages/netcdf/install" \ + --disable-doxygen + +# Compile, test, and install +if [ $# -eq 0 ]; then + make + make check + make install +else + make + make -j $1 check + make -j $1 install +fi Property changes on: ../trunk-jpl/externalpackages/netcdf/install-4.7-with_tests.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property