summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2016-06-20 17:11:09 -0700
committerGitHub <noreply@github.com>2016-06-20 17:11:09 -0700
commitdb81a74d662e1bda9f4384e99088d15adf94261f (patch)
tree2d15690406051511c0cac0fe8964cb68c2fb21bf
parenta3431c5a733d104bc5a1ce72b5dcc9c012fe933c (diff)
parent68c681bb788c86dc45c4df042f513fbf8a3e2c5f (diff)
downloadspack-db81a74d662e1bda9f4384e99088d15adf94261f.tar.gz
spack-db81a74d662e1bda9f4384e99088d15adf94261f.tar.bz2
spack-db81a74d662e1bda9f4384e99088d15adf94261f.tar.xz
spack-db81a74d662e1bda9f4384e99088d15adf94261f.zip
Merge pull request #939 from davydden/docs/blas_lapack
document blas and lapack usage in packages
-rw-r--r--lib/spack/docs/packaging_guide.rst13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/spack/docs/packaging_guide.rst b/lib/spack/docs/packaging_guide.rst
index 1f83f611b0..54b886310a 100644
--- a/lib/spack/docs/packaging_guide.rst
+++ b/lib/spack/docs/packaging_guide.rst
@@ -1950,6 +1950,19 @@ instead of hard-coding ``join_path(self.spec['mpi'].prefix.bin, 'mpicc')`` for
the reasons outlined above.
+Blas and Lapack libraries
+~~~~~~~~~~~~~~~~~~~~~~~~~
+Different packages provide implementation of ``Blas`` and ``Lapack`` routines.
+The names of the resulting static and/or shared libraries differ from package
+to package. In order to make ``install()`` method indifferent to the
+choice of ``Blas`` implementation, each package which provides it
+sets up ``self.spec.blas_shared_lib`` and ``self.spec.blas_static_lib `` to
+point to the shared and static ``Blas`` libraries, respectively. The same
+applies to packages which provide ``Lapack``. Package developers are advised to
+use these variables, for example ``spec['blas'].blas_shared_lib`` instead of
+hard-coding ``join_path(spec['blas'].prefix.lib, 'libopenblas.so')``.
+
+
Forking ``install()``
~~~~~~~~~~~~~~~~~~~~~