diff options
author | David Robillard <d@drobilla.net> | 2022-07-07 18:59:32 -0400 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2022-07-17 18:14:00 -0400 |
commit | 1eccbe4355685b322194df72b5de2382d5290b3b (patch) | |
tree | 0677b5c2f577a5024c351a164527f4bdd91a639b /doc | |
parent | d4a970f6962dda28133290194832b726b566ddab (diff) | |
download | lv2-1eccbe4355685b322194df72b5de2382d5290b3b.tar.xz |
Rearrange source tree to be directly usable by dependants
This allows the LV2 source distribution to be used as an include path for
compilers and an LV2_PATH for applications, at the expense of self-contained
bundles. That's a nice idea, but it made LV2 itself weird and annoying to
depend on. This rearranges things so that directories in the source tree
correspond more closely to installation directories.
To make this possible, the "aux" directory in the documentation output has been
changed to "style", to avoid the reserved name "aux" on Windows.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/c/reference.doxygen.in | 56 | ||||
-rw-r--r-- | doc/index.html.in | 2 | ||||
-rw-r--r-- | doc/meson.build | 23 | ||||
-rw-r--r-- | doc/ns/ext/meson.build | 54 | ||||
-rw-r--r-- | doc/ns/extensions/meson.build | 35 | ||||
-rw-r--r-- | doc/ns/meson.build | 59 | ||||
-rw-r--r-- | doc/style/asciidoc.css (renamed from doc/asciidoc.css) | 0 | ||||
-rw-r--r-- | doc/style/meson.build | 16 | ||||
-rw-r--r-- | doc/style/pygments.css (renamed from doc/pygments.css) | 0 | ||||
-rw-r--r-- | doc/style/style.css (renamed from doc/style.css) | 0 |
10 files changed, 187 insertions, 58 deletions
diff --git a/doc/c/reference.doxygen.in b/doc/c/reference.doxygen.in index 6318484..3280f75 100644 --- a/doc/c/reference.doxygen.in +++ b/doc/c/reference.doxygen.in @@ -865,34 +865,34 @@ WARN_LOGFILE = # Note: If this tag is empty the current directory is searched. INPUT = @LV2_SRCDIR@/doc/c/mainpage.md \ - @LV2_SRCDIR@/lv2/atom/atom.h \ - @LV2_SRCDIR@/lv2/atom/forge.h \ - @LV2_SRCDIR@/lv2/atom/util.h \ - @LV2_SRCDIR@/lv2/buf-size/buf-size.h \ - @LV2_SRCDIR@/lv2/core/lv2.h \ - @LV2_SRCDIR@/lv2/data-access/data-access.h \ - @LV2_SRCDIR@/lv2/dynmanifest/dynmanifest.h \ - @LV2_SRCDIR@/lv2/event/event-helpers.h \ - @LV2_SRCDIR@/lv2/event/event.h \ - @LV2_SRCDIR@/lv2/instance-access/instance-access.h \ - @LV2_SRCDIR@/lv2/log/log.h \ - @LV2_SRCDIR@/lv2/log/logger.h \ - @LV2_SRCDIR@/lv2/midi/midi.h \ - @LV2_SRCDIR@/lv2/morph/morph.h \ - @LV2_SRCDIR@/lv2/options/options.h \ - @LV2_SRCDIR@/lv2/parameters/parameters.h \ - @LV2_SRCDIR@/lv2/patch/patch.h \ - @LV2_SRCDIR@/lv2/port-groups/port-groups.h \ - @LV2_SRCDIR@/lv2/port-props/port-props.h \ - @LV2_SRCDIR@/lv2/presets/presets.h \ - @LV2_SRCDIR@/lv2/resize-port/resize-port.h \ - @LV2_SRCDIR@/lv2/state/state.h \ - @LV2_SRCDIR@/lv2/time/time.h \ - @LV2_SRCDIR@/lv2/ui/ui.h \ - @LV2_SRCDIR@/lv2/units/units.h \ - @LV2_SRCDIR@/lv2/uri-map/uri-map.h \ - @LV2_SRCDIR@/lv2/urid/urid.h \ - @LV2_SRCDIR@/lv2/worker/worker.h + @LV2_SRCDIR@/include/lv2/atom/atom.h \ + @LV2_SRCDIR@/include/lv2/atom/forge.h \ + @LV2_SRCDIR@/include/lv2/atom/util.h \ + @LV2_SRCDIR@/include/lv2/buf-size/buf-size.h \ + @LV2_SRCDIR@/include/lv2/core/lv2.h \ + @LV2_SRCDIR@/include/lv2/data-access/data-access.h \ + @LV2_SRCDIR@/include/lv2/dynmanifest/dynmanifest.h \ + @LV2_SRCDIR@/include/lv2/event/event-helpers.h \ + @LV2_SRCDIR@/include/lv2/event/event.h \ + @LV2_SRCDIR@/include/lv2/instance-access/instance-access.h \ + @LV2_SRCDIR@/include/lv2/log/log.h \ + @LV2_SRCDIR@/include/lv2/log/logger.h \ + @LV2_SRCDIR@/include/lv2/midi/midi.h \ + @LV2_SRCDIR@/include/lv2/morph/morph.h \ + @LV2_SRCDIR@/include/lv2/options/options.h \ + @LV2_SRCDIR@/include/lv2/parameters/parameters.h \ + @LV2_SRCDIR@/include/lv2/patch/patch.h \ + @LV2_SRCDIR@/include/lv2/port-groups/port-groups.h \ + @LV2_SRCDIR@/include/lv2/port-props/port-props.h \ + @LV2_SRCDIR@/include/lv2/presets/presets.h \ + @LV2_SRCDIR@/include/lv2/resize-port/resize-port.h \ + @LV2_SRCDIR@/include/lv2/state/state.h \ + @LV2_SRCDIR@/include/lv2/time/time.h \ + @LV2_SRCDIR@/include/lv2/ui/ui.h \ + @LV2_SRCDIR@/include/lv2/units/units.h \ + @LV2_SRCDIR@/include/lv2/uri-map/uri-map.h \ + @LV2_SRCDIR@/include/lv2/urid/urid.h \ + @LV2_SRCDIR@/include/lv2/worker/worker.h # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses diff --git a/doc/index.html.in b/doc/index.html.in index e097eab..6f3e0f9 100644 --- a/doc/index.html.in +++ b/doc/index.html.in @@ -6,7 +6,7 @@ <meta http-equiv="Content-Type" content="application/xhtml+xml;charset=utf-8" /> <link rel="stylesheet" type="text/css" - href="../aux/style.css" /> + href="../style/style.css" /> </head> <body> diff --git a/doc/meson.build b/doc/meson.build deleted file mode 100644 index 230211e..0000000 --- a/doc/meson.build +++ /dev/null @@ -1,23 +0,0 @@ -# Copyright 2022 David Robillard <d@drobilla.net> -# SPDX-License-Identifier: CC0-1.0 OR ISC - -if doxygen.found() - aux_files = files( - 'pygments.css', - 'style.css' - ) - - foreach file : aux_files - configure_file( - input: file, - output: '@PLAINNAME@', - copy: true, - install_dir: lv2_docdir / 'aux') - endforeach - - subdir('ns') - - build_docs = true -else - build_docs = false -endif diff --git a/doc/ns/ext/meson.build b/doc/ns/ext/meson.build index 4a2ca1f..f6ad06b 100644 --- a/doc/ns/ext/meson.build +++ b/doc/ns/ext/meson.build @@ -11,3 +11,57 @@ if get_option('online_docs') output: '.htaccess', ) endif + +spec_names = [ + 'atom', + 'buf-size', + 'data-access', + 'dynmanifest', + 'event', + 'instance-access', + 'log', + 'midi', + 'morph', + 'options', + 'parameters', + 'patch', + 'port-groups', + 'port-props', + 'presets', + 'resize-port', + 'state', + 'time', + 'uri-map', + 'urid', + 'worker', +] + +if build_docs + foreach name : spec_names + spec_file = files(lv2_source_root / 'lv2' / name + '.lv2' / name + '.ttl') + + custom_target( + name + '.html', + command: lv2specgen_command_prefix + [ + '--docdir=../../c/html', + '--style-uri=../../style/style.css', + '@INPUT@', + '@OUTPUT@', + ], + depends: doc_deps, + input: spec_file, + install: true, + install_dir: lv2_docdir / 'ns' / 'ext', + output: name + '.html', + ) + + if get_option('online_docs') + configure_file( + copy: true, + input: spec_file, + install_dir: lv2_docdir / 'ns' / 'ext', + output: '@PLAINNAME@', + ) + endif + endforeach +endif diff --git a/doc/ns/extensions/meson.build b/doc/ns/extensions/meson.build index b54e3d2..5a25184 100644 --- a/doc/ns/extensions/meson.build +++ b/doc/ns/extensions/meson.build @@ -11,3 +11,38 @@ if get_option('online_docs') output: '.htaccess', ) endif + +spec_names = [ + 'ui', + 'units', +] + +if build_docs + foreach name : spec_names + spec_file = files(lv2_source_root / 'lv2' / name + '.lv2' / name + '.ttl') + + custom_target( + name + '.html', + command: lv2specgen_command_prefix + [ + '--docdir=../../c/html', + '--style-uri=../../style/style.css', + '@INPUT@', + '@OUTPUT@', + ], + depends: doc_deps, + input: spec_file, + install: true, + install_dir: lv2_docdir / 'ns' / 'extensions', + output: name + '.html', + ) + + if get_option('online_docs') + configure_file( + copy: true, + input: spec_file, + install_dir: lv2_docdir / 'ns' / 'ext', + output: '@PLAINNAME@', + ) + endif + endforeach +endif diff --git a/doc/ns/meson.build b/doc/ns/meson.build index 26471b9..bb471c9 100644 --- a/doc/ns/meson.build +++ b/doc/ns/meson.build @@ -12,20 +12,67 @@ if get_option('online_docs') ) endif +###################### +# Core Documentation # +###################### + +if build_docs + spec_file = files(lv2_source_root / 'lv2' / 'core.lv2' / 'lv2core.ttl') + + lv2_core_docs = custom_target( + 'lv2core.html', + command: lv2specgen_command_prefix + [ + '--docdir=../c/html', + '--style-uri=../style/style.css', + '@INPUT@', + '@OUTPUT@', + ], + input: spec_file, + output: 'lv2core.html', + depends: doc_deps, + install: true, + install_dir: lv2_docdir / 'ns', + ) + + if get_option('online_docs') + configure_file( + copy: true, + input: spec_file, + install_dir: lv2_docdir / 'ns' / 'ext', + output: '@PLAINNAME@', + ) + endif +endif + +########################### +# Extension Documentation # +########################### + subdir('ext') subdir('extensions') +######### +# Index # +######### + lv2_build_index = files(lv2_source_root / 'scripts' / 'lv2_build_index.py') +lv2_build_index_command = [ + lv2_build_index, + '--lv2-version', meson.project_version(), + '--lv2-source-root', lv2_source_root, +] + +if get_option('online_docs') + lv2_build_index_command += [ + '--online', + ] +endif + index = custom_target( 'index.html', capture: true, - command: [ - lv2_build_index, - '--lv2-version', meson.project_version(), - '--lv2-source-root', lv2_source_root, - '@INPUT@' - ], + command: lv2_build_index_command + ['@INPUT@'], input: spec_files, install: true, install_dir: lv2_docdir / 'ns', diff --git a/doc/asciidoc.css b/doc/style/asciidoc.css index 2e64544..2e64544 100644 --- a/doc/asciidoc.css +++ b/doc/style/asciidoc.css diff --git a/doc/style/meson.build b/doc/style/meson.build new file mode 100644 index 0000000..7ae9a04 --- /dev/null +++ b/doc/style/meson.build @@ -0,0 +1,16 @@ +# Copyright 2022 David Robillard <d@drobilla.net> +# SPDX-License-Identifier: CC0-1.0 OR ISC + +style_files = files( + 'pygments.css', + 'style.css' +) + +foreach file : style_files + configure_file( + copy: true, + input: file, + install_dir: lv2_docdir / 'style', + output: '@PLAINNAME@', + ) +endforeach diff --git a/doc/pygments.css b/doc/style/pygments.css index 2472b1a..2472b1a 100644 --- a/doc/pygments.css +++ b/doc/style/pygments.css diff --git a/doc/style.css b/doc/style/style.css index fca399e..fca399e 100644 --- a/doc/style.css +++ b/doc/style/style.css |