#!/bin/sh
#$Id: set_mpi_dirs,v 1.3 2021/03/25 23:48:46 marcum Exp $
#FUNCTION

#*******************************************************************************
# Function to find and set OpenMPI library and include directories.
#*******************************************************************************

set_mpi_dirs ()
{
	mpi_include_dir=
	mpi_lib_dir=

	if [ "${base_arch_type}" = "WIN" ]; then
		return
	fi

	possible_dirs="/usr /usr/local /opt/local /usr/local/mpi/openmpi-*"

	for dir in ${possible_dirs}; do

		include_file=
		lib_file=

		include_dir="$dir/include"

		if [ -d "${include_dir}" ]; then

			include_file="`find -L ${include_dir}/ -name mpi\.h`"

			lib_dir="$dir/lib"

			if [ "${include_file}" ] && [ -d "${lib_dir}" ]; then

				lib_file="`find -L ${lib_dir}/ -name libmpi\.\* 2> /dev/null`"

				break
			fi
		fi
	done

	if [ "${include_file}" ] && [ "${lib_file}" ]; then

		for file in ${include_file}; do

			mpi_include_dir="`dirname ${file}`"

			if [ -d "${mpi_include_dir}" ]; then

				break
			fi
		done

		for file in ${lib_file}; do

			mpi_lib_dir="`dirname ${file}`"

			if [ -d "${mpi_lib_dir}" ]; then

				break
			fi
		done

		if [ -d "${mpi_include_dir}" ] && [ -d "${mpi_lib_dir}" ]; then

			mpi_libs="-L${mpi_lib_dir} -lmpi"
		else
			mpi_include_dir=
			mpi_libs=
		fi
	else
		mpi_include_dir=
		mpi_libs=
	fi
}
