aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoam Postavsky2017-03-25 00:58:44 -0400
committerNoam Postavsky2017-03-30 20:46:51 -0400
commitee1bd94dd0ce427fcdfea33af38a4eaf47f911f0 (patch)
treec7a0369a50e12c7e97240191c2c724592f056484
parentfb18bff91f01a3051253319e766ca276e5b756bd (diff)
downloademacs-ee1bd94dd0ce427fcdfea33af38a4eaf47f911f0.tar.gz
emacs-ee1bd94dd0ce427fcdfea33af38a4eaf47f911f0.zip
Improve packaging documentation
* doc/lispref/package.texi (Packaging Basics): * doc/lispref/tips.texi (Library Headers): Clarify some header formats, relation between file headers and package attributes (Bug#13281).
-rw-r--r--doc/lispref/package.texi12
-rw-r--r--doc/lispref/tips.texi11
2 files changed, 14 insertions, 9 deletions
diff --git a/doc/lispref/package.texi b/doc/lispref/package.texi
index 6066ea9a936..b0dbe4d0a64 100644
--- a/doc/lispref/package.texi
+++ b/doc/lispref/package.texi
@@ -54,7 +54,8 @@ prefix used in the program (@pxref{Coding Conventions}).
54@item Version 54@item Version
55A version number, in a form that the function @code{version-to-list} 55A version number, in a form that the function @code{version-to-list}
56understands (e.g., @samp{11.86}). Each release of a package should be 56understands (e.g., @samp{11.86}). Each release of a package should be
57accompanied by an increase in the version number. 57accompanied by an increase in the version number so that it will be
58recognized as an upgrade by users querying the package archive.
58 59
59@item Brief description 60@item Brief description
60This is shown when the package is listed in the Package Menu. It 61This is shown when the package is listed in the Package Menu. It
@@ -71,8 +72,9 @@ once it is installed.
71A list of other packages (possibly including minimal acceptable 72A list of other packages (possibly including minimal acceptable
72version numbers) on which this package depends. The list may be 73version numbers) on which this package depends. The list may be
73empty, meaning this package has no dependencies. Otherwise, 74empty, meaning this package has no dependencies. Otherwise,
74installing this package also automatically installs its dependencies; 75installing this package also automatically installs its dependencies,
75if any dependency cannot be found, the package cannot be installed. 76recursively; if any dependency cannot be found, the package cannot be
77installed.
76@end table 78@end table
77 79
78@cindex content directory, package 80@cindex content directory, package
@@ -212,8 +214,8 @@ subdirectories of the content directory.
212 One of the files in the content directory must be named 214 One of the files in the content directory must be named
213@file{@var{name}-pkg.el}. It must contain a single Lisp form, 215@file{@var{name}-pkg.el}. It must contain a single Lisp form,
214consisting of a call to the function @code{define-package}, described 216consisting of a call to the function @code{define-package}, described
215below. This defines the package's version, brief description, and 217below. This defines the package's attributes: version, brief
216requirements. 218description, and requirements.
217 219
218 For example, if we distribute version 1.3 of the superfrobnicator as 220 For example, if we distribute version 1.3 of the superfrobnicator as
219a multi-file package, the tar file would be 221a multi-file package, the tar file would be
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi
index bd560370f7a..0b3c017b104 100644
--- a/doc/lispref/tips.texi
+++ b/doc/lispref/tips.texi
@@ -1047,12 +1047,15 @@ package manager both at download time (to ensure that a complete set
1047of packages is downloaded) and at activation time (to ensure that a 1047of packages is downloaded) and at activation time (to ensure that a
1048package is only activated if all its dependencies have been). 1048package is only activated if all its dependencies have been).
1049 1049
1050Its format is a list of lists. The @code{car} of each sub-list is the 1050Its format is a list of lists on a single line. The @code{car} of
1051name of a package, as a symbol. The @code{cadr} of each sub-list is 1051each sub-list is the name of a package, as a symbol. The @code{cadr}
1052the minimum acceptable version number, as a string. For instance: 1052of each sub-list is the minimum acceptable version number, as a string
1053that can be parse by @code{version-to-list}. An entry that lacks a
1054version (i.e., an entry which is just a symbol, or a sub-list of one
1055element) is equivalent to entry with version "0". For instance:
1053 1056
1054@smallexample 1057@smallexample
1055;; Package-Requires: ((gnus "1.0") (bubbles "2.7.2")) 1058;; Package-Requires: ((gnus "1.0") (bubbles "2.7.2") cl-lib (seq))
1056@end smallexample 1059@end smallexample
1057 1060
1058The package code automatically defines a package named @samp{emacs} 1061The package code automatically defines a package named @samp{emacs}