# TODO: Change PROJ installation script to latest version once Jenkins macOS 
#		build node has been upgraded.
#

#--------------------#
# ISSM Configuration #
#--------------------#

MATLAB_PATH="/Applications/MATLAB_R2022b.app"

ISSM_CONFIG='\
	--prefix=${ISSM_DIR} \
	--disable-static \
	--enable-development \
	--enable-debugging \
	--with-numthreads=4 \
	--with-matlab-dir=${MATLAB_PATH} \
	--with-python-version=3.9 \
	--with-python-dir=/System/Volumes/Data/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9 \
	--with-python-numpy-dir=/Library/Python/3.9/site-packages/numpy/core/include/numpy \
	--with-fortran-lib="-L/usr/local/Cellar/gcc/12.2.0/lib/gcc/12 -lgfortran" \
	--with-mpi-include=${ISSM_DIR}/externalpackages/petsc/install/include \
	--with-mpi-libflags="-L${ISSM_DIR}/externalpackages/petsc/install/lib -lmpi -lmpicxx -lmpifort" \
	--with-blas-lapack-dir=${ISSM_DIR}/externalpackages/petsc/install \
	--with-metis-dir=${ISSM_DIR}/externalpackages/petsc/install \
	--with-parmetis-dir=${ISSM_DIR}/externalpackages/petsc/install \
	--with-scalapack-dir=${ISSM_DIR}/externalpackages/petsc/install \
	--with-mumps-dir=${ISSM_DIR}/externalpackages/petsc/install \
	--with-hdf5-dir=${ISSM_DIR}/externalpackages/hdf5/install \
	--with-petsc-dir=${ISSM_DIR}/externalpackages/petsc/install \
	--with-gsl-dir=${ISSM_DIR}/externalpackages/gsl/install \
	--with-boost-dir=${ISSM_DIR}/externalpackages/boost/install \
	--with-dakota-dir=${ISSM_DIR}/externalpackages/dakota/install \
	--with-proj-dir=${ISSM_DIR}/externalpackages/proj/install \
	--with-triangle-dir=${ISSM_DIR}/externalpackages/triangle/install \
	--with-chaco-dir=${ISSM_DIR}/externalpackages/chaco/install \
	--with-m1qn3-dir=${ISSM_DIR}/externalpackages/m1qn3/install \
	--with-semic-dir=${ISSM_DIR}/externalpackages/semic/install \
'

#-------------------#
# External Packages #
#-------------------#

#List of external packages to be installed and their installation scripts
EXTERNALPACKAGES="
	autotools	install-mac.sh
	cmake		install.sh
	petsc		install-3.14-mac.sh
	gsl			install.sh
	boost		install-1.7-mac.sh
	dakota		install-6.2-mac.sh
	curl		install-7-mac.sh
	hdf5		install-1-parallel.sh
	netcdf		install-4.7-parallel.sh
	proj		install-6.sh
	gdal		install-3-python.sh
	gshhg		install.sh
	gmt			install-6-mac.sh
	gmsh		install-4-mac.sh
	triangle	install-mac.sh
	chaco		install-mac.sh
	m1qn3		install.sh
	semic		install.sh
	shell2junit	install.sh
"

#---------#
# Testing #
#---------#

# Test suites
MATLAB_TEST=1
PYTHON_TEST=1
JAVASCRIPT_TEST=0
EXAMPLES_TEST=0

# Number of CPUs used in ISSM compilation
#
# NOTE: One is usually safer as some packages are very sensitive to parallel
# 		compilation
#
NUMCPUS_INSTALL=4

# Number of CPUs used in the nightly runs
NUMCPUS_RUN=2

# Nightly run options
#
# See documentation in test/NightlyRun/runme.* for more information.
#
# NOTE:
# - Excluding 2006 until it can be debugged (file I/O)
# - Excluding 2012 until it can be looked at by Eric ("FindParam error message: Parameter HydrologyModel not set")
# - Excluding 2091 until it can be debugged (resource starvation)
#
MATLAB_NROPTIONS="'benchmark','slc','exclude',[2004 2006 2012 2051 2052 2053 2085 2091 2424 2425]"
PYTHON_NROPTIONS="--benchmark slc --exclude 2004 2006 2012 2051 2052 2053 2085 2091 2424 2425"
