summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2016-06-20 09:36:23 -0700
committerGitHub <noreply@github.com>2016-06-20 09:36:23 -0700
commit8bdb6695c7d7f723983c1ad8db1132694f9b3725 (patch)
tree1b27d1c73d09763c7fe67d4665b9b733301be6b7 /var
parentce105e9bbe53e08cd4a4df4a8be0769b930abf8a (diff)
parentcf4a34c657b05bfbb71ec69d1521f265a156de57 (diff)
downloadspack-8bdb6695c7d7f723983c1ad8db1132694f9b3725.tar.gz
spack-8bdb6695c7d7f723983c1ad8db1132694f9b3725.tar.bz2
spack-8bdb6695c7d7f723983c1ad8db1132694f9b3725.tar.xz
spack-8bdb6695c7d7f723983c1ad8db1132694f9b3725.zip
Merge pull request #1079 from davydden/pkg/blas_mpi_fortran
require fortran compilers for Openblas and Openmpi
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/openblas/package.py7
-rw-r--r--var/spack/repos/builtin/packages/openmpi/package.py7
2 files changed, 14 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/openblas/package.py b/var/spack/repos/builtin/packages/openblas/package.py
index 22e49daaa7..d09ebd6739 100644
--- a/var/spack/repos/builtin/packages/openblas/package.py
+++ b/var/spack/repos/builtin/packages/openblas/package.py
@@ -48,6 +48,13 @@ class Openblas(Package):
patch('make.patch')
def install(self, spec, prefix):
+ # As of 06/2016 there is no mechanism to specify that packages which
+ # depends on Blas/Lapack need C or/and Fortran symbols. For now
+ # require both.
+ if self.compiler.f77 is None:
+ raise InstallError('OpenBLAS requires both C and Fortran ',
+ 'compilers!')
+
# Configure fails to pick up fortran from FC=/abs/path/to/f77, but
# works fine with FC=/abs/path/to/gfortran.
# When mixing compilers make sure that
diff --git a/var/spack/repos/builtin/packages/openmpi/package.py b/var/spack/repos/builtin/packages/openmpi/package.py
index 0638628a6c..be3d1342fc 100644
--- a/var/spack/repos/builtin/packages/openmpi/package.py
+++ b/var/spack/repos/builtin/packages/openmpi/package.py
@@ -121,6 +121,13 @@ class Openmpi(Package):
return 'verbs'
def install(self, spec, prefix):
+ # As of 06/2016 there is no mechanism to specify that packages which
+ # depends on MPI need C or/and Fortran implementation. For now
+ # require both.
+ if (self.compiler.f77 is None) or (self.compiler.fc is None):
+ raise InstallError('OpenMPI requires both C and Fortran ',
+ 'compilers!')
+
config_args = ["--prefix=%s" % prefix,
"--with-hwloc=%s" % spec['hwloc'].prefix,
"--enable-shared",