diff options
| author | David Robillard <d@drobilla.net> | 2022-07-07 18:59:06 -0400 | 
|---|---|---|
| committer | David Robillard <d@drobilla.net> | 2022-07-17 18:13:53 -0400 | 
| commit | d4a970f6962dda28133290194832b726b566ddab (patch) | |
| tree | cfe9747042d55388705371a8ce95505ffb702470 /doc | |
| parent | 7f3a2651a3635232d94f7bf9ce23d6b575735732 (diff) | |
| download | lv2-d4a970f6962dda28133290194832b726b566ddab.tar.xz | |
Switch to meson build system
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/c/doxy-style.css (renamed from doc/doxy-style.css) | 0 | ||||
| -rw-r--r-- | doc/c/footer.html (renamed from doc/footer.html) | 0 | ||||
| -rw-r--r-- | doc/c/header.html (renamed from doc/header.html) | 0 | ||||
| -rw-r--r-- | doc/c/layout.xml (renamed from doc/layout.xml) | 0 | ||||
| -rw-r--r-- | doc/c/mainpage.md (renamed from doc/mainpage.md) | 0 | ||||
| -rw-r--r-- | doc/c/meson.build | 41 | ||||
| -rw-r--r-- | doc/c/reference.doxygen.in (renamed from doc/reference.doxygen.in) | 18 | ||||
| -rw-r--r-- | doc/meson.build | 23 | ||||
| -rw-r--r-- | doc/ns/ext/meson.build | 13 | ||||
| -rw-r--r-- | doc/ns/extensions/meson.build | 13 | ||||
| -rw-r--r-- | doc/ns/meson.build | 33 | 
11 files changed, 132 insertions, 9 deletions
diff --git a/doc/doxy-style.css b/doc/c/doxy-style.css index b44675e..b44675e 100644 --- a/doc/doxy-style.css +++ b/doc/c/doxy-style.css diff --git a/doc/footer.html b/doc/c/footer.html index 0dc6919..0dc6919 100644 --- a/doc/footer.html +++ b/doc/c/footer.html diff --git a/doc/header.html b/doc/c/header.html index 2e419e3..2e419e3 100644 --- a/doc/header.html +++ b/doc/c/header.html diff --git a/doc/layout.xml b/doc/c/layout.xml index 1f63a76..1f63a76 100644 --- a/doc/layout.xml +++ b/doc/c/layout.xml diff --git a/doc/mainpage.md b/doc/c/mainpage.md index 561bc93..561bc93 100644 --- a/doc/mainpage.md +++ b/doc/c/mainpage.md diff --git a/doc/c/meson.build b/doc/c/meson.build new file mode 100644 index 0000000..3ce7fdc --- /dev/null +++ b/doc/c/meson.build @@ -0,0 +1,41 @@ +# Copyright 2022 David Robillard <d@drobilla.net> +# SPDX-License-Identifier: CC0-1.0 OR ISC + +lv2_source_doc = meson.current_source_dir() + +if doxygen.found() +  reference_doxygen_in = files('reference.doxygen.in') + +  config = configuration_data( +    { +      'LV2_SRCDIR': lv2_source_root, +      'LV2_BUILDDIR': lv2_build_root, +      'LV2_VERSION': meson.project_version(), +    } +  ) + +  reference_doxygen = configure_file( +    configuration: config, +    input: reference_doxygen_in, +    output: 'reference.doxygen', +  ) + +  docs = custom_target( +    'html', +    command: [doxygen, '@INPUT@'], +    input: reference_doxygen, +    install: true, +    install_dir: lv2_docdir, +    output: ['html', 'tags'], +  ) + +  # TODO: doc_deps is needed because Meson did not support using custom target +  # outputs as dependencies until 0.60.0.  When 0.60.0 is required, this can be +  # cleaned up by removing doc_deps and using lv2_tags (not its path) as a +  # command argument, which Meson will correctly make a dependency for. + +  lv2_tags = docs[1] +  doc_deps = [docs] +else +  doc_deps = [] +endif diff --git a/doc/reference.doxygen.in b/doc/c/reference.doxygen.in index 5efb066..6318484 100644 --- a/doc/reference.doxygen.in +++ b/doc/c/reference.doxygen.in @@ -58,7 +58,7 @@ PROJECT_LOGO           =  # entered, it will be relative to the location where doxygen was started. If  # left blank the current directory will be used. -OUTPUT_DIRECTORY       = . +OUTPUT_DIRECTORY       = @LV2_BUILDDIR@  # If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-  # directories (in 2 levels) under the output directory of each output format and @@ -762,7 +762,7 @@ FILE_VERSION_FILTER    =  # DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE  # tag is left empty. -LAYOUT_FILE            = @LV2_SRCDIR@/doc/layout.xml +LAYOUT_FILE            = @LV2_SRCDIR@/doc/c/layout.xml  # The CITE_BIB_FILES tag can be used to specify one or more bib files containing  # the reference definitions. This must be a list of .bib files. The .bib @@ -864,7 +864,7 @@ WARN_LOGFILE           =  # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING  # Note: If this tag is empty the current directory is searched. -INPUT                  = @LV2_SRCDIR@/doc/mainpage.md \ +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 \ @@ -1045,7 +1045,7 @@ FILTER_SOURCE_PATTERNS =  # (index.html). This can be useful if you have a project on for instance GitHub  # and want to reuse the introduction page also for the doxygen output. -USE_MDFILE_AS_MAINPAGE = @LV2_SRCDIR@/doc/mainpage.md +USE_MDFILE_AS_MAINPAGE = @LV2_SRCDIR@/doc/c/mainpage.md  #---------------------------------------------------------------------------  # Configuration options related to source browsing @@ -1167,7 +1167,7 @@ GENERATE_HTML          = YES  # The default directory is: html.  # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_OUTPUT            = html +HTML_OUTPUT            = @LV2_BUILDDIR@/doc/c/html  # The HTML_FILE_EXTENSION tag can be used to specify the file extension for each  # generated HTML page (for example: .htm, .php, .asp). @@ -1194,7 +1194,7 @@ HTML_FILE_EXTENSION    = .html  # of the possible markers and block names see the documentation.  # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_HEADER            = @LV2_SRCDIR@/doc/header.html +HTML_HEADER            = @LV2_SRCDIR@/doc/c/header.html  # The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each  # generated HTML page. If the tag is left blank doxygen will generate a standard @@ -1204,7 +1204,7 @@ HTML_HEADER            = @LV2_SRCDIR@/doc/header.html  # that doxygen normally uses.  # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_FOOTER            = @LV2_SRCDIR@/doc/footer.html +HTML_FOOTER            = @LV2_SRCDIR@/doc/c/footer.html  # The HTML_STYLESHEET tag can be used to specify a user-defined cascading style  # sheet that is used by each HTML page. It can be used to fine-tune the look of @@ -1216,7 +1216,7 @@ HTML_FOOTER            = @LV2_SRCDIR@/doc/footer.html  # obsolete.  # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_STYLESHEET        = @LV2_SRCDIR@/doc/doxy-style.css +HTML_STYLESHEET        = @LV2_SRCDIR@/doc/c/doxy-style.css  # The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined  # cascading style sheets that are included after the standard style sheets @@ -2270,7 +2270,7 @@ TAGFILES               =  # tag file that is based on the input files it reads. See section "Linking to  # external documentation" for more information about the usage of tag files. -GENERATE_TAGFILE       = tags +GENERATE_TAGFILE       = @LV2_BUILDDIR@/doc/c/tags  # If the ALLEXTERNALS tag is set to YES, all external class will be listed in  # the class index. If set to NO, only the inherited external classes will be diff --git a/doc/meson.build b/doc/meson.build new file mode 100644 index 0000000..230211e --- /dev/null +++ b/doc/meson.build @@ -0,0 +1,23 @@ +# 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 new file mode 100644 index 0000000..4a2ca1f --- /dev/null +++ b/doc/ns/ext/meson.build @@ -0,0 +1,13 @@ +# Copyright 2022 David Robillard <d@drobilla.net> +# SPDX-License-Identifier: CC0-1.0 OR ISC + +config = configuration_data({'BASE': '/ns/ext'}) + +if get_option('online_docs') +  htaccess = configure_file( +    configuration: config, +    input: files('..' / '..' / 'htaccess.in'), +    install_dir: lv2_docdir / 'ns' / 'ext', +    output: '.htaccess', +  ) +endif diff --git a/doc/ns/extensions/meson.build b/doc/ns/extensions/meson.build new file mode 100644 index 0000000..b54e3d2 --- /dev/null +++ b/doc/ns/extensions/meson.build @@ -0,0 +1,13 @@ +# Copyright 2022 David Robillard <d@drobilla.net> +# SPDX-License-Identifier: CC0-1.0 OR ISC + +config = configuration_data({'BASE': '/ns/extensions'}) + +if get_option('online_docs') +  htaccess = configure_file( +    configuration: config, +    input: files('..' / '..' / 'htaccess.in'), +    install_dir: lv2_docdir / 'ns' / 'extensions', +    output: '.htaccess', +  ) +endif diff --git a/doc/ns/meson.build b/doc/ns/meson.build new file mode 100644 index 0000000..26471b9 --- /dev/null +++ b/doc/ns/meson.build @@ -0,0 +1,33 @@ +# Copyright 2022 David Robillard <d@drobilla.net> +# SPDX-License-Identifier: CC0-1.0 OR ISC + +config = configuration_data({'BASE': '/ns'}) + +if get_option('online_docs') +  htaccess = configure_file( +    configuration: config, +    input: files('..' / 'htaccess.in'), +    install_dir: lv2_docdir / 'ns', +    output: '.htaccess', +  ) +endif + +subdir('ext') +subdir('extensions') + +lv2_build_index = files(lv2_source_root / 'scripts' / 'lv2_build_index.py') + +index = custom_target( +  'index.html', +  capture: true, +  command: [ +    lv2_build_index, +    '--lv2-version', meson.project_version(), +    '--lv2-source-root', lv2_source_root, +    '@INPUT@' +  ], +  input: spec_files, +  install: true, +  install_dir: lv2_docdir / 'ns', +  output: 'index.html', +)  |