#!/bin/bash
set -eu


## Environment
#
CURL_ROOT="${ISSM_DIR}/externalpackages/curl/install"

## Constants
#
VER="6.0.0"

# Download source
$ISSM_DIR/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/gmt-${VER}.tar.gz" "gmt-${VER}.tar.gz"

# 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 custom configuration files
cp ./configs/6.0/linux/cmake/ConfigUser.cmake ./src/cmake

# Configure
cd src
mkdir build
cd build

# NOTE: There is a CMake variable named CURL_ROOT in src/cmake/ConfigUser.cmake
#		that, ostensibly, allows for supplying the path to curl when it is in a
#		a non-standard location. That said, newer versions of CMake will
#		ignore said variable and instead try to find curl itself. Passing in
#		the two options below overrides this behavior.
cmake \
	-DCURL_LIBRARY="${CURL_ROOT}/lib" \
	-DCURL_INCLUDE_DIR="${CURL_ROOT}/include" \
	..

# Compile and install
if [ $# -eq 0 ]; then
	make
	make install
else
	make -j $1
	make -j $1 install
fi
