aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorThibault Saunier <tsaunier@igalia.com>2018-08-17 20:13:08 -0300
committerThibault Saunier <tsaunier@igalia.com>2018-08-28 18:18:40 -0300
commit1ea743a0bfd5ab3ab74009fdd0fb2db64e8e79d8 (patch)
tree176c6d23d7729337a16828066b4d6c68c1d37fcb /docs
parent6f72473b2457ecd449259dc6c283976cea8f0e13 (diff)
downloadmeson-1ea743a0bfd5ab3ab74009fdd0fb2db64e8e79d8.zip
meson-1ea743a0bfd5ab3ab74009fdd0fb2db64e8e79d8.tar.gz
meson-1ea743a0bfd5ab3ab74009fdd0fb2db64e8e79d8.tar.bz2
hotdoc: Add documentation
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/Hotdoc-module.md79
-rw-r--r--docs/markdown/snippets/hotdoc_module.md22
-rw-r--r--docs/sitemap.txt3
-rw-r--r--docs/theme/extra/templates/navbar_links.html3
4 files changed, 105 insertions, 2 deletions
diff --git a/docs/markdown/Hotdoc-module.md b/docs/markdown/Hotdoc-module.md
new file mode 100644
index 0000000..7d9fc55
--- /dev/null
+++ b/docs/markdown/Hotdoc-module.md
@@ -0,0 +1,79 @@
+---
+short-description: Hotdoc module
+authors:
+ - name: Thibault Saunier
+ email: tsaunier@igalia.com
+ years: [2018]
+ has-copyright: false
+...
+
+# Hotdoc module
+
+This module provides helper functions for generating documentation using
+[hotdoc].
+
+*Added 0.48.0*
+
+## Usage
+
+To use this module, just do: **`hotdoc = import('hotdoc')`**. The
+following functions will then be available as methods on the object
+with the name `hotdoc`. You can, of course, replace the name `hotdoc`
+with anything else.
+
+### hotdoc.generate_doc()
+
+Generates documentation using [hotdoc] and installs it into `$prefix/share/doc/html`.
+
+**Positional argument:**
+
+* `project_name`: The name of the hotdoc project
+
+**Keyworded arguments:**
+
+* `sitemap` (*[string] or [file]*) (**required**): The hotdoc sitemap file
+* `index` (*[string] or [file]*) (**required**): Location of the index file
+* `dependencies`(*[targets]*): Targets on which the documentation generation depends on.
+* `subprojects`: A list of `HotdocTarget` that are used as subprojects for hotdoc to generate
+ the documentation.
+* ... Any argument of `hotdoc` can be used replacing dashes (`-`) with underscores (`_`).
+ For a full list of available parameters, just have a look at `hotdoc help`.
+
+[file]: Reference-manual.md#files
+[string]: Reference-manual.md#string-object
+[targets]: Reference-manual.md#build-target-object
+
+**Returns:**
+
+`HotdocTarget`: A [`custom_target`](Reference-manual.md#custom-target-object) with the
+following extra methods:
+
+* `config_path`: Path to the generated `hotdoc` configuration file.
+
+### hotdoc.has_extensions()
+
+**Positional arguments:**
+
+* `...`: The hotdoc extension names to look for
+
+**No keyworded arguments**
+
+**Returns:** `true` if all the extensions where found, `false` otherwise.
+
+### Example
+
+``` meson
+hotdoc = import('hotdoc')
+
+hotdoc.generate_doc('foobar',
+ project_version: '0.1',
+ sitemap: 'sitemap.txt',
+ index: 'index.md',
+ c_sources: ['path/to/file.c'],
+ c_smart_index: true,
+ languages: ['c'],
+ install: true,
+)
+```
+
+[hotdoc]: https://hotdoc.github.io/ \ No newline at end of file
diff --git a/docs/markdown/snippets/hotdoc_module.md b/docs/markdown/snippets/hotdoc_module.md
new file mode 100644
index 0000000..4662ea2
--- /dev/null
+++ b/docs/markdown/snippets/hotdoc_module.md
@@ -0,0 +1,22 @@
+## Hotdoc module
+
+A new module has been written to ease generation of [hotdoc](https://hotdoc.github.io/) based
+documentation. It supports complex use cases such as hotdoc subprojects (to create documentation
+portals) and makes it straight forward to leverage full capabilities of hotdoc.
+
+Simple usage:
+
+``` meson
+hotdoc = import('hotdoc')
+
+hotdoc.generate_doc(
+ 'foobar',
+ c_smart_index: true,
+ project_version: '0.1',
+ sitemap: 'sitemap.txt',
+ index: 'index.md',
+ c_sources: ['path/to/file.c'],
+ languages: ['c'],
+ install: true,
+)
+``` \ No newline at end of file
diff --git a/docs/sitemap.txt b/docs/sitemap.txt
index 2d43e18..4ba1b90 100644
--- a/docs/sitemap.txt
+++ b/docs/sitemap.txt
@@ -29,7 +29,9 @@ index.md
Subprojects.md
Disabler.md
Modules.md
+ Dlang-module.md
Gnome-module.md
+ Hotdoc-module.md
i18n-module.md
Icestorm-module.md
Pkgconfig-module.md
@@ -40,7 +42,6 @@ index.md
RPM-module.md
Simd-module.md
Windows-module.md
- Dlang-module.md
Java.md
Vala.md
D.md
diff --git a/docs/theme/extra/templates/navbar_links.html b/docs/theme/extra/templates/navbar_links.html
index 2edce24..c9cba13 100644
--- a/docs/theme/extra/templates/navbar_links.html
+++ b/docs/theme/extra/templates/navbar_links.html
@@ -13,7 +13,8 @@
("Qt4-module.html","Qt4"), \
("Qt5-module.html","Qt5"), \
("RPM-module.html","RPM"), \
- ("Windows-module.html","Windows")):
+ ("Windows-module.html","Windows"), \
+ ("Hotdoc-module.html","Hotdoc")):
<li>
<a href="@tup[0]">@tup[1]</a>
</li>