aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2023-02-17 21:06:00 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2023-02-20 16:17:32 +0300
commiteaebfcff492cf7f707b44a3d28620e786116faf1 (patch)
treef76076ca5c06be6cf932c9e330a282546ec1008c /doc
parent4887f43d983898e48feaffc467327bc7fc4e1180 (diff)
Store in database and document type and language package manifest values
Diffstat (limited to 'doc')
-rw-r--r--doc/manual.cli42
1 files changed, 42 insertions, 0 deletions
diff --git a/doc/manual.cli b/doc/manual.cli
index 1f540d2..d417e92 100644
--- a/doc/manual.cli
+++ b/doc/manual.cli
@@ -1041,6 +1041,8 @@ a full package manifest they can be interleaved with non-header values.
name: <name>
version: <version>
[upstream-version]: <string>
+[type]: <type>
+[language]: <lang>
[project]: <name>
[priority]: <priority> [; <comment>]
summary: <text>
@@ -1129,6 +1131,46 @@ and use the \c{upstream-version} value to preserve the original version for
information.
+\h2#manifest-package-type-language|\c{type, language}|
+
+\
+[type]: <type>
+[language]: <lang>
+
+<type> = <name>
+<lang> = <name>[=impl]
+\
+
+The package type and programming language(s).
+
+The currently recognized package types are \c{exe}, \c{lib}, and \c{other}. If
+the type is not specified, then if the package name starts with \c{lib}, then
+it is assumed to be \c{lib} and \c{exe} otherwise (see \l{#package-name
+Package Name} for details). Other package types may be added in the future and
+code that does not recognize a certain package type should treat it as
+\c{other}.
+
+The package language must be in the lower case, for example, \c{c}, \c{c++},
+\c{rust}, \c{bash}. If the language is not specified, then if the package name
+has an extension (as in, for example, \c{libbutl.bash}; see \l{#package-name
+Package Name} for details) the extension is assumed to name the package
+language. Otherwise, \c{cc} (unspecified \c{c}-common language) is assumed. If
+a package uses multiple languages, then multiple \c{language} values must be
+specified. The languages which are only used in a library's implementation (as
+opposed to also in its interface) should be marked as such. For example, for a
+C library with C++ implementation:
+
+\
+type: lib
+language: c
+language: c++=impl
+\
+
+\N|If the use of a language, such as C++, also always implies the use of
+another language, such as C, then such an implied language need not be
+explicitly specified.|
+
+
\h2#manifest-package-project|\c{project}|
\