You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: tutorial_packaging.rst
+30-28Lines changed: 30 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -73,7 +73,7 @@ Spack will look at the contents of the tarball and generate a package when we ru
73
73
74
74
You should now be in your text editor of choice, with the ``package.py`` file open for editing.
75
75
76
-
Your ``package.py`` file should reside in the ``tutorial-mpileaks`` subdirectory of your tutorial repository's ``packages`` directory, i.e., ``./repos/spack_repo/tutorial/packages/tutorial_mpileaks/package.py``.
76
+
Your ``package.py`` file should reside in the ``tutorial-mpileaks`` subdirectory of your tutorial repository's ``packages`` directory, i.e., ``/home/spack/repos/spack_repo/tutorial/packages/tutorial_mpileaks/package.py``.
77
77
78
78
Take a moment to look over the file.
79
79
@@ -85,8 +85,8 @@ As we can see from the skeleton contents, the Spack template:
85
85
* provides an example homepage URL;
86
86
* shows how to specify a list of package maintainers;
87
87
* provides a template for the license;
88
-
* specifies the version directive, with checksum, for the software;
89
-
* listed the inferred language and other build dependencies;
88
+
* specifies the version directive with the checksum;
89
+
* lists the inferred language and other build dependencies;
90
90
* provides a skeleton for another dependency;
91
91
* provides a preliminary implementation of the ``autoreconf`` method; and
92
92
* provides a skeleton ``configure_args`` method.
@@ -98,7 +98,8 @@ As we can see from the skeleton contents, the Spack template:
98
98
99
99
.. note::
100
100
101
-
The ``maintainers`` field is a comma-separated list of **GitHub user name** for those people who are willing to be notified when a change is made to the package and given an opportunity to review the changes.
101
+
The `maintainers directive <https://spack.readthedocs.io/en/latest/packaging_guide_creation.html#maintainers>`_ holds a comma-separated list of **GitHub user name** for those accounts willing to be notified when a change is made to the package.
102
+
They will be given an opportunity to review the changes.
102
103
This information is useful for developers who maintain a Spack package for their own software and/or rely on software maintained by others.
103
104
104
105
Since we are providing a ``url``, we can confirm the checksum, or ``sha256`` calculation.
@@ -107,31 +108,29 @@ Exit your editor to return to the command line and use the ``spack checksum`` co
The error indicates ``configure`` is unable to find the installation location of a dependency.
125
120
126
-
Let's start to customize the package for our software.
121
+
We will now fill in the provided placeholders and customize the package for the software as we:
122
+
123
+
* document some information about this package;
124
+
* add dependencies; and
125
+
* add the configuration arguments needed to build the package.
127
126
128
127
----------------------------
129
128
Adding Package Documentation
130
129
----------------------------
131
130
132
131
First, let's fill in the documentation.
133
132
134
-
Bring mpileaks' ``package.py`` file back into your ``$EDITOR`` with the ``spack edit`` command:
133
+
Bring mpileaks' ``package.py`` file back up in your ``$EDITOR`` with the ``spack edit`` command:
135
134
136
135
.. code-block:: console
137
136
@@ -146,6 +145,8 @@ Let's make the following changes:
146
145
* uncomment the ``maintainers`` directive and add your GitHub user name; and
147
146
* add the license of the project along with your GitHub user name.
148
147
148
+
It helps to have the `mpileaks <https://github.com/LLNL/mpileaks>`_ repository up in your browser since you can copy-and-paste some of the values from it.
149
+
149
150
.. note::
150
151
151
152
We will exclude the ``Copyright`` clause and license identifier in the remainder of the package snippets here to reduce the length of the tutorial documentation; however, the copyright **is required** for packages contributed back to Spack.
@@ -158,7 +159,7 @@ The resulting package should contain the following information:
0 commit comments