ed8d95182b
Save a bit of build time by passing the number of jobs option to sphinx. We cannot use the -j option from make because meson does not support setting build time parameters for custom targets. Use nproc instead or the equivalent sphinx option "-j auto", if that is available (version >=1.7.0). Also make sure our plugins support parallelism and report it properly to sphinx. Particularly, implement the merge_domaindata method in DBusDomain that is used to merge in data from other subprocesses. Tested-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Fabiano Rosas <farosas@suse.de> Message-Id: <20230503203947.3417-2-farosas@suse.de> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
31 lines
786 B
Python
31 lines
786 B
Python
# D-Bus XML documentation extension, compatibility gunk for <sphinx4
|
|
#
|
|
# Copyright (C) 2021, Red Hat Inc.
|
|
#
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
#
|
|
# Author: Marc-André Lureau <marcandre.lureau@redhat.com>
|
|
"""dbus-doc is a Sphinx extension that provides documentation from D-Bus XML."""
|
|
|
|
from docutils.parsers.rst import Directive
|
|
from sphinx.application import Sphinx
|
|
from typing import Any, Dict
|
|
|
|
|
|
class FakeDBusDocDirective(Directive):
|
|
has_content = True
|
|
required_arguments = 1
|
|
|
|
def run(self):
|
|
return []
|
|
|
|
|
|
def setup(app: Sphinx) -> Dict[str, Any]:
|
|
"""Register a fake dbus-doc directive with Sphinx"""
|
|
app.add_directive("dbus-doc", FakeDBusDocDirective)
|
|
|
|
return dict(
|
|
parallel_read_safe = True,
|
|
parallel_write_safe = True
|
|
)
|