ncl: Fix temp directory and depend on esmf (#5636)

* ncl: Fix temp directory

Currently, ncl is configured using a transient temp directory. This
leads to warnings such as this when executing ncl later on:

warning:"/tmp/ncl_ncar_xxxxxx" tmp dir does not exist or is not writable:
NCL functionality may be limited -- check TMPDIR environment variable

As this also breaks some functionality, use the system temp directory
instead (typically /tmp).

* ncl: Depend on esmf

esmf is required for some ncl scripts (such as ESMF_regridding.ncl).
This commit is contained in:
Michael Kuhn 2017-10-06 21:53:05 +02:00 committed by Christoph Junghans
parent b9d7903cdb
commit 4065ef2106

View file

@ -86,6 +86,9 @@ class Ncl(Package):
depends_on('hdf5+szip') depends_on('hdf5+szip')
depends_on('szip') depends_on('szip')
# ESMF is only required at runtime (for ESMF_regridding.ncl)
depends_on('esmf', type='run')
# In Spack, we also do not have an option to compile netcdf without DAP # In Spack, we also do not have an option to compile netcdf without DAP
# support, so we will tell the ncl configuration script that we have it. # support, so we will tell the ncl configuration script that we have it.
@ -186,7 +189,7 @@ def prepare_install_config(self):
# Parent installation directory : # Parent installation directory :
'\'' + self.spec.prefix + '\'\n', '\'' + self.spec.prefix + '\'\n',
# System temp space directory : # System temp space directory :
'\'' + tempfile.mkdtemp(prefix='ncl_ncar_') + '\'\n', '\'' + tempfile.gettempdir() + '\'\n',
# Build NetCDF4 feature support (optional)? # Build NetCDF4 feature support (optional)?
'y\n' 'y\n'
] ]