From c946829edb46a0783e562f045dad3a0ea6692fbb Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Sun, 21 Jul 2024 11:15:21 +0200 Subject: [PATCH] doc: copy custom CSS on guides build The custom CSS file for Sphinx guides was copied during install, but not during build time. Before switching to Meson, the Makefile was copying this file in the build steps, so the doc was complete and viewable from the build directory. It is especially useful to get full documentation in the build directory when building only documentation with "ninja -C build doc". The command "ninja install" was required to get the CSS file installed, but it requires to build the libraries as well. The CSS file is now copied as part of the Sphinx build script, and it will be installed as part of the whole html directory. Signed-off-by: Thomas Monjalon Acked-by: Ferruh Yigit --- buildtools/call-sphinx-build.py | 10 ++++++++++ doc/guides/meson.build | 2 -- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/buildtools/call-sphinx-build.py b/buildtools/call-sphinx-build.py index da19e950c92..623e7363ee7 100755 --- a/buildtools/call-sphinx-build.py +++ b/buildtools/call-sphinx-build.py @@ -3,6 +3,8 @@ # Copyright(c) 2019 Intel Corporation # +import filecmp +import shutil import sys import os from os.path import join @@ -30,4 +32,12 @@ with open(join(dst, '.html.d'), 'w') as d: d.write('html: ' + ' '.join(srcfiles) + '\n') +# copy custom CSS file +css = 'custom.css' +src_css = join(src, css) +dst_css = join(dst, 'html', '_static', 'css', css) +if not os.path.exists(dst_css) or not filecmp.cmp(src_css, dst_css): + os.makedirs(os.path.dirname(dst_css), exist_ok=True) + shutil.copyfile(src_css, dst_css) + sys.exit(process.returncode) diff --git a/doc/guides/meson.build b/doc/guides/meson.build index 51f81da2e37..f8bbfba9f5b 100644 --- a/doc/guides/meson.build +++ b/doc/guides/meson.build @@ -24,7 +24,5 @@ html_guides = custom_target('html_guides', install: get_option('enable_docs'), install_dir: htmldir) -install_data(files('custom.css'), install_dir: join_paths(htmldir,'_static', 'css')) - doc_targets += html_guides doc_target_names += 'HTML_Guides'