[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] meson: Pass -j option to sphinx
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH] meson: Pass -j option to sphinx |
Date: |
Thu, 27 Apr 2023 13:29:09 +0100 |
User-agent: |
Mutt/2.2.9 (2022-11-12) |
On Thu, Apr 27, 2023 at 02:24:59PM +0200, Thomas Huth wrote:
> On 26/04/2023 18.03, Fabiano Rosas wrote:
> > Save a bit of build time by passing the number of jobs option to
> > sphinx.
> >
> > To avoid warnings from sphinx, alter our plugins to inform whether
> > they support parallelism. The two plugins touched are quite simple and
> > I don't see anything that would indicate they do not support being
> > called in parallel, so return True for both reads and writes.
> >
> > before:
> > $ time make -j16 man html
> > ...
> > [1/2] Generating docs/QEMU manual with a custom command
> > [2/2] Generating docs/QEMU man pages with a custom command
> >
> > real 0m49.770s
> > user 0m49.425s
> > sys 0m0.716s
> >
> > after:
> > $ time make -j16 man html
> > ...
> > [1/2] Generating docs/QEMU manual with a custom command (wrapped by meson
> > because command contains newlines)
> > [2/2] Generating docs/QEMU man pages with a custom command (wrapped by
> > meson because command contains newlines)
> > real 0m30.153s
> > user 1m5.945s
> > sys 0m2.440s
> >
> > Signed-off-by: Fabiano Rosas <farosas@suse.de>
> > ---
> > docs/meson.build | 12 ++++++++++++
> > docs/sphinx/fakedbusdoc.py | 5 +++++
> > docs/sphinx/qmp_lexer.py | 5 +++++
> > 3 files changed, 22 insertions(+)
> >
> > diff --git a/docs/meson.build b/docs/meson.build
> > index f220800e3e..9e4bed6fa0 100644
> > --- a/docs/meson.build
> > +++ b/docs/meson.build
> > @@ -10,6 +10,18 @@ if sphinx_build.found()
> > SPHINX_ARGS += [ '-W', '-Dkerneldoc_werror=1' ]
> > endif
> > + sphinx_version = run_command(SPHINX_ARGS + ['--version'],
> > + check: false).stdout().split()[1]
> > + if sphinx_version.version_compare('>=5.1.2')
> > + SPHINX_ARGS += ['-j', 'auto']
> > + else
> > + nproc = find_program('nproc')
> > + if nproc.found()
> > + jobs = run_command(nproc, check:false).stdout()
> > + SPHINX_ARGS += ['-j', jobs]
> > + endif
> > + endif
>
> Wouldn't it be better to use the value from "make -jXX" instead of always
> running with the maximum number of processors here?
IIUC, this is not exposed by meson.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|