Skip to content
Snippets Groups Projects
Commit 38062a8a authored by Holly's avatar Holly Committed by Todd Gamblin
Browse files

docs: minor text changes (#8858)

parent de60e9d5
No related branches found
No related tags found
No related merge requests found
...@@ -36,7 +36,7 @@ Package repositories allow you to: ...@@ -36,7 +36,7 @@ Package repositories allow you to:
1. Maintain your own packages separately from Spack; 1. Maintain your own packages separately from Spack;
2. Share your packages (e.g. by hosting them in a shared file system), 2. Share your packages (e.g., by hosting them in a shared file system),
without committing them to the built-in Spack package repository; and without committing them to the built-in Spack package repository; and
3. Override built-in Spack packages with your own implementation. 3. Override built-in Spack packages with your own implementation.
...@@ -72,7 +72,7 @@ paths to repositories. Each path is on a separate line starting with ...@@ -72,7 +72,7 @@ paths to repositories. Each path is on a separate line starting with
- /opt/local-repo - /opt/local-repo
- $spack/var/spack/repos/builtin - $spack/var/spack/repos/builtin
When Spack interprets a spec, e.g. ``mpich`` in ``spack install mpich``, When Spack interprets a spec, e.g., ``mpich`` in ``spack install mpich``,
it searches these repositories in order (first to last) to resolve each it searches these repositories in order (first to last) to resolve each
package name. In this example, Spack will look for the following package name. In this example, Spack will look for the following
packages and use the first valid file: packages and use the first valid file:
...@@ -142,7 +142,7 @@ packages created by the Computation directorate might use ``llnl.comp``. ...@@ -142,7 +142,7 @@ packages created by the Computation directorate might use ``llnl.comp``.
Spack cannot ensure that every repository is named uniquely, but it will Spack cannot ensure that every repository is named uniquely, but it will
prevent you from registering two repositories with the same namespace at prevent you from registering two repositories with the same namespace at
the same time. If you try to add a repository that has the same name as the same time. If you try to add a repository that has the same name as
an existing one, e.g. ``builtin``, Spack will print a warning message. an existing one, e.g., ``builtin``, Spack will print a warning message.
.. _namespace-example: .. _namespace-example:
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
Tutorial: Spack 101 Tutorial: Spack 101
============================= =============================
This is a full day introduction to Spack with lectures and live demos. It This is a full-day introduction to Spack with lectures and live demos. It
was presented as a tutorial at `Supercomputing 2017 was presented as a tutorial at `Supercomputing 2017
<http://sc17.supercomputing.org>`_. You can use these materials to teach <http://sc17.supercomputing.org>`_. You can use these materials to teach
a course on Spack at your own site, or you can just skip ahead and read a course on Spack at your own site, or you can just skip ahead and read
......
...@@ -6,7 +6,7 @@ Advanced Topics in Packaging ...@@ -6,7 +6,7 @@ Advanced Topics in Packaging
Spack tries to automatically configure packages with information from Spack tries to automatically configure packages with information from
dependencies such that all you need to do is to list the dependencies dependencies such that all you need to do is to list the dependencies
(i.e. with the ``depends_on`` directive) and the build system (for example (i.e., with the ``depends_on`` directive) and the build system (for example
by deriving from :code:`CmakePackage`). by deriving from :code:`CmakePackage`).
However, there are many special cases. Often you need to retrieve details However, there are many special cases. Often you need to retrieve details
...@@ -248,7 +248,7 @@ What we need to implement is: ...@@ -248,7 +248,7 @@ What we need to implement is:
'liblapack', root=self.prefix, shared=shared, recurse=True 'liblapack', root=self.prefix, shared=shared, recurse=True
) )
i.e. a property that returns the correct list of libraries for the LAPACK interface. i.e., a property that returns the correct list of libraries for the LAPACK interface.
We use the name ``lapack_libs`` rather than ``libs`` because We use the name ``lapack_libs`` rather than ``libs`` because
``netlib-lapack`` can also provide ``blas``, and when it does it is provided ``netlib-lapack`` can also provide ``blas``, and when it does it is provided
...@@ -281,7 +281,7 @@ Modifying a package's build environment ...@@ -281,7 +281,7 @@ Modifying a package's build environment
Spack sets up several environment variables like PATH by default to aid in Spack sets up several environment variables like PATH by default to aid in
building a package, but many packages make use of environment variables which building a package, but many packages make use of environment variables which
convey specific information about their dependencies, for example MPICC. This convey specific information about their dependencies (e.g., MPICC). This
section covers how update your Spack packages so that package-specific section covers how update your Spack packages so that package-specific
environment variables are defined at build-time. environment variables are defined at build-time.
...@@ -299,14 +299,14 @@ To provide environment setup for a dependent, a package can implement the ...@@ -299,14 +299,14 @@ To provide environment setup for a dependent, a package can implement the
:py:func:`setup_dependent_environment <spack.package.PackageBase.setup_dependent_environment>` :py:func:`setup_dependent_environment <spack.package.PackageBase.setup_dependent_environment>`
function. This function takes as a parameter a :py:class:`EnvironmentModifications <spack.environment.EnvironmentModifications>` function. This function takes as a parameter a :py:class:`EnvironmentModifications <spack.environment.EnvironmentModifications>`
object which includes convenience methods to update the environment. For object which includes convenience methods to update the environment. For
example an MPI implementation can set ``MPICC`` for packages that depend on it: example, an MPI implementation can set ``MPICC`` for packages that depend on it:
.. code-block:: python .. code-block:: python
def setup_dependent_environment(self, spack_env, run_env, dependent_spec): def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
spack_env.set('MPICC', join_path(self.prefix.bin, 'mpicc')) spack_env.set('MPICC', join_path(self.prefix.bin, 'mpicc'))
In this case packages which depend on ``mpi`` will have ``MPICC`` defined in In this case packages that depend on ``mpi`` will have ``MPICC`` defined in
their environment when they build. This section is focused on modifying the their environment when they build. This section is focused on modifying the
build-time environment represented by ``spack_env``, but it's worth noting that build-time environment represented by ``spack_env``, but it's worth noting that
modifications to ``run_env`` are included in Spack's automatically-generated modifications to ``run_env`` are included in Spack's automatically-generated
...@@ -319,7 +319,7 @@ environment variable in the build-time environment of dependent packages. ...@@ -319,7 +319,7 @@ environment variable in the build-time environment of dependent packages.
root@advanced-packaging-tutorial:/# spack edit mpich root@advanced-packaging-tutorial:/# spack edit mpich
Once you're finished the method should look like this: Once you're finished, the method should look like this:
.. code-block:: python .. code-block:: python
...@@ -411,7 +411,7 @@ Attach attributes to other packages ...@@ -411,7 +411,7 @@ Attach attributes to other packages
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Build tools usually also provide a set of executables that can be used Build tools usually also provide a set of executables that can be used
when another package is being installed. Spack gives the opportunity when another package is being installed. Spack gives you the opportunity
to monkey-patch dependent modules and attach attributes to them. This to monkey-patch dependent modules and attach attributes to them. This
helps make the packager experience as similar as possible to what would helps make the packager experience as similar as possible to what would
have been the manual installation of the same package. have been the manual installation of the same package.
...@@ -441,7 +441,7 @@ Extra query parameters ...@@ -441,7 +441,7 @@ Extra query parameters
An advanced feature of the Spec's build-interface protocol is the support An advanced feature of the Spec's build-interface protocol is the support
for extra parameters after the subscript key. In fact, any of the keys used in the query for extra parameters after the subscript key. In fact, any of the keys used in the query
can be followed by a comma separated list of extra parameters which can be can be followed by a comma-separated list of extra parameters which can be
inspected by the package receiving the request to fine-tune a response. inspected by the package receiving the request to fine-tune a response.
Let's look at an example and try to install ``netcdf``: Let's look at an example and try to install ``netcdf``:
...@@ -489,7 +489,7 @@ If you followed the instructions correctly, the code added to the ...@@ -489,7 +489,7 @@ If you followed the instructions correctly, the code added to the
libraries, root=self.prefix, shared=shared, recurse=True libraries, root=self.prefix, shared=shared, recurse=True
) )
where we highlighted the line retrieving the extra parameters. Now we can successfully where we highlighted the line retrieving the extra parameters. Now we can successfully
complete the installation of ``netcdf``: complete the installation of ``netcdf``:
.. code-block:: console .. code-block:: console
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment