meson/docs
Dylan Baker 4a014d1724 Add support for meson.options as a replacement for meson_options.txt
We will still try to load `meson_options.txt` if `meson.options` doesn't
exist. Because there are some advantages to using `meson.options` even
with older versions of meson (such as better text editor handling)
we will not warn about the existence of a `meson.options` file if a
`meson_options.txt` file or symlink also exists.

The name `meson.options` was picked instead of alternative proposals,
such as `meson_options.build` for a couple of reasons:

  1. meson.options is shorter
  2. While the syntax is the same, only the `option()` function may be
     called in meson.options, while, it may not be called in meson.build
  3. While the two files share a syntax and elementary types (strings,
     arrays, etc), they have different purposes: `meson.build` declares
     build targets, `meson.options` declares options. This is similar to
     the difference between C's `.c` and `.h` extensions.

As an implementation detail `Interpreter.option_file` has been removed,
as it is used exactly once, in the `project()` call to read the options,
and we can just calculate it there and not store it.

Fixes: #11176
2023-03-28 15:01:10 +03:00
..
extensions Fix typos in docs 2022-10-23 03:06:39 +03:00
markdown Add support for meson.options as a replacement for meson_options.txt 2023-03-28 15:01:10 +03:00
refman Fix various spelling errors 2022-11-24 15:17:23 -05:00
theme/extra modules/wayland: Add unstable_wayland module 2022-02-27 14:33:33 -05:00
yaml Add support for meson.options as a replacement for meson_options.txt 2023-03-28 15:01:10 +03:00
.editorconfig
README.md don't tell documentation contributors to skip CI 2022-05-26 20:47:39 -04:00
genrefman.py docs: Initial reference manual generator 2021-10-03 11:46:34 +02:00
genrelnotes.py doc: Add date in release notes 2022-12-09 23:38:26 +02:00
jsonvalidator.py docs: refman: Add `arg_flattening` support 2022-04-07 17:16:26 -04:00
meson.build doc: Generate dev release notes 2022-05-24 20:19:46 +03:00
sitemap.txt Created release note page for 1.0.0. 2022-12-23 18:13:43 +02:00

README.md

Meson Documentation

Build dependencies

Meson uses itself and hotdoc for generating documentation.

Minimum required version of hotdoc is 0.8.9.

Instructions on how to install hotdoc are here.

Building the documentation

From the Meson repository root dir:

$ cd docs/
$ meson setup built_docs/
$ ninja -C built_docs/

Now you should be able to open the documentation locally

built_docs/Meson documentation-doc/html/index.html

Upload

Meson uses the git-upload hotdoc plugin which basically removes the html pages and replaces with the new content.

You can simply run:

$ ninja -C built_docs/ upload