mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-07-06 09:55:46 +00:00
meson: add rule to build and install only web documentation
Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Neal Gompa <ngompa13@gmail.com>
This commit is contained in:
parent
18c729d83f
commit
70629df0c2
@ -15,8 +15,10 @@ fonts = [
|
|||||||
|
|
||||||
install_data(fonts, install_dir: docs_html_dir / 'fonts')
|
install_data(fonts, install_dir: docs_html_dir / 'fonts')
|
||||||
|
|
||||||
# This hack enables us to view the web pages
|
|
||||||
# from within the uninstalled build tree
|
|
||||||
foreach file : fonts
|
foreach file : fonts
|
||||||
|
# This hack enables us to view the web pages
|
||||||
|
# from within the uninstalled build tree
|
||||||
configure_file(input: file, output: file, copy: true)
|
configure_file(input: file, output: file, copy: true)
|
||||||
|
|
||||||
|
install_web_files += '@0@:@1@'.format(meson.current_source_dir() / file, docs_html_dir / 'fonts')
|
||||||
endforeach
|
endforeach
|
||||||
|
@ -7,6 +7,10 @@ apipng = [
|
|||||||
|
|
||||||
install_data(apipng, install_dir: docs_html_dir / 'html')
|
install_data(apipng, install_dir: docs_html_dir / 'html')
|
||||||
|
|
||||||
|
foreach file : apipng
|
||||||
|
install_web_files += '@0@:@1@'.format(meson.current_source_dir() / file, docs_html_dir / 'html')
|
||||||
|
endforeach
|
||||||
|
|
||||||
docs_html_gen = []
|
docs_html_gen = []
|
||||||
docs_html_dep = []
|
docs_html_dep = []
|
||||||
|
|
||||||
@ -80,8 +84,11 @@ endforeach
|
|||||||
|
|
||||||
docs_html_paths = []
|
docs_html_paths = []
|
||||||
|
|
||||||
|
install_web_deps += docs_html_dep
|
||||||
|
|
||||||
foreach file : docs_html_gen
|
foreach file : docs_html_gen
|
||||||
docs_html_paths += file.full_path()
|
docs_html_paths += file.full_path()
|
||||||
|
install_web_files += '@0@:@1@'.format(file.full_path(), docs_html_dir / 'html')
|
||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
test(
|
test(
|
||||||
|
@ -9,7 +9,7 @@ foreach name : internals_in_files
|
|||||||
html_in_file = '@0@.html.in'.format(name)
|
html_in_file = '@0@.html.in'.format(name)
|
||||||
html_file = '@0@.html'.format(name)
|
html_file = '@0@.html'.format(name)
|
||||||
|
|
||||||
custom_target(
|
out_file = custom_target(
|
||||||
html_file,
|
html_file,
|
||||||
input: html_in_file,
|
input: html_in_file,
|
||||||
output: html_file,
|
output: html_file,
|
||||||
@ -31,4 +31,7 @@ foreach name : internals_in_files
|
|||||||
install: true,
|
install: true,
|
||||||
install_dir: docs_html_dir / 'internals',
|
install_dir: docs_html_dir / 'internals',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
install_web_deps += out_file
|
||||||
|
install_web_files += '@0@:@1@'.format(out_file.full_path(), docs_html_dir / 'internals')
|
||||||
endforeach
|
endforeach
|
||||||
|
@ -4,8 +4,10 @@ docs_js_files = [
|
|||||||
|
|
||||||
install_data(docs_js_files, install_dir: docs_html_dir / 'js')
|
install_data(docs_js_files, install_dir: docs_html_dir / 'js')
|
||||||
|
|
||||||
# This hack enables us to view the web pages
|
|
||||||
# from within the uninstalled build tree
|
|
||||||
foreach file : docs_js_files
|
foreach file : docs_js_files
|
||||||
|
# This hack enables us to view the web pages
|
||||||
|
# from within the uninstalled build tree
|
||||||
configure_file(input: file, output: file, copy: true)
|
configure_file(input: file, output: file, copy: true)
|
||||||
|
|
||||||
|
install_web_files += '@0@:@1@'.format(meson.current_source_dir() / file, docs_html_dir / 'js')
|
||||||
endforeach
|
endforeach
|
||||||
|
@ -21,7 +21,7 @@ foreach name : docs_kbase_files
|
|||||||
|
|
||||||
html_in = docs_rst2html_gen.process(rst_file)
|
html_in = docs_rst2html_gen.process(rst_file)
|
||||||
|
|
||||||
custom_target(
|
out_file = custom_target(
|
||||||
html_file,
|
html_file,
|
||||||
input: html_in,
|
input: html_in,
|
||||||
output: html_file,
|
output: html_file,
|
||||||
@ -43,4 +43,7 @@ foreach name : docs_kbase_files
|
|||||||
install: true,
|
install: true,
|
||||||
install_dir: docs_html_dir / 'kbase',
|
install_dir: docs_html_dir / 'kbase',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
install_web_deps += out_file
|
||||||
|
install_web_files += '@0@:@1@'.format(out_file.full_path(), docs_html_dir / 'kbase')
|
||||||
endforeach
|
endforeach
|
||||||
|
@ -22,8 +22,10 @@ docs_logo_files = [
|
|||||||
|
|
||||||
install_data(docs_logo_files, install_dir: docs_html_dir / 'logos')
|
install_data(docs_logo_files, install_dir: docs_html_dir / 'logos')
|
||||||
|
|
||||||
# This hack enables us to view the web pages
|
|
||||||
# from within the uninstalled build tree
|
|
||||||
foreach file : docs_logo_files
|
foreach file : docs_logo_files
|
||||||
|
# This hack enables us to view the web pages
|
||||||
|
# from within the uninstalled build tree
|
||||||
configure_file(input: file, output: file, copy: true)
|
configure_file(input: file, output: file, copy: true)
|
||||||
|
|
||||||
|
install_web_files += '@0@:@1@'.format(meson.current_source_dir() / file, docs_html_dir / 'logos')
|
||||||
endforeach
|
endforeach
|
||||||
|
@ -103,7 +103,7 @@ foreach data : docs_man_files
|
|||||||
capture: true,
|
capture: true,
|
||||||
)
|
)
|
||||||
|
|
||||||
custom_target(
|
out_file = custom_target(
|
||||||
html_file,
|
html_file,
|
||||||
input: html_in,
|
input: html_in,
|
||||||
output: html_file,
|
output: html_file,
|
||||||
@ -125,4 +125,7 @@ foreach data : docs_man_files
|
|||||||
install: true,
|
install: true,
|
||||||
install_dir: docs_html_dir / 'manpages',
|
install_dir: docs_html_dir / 'manpages',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
install_web_deps += out_file
|
||||||
|
install_web_files += '@0@:@1@'.format(out_file.full_path(), docs_html_dir / 'manpages')
|
||||||
endforeach
|
endforeach
|
||||||
|
@ -129,6 +129,10 @@ docs_rst_files = [
|
|||||||
'submitting-patches',
|
'submitting-patches',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# list of web targets to build for docs/web rule
|
||||||
|
install_web_deps = []
|
||||||
|
install_web_files = []
|
||||||
|
|
||||||
install_data(docs_assets, install_dir: docs_html_dir)
|
install_data(docs_assets, install_dir: docs_html_dir)
|
||||||
|
|
||||||
aclperms_gen = custom_target(
|
aclperms_gen = custom_target(
|
||||||
@ -192,7 +196,7 @@ foreach name : docs_html_in_files
|
|||||||
html_in_file = '@0@.html.in'.format(name)
|
html_in_file = '@0@.html.in'.format(name)
|
||||||
html_file = '@0@.html'.format(name)
|
html_file = '@0@.html'.format(name)
|
||||||
|
|
||||||
custom_target(
|
out_file = custom_target(
|
||||||
html_file,
|
html_file,
|
||||||
input: html_in_file,
|
input: html_in_file,
|
||||||
output: html_file,
|
output: html_file,
|
||||||
@ -214,6 +218,9 @@ foreach name : docs_html_in_files
|
|||||||
install: true,
|
install: true,
|
||||||
install_dir: docs_html_dir,
|
install_dir: docs_html_dir,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
install_web_deps += out_file
|
||||||
|
install_web_files += '@0@:@1@'.format(out_file.full_path(), docs_html_dir)
|
||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
|
|
||||||
@ -267,7 +274,7 @@ foreach data : docs_html_in_gen
|
|||||||
html_file = '@0@.html'.format(data['name'])
|
html_file = '@0@.html'.format(data['name'])
|
||||||
rst_in_file = '@0@.rst'.format(data['name'])
|
rst_in_file = '@0@.rst'.format(data['name'])
|
||||||
|
|
||||||
custom_target(
|
out_file = custom_target(
|
||||||
html_file,
|
html_file,
|
||||||
input: data['file'],
|
input: data['file'],
|
||||||
output: html_file,
|
output: html_file,
|
||||||
@ -289,6 +296,9 @@ foreach data : docs_html_in_gen
|
|||||||
install: true,
|
install: true,
|
||||||
install_dir: docs_html_dir,
|
install_dir: docs_html_dir,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
install_web_deps += out_file
|
||||||
|
install_web_files += '@0@:@1@'.format(out_file.full_path(), docs_html_dir)
|
||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
subdir('fonts')
|
subdir('fonts')
|
||||||
@ -301,8 +311,19 @@ subdir('manpages')
|
|||||||
subdir('schemas')
|
subdir('schemas')
|
||||||
|
|
||||||
|
|
||||||
# This hack enables us to view the web pages
|
|
||||||
# from within the uninstalled build tree
|
|
||||||
foreach file : docs_assets
|
foreach file : docs_assets
|
||||||
|
# This hack enables us to view the web pages
|
||||||
|
# from within the uninstalled build tree
|
||||||
configure_file(input: file, output: file, copy: true)
|
configure_file(input: file, output: file, copy: true)
|
||||||
|
|
||||||
|
install_web_files += '@0@:@1@'.format(meson.current_source_dir() / file, docs_html_dir)
|
||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
|
run_target(
|
||||||
|
'install-web',
|
||||||
|
command: [
|
||||||
|
meson_python_prog, python3_prog.path(), meson_install_web_prog.path(),
|
||||||
|
install_web_files,
|
||||||
|
],
|
||||||
|
depends: install_web_deps,
|
||||||
|
)
|
||||||
|
10
scripts/meson-install-web.py
Executable file
10
scripts/meson-install-web.py
Executable file
@ -0,0 +1,10 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import os
|
||||||
|
import shutil
|
||||||
|
import sys
|
||||||
|
|
||||||
|
for desc in sys.argv[1:]:
|
||||||
|
inst = desc.split(':')
|
||||||
|
os.makedirs(inst[1], exist_ok=True)
|
||||||
|
shutil.copy(inst[0], inst[1])
|
@ -25,6 +25,7 @@ scripts = [
|
|||||||
'meson-html-gen.py',
|
'meson-html-gen.py',
|
||||||
'meson-install-dirs.py',
|
'meson-install-dirs.py',
|
||||||
'meson-install-symlink.py',
|
'meson-install-symlink.py',
|
||||||
|
'meson-install-web.py',
|
||||||
'meson-python.sh',
|
'meson-python.sh',
|
||||||
'meson-timestamp.py',
|
'meson-timestamp.py',
|
||||||
'mock-noinline.py',
|
'mock-noinline.py',
|
||||||
|
Loading…
Reference in New Issue
Block a user