summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDenis Davydov <davydden@gmail.com>2016-05-12 08:59:17 +0200
committerDenis Davydov <davydden@gmail.com>2016-05-12 08:59:17 +0200
commit68c681bb788c86dc45c4df042f513fbf8a3e2c5f (patch)
treea5055fb644b3bceb30b635c7b4c566f88a8bf5f3 /lib
parente7ced54369583a72fc865834e4f7c209fb06f1c8 (diff)
downloadspack-68c681bb788c86dc45c4df042f513fbf8a3e2c5f.tar.gz
spack-68c681bb788c86dc45c4df042f513fbf8a3e2c5f.tar.bz2
spack-68c681bb788c86dc45c4df042f513fbf8a3e2c5f.tar.xz
spack-68c681bb788c86dc45c4df042f513fbf8a3e2c5f.zip
document blas and lapack usage in packages
Diffstat (limited to 'lib')
-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 650e0ee3b2..f7f39d0d7b 100644
--- a/lib/spack/docs/packaging_guide.rst
+++ b/lib/spack/docs/packaging_guide.rst
@@ -1994,6 +1994,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()``
~~~~~~~~~~~~~~~~~~~~~