aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/c/reference.doxygen.in56
-rw-r--r--doc/index.html.in2
-rw-r--r--doc/meson.build23
-rw-r--r--doc/ns/ext/meson.build54
-rw-r--r--doc/ns/extensions/meson.build35
-rw-r--r--doc/ns/meson.build59
-rw-r--r--doc/style/asciidoc.css (renamed from doc/asciidoc.css)0
-rw-r--r--doc/style/meson.build16
-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
-rw-r--r--include/lv2/atom/atom.h (renamed from lv2/atom/atom.h)0
-rw-r--r--include/lv2/atom/forge.h (renamed from lv2/atom/forge.h)0
-rw-r--r--include/lv2/atom/util.h (renamed from lv2/atom/util.h)0
-rw-r--r--include/lv2/buf-size/buf-size.h (renamed from lv2/buf-size/buf-size.h)0
-rw-r--r--include/lv2/core/attributes.h (renamed from lv2/core/attributes.h)0
-rw-r--r--include/lv2/core/lv2.h (renamed from lv2/core/lv2.h)0
-rw-r--r--include/lv2/core/lv2_util.h (renamed from lv2/core/lv2_util.h)0
-rw-r--r--include/lv2/data-access/data-access.h (renamed from lv2/data-access/data-access.h)0
-rw-r--r--include/lv2/dynmanifest/dynmanifest.h (renamed from lv2/dynmanifest/dynmanifest.h)0
-rw-r--r--include/lv2/event/event-helpers.h (renamed from lv2/event/event-helpers.h)0
-rw-r--r--include/lv2/event/event.h (renamed from lv2/event/event.h)0
-rw-r--r--include/lv2/instance-access/instance-access.h (renamed from lv2/instance-access/instance-access.h)0
-rw-r--r--include/lv2/log/log.h (renamed from lv2/log/log.h)0
-rw-r--r--include/lv2/log/logger.h (renamed from lv2/log/logger.h)0
-rw-r--r--include/lv2/midi/midi.h (renamed from lv2/midi/midi.h)0
-rw-r--r--include/lv2/morph/morph.h (renamed from lv2/morph/morph.h)0
-rw-r--r--include/lv2/options/options.h (renamed from lv2/options/options.h)0
-rw-r--r--include/lv2/parameters/parameters.h (renamed from lv2/parameters/parameters.h)0
-rw-r--r--include/lv2/patch/patch.h (renamed from lv2/patch/patch.h)0
-rw-r--r--include/lv2/port-groups/port-groups.h (renamed from lv2/port-groups/port-groups.h)0
-rw-r--r--include/lv2/port-props/port-props.h (renamed from lv2/port-props/port-props.h)0
-rw-r--r--include/lv2/presets/presets.h (renamed from lv2/presets/presets.h)0
-rw-r--r--include/lv2/resize-port/resize-port.h (renamed from lv2/resize-port/resize-port.h)0
-rw-r--r--include/lv2/state/state.h (renamed from lv2/state/state.h)0
-rw-r--r--include/lv2/time/time.h (renamed from lv2/time/time.h)0
-rw-r--r--include/lv2/ui/ui.h (renamed from lv2/ui/ui.h)0
-rw-r--r--include/lv2/units/units.h (renamed from lv2/units/units.h)0
-rw-r--r--include/lv2/uri-map/uri-map.h (renamed from lv2/uri-map/uri-map.h)0
-rw-r--r--include/lv2/urid/urid.h (renamed from lv2/urid/urid.h)0
-rw-r--r--include/lv2/worker/worker.h (renamed from lv2/worker/worker.h)0
-rw-r--r--lv2/atom.lv2/atom.meta.ttl (renamed from lv2/atom/atom.meta.ttl)0
-rw-r--r--lv2/atom.lv2/atom.ttl (renamed from lv2/atom/atom.ttl)5
-rw-r--r--lv2/atom.lv2/manifest.ttl (renamed from lv2/atom/manifest.ttl)0
-rw-r--r--lv2/atom/meson.build61
-rw-r--r--lv2/buf-size.lv2/buf-size.meta.ttl (renamed from lv2/buf-size/buf-size.meta.ttl)0
-rw-r--r--lv2/buf-size.lv2/buf-size.ttl (renamed from lv2/buf-size/buf-size.ttl)3
-rw-r--r--lv2/buf-size.lv2/manifest.ttl (renamed from lv2/buf-size/manifest.ttl)0
-rw-r--r--lv2/buf-size/meson.build40
-rw-r--r--lv2/core.lv2/lv2core.meta.ttl (renamed from lv2/core/lv2core.meta.ttl)0
-rw-r--r--lv2/core.lv2/lv2core.ttl (renamed from lv2/core/lv2core.ttl)4
-rw-r--r--lv2/core.lv2/manifest.ttl (renamed from lv2/core/manifest.ttl)0
-rw-r--r--lv2/core.lv2/meta.ttl (renamed from lv2/core/meta.ttl)4
-rw-r--r--lv2/core.lv2/people.ttl (renamed from lv2/core/people.ttl)0
-rw-r--r--lv2/core/meson.build44
-rw-r--r--lv2/data-access.lv2/data-access.meta.ttl (renamed from lv2/data-access/data-access.meta.ttl)1
-rw-r--r--lv2/data-access.lv2/data-access.ttl (renamed from lv2/data-access/data-access.ttl)3
-rw-r--r--lv2/data-access.lv2/manifest.ttl (renamed from lv2/data-access/manifest.ttl)0
-rw-r--r--lv2/data-access/meson.build40
-rw-r--r--lv2/dynmanifest.lv2/dynmanifest.meta.ttl (renamed from lv2/dynmanifest/dynmanifest.meta.ttl)0
-rw-r--r--lv2/dynmanifest.lv2/dynmanifest.ttl (renamed from lv2/dynmanifest/dynmanifest.ttl)3
-rw-r--r--lv2/dynmanifest.lv2/manifest.ttl (renamed from lv2/dynmanifest/manifest.ttl)0
-rw-r--r--lv2/dynmanifest/meson.build40
-rw-r--r--lv2/event.lv2/event.meta.ttl (renamed from lv2/event/event.meta.ttl)0
-rw-r--r--lv2/event.lv2/event.ttl (renamed from lv2/event/event.ttl)4
-rw-r--r--lv2/event.lv2/manifest.ttl (renamed from lv2/event/manifest.ttl)0
-rw-r--r--lv2/event/meson.build41
-rw-r--r--lv2/instance-access.lv2/instance-access.meta.ttl (renamed from lv2/instance-access/instance-access.meta.ttl)0
-rw-r--r--lv2/instance-access.lv2/instance-access.ttl (renamed from lv2/instance-access/instance-access.ttl)3
-rw-r--r--lv2/instance-access.lv2/manifest.ttl (renamed from lv2/instance-access/manifest.ttl)0
-rw-r--r--lv2/instance-access/meson.build40
-rw-r--r--lv2/log.lv2/log.meta.ttl (renamed from lv2/log/log.meta.ttl)0
-rw-r--r--lv2/log.lv2/log.ttl (renamed from lv2/log/log.ttl)3
-rw-r--r--lv2/log.lv2/manifest.ttl (renamed from lv2/log/manifest.ttl)0
-rw-r--r--lv2/log/meson.build41
-rw-r--r--lv2/meson.build52
-rw-r--r--lv2/midi.lv2/manifest.ttl (renamed from lv2/midi/manifest.ttl)0
-rw-r--r--lv2/midi.lv2/midi.meta.ttl (renamed from lv2/midi/midi.meta.ttl)0
-rw-r--r--lv2/midi.lv2/midi.ttl (renamed from lv2/midi/midi.ttl)3
-rw-r--r--lv2/midi/meson.build40
-rw-r--r--lv2/morph.lv2/manifest.ttl (renamed from lv2/morph/manifest.ttl)0
-rw-r--r--lv2/morph.lv2/morph.meta.ttl (renamed from lv2/morph/morph.meta.ttl)0
-rw-r--r--lv2/morph.lv2/morph.ttl (renamed from lv2/morph/morph.ttl)3
-rw-r--r--lv2/morph/meson.build40
-rw-r--r--lv2/options.lv2/manifest.ttl (renamed from lv2/options/manifest.ttl)0
-rw-r--r--lv2/options.lv2/options.meta.ttl (renamed from lv2/options/options.meta.ttl)0
-rw-r--r--lv2/options.lv2/options.ttl (renamed from lv2/options/options.ttl)3
-rw-r--r--lv2/options/meson.build40
-rw-r--r--lv2/parameters.lv2/manifest.ttl (renamed from lv2/parameters/manifest.ttl)0
-rw-r--r--lv2/parameters.lv2/parameters.meta.ttl (renamed from lv2/parameters/parameters.meta.ttl)0
-rw-r--r--lv2/parameters.lv2/parameters.ttl (renamed from lv2/parameters/parameters.ttl)0
-rw-r--r--lv2/parameters/meson.build40
-rw-r--r--lv2/patch.lv2/manifest.ttl (renamed from lv2/patch/manifest.ttl)0
-rw-r--r--lv2/patch.lv2/patch.meta.ttl (renamed from lv2/patch/patch.meta.ttl)0
-rw-r--r--lv2/patch.lv2/patch.ttl (renamed from lv2/patch/patch.ttl)3
-rw-r--r--lv2/patch/meson.build40
-rw-r--r--lv2/port-groups.lv2/manifest.ttl (renamed from lv2/port-groups/manifest.ttl)0
-rw-r--r--lv2/port-groups.lv2/port-groups.meta.ttl (renamed from lv2/port-groups/port-groups.meta.ttl)0
-rw-r--r--lv2/port-groups.lv2/port-groups.ttl (renamed from lv2/port-groups/port-groups.ttl)0
-rw-r--r--lv2/port-groups/meson.build40
-rw-r--r--lv2/port-props.lv2/manifest.ttl (renamed from lv2/port-props/manifest.ttl)0
-rw-r--r--lv2/port-props.lv2/port-props.meta.ttl (renamed from lv2/port-props/port-props.meta.ttl)0
-rw-r--r--lv2/port-props.lv2/port-props.ttl (renamed from lv2/port-props/port-props.ttl)0
-rw-r--r--lv2/port-props/meson.build40
-rw-r--r--lv2/presets.lv2/manifest.ttl (renamed from lv2/presets/manifest.ttl)0
-rw-r--r--lv2/presets.lv2/presets.meta.ttl (renamed from lv2/presets/presets.meta.ttl)0
-rw-r--r--lv2/presets.lv2/presets.ttl (renamed from lv2/presets/presets.ttl)0
-rw-r--r--lv2/presets/meson.build40
-rw-r--r--lv2/resize-port.lv2/manifest.ttl (renamed from lv2/resize-port/manifest.ttl)0
-rw-r--r--lv2/resize-port.lv2/resize-port.meta.ttl (renamed from lv2/resize-port/resize-port.meta.ttl)0
-rw-r--r--lv2/resize-port.lv2/resize-port.ttl (renamed from lv2/resize-port/resize-port.ttl)3
-rw-r--r--lv2/resize-port/meson.build40
-rw-r--r--lv2/state.lv2/manifest.ttl (renamed from lv2/state/manifest.ttl)0
-rw-r--r--lv2/state.lv2/state.meta.ttl (renamed from lv2/state/state.meta.ttl)0
-rw-r--r--lv2/state.lv2/state.ttl (renamed from lv2/state/state.ttl)3
-rw-r--r--lv2/state/meson.build40
-rw-r--r--lv2/time.lv2/manifest.ttl (renamed from lv2/time/manifest.ttl)0
-rw-r--r--lv2/time.lv2/time.meta.ttl (renamed from lv2/time/time.meta.ttl)0
-rw-r--r--lv2/time.lv2/time.ttl (renamed from lv2/time/time.ttl)3
-rw-r--r--lv2/time/meson.build40
-rw-r--r--lv2/ui.lv2/manifest.ttl (renamed from lv2/ui/manifest.ttl)0
-rw-r--r--lv2/ui.lv2/ui.meta.ttl (renamed from lv2/ui/ui.meta.ttl)0
-rw-r--r--lv2/ui.lv2/ui.ttl (renamed from lv2/ui/ui.ttl)3
-rw-r--r--lv2/ui/meson.build40
-rw-r--r--lv2/units.lv2/manifest.ttl (renamed from lv2/units/manifest.ttl)0
-rw-r--r--lv2/units.lv2/units.meta.ttl (renamed from lv2/units/units.meta.ttl)0
-rw-r--r--lv2/units.lv2/units.ttl (renamed from lv2/units/units.ttl)3
-rw-r--r--lv2/units/meson.build40
-rw-r--r--lv2/uri-map.lv2/manifest.ttl (renamed from lv2/uri-map/manifest.ttl)0
-rw-r--r--lv2/uri-map.lv2/uri-map.meta.ttl (renamed from lv2/uri-map/uri-map.meta.ttl)0
-rw-r--r--lv2/uri-map.lv2/uri-map.ttl (renamed from lv2/uri-map/uri-map.ttl)3
-rw-r--r--lv2/uri-map/meson.build40
-rw-r--r--lv2/urid.lv2/manifest.ttl (renamed from lv2/urid/manifest.ttl)0
-rw-r--r--lv2/urid.lv2/urid.meta.ttl (renamed from lv2/urid/urid.meta.ttl)0
-rw-r--r--lv2/urid.lv2/urid.ttl (renamed from lv2/urid/urid.ttl)3
-rw-r--r--lv2/urid/meson.build40
-rw-r--r--lv2/worker.lv2/manifest.ttl (renamed from lv2/worker/manifest.ttl)0
-rw-r--r--lv2/worker.lv2/worker.meta.ttl (renamed from lv2/worker/worker.meta.ttl)0
-rw-r--r--lv2/worker.lv2/worker.ttl (renamed from lv2/worker/worker.ttl)3
-rw-r--r--lv2/worker/meson.build40
-rw-r--r--meson.build275
-rw-r--r--plugins/meson.build4
-rwxr-xr-xscripts/lv2_build_index.py2
-rw-r--r--test/atom_test_utils.c (renamed from lv2/atom/atom-test-utils.c)0
-rw-r--r--test/meson.build27
-rw-r--r--test/test_atom.c (renamed from lv2/atom/atom-test.c)3
-rw-r--r--test/test_forge_overflow.c (renamed from lv2/atom/forge-overflow-test.c)3
146 files changed, 465 insertions, 1202 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
diff --git a/lv2/atom/atom.h b/include/lv2/atom/atom.h
index b090c1e..b090c1e 100644
--- a/lv2/atom/atom.h
+++ b/include/lv2/atom/atom.h
diff --git a/lv2/atom/forge.h b/include/lv2/atom/forge.h
index 280bd53..280bd53 100644
--- a/lv2/atom/forge.h
+++ b/include/lv2/atom/forge.h
diff --git a/lv2/atom/util.h b/include/lv2/atom/util.h
index 16d2c00..16d2c00 100644
--- a/lv2/atom/util.h
+++ b/include/lv2/atom/util.h
diff --git a/lv2/buf-size/buf-size.h b/include/lv2/buf-size/buf-size.h
index d96e17d..d96e17d 100644
--- a/lv2/buf-size/buf-size.h
+++ b/include/lv2/buf-size/buf-size.h
diff --git a/lv2/core/attributes.h b/include/lv2/core/attributes.h
index 81791a2..81791a2 100644
--- a/lv2/core/attributes.h
+++ b/include/lv2/core/attributes.h
diff --git a/lv2/core/lv2.h b/include/lv2/core/lv2.h
index 84c40a5..84c40a5 100644
--- a/lv2/core/lv2.h
+++ b/include/lv2/core/lv2.h
diff --git a/lv2/core/lv2_util.h b/include/lv2/core/lv2_util.h
index f3766aa..f3766aa 100644
--- a/lv2/core/lv2_util.h
+++ b/include/lv2/core/lv2_util.h
diff --git a/lv2/data-access/data-access.h b/include/lv2/data-access/data-access.h
index de3b6b6..de3b6b6 100644
--- a/lv2/data-access/data-access.h
+++ b/include/lv2/data-access/data-access.h
diff --git a/lv2/dynmanifest/dynmanifest.h b/include/lv2/dynmanifest/dynmanifest.h
index 674577b..674577b 100644
--- a/lv2/dynmanifest/dynmanifest.h
+++ b/include/lv2/dynmanifest/dynmanifest.h
diff --git a/lv2/event/event-helpers.h b/include/lv2/event/event-helpers.h
index bf1b885..bf1b885 100644
--- a/lv2/event/event-helpers.h
+++ b/include/lv2/event/event-helpers.h
diff --git a/lv2/event/event.h b/include/lv2/event/event.h
index 045ac12..045ac12 100644
--- a/lv2/event/event.h
+++ b/include/lv2/event/event.h
diff --git a/lv2/instance-access/instance-access.h b/include/lv2/instance-access/instance-access.h
index 2986f69..2986f69 100644
--- a/lv2/instance-access/instance-access.h
+++ b/include/lv2/instance-access/instance-access.h
diff --git a/lv2/log/log.h b/include/lv2/log/log.h
index cc62bef..cc62bef 100644
--- a/lv2/log/log.h
+++ b/include/lv2/log/log.h
diff --git a/lv2/log/logger.h b/include/lv2/log/logger.h
index d6919a2..d6919a2 100644
--- a/lv2/log/logger.h
+++ b/include/lv2/log/logger.h
diff --git a/lv2/midi/midi.h b/include/lv2/midi/midi.h
index f7e0500..f7e0500 100644
--- a/lv2/midi/midi.h
+++ b/include/lv2/midi/midi.h
diff --git a/lv2/morph/morph.h b/include/lv2/morph/morph.h
index 370937a..370937a 100644
--- a/lv2/morph/morph.h
+++ b/include/lv2/morph/morph.h
diff --git a/lv2/options/options.h b/include/lv2/options/options.h
index 06e5db4..06e5db4 100644
--- a/lv2/options/options.h
+++ b/include/lv2/options/options.h
diff --git a/lv2/parameters/parameters.h b/include/lv2/parameters/parameters.h
index 66a7561..66a7561 100644
--- a/lv2/parameters/parameters.h
+++ b/include/lv2/parameters/parameters.h
diff --git a/lv2/patch/patch.h b/include/lv2/patch/patch.h
index 4db2abb..4db2abb 100644
--- a/lv2/patch/patch.h
+++ b/include/lv2/patch/patch.h
diff --git a/lv2/port-groups/port-groups.h b/include/lv2/port-groups/port-groups.h
index 0ff25c7..0ff25c7 100644
--- a/lv2/port-groups/port-groups.h
+++ b/include/lv2/port-groups/port-groups.h
diff --git a/lv2/port-props/port-props.h b/include/lv2/port-props/port-props.h
index ff4adcd..ff4adcd 100644
--- a/lv2/port-props/port-props.h
+++ b/include/lv2/port-props/port-props.h
diff --git a/lv2/presets/presets.h b/include/lv2/presets/presets.h
index 716ab32..716ab32 100644
--- a/lv2/presets/presets.h
+++ b/include/lv2/presets/presets.h
diff --git a/lv2/resize-port/resize-port.h b/include/lv2/resize-port/resize-port.h
index a3a11c4..a3a11c4 100644
--- a/lv2/resize-port/resize-port.h
+++ b/include/lv2/resize-port/resize-port.h
diff --git a/lv2/state/state.h b/include/lv2/state/state.h
index 01ec598..01ec598 100644
--- a/lv2/state/state.h
+++ b/include/lv2/state/state.h
diff --git a/lv2/time/time.h b/include/lv2/time/time.h
index 1dce219..1dce219 100644
--- a/lv2/time/time.h
+++ b/include/lv2/time/time.h
diff --git a/lv2/ui/ui.h b/include/lv2/ui/ui.h
index fb41d90..fb41d90 100644
--- a/lv2/ui/ui.h
+++ b/include/lv2/ui/ui.h
diff --git a/lv2/units/units.h b/include/lv2/units/units.h
index 09ae16b..09ae16b 100644
--- a/lv2/units/units.h
+++ b/include/lv2/units/units.h
diff --git a/lv2/uri-map/uri-map.h b/include/lv2/uri-map/uri-map.h
index 47cde1c..47cde1c 100644
--- a/lv2/uri-map/uri-map.h
+++ b/include/lv2/uri-map/uri-map.h
diff --git a/lv2/urid/urid.h b/include/lv2/urid/urid.h
index b537d14..b537d14 100644
--- a/lv2/urid/urid.h
+++ b/include/lv2/urid/urid.h
diff --git a/lv2/worker/worker.h b/include/lv2/worker/worker.h
index 4fd89f9..4fd89f9 100644
--- a/lv2/worker/worker.h
+++ b/include/lv2/worker/worker.h
diff --git a/lv2/atom/atom.meta.ttl b/lv2/atom.lv2/atom.meta.ttl
index adab5f4..adab5f4 100644
--- a/lv2/atom/atom.meta.ttl
+++ b/lv2/atom.lv2/atom.meta.ttl
diff --git a/lv2/atom/atom.ttl b/lv2/atom.lv2/atom.ttl
index ef221ad..bdeaebf 100644
--- a/lv2/atom/atom.ttl
+++ b/lv2/atom.lv2/atom.ttl
@@ -9,10 +9,7 @@
<http://lv2plug.in/ns/ext/atom>
a owl:Ontology ;
- rdfs:seeAlso <atom.h> ,
- <util.h> ,
- <forge.h> ,
- <atom.meta.ttl> ;
+ rdfs:seeAlso <atom.meta.ttl> ;
rdfs:label "LV2 Atom" ;
rdfs:comment "A generic value container and several data types." ;
owl:imports <http://lv2plug.in/ns/lv2core> ,
diff --git a/lv2/atom/manifest.ttl b/lv2/atom.lv2/manifest.ttl
index 3cb5134..3cb5134 100644
--- a/lv2/atom/manifest.ttl
+++ b/lv2/atom.lv2/manifest.ttl
diff --git a/lv2/atom/meson.build b/lv2/atom/meson.build
deleted file mode 100644
index 3dc43b3..0000000
--- a/lv2/atom/meson.build
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'atom'
-path = 'ns' / 'ext' / name
-
-atom_data = files(
- 'atom.meta.ttl',
- 'atom.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'atom.h',
- 'forge.h',
- 'util.h',
-)
-
-tests = [
- 'atom-test',
- 'forge-overflow-test',
-]
-
-# Install specification bundle
-install_data(atom_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build and run tests
-if not get_option('tests').disabled()
- foreach test : tests
- test(test,
- executable(
- test,
- files('@0@.c'.format(test)),
- c_args: c_suppressions,
- include_directories: include_directories('../../'),
- ),
- suite: 'unit')
- endforeach
-endif
-
-# Build documentation
-if build_docs
- custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('atom.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/buf-size/buf-size.meta.ttl b/lv2/buf-size.lv2/buf-size.meta.ttl
index b1d8011..b1d8011 100644
--- a/lv2/buf-size/buf-size.meta.ttl
+++ b/lv2/buf-size.lv2/buf-size.meta.ttl
diff --git a/lv2/buf-size/buf-size.ttl b/lv2/buf-size.lv2/buf-size.ttl
index c78d2cc..4f6bd52 100644
--- a/lv2/buf-size/buf-size.ttl
+++ b/lv2/buf-size.lv2/buf-size.ttl
@@ -10,8 +10,7 @@
a owl:Ontology ;
rdfs:label "LV2 Buf Size" ;
rdfs:comment "Access to, and restrictions on, buffer sizes." ;
- rdfs:seeAlso <buf-size.h> ,
- <buf-size.meta.ttl> ;
+ rdfs:seeAlso <buf-size.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> ,
<http://lv2plug.in/ns/ext/options> .
diff --git a/lv2/buf-size/manifest.ttl b/lv2/buf-size.lv2/manifest.ttl
index d242f97..d242f97 100644
--- a/lv2/buf-size/manifest.ttl
+++ b/lv2/buf-size.lv2/manifest.ttl
diff --git a/lv2/buf-size/meson.build b/lv2/buf-size/meson.build
deleted file mode 100644
index c0b3a5e..0000000
--- a/lv2/buf-size/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'buf-size'
-path = 'ns' / 'ext' / name
-
-buf_size_data = files(
- 'buf-size.meta.ttl',
- 'buf-size.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'buf-size.h',
-)
-
-# Install extension bundle
-install_data(buf_size_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_buf_size_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('buf-size.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/core/lv2core.meta.ttl b/lv2/core.lv2/lv2core.meta.ttl
index 9faea9d..9faea9d 100644
--- a/lv2/core/lv2core.meta.ttl
+++ b/lv2/core.lv2/lv2core.meta.ttl
diff --git a/lv2/core/lv2core.ttl b/lv2/core.lv2/lv2core.ttl
index bd9fc93..f78865b 100644
--- a/lv2/core/lv2core.ttl
+++ b/lv2/core.lv2/lv2core.ttl
@@ -9,9 +9,7 @@
a owl:Ontology ;
rdfs:label "LV2" ;
rdfs:comment "An extensible open standard for audio plugins." ;
- rdfs:seeAlso <lv2.h> ,
- <lv2_util.h> ,
- <lv2core.meta.ttl> ;
+ rdfs:seeAlso <lv2core.meta.ttl> ;
owl:imports doap: .
lv2:Specification
diff --git a/lv2/core/manifest.ttl b/lv2/core.lv2/manifest.ttl
index 6e61dde..6e61dde 100644
--- a/lv2/core/manifest.ttl
+++ b/lv2/core.lv2/manifest.ttl
diff --git a/lv2/core/meta.ttl b/lv2/core.lv2/meta.ttl
index 34cfa4f..d8878c1 100644
--- a/lv2/core/meta.ttl
+++ b/lv2/core.lv2/meta.ttl
@@ -48,6 +48,10 @@ THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH R
rdfs:label "Replace canonical dcs ontology with a minimal version for LV2."
] , [
rdfs:label "Switch to Meson build system."
+ ] , [
+ rdfs:label "Separate API headers from data."
+ ] , [
+ rdfs:label "Rearrange source tree to be directly usable by dependants."
]
]
] , [
diff --git a/lv2/core/people.ttl b/lv2/core.lv2/people.ttl
index 52d0384..52d0384 100644
--- a/lv2/core/people.ttl
+++ b/lv2/core.lv2/people.ttl
diff --git a/lv2/core/meson.build b/lv2/core/meson.build
deleted file mode 100644
index a629d0a..0000000
--- a/lv2/core/meson.build
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'core'
-path = 'ns' / 'lv2core'
-
-core_data = files(
- 'lv2core.meta.ttl',
- 'lv2core.ttl',
- 'manifest.ttl',
- 'meta.ttl',
- 'people.ttl',
-)
-
-headers = files(
- 'attributes.h',
- 'lv2.h',
- 'lv2_util.h',
-)
-
-# Install specification bundle
-install_data(core_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / 'ns' / 'lv2core')
-endif
-
-# Build documentation
-if build_docs
- lv2_core_docs = custom_target(
- 'lv2core.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../html',
- '--style-uri=../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('lv2core.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns',
- output: 'lv2core.html',
- )
-endif
diff --git a/lv2/data-access/data-access.meta.ttl b/lv2/data-access.lv2/data-access.meta.ttl
index 3184110..822b28c 100644
--- a/lv2/data-access/data-access.meta.ttl
+++ b/lv2/data-access.lv2/data-access.meta.ttl
@@ -7,7 +7,6 @@
<http://lv2plug.in/ns/ext/data-access>
a doap:Project ;
- rdfs:seeAlso <data-access.h> ;
doap:license <http://opensource.org/licenses/isc> ;
doap:name "LV2 Data Access" ;
doap:shortdesc "Provides access to plugin extension data." ;
diff --git a/lv2/data-access/data-access.ttl b/lv2/data-access.lv2/data-access.ttl
index 0185cd0..b0dc6f4 100644
--- a/lv2/data-access/data-access.ttl
+++ b/lv2/data-access.lv2/data-access.ttl
@@ -6,6 +6,5 @@
a lv2:Feature ;
rdfs:label "data access" ;
rdfs:comment "A feature that provides access to plugin extension data." ;
- rdfs:seeAlso <data-access.h> ,
- <data-access.meta.ttl> .
+ rdfs:seeAlso <data-access.meta.ttl> .
diff --git a/lv2/data-access/manifest.ttl b/lv2/data-access.lv2/manifest.ttl
index 9585a5e..9585a5e 100644
--- a/lv2/data-access/manifest.ttl
+++ b/lv2/data-access.lv2/manifest.ttl
diff --git a/lv2/data-access/meson.build b/lv2/data-access/meson.build
deleted file mode 100644
index 05b086b..0000000
--- a/lv2/data-access/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'data-access'
-path = 'ns' / 'ext' / 'data-access'
-
-data_access_data = files(
- 'data-access.meta.ttl',
- 'data-access.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'data-access.h',
-)
-
-# Install specification bundle
-install_data(data_access_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_data_access_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('data-access.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/dynmanifest/dynmanifest.meta.ttl b/lv2/dynmanifest.lv2/dynmanifest.meta.ttl
index 4e66d98..4e66d98 100644
--- a/lv2/dynmanifest/dynmanifest.meta.ttl
+++ b/lv2/dynmanifest.lv2/dynmanifest.meta.ttl
diff --git a/lv2/dynmanifest/dynmanifest.ttl b/lv2/dynmanifest.lv2/dynmanifest.ttl
index 4e2e830..b46d694 100644
--- a/lv2/dynmanifest/dynmanifest.ttl
+++ b/lv2/dynmanifest.lv2/dynmanifest.ttl
@@ -9,8 +9,7 @@
a owl:Ontology ;
rdfs:label "LV2 Dyn Manifest" ;
rdfs:comment "Support for dynamic manifest data generation." ;
- rdfs:seeAlso <dynmanifest.h> ,
- <dynmanifest.meta.ttl> .
+ rdfs:seeAlso <dynmanifest.meta.ttl> .
dman:DynManifest
a rdfs:Class ;
diff --git a/lv2/dynmanifest/manifest.ttl b/lv2/dynmanifest.lv2/manifest.ttl
index db27a73..db27a73 100644
--- a/lv2/dynmanifest/manifest.ttl
+++ b/lv2/dynmanifest.lv2/manifest.ttl
diff --git a/lv2/dynmanifest/meson.build b/lv2/dynmanifest/meson.build
deleted file mode 100644
index ba78972..0000000
--- a/lv2/dynmanifest/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'dynmanifest'
-path = 'ns' / 'ext' / 'dynmanifest'
-
-dynmanifest_data = files(
- 'dynmanifest.meta.ttl',
- 'dynmanifest.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'dynmanifest.h',
-)
-
-# Install specification bundle
-install_data(dynmanifest_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_dynmanifest_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('dynmanifest.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/event/event.meta.ttl b/lv2/event.lv2/event.meta.ttl
index e9c26bc..e9c26bc 100644
--- a/lv2/event/event.meta.ttl
+++ b/lv2/event.lv2/event.meta.ttl
diff --git a/lv2/event/event.ttl b/lv2/event.lv2/event.ttl
index 119e606..2d871f6 100644
--- a/lv2/event/event.ttl
+++ b/lv2/event.lv2/event.ttl
@@ -9,9 +9,7 @@
owl:deprecated true ;
rdfs:label "LV2 Event" ;
rdfs:comment "A port-based real-time generic event interface." ;
- rdfs:seeAlso <event.h> ,
- <event-helpers.h> ,
- <event.meta.ttl> ;
+ rdfs:seeAlso <event.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> .
ev:EventPort
diff --git a/lv2/event/manifest.ttl b/lv2/event.lv2/manifest.ttl
index 230fe73..230fe73 100644
--- a/lv2/event/manifest.ttl
+++ b/lv2/event.lv2/manifest.ttl
diff --git a/lv2/event/meson.build b/lv2/event/meson.build
deleted file mode 100644
index 020acc8..0000000
--- a/lv2/event/meson.build
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'event'
-path = 'ns' / 'ext' / 'event'
-
-event_data = files(
- 'event.meta.ttl',
- 'event.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'event-helpers.h',
- 'event.h',
-)
-
-# Install specification bundle
-install_data(event_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_event_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('event.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/instance-access/instance-access.meta.ttl b/lv2/instance-access.lv2/instance-access.meta.ttl
index 875e2f8..875e2f8 100644
--- a/lv2/instance-access/instance-access.meta.ttl
+++ b/lv2/instance-access.lv2/instance-access.meta.ttl
diff --git a/lv2/instance-access/instance-access.ttl b/lv2/instance-access.lv2/instance-access.ttl
index 085ae37..637f4e0 100644
--- a/lv2/instance-access/instance-access.ttl
+++ b/lv2/instance-access.lv2/instance-access.ttl
@@ -6,6 +6,5 @@
a lv2:Feature ;
rdfs:label "instance access" ;
rdfs:comment "A feature that provides access to a plugin instance." ;
- rdfs:seeAlso <instance-access.h> ,
- <instance-access.meta.ttl> .
+ rdfs:seeAlso <instance-access.meta.ttl> .
diff --git a/lv2/instance-access/manifest.ttl b/lv2/instance-access.lv2/manifest.ttl
index e6c8810..e6c8810 100644
--- a/lv2/instance-access/manifest.ttl
+++ b/lv2/instance-access.lv2/manifest.ttl
diff --git a/lv2/instance-access/meson.build b/lv2/instance-access/meson.build
deleted file mode 100644
index 70ff48e..0000000
--- a/lv2/instance-access/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'instance-access'
-path = 'ns' / 'ext' / 'instance-access'
-
-instance_access_data = files(
- 'instance-access.meta.ttl',
- 'instance-access.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'instance-access.h',
-)
-
-# Install specification bundle
-install_data(instance_access_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_instance_access_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('instance-access.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/log/log.meta.ttl b/lv2/log.lv2/log.meta.ttl
index 87cff43..87cff43 100644
--- a/lv2/log/log.meta.ttl
+++ b/lv2/log.lv2/log.meta.ttl
diff --git a/lv2/log/log.ttl b/lv2/log.lv2/log.ttl
index a8c4236..0b334ed 100644
--- a/lv2/log/log.ttl
+++ b/lv2/log.lv2/log.ttl
@@ -9,8 +9,7 @@
a owl:Ontology ;
rdfs:label "LV2 Log" ;
rdfs:comment "A feature for writing log messages." ;
- rdfs:seeAlso <log.h> ,
- <log.meta.ttl> ;
+ rdfs:seeAlso <log.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> .
log:Entry
diff --git a/lv2/log/manifest.ttl b/lv2/log.lv2/manifest.ttl
index bcaeff3..bcaeff3 100644
--- a/lv2/log/manifest.ttl
+++ b/lv2/log.lv2/manifest.ttl
diff --git a/lv2/log/meson.build b/lv2/log/meson.build
deleted file mode 100644
index 9b13db0..0000000
--- a/lv2/log/meson.build
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'log'
-path = 'ns' / 'ext' / 'log'
-
-log_data = files(
- 'log.meta.ttl',
- 'log.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'log.h',
- 'logger.h',
-)
-
-# Install specification bundle
-install_data(log_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_log_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('log.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/meson.build b/lv2/meson.build
deleted file mode 100644
index d8875eb..0000000
--- a/lv2/meson.build
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-dirs = [
- 'atom',
- 'buf-size',
- 'core',
- 'data-access',
- 'dynmanifest',
- 'event',
- 'instance-access',
- 'log',
- 'midi',
- 'morph',
- 'options',
- 'parameters',
- 'patch',
- 'port-groups',
- 'port-props',
- 'presets',
- 'resize-port',
- 'state',
- 'time',
- 'ui',
- 'units',
- 'uri-map',
- 'urid',
- 'worker',
-]
-
-foreach dir : dirs
- subdir(dir)
-endforeach
-
-if not get_option('tests').disabled()
- check_python = pymod.find_installation('python3',
- modules: ['rdflib'],
- required: get_option('tests'))
-
- if check_python.found()
- lv2_check_specification = files(
- lv2_source_root / 'scripts' / 'lv2_check_specification.py'
- )
-
- foreach dir : dirs
- test(dir,
- lv2_check_specification,
- args: files(dir / 'manifest.ttl'),
- suite: ['spec'])
- endforeach
- endif
-endif
diff --git a/lv2/midi/manifest.ttl b/lv2/midi.lv2/manifest.ttl
index f141936..f141936 100644
--- a/lv2/midi/manifest.ttl
+++ b/lv2/midi.lv2/manifest.ttl
diff --git a/lv2/midi/midi.meta.ttl b/lv2/midi.lv2/midi.meta.ttl
index 7efdb01..7efdb01 100644
--- a/lv2/midi/midi.meta.ttl
+++ b/lv2/midi.lv2/midi.meta.ttl
diff --git a/lv2/midi/midi.ttl b/lv2/midi.lv2/midi.ttl
index 81f3495..4a0e8c9 100644
--- a/lv2/midi/midi.ttl
+++ b/lv2/midi.lv2/midi.ttl
@@ -11,8 +11,7 @@
a owl:Ontology ;
rdfs:label "LV2 MIDI" ;
rdfs:comment "A normalised definition of raw MIDI." ;
- rdfs:seeAlso <midi.h> ,
- <midi.meta.ttl> .
+ rdfs:seeAlso <midi.meta.ttl> .
midi:ActiveSense
a rdfs:Class ;
diff --git a/lv2/midi/meson.build b/lv2/midi/meson.build
deleted file mode 100644
index 7907dfa..0000000
--- a/lv2/midi/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'midi'
-path = 'ns' / 'ext' / 'midi'
-
-midi_data = files(
- 'midi.meta.ttl',
- 'midi.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'midi.h',
-)
-
-# Install specification bundle
-install_data(midi_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_midi_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('midi.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/morph/manifest.ttl b/lv2/morph.lv2/manifest.ttl
index 7c85cfd..7c85cfd 100644
--- a/lv2/morph/manifest.ttl
+++ b/lv2/morph.lv2/manifest.ttl
diff --git a/lv2/morph/morph.meta.ttl b/lv2/morph.lv2/morph.meta.ttl
index c247783..c247783 100644
--- a/lv2/morph/morph.meta.ttl
+++ b/lv2/morph.lv2/morph.meta.ttl
diff --git a/lv2/morph/morph.ttl b/lv2/morph.lv2/morph.ttl
index a771e03..9b8ef51 100644
--- a/lv2/morph/morph.ttl
+++ b/lv2/morph.lv2/morph.ttl
@@ -12,8 +12,7 @@
a owl:Ontology ;
rdfs:label "LV2 Morph" ;
rdfs:comment "Ports that can dynamically change type." ;
- rdfs:seeAlso <morph.h> ,
- <morph.meta.ttl> ;
+ rdfs:seeAlso <morph.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> .
morph:MorphPort
diff --git a/lv2/morph/meson.build b/lv2/morph/meson.build
deleted file mode 100644
index 0742c03..0000000
--- a/lv2/morph/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'morph'
-path = 'ns' / 'ext' / 'morph'
-
-morph_data = files(
- 'morph.meta.ttl',
- 'morph.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'morph.h',
-)
-
-# Install specification bundle
-install_data(morph_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_morph_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('morph.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/options/manifest.ttl b/lv2/options.lv2/manifest.ttl
index 18db448..18db448 100644
--- a/lv2/options/manifest.ttl
+++ b/lv2/options.lv2/manifest.ttl
diff --git a/lv2/options/options.meta.ttl b/lv2/options.lv2/options.meta.ttl
index 838b0b9..838b0b9 100644
--- a/lv2/options/options.meta.ttl
+++ b/lv2/options.lv2/options.meta.ttl
diff --git a/lv2/options/options.ttl b/lv2/options.lv2/options.ttl
index 78defef..5f9fcc9 100644
--- a/lv2/options/options.ttl
+++ b/lv2/options.lv2/options.ttl
@@ -9,8 +9,7 @@
a owl:Ontology ;
rdfs:label "LV2 Options" ;
rdfs:comment "Runtime options for LV2 plugins and UIs." ;
- rdfs:seeAlso <options.h> ,
- <options.meta.ttl> ;
+ rdfs:seeAlso <options.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> .
opts:Option
diff --git a/lv2/options/meson.build b/lv2/options/meson.build
deleted file mode 100644
index 5644b87..0000000
--- a/lv2/options/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'options'
-path = 'ns' / 'ext' / 'options'
-
-options_data = files(
- 'options.meta.ttl',
- 'options.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'options.h',
-)
-
-# Install specification bundle
-install_data(options_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_options_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('options.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/parameters/manifest.ttl b/lv2/parameters.lv2/manifest.ttl
index 57f5d2e..57f5d2e 100644
--- a/lv2/parameters/manifest.ttl
+++ b/lv2/parameters.lv2/manifest.ttl
diff --git a/lv2/parameters/parameters.meta.ttl b/lv2/parameters.lv2/parameters.meta.ttl
index 9d7c623..9d7c623 100644
--- a/lv2/parameters/parameters.meta.ttl
+++ b/lv2/parameters.lv2/parameters.meta.ttl
diff --git a/lv2/parameters/parameters.ttl b/lv2/parameters.lv2/parameters.ttl
index 9987812..9987812 100644
--- a/lv2/parameters/parameters.ttl
+++ b/lv2/parameters.lv2/parameters.ttl
diff --git a/lv2/parameters/meson.build b/lv2/parameters/meson.build
deleted file mode 100644
index ae50866..0000000
--- a/lv2/parameters/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'parameters'
-path = 'ns' / 'ext' / 'parameters'
-
-parameters_data = files(
- 'parameters.meta.ttl',
- 'parameters.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'parameters.h',
-)
-
-# Install specification bundle
-install_data(parameters_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_parameters_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('parameters.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/patch/manifest.ttl b/lv2/patch.lv2/manifest.ttl
index 4bf9cfb..4bf9cfb 100644
--- a/lv2/patch/manifest.ttl
+++ b/lv2/patch.lv2/manifest.ttl
diff --git a/lv2/patch/patch.meta.ttl b/lv2/patch.lv2/patch.meta.ttl
index 12cb6c6..12cb6c6 100644
--- a/lv2/patch/patch.meta.ttl
+++ b/lv2/patch.lv2/patch.meta.ttl
diff --git a/lv2/patch/patch.ttl b/lv2/patch.lv2/patch.ttl
index c7f6d76..33d04d1 100644
--- a/lv2/patch/patch.ttl
+++ b/lv2/patch.lv2/patch.ttl
@@ -7,8 +7,7 @@
<http://lv2plug.in/ns/ext/patch>
a owl:Ontology ;
- rdfs:seeAlso <patch.h> ,
- <patch.meta.ttl> ;
+ rdfs:seeAlso <patch.meta.ttl> ;
rdfs:label "LV2 Patch" ;
rdfs:comment "A protocol for accessing and manipulating properties." .
diff --git a/lv2/patch/meson.build b/lv2/patch/meson.build
deleted file mode 100644
index cb54fb6..0000000
--- a/lv2/patch/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'patch'
-path = 'ns' / 'ext' / 'patch'
-
-patch_data = files(
- 'patch.meta.ttl',
- 'patch.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'patch.h',
-)
-
-# Install specification bundle
-install_data(patch_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_patch_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('patch.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/port-groups/manifest.ttl b/lv2/port-groups.lv2/manifest.ttl
index a887cb0..a887cb0 100644
--- a/lv2/port-groups/manifest.ttl
+++ b/lv2/port-groups.lv2/manifest.ttl
diff --git a/lv2/port-groups/port-groups.meta.ttl b/lv2/port-groups.lv2/port-groups.meta.ttl
index 67408ec..67408ec 100644
--- a/lv2/port-groups/port-groups.meta.ttl
+++ b/lv2/port-groups.lv2/port-groups.meta.ttl
diff --git a/lv2/port-groups/port-groups.ttl b/lv2/port-groups.lv2/port-groups.ttl
index 2806821..2806821 100644
--- a/lv2/port-groups/port-groups.ttl
+++ b/lv2/port-groups.lv2/port-groups.ttl
diff --git a/lv2/port-groups/meson.build b/lv2/port-groups/meson.build
deleted file mode 100644
index 816109f..0000000
--- a/lv2/port-groups/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'port-groups'
-path = 'ns' / 'ext' / 'port-groups'
-
-port_groups_data = files(
- 'port-groups.meta.ttl',
- 'port-groups.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'port-groups.h',
-)
-
-# Install specification bundle
-install_data(port_groups_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_port_groups_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('port-groups.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/port-props/manifest.ttl b/lv2/port-props.lv2/manifest.ttl
index 45f598d..45f598d 100644
--- a/lv2/port-props/manifest.ttl
+++ b/lv2/port-props.lv2/manifest.ttl
diff --git a/lv2/port-props/port-props.meta.ttl b/lv2/port-props.lv2/port-props.meta.ttl
index 7077e4b..7077e4b 100644
--- a/lv2/port-props/port-props.meta.ttl
+++ b/lv2/port-props.lv2/port-props.meta.ttl
diff --git a/lv2/port-props/port-props.ttl b/lv2/port-props.lv2/port-props.ttl
index ea25c6b..ea25c6b 100644
--- a/lv2/port-props/port-props.ttl
+++ b/lv2/port-props.lv2/port-props.ttl
diff --git a/lv2/port-props/meson.build b/lv2/port-props/meson.build
deleted file mode 100644
index 900b637..0000000
--- a/lv2/port-props/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'port-props'
-path = 'ns' / 'ext' / 'port-props'
-
-port_props_data = files(
- 'port-props.meta.ttl',
- 'port-props.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'port-props.h',
-)
-
-# Install specification bundle
-install_data(port_props_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_port_props_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('port-props.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/presets/manifest.ttl b/lv2/presets.lv2/manifest.ttl
index b9cacf5..b9cacf5 100644
--- a/lv2/presets/manifest.ttl
+++ b/lv2/presets.lv2/manifest.ttl
diff --git a/lv2/presets/presets.meta.ttl b/lv2/presets.lv2/presets.meta.ttl
index 8ff25c1..8ff25c1 100644
--- a/lv2/presets/presets.meta.ttl
+++ b/lv2/presets.lv2/presets.meta.ttl
diff --git a/lv2/presets/presets.ttl b/lv2/presets.lv2/presets.ttl
index 60189ea..60189ea 100644
--- a/lv2/presets/presets.ttl
+++ b/lv2/presets.lv2/presets.ttl
diff --git a/lv2/presets/meson.build b/lv2/presets/meson.build
deleted file mode 100644
index a3f2feb..0000000
--- a/lv2/presets/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'presets'
-path = 'ns' / 'ext' / 'presets'
-
-presets_data = files(
- 'presets.meta.ttl',
- 'presets.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'presets.h',
-)
-
-# Install specification bundle
-install_data(presets_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_presets_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('presets.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/resize-port/manifest.ttl b/lv2/resize-port.lv2/manifest.ttl
index 9fae8b8..9fae8b8 100644
--- a/lv2/resize-port/manifest.ttl
+++ b/lv2/resize-port.lv2/manifest.ttl
diff --git a/lv2/resize-port/resize-port.meta.ttl b/lv2/resize-port.lv2/resize-port.meta.ttl
index d44620c..d44620c 100644
--- a/lv2/resize-port/resize-port.meta.ttl
+++ b/lv2/resize-port.lv2/resize-port.meta.ttl
diff --git a/lv2/resize-port/resize-port.ttl b/lv2/resize-port.lv2/resize-port.ttl
index a6712e7..6f42c8f 100644
--- a/lv2/resize-port/resize-port.ttl
+++ b/lv2/resize-port.lv2/resize-port.ttl
@@ -9,8 +9,7 @@
a owl:Ontology ;
rdfs:label "LV2 Resize Port" ;
rdfs:comment "Dynamically sized LV2 port buffers." ;
- rdfs:seeAlso <resize-port.h> ,
- <resize-port.meta.ttl> ;
+ rdfs:seeAlso <resize-port.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> .
rsz:resize
diff --git a/lv2/resize-port/meson.build b/lv2/resize-port/meson.build
deleted file mode 100644
index cd18a2c..0000000
--- a/lv2/resize-port/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'resize-port'
-path = 'ns' / 'ext' / 'resize-port'
-
-resize_port_data = files(
- 'resize-port.meta.ttl',
- 'resize-port.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'resize-port.h',
-)
-
-# Install specification bundle
-install_data(resize_port_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_resize_port_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('resize-port.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/state/manifest.ttl b/lv2/state.lv2/manifest.ttl
index e56c4e5..e56c4e5 100644
--- a/lv2/state/manifest.ttl
+++ b/lv2/state.lv2/manifest.ttl
diff --git a/lv2/state/state.meta.ttl b/lv2/state.lv2/state.meta.ttl
index cebe0ac..cebe0ac 100644
--- a/lv2/state/state.meta.ttl
+++ b/lv2/state.lv2/state.meta.ttl
diff --git a/lv2/state/state.ttl b/lv2/state.lv2/state.ttl
index 48537c8..463fdb9 100644
--- a/lv2/state/state.ttl
+++ b/lv2/state.lv2/state.ttl
@@ -8,8 +8,7 @@
a owl:Ontology ;
rdfs:label "LV2 State" ;
rdfs:comment "An interface for LV2 plugins to save and restore state." ;
- rdfs:seeAlso <state.h> ,
- <state.meta.ttl> ;
+ rdfs:seeAlso <state.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> .
state:interface
diff --git a/lv2/state/meson.build b/lv2/state/meson.build
deleted file mode 100644
index 7914797..0000000
--- a/lv2/state/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'state'
-path = 'ns' / 'ext' / 'state'
-
-state_data = files(
- 'state.meta.ttl',
- 'state.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'state.h',
-)
-
-# Install specification bundle
-install_data(state_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_state_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('state.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/time/manifest.ttl b/lv2/time.lv2/manifest.ttl
index d80aa75..d80aa75 100644
--- a/lv2/time/manifest.ttl
+++ b/lv2/time.lv2/manifest.ttl
diff --git a/lv2/time/time.meta.ttl b/lv2/time.lv2/time.meta.ttl
index 2b99cb7..2b99cb7 100644
--- a/lv2/time/time.meta.ttl
+++ b/lv2/time.lv2/time.meta.ttl
diff --git a/lv2/time/time.ttl b/lv2/time.lv2/time.ttl
index a4085c6..f3da9b0 100644
--- a/lv2/time/time.ttl
+++ b/lv2/time.lv2/time.ttl
@@ -8,8 +8,7 @@
a owl:Ontology ;
rdfs:label "LV2 Time" ;
rdfs:comment "A vocabulary for describing musical time." ;
- rdfs:seeAlso <time.h> ,
- <time.meta.ttl> .
+ rdfs:seeAlso <time.meta.ttl> .
time:Time
a rdfs:Class ,
diff --git a/lv2/time/meson.build b/lv2/time/meson.build
deleted file mode 100644
index 5f47e89..0000000
--- a/lv2/time/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'time'
-path = 'ns' / 'ext' / 'time'
-
-time_data = files(
- 'time.meta.ttl',
- 'time.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'time.h',
-)
-
-# Install specification bundle
-install_data(time_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_time_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('time.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/ui/manifest.ttl b/lv2/ui.lv2/manifest.ttl
index d3b12b5..d3b12b5 100644
--- a/lv2/ui/manifest.ttl
+++ b/lv2/ui.lv2/manifest.ttl
diff --git a/lv2/ui/ui.meta.ttl b/lv2/ui.lv2/ui.meta.ttl
index 95336bf..95336bf 100644
--- a/lv2/ui/ui.meta.ttl
+++ b/lv2/ui.lv2/ui.meta.ttl
diff --git a/lv2/ui/ui.ttl b/lv2/ui.lv2/ui.ttl
index b355764..1c2e455 100644
--- a/lv2/ui/ui.ttl
+++ b/lv2/ui.lv2/ui.ttl
@@ -10,8 +10,7 @@
a owl:Ontology ;
rdfs:label "LV2 UI" ;
rdfs:comment "User interfaces for LV2 plugins." ;
- rdfs:seeAlso <ui.h> ,
- <ui.meta.ttl> ;
+ rdfs:seeAlso <ui.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> ,
<http://lv2plug.in/ns/ext/options> .
diff --git a/lv2/ui/meson.build b/lv2/ui/meson.build
deleted file mode 100644
index 3eb4223..0000000
--- a/lv2/ui/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'ui'
-path = 'ns' / 'extensions' / 'ui'
-
-ui_data = files(
- 'ui.meta.ttl',
- 'ui.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'ui.h',
-)
-
-# Install specification bundle
-install_data(ui_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_ui_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('ui.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'extensions',
- output: name + '.html',
- )
-endif
diff --git a/lv2/units/manifest.ttl b/lv2/units.lv2/manifest.ttl
index c6c9286..c6c9286 100644
--- a/lv2/units/manifest.ttl
+++ b/lv2/units.lv2/manifest.ttl
diff --git a/lv2/units/units.meta.ttl b/lv2/units.lv2/units.meta.ttl
index a857046..a857046 100644
--- a/lv2/units/units.meta.ttl
+++ b/lv2/units.lv2/units.meta.ttl
diff --git a/lv2/units/units.ttl b/lv2/units.lv2/units.ttl
index 959c063..21a1898 100644
--- a/lv2/units/units.ttl
+++ b/lv2/units.lv2/units.ttl
@@ -8,8 +8,7 @@
a owl:Ontology ;
rdfs:label "LV2 Units" ;
rdfs:comment "Units for LV2 values." ;
- rdfs:seeAlso <units.h> ,
- <units.meta.ttl> .
+ rdfs:seeAlso <units.meta.ttl> .
units:Unit
a rdfs:Class ,
diff --git a/lv2/units/meson.build b/lv2/units/meson.build
deleted file mode 100644
index 00d50dc..0000000
--- a/lv2/units/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'units'
-path = 'ns' / 'extensions' / 'units'
-
-units_data = files(
- 'units.meta.ttl',
- 'units.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'units.h',
-)
-
-# Install specification bundle
-install_data(units_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_units_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('units.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'extensions',
- output: name + '.html',
- )
-endif
diff --git a/lv2/uri-map/manifest.ttl b/lv2/uri-map.lv2/manifest.ttl
index a64e4fb..a64e4fb 100644
--- a/lv2/uri-map/manifest.ttl
+++ b/lv2/uri-map.lv2/manifest.ttl
diff --git a/lv2/uri-map/uri-map.meta.ttl b/lv2/uri-map.lv2/uri-map.meta.ttl
index acd1c26..acd1c26 100644
--- a/lv2/uri-map/uri-map.meta.ttl
+++ b/lv2/uri-map.lv2/uri-map.meta.ttl
diff --git a/lv2/uri-map/uri-map.ttl b/lv2/uri-map.lv2/uri-map.ttl
index bfb0d0b..7a7d6e3 100644
--- a/lv2/uri-map/uri-map.ttl
+++ b/lv2/uri-map.lv2/uri-map.ttl
@@ -9,6 +9,5 @@
owl:deprecated true ;
rdfs:label "LV2 URI Map" ;
rdfs:comment "A feature for mapping URIs to integers." ;
- rdfs:seeAlso <uri-map.h> ,
- <uri-map.meta.ttl> .
+ rdfs:seeAlso <uri-map.meta.ttl> .
diff --git a/lv2/uri-map/meson.build b/lv2/uri-map/meson.build
deleted file mode 100644
index 1961645..0000000
--- a/lv2/uri-map/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'uri-map'
-path = 'ns' / 'ext' / 'uri-map'
-
-uri_map_data = files(
- 'uri-map.meta.ttl',
- 'uri-map.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'uri-map.h',
-)
-
-# Install specification bundle
-install_data(uri_map_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_uri_map_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('uri-map.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/urid/manifest.ttl b/lv2/urid.lv2/manifest.ttl
index 772e2b6..772e2b6 100644
--- a/lv2/urid/manifest.ttl
+++ b/lv2/urid.lv2/manifest.ttl
diff --git a/lv2/urid/urid.meta.ttl b/lv2/urid.lv2/urid.meta.ttl
index b2a74fa..b2a74fa 100644
--- a/lv2/urid/urid.meta.ttl
+++ b/lv2/urid.lv2/urid.meta.ttl
diff --git a/lv2/urid/urid.ttl b/lv2/urid.lv2/urid.ttl
index 53aa1e5..6ce666a 100644
--- a/lv2/urid/urid.ttl
+++ b/lv2/urid.lv2/urid.ttl
@@ -7,8 +7,7 @@
a owl:Ontology ;
rdfs:label "LV2 URID" ;
rdfs:comment "Features for mapping URIs to and from integers." ;
- rdfs:seeAlso <urid.h> ,
- <urid.meta.ttl> ;
+ rdfs:seeAlso <urid.meta.ttl> ;
owl:imports <http://lv2plug.in/ns/lv2core> .
urid:map
diff --git a/lv2/urid/meson.build b/lv2/urid/meson.build
deleted file mode 100644
index 38efe4b..0000000
--- a/lv2/urid/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'urid'
-path = 'ns' / 'ext' / 'urid'
-
-urid_data = files(
- 'urid.meta.ttl',
- 'urid.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'urid.h',
-)
-
-# Install specification bundle
-install_data(urid_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_urid_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('urid.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/worker/manifest.ttl b/lv2/worker.lv2/manifest.ttl
index 692720d..692720d 100644
--- a/lv2/worker/manifest.ttl
+++ b/lv2/worker.lv2/manifest.ttl
diff --git a/lv2/worker/worker.meta.ttl b/lv2/worker.lv2/worker.meta.ttl
index 2fc51bc..2fc51bc 100644
--- a/lv2/worker/worker.meta.ttl
+++ b/lv2/worker.lv2/worker.meta.ttl
diff --git a/lv2/worker/worker.ttl b/lv2/worker.lv2/worker.ttl
index cb8a81a..581be71 100644
--- a/lv2/worker/worker.ttl
+++ b/lv2/worker.lv2/worker.ttl
@@ -10,8 +10,7 @@
rdfs:label "LV2 Worker" ;
rdfs:comment "Support for doing non-realtime work in plugins." ;
owl:imports <http://lv2plug.in/ns/lv2core> ;
- rdfs:seeAlso <worker.h> ,
- <worker.meta.ttl> .
+ rdfs:seeAlso <worker.meta.ttl> .
work:interface
a lv2:ExtensionData ;
diff --git a/lv2/worker/meson.build b/lv2/worker/meson.build
deleted file mode 100644
index 248c594..0000000
--- a/lv2/worker/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'worker'
-path = 'ns' / 'ext' / 'worker'
-
-worker_data = files(
- 'worker.meta.ttl',
- 'worker.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'worker.h',
-)
-
-# Install specification bundle
-install_data(worker_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_worker_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('worker.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/meson.build b/meson.build
index 5fbf3ba..44dbdb4 100644
--- a/meson.build
+++ b/meson.build
@@ -61,33 +61,232 @@ endif
# Generage pkg-config file for external dependants
pkg.generate(
- name: 'LV2',
+ description: 'Plugin standard for audio systems',
filebase: 'lv2',
+ name: 'LV2',
subdirs: ['lv2'],
+ variables: [
+ 'lv2dir=' + lv2dir,
+ 'plugindir=' + lv2dir,
+ ],
version: meson.project_version(),
- description: 'Plugin standard for audio systems')
+)
# Declare dependency for internal meson dependants
lv2_dep = declare_dependency(
- include_directories: include_directories('.'),
- version: meson.project_version())
+ include_directories: include_directories('include'),
+ variables: [
+ 'lv2dir=' + lv2_source_root / 'lv2',
+ 'plugindir=' + lv2_build_root / 'plugins',
+ ],
+ version: meson.project_version(),
+)
##################
# Specifications #
##################
-doc_python_modules = [
- 'lxml',
- 'markdown',
- 'pygments',
- 'rdflib',
+# Extensions in http://lv2plug.in/ns/ext/
+ext_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',
+]
+
+# Extensions in http://lv2plug.in/ns/extensions/
+extensions_names = [
+ 'ui',
+ 'units',
]
+# All extensions (not core) in http://lv2plug.in/ns/
+all_extension_names = ext_names + extensions_names
+
+# All specifications in http://lv2plug.in/ns/
+all_spec_names = ['core'] + ext_names + extensions_names
+
+###############
+# API Headers #
+###############
+
+prefix = get_option('prefix')
+includedir = get_option('includedir')
+
+install_subdir('include/lv2', install_dir: includedir)
+
+if get_option('old_headers')
+ uri_include_dir = prefix / includedir / 'lv2' / 'lv2plug.in' / 'ns'
+ include_prefix = 'include' / 'lv2'
+
+ # Install the core headers specially, because they are inconsistent
+
+ core_headers = files(
+ include_prefix / 'core' / 'attributes.h',
+ include_prefix / 'core' / 'lv2.h',
+ include_prefix / 'core' / 'lv2_util.h',
+ )
+
+ # Core headers are inconsistently in "lv2plug.in/ns/lv2core"
+ install_data(core_headers, install_dir: uri_include_dir / 'lv2core')
+
+ # Some extensions are in "lv2plug.in/ns/ext"
+ foreach dir : ext_names
+ install_subdir(
+ include_prefix / dir,
+ install_dir: uri_include_dir / 'ext',
+ )
+ endforeach
+
+ # Some extensions are in "lv2plug.in/ns/extensions"
+ foreach dir : extensions_names
+ install_subdir(
+ include_prefix / dir,
+ install_dir: uri_include_dir / 'extensions',
+ )
+ endforeach
+endif
+
+#######################
+# Scripts and Schemas #
+#######################
+
+subdir('scripts')
+subdir('schemas.lv2')
+
+##################
+# Specifications #
+##################
+
+lv2_check_specification = files('scripts' / 'lv2_check_specification.py')
+
+check_python = pymod.find_installation(
+ 'python3',
+ modules: ['rdflib'],
+ required: get_option('tests'),
+)
+
+foreach bundle_name : all_spec_names
+ bundle = 'lv2' / bundle_name + '.lv2'
+
+ # Check specification
+ if check_python.found()
+ test(
+ bundle_name,
+ lv2_check_specification,
+ args: files(bundle / 'manifest.ttl'),
+ suite: ['spec'],
+ )
+ endif
+
+ # Install specification bundle
+ install_subdir(bundle, install_dir: lv2dir)
+endforeach
+
+spec_files = files(
+ 'lv2/atom.lv2/atom.meta.ttl',
+ 'lv2/atom.lv2/atom.ttl',
+ 'lv2/atom.lv2/manifest.ttl',
+ 'lv2/buf-size.lv2/buf-size.meta.ttl',
+ 'lv2/buf-size.lv2/buf-size.ttl',
+ 'lv2/buf-size.lv2/manifest.ttl',
+ 'lv2/core.lv2/lv2core.meta.ttl',
+ 'lv2/core.lv2/lv2core.ttl',
+ 'lv2/core.lv2/manifest.ttl',
+ 'lv2/core.lv2/meta.ttl',
+ 'lv2/core.lv2/people.ttl',
+ 'lv2/data-access.lv2/data-access.meta.ttl',
+ 'lv2/data-access.lv2/data-access.ttl',
+ 'lv2/data-access.lv2/manifest.ttl',
+ 'lv2/dynmanifest.lv2/dynmanifest.meta.ttl',
+ 'lv2/dynmanifest.lv2/dynmanifest.ttl',
+ 'lv2/dynmanifest.lv2/manifest.ttl',
+ 'lv2/event.lv2/event.meta.ttl',
+ 'lv2/event.lv2/event.ttl',
+ 'lv2/event.lv2/manifest.ttl',
+ 'lv2/instance-access.lv2/instance-access.meta.ttl',
+ 'lv2/instance-access.lv2/instance-access.ttl',
+ 'lv2/instance-access.lv2/manifest.ttl',
+ 'lv2/log.lv2/log.meta.ttl',
+ 'lv2/log.lv2/log.ttl',
+ 'lv2/log.lv2/manifest.ttl',
+ 'lv2/midi.lv2/manifest.ttl',
+ 'lv2/midi.lv2/midi.meta.ttl',
+ 'lv2/midi.lv2/midi.ttl',
+ 'lv2/morph.lv2/manifest.ttl',
+ 'lv2/morph.lv2/morph.meta.ttl',
+ 'lv2/morph.lv2/morph.ttl',
+ 'lv2/options.lv2/manifest.ttl',
+ 'lv2/options.lv2/options.meta.ttl',
+ 'lv2/options.lv2/options.ttl',
+ 'lv2/parameters.lv2/manifest.ttl',
+ 'lv2/parameters.lv2/parameters.meta.ttl',
+ 'lv2/parameters.lv2/parameters.ttl',
+ 'lv2/patch.lv2/manifest.ttl',
+ 'lv2/patch.lv2/patch.meta.ttl',
+ 'lv2/patch.lv2/patch.ttl',
+ 'lv2/port-groups.lv2/manifest.ttl',
+ 'lv2/port-groups.lv2/port-groups.meta.ttl',
+ 'lv2/port-groups.lv2/port-groups.ttl',
+ 'lv2/port-props.lv2/manifest.ttl',
+ 'lv2/port-props.lv2/port-props.meta.ttl',
+ 'lv2/port-props.lv2/port-props.ttl',
+ 'lv2/presets.lv2/manifest.ttl',
+ 'lv2/presets.lv2/presets.meta.ttl',
+ 'lv2/presets.lv2/presets.ttl',
+ 'lv2/resize-port.lv2/manifest.ttl',
+ 'lv2/resize-port.lv2/resize-port.meta.ttl',
+ 'lv2/resize-port.lv2/resize-port.ttl',
+ 'lv2/state.lv2/manifest.ttl',
+ 'lv2/state.lv2/state.meta.ttl',
+ 'lv2/state.lv2/state.ttl',
+ 'lv2/time.lv2/manifest.ttl',
+ 'lv2/time.lv2/time.meta.ttl',
+ 'lv2/time.lv2/time.ttl',
+ 'lv2/ui.lv2/manifest.ttl',
+ 'lv2/ui.lv2/ui.meta.ttl',
+ 'lv2/ui.lv2/ui.ttl',
+ 'lv2/units.lv2/manifest.ttl',
+ 'lv2/units.lv2/units.meta.ttl',
+ 'lv2/units.lv2/units.ttl',
+ 'lv2/uri-map.lv2/manifest.ttl',
+ 'lv2/uri-map.lv2/uri-map.meta.ttl',
+ 'lv2/uri-map.lv2/uri-map.ttl',
+ 'lv2/urid.lv2/manifest.ttl',
+ 'lv2/urid.lv2/urid.meta.ttl',
+ 'lv2/urid.lv2/urid.ttl',
+ 'lv2/worker.lv2/manifest.ttl',
+ 'lv2/worker.lv2/worker.meta.ttl',
+ 'lv2/worker.lv2/worker.ttl',
+)
+
+#################
+# Documentation #
+#################
+
# Determine if all the dependencies for building documentation are present
+doxygen = find_program('doxygen', required: get_option('docs'))
build_docs = false
doc_deps = []
if not get_option('docs').disabled()
- doxygen = find_program('doxygen', required: get_option('docs'))
+ doc_python_modules = ['lxml', 'markdown', 'pygments', 'rdflib']
python = pymod.find_installation(
'python3',
@@ -98,46 +297,23 @@ if not get_option('docs').disabled()
build_docs = doxygen.found() and python.found()
endif
-# Basic scripts and schema data
-subdir('scripts')
-subdir('schemas.lv2')
+# Run Doxygen first to generate tags
+subdir('doc/c')
+
+# Set up lv2specgen and lv2specgen_command_prefix (which references tags)
+subdir('lv2specgen')
-# Run Doxygen to generate tags file and HTML code documentation
+# Generate specification documentation
if build_docs
- subdir('doc/c')
+ subdir('doc/style')
+ subdir('doc/ns')
endif
-# Set up lv2specgen for generating individual specification documentation
-subdir('lv2specgen')
+###########
+# Plugins #
+###########
-# Specifications (and their individual documentation)
-subdir('lv2')
-spec_files = (atom_data +
- buf_size_data +
- core_data +
- data_access_data +
- dynmanifest_data +
- event_data +
- instance_access_data +
- log_data +
- midi_data +
- morph_data +
- options_data +
- parameters_data +
- patch_data +
- port_groups_data +
- port_props_data +
- presets_data +
- resize_port_data +
- state_data +
- time_data +
- ui_data +
- units_data +
- uri_map_data +
- urid_data +
- worker_data)
-
-# Plugins and "Programming LV2 Plugins" book
+# Example plugins and "Programming LV2 Plugins" book
if not get_option('plugins').disabled()
subdir('plugins')
endif
@@ -152,15 +328,6 @@ subdir('util')
# Data and build tests
subdir('test')
-#################
-# Documentation #
-#################
-
-# Top-level documentation
-if build_docs
- subdir('doc')
-endif
-
########
# News #
########
diff --git a/plugins/meson.build b/plugins/meson.build
index ee114ef..08b3feb 100644
--- a/plugins/meson.build
+++ b/plugins/meson.build
@@ -68,9 +68,9 @@ if not get_option('docs').disabled()
build_by_default: true,
command: [
asciidoc,
- '-a', 'stylesdir=' + lv2_source_root / 'doc',
+ '-a', 'stylesdir=' + lv2_source_root / 'doc' / 'style',
'-a', 'source-highlighter=pygments',
- '-a', 'pygments-style=' + lv2_source_root / 'doc' / 'style.css',
+ '-a', 'pygments-style=' + lv2_source_root / 'doc' / 'style' / 'style.css',
'-b', 'html',
'-o', '@OUTPUT@',
'@INPUT@',
diff --git a/scripts/lv2_build_index.py b/scripts/lv2_build_index.py
index 444e078..bc91911 100755
--- a/scripts/lv2_build_index.py
+++ b/scripts/lv2_build_index.py
@@ -102,7 +102,7 @@ def _spec_link_columns(spec, root, name, online):
# API
col += '<td><a rel="rdfs:seeAlso"'
- col += f' href="../doc/html/group__{stem}.html">{name}'
+ col += f' href="../html/group__{stem}.html">{name}'
col += "</a></td>"
return col
diff --git a/lv2/atom/atom-test-utils.c b/test/atom_test_utils.c
index ae368c8..ae368c8 100644
--- a/lv2/atom/atom-test-utils.c
+++ b/test/atom_test_utils.c
diff --git a/test/meson.build b/test/meson.build
index 0b8339a..fe85e74 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -9,7 +9,7 @@
codespell = find_program('codespell', required: get_option('tests'))
if codespell.found()
ignore = [
- lv2_source_root / 'doc' / 'pygments.css',
+ lv2_source_root / 'doc' / 'style' / 'pygments.css',
lv2_source_root / 'lv2specgen' / 'DTD',
lv2_source_root / 'schemas.lv2' / 'doap.ttl',
]
@@ -108,3 +108,28 @@ endif
if is_variable('pylint') and pylint.found()
test('pylint', pylint, args: strict_python_scripts, suite: 'scripts')
endif
+
+##############
+# Unit Tests #
+##############
+
+test_names = [
+ 'atom',
+ 'forge_overflow',
+]
+
+# Build and run tests
+if not get_option('tests').disabled()
+ foreach test_name : test_names
+ test(
+ test_name,
+ executable(
+ test_name,
+ files('test_@0@.c'.format(test_name)),
+ c_args: c_suppressions,
+ dependencies: lv2_dep,
+ ),
+ suite: 'unit',
+ )
+ endforeach
+endif
diff --git a/lv2/atom/atom-test.c b/test/test_atom.c
index 230a7cd..5771694 100644
--- a/lv2/atom/atom-test.c
+++ b/test/test_atom.c
@@ -14,7 +14,8 @@
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
-#include "lv2/atom/atom-test-utils.c"
+#include "atom_test_utils.c"
+
#include "lv2/atom/atom.h"
#include "lv2/atom/forge.h"
#include "lv2/atom/util.h"
diff --git a/lv2/atom/forge-overflow-test.c b/test/test_forge_overflow.c
index 27f3497..e00b40d 100644
--- a/lv2/atom/forge-overflow-test.c
+++ b/test/test_forge_overflow.c
@@ -14,7 +14,8 @@
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
-#include "lv2/atom/atom-test-utils.c"
+#include "atom_test_utils.c"
+
#include "lv2/atom/atom.h"
#include "lv2/atom/forge.h"
#include "lv2/urid/urid.h"