poky: subtree update:b23aa6b753..ad30a6d470
Armin Kuster (1):
timezone: update to 2020b
Bruce Ashfield (7):
linux-yocto/5.4: fix kprobes build warning
linux-yocto/5.4: update to v5.4.67
linux-yocto/5.8: update to v5.8.11
linux-yocto/5.4: update to v5.4.68
linux-yocto/5.8: update to v5.8.12
linux-yocto/5.4: update to v5.4.69
linux-yocto/5.8: update to v5.8.13
Fabio Berton (1):
weston-init: Add environment file support for systemd unit file
Jon Mason (5):
armv8/tunes: Move TUNECONFLICTS
armv8/tunes: reference parent's TUNE_FEATURES
armv8/tunes: Add tunes for supported ARMv8a cores
armv8/tunes: Add tunes for supported ARMv8.2a cores
tune-cortexa32: fix cortexa32 tune
Joshua Watt (2):
classes/sanity: Bump minimum python version to 3.5
classes/waf: Add build and install arguments
Khem Raj (3):
systemd: Use ROOTPREFIX without suffixed slash in systemd.pc.in
musl: Update to master
strace: Fix value of IPPROTO_MAX
Martin Jansa (3):
base.bbclass: use os.path.normpath instead of just comparing WORKDIR and S as strings
mtd-utils: don't use trailing slash in S
base.bbclass: warn when there is trailing slash in S or B variables
Michael Thalmeier (1):
IMAGE_LOCALES_ARCHIVE: add option to prevent locale archive creation
Naoki Hayama (3):
uninative: Fix typo in error message
local.conf.sample: Fix comment typo
local.conf.sample.extended: Fix comment typo
Naveen Saini (2):
linux-yocto: update genericx86* SRCREV for 5.4
linux-yocto: update genericx86* SRCREV for 5.8
Nicolas Dechesne (8):
bitbake: docs: ref-variables: add links to terms in glossary
bitbake: docs: sphinx: replace special quotes with double quotes
bitbake: docs: update README file after migrationg to Sphinx
bitbake: docs: sphinx: report errors when dependencies are not met
bitbake: sphinx: remove DocBook files
bitbake: sphinx: rename Makefile.sphinx
sphinx: remove DocBook files
sphinx: rename Makefile.sphinx
Peter Kjellerstedt (1):
tune-cortexa65.inc: Correct TUNE_FEATURES_tune-cortexa65
Quentin Schulz (4):
docs: ref-manual: ref-variables: fix one-letter pointer links in glossary
docs: ref-manual: ref-variables: fix alphabetical order in glossary
docs: ref-manual: ref-variables: add links to terms in glossary
bitbake: docs: static: theme_overrides.css: fix responsive design on <640px screens
Richard Purdie (25):
glibc: do_stash_locale must not delete files from ${D}
libtools-cross/shadow-sysroot: Use nopackages inherit
pseudo: Ignore mismatched inodes from the db
pseudo: Add support for ignoring paths from the pseudo DB
pseudo: Abort on mismatch patch
psuedo: Add tracking of linked files for fds
pseudo: Fix xattr segfault
pseudo: Add may unlink patch
pseudo: Add pathfix patch
base/bitbake.conf: Enable pseudo path filtering
wic: Handle new PSEUDO_IGNORE_PATHS variable
pseudo: Fix statx function usage
bitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/meta
docs: Fix license CC-BY-2.0-UK -> CC-BY-SA-2.0-UK
abi_version,sanity: Tell users TMPDIR must be clean after pseudo changes
pseudo: Update to account for patches merged on branch
pseudo: Upgrade to include mkostemp64 wrapper
poky.conf: Drop OELAYOUT_ABI poking
bitbake: command: Ensure exceptions inheriting from BBHandledException are visible
bitbake: tinfoil: When sending commands we need to process events
scripts/oe-build-perf-report: Allow operation with no buildstats
oe-build-perf-report: Ensure correct data is shown for multiple branch options
skeleton/baremetal-helloworld: Fix trailing slash
oeqa/selftest/runtime_test: Exclude gpg directory from pseudo database
bitbake: process: Show command exceptions in the server log as well
Ross Burton (10):
bjam-native: don't do debug builds
coreutils: improve coreutils-ptest RDEPENDS
parted: improve ptest
devtool: remove unused variable
selftest: skip npm tests if nodejs-native isn't available
selftest: add test for recipes with patches in overrides
devtool: fix modify with patches in override directories
boost: build a standalone boost.build
boost: don't specify gcc version
boost: consolidate and update library list
Usama Arif (1):
kernel-fitimage: generate openssl RSA keys for signing fitimage
Victor Kamensky (2):
qemu: add 34Kf-64tlb fictitious cpu type
qemumips: use 34Kf-64tlb CPU emulation
Yann Dirson (1):
rngd: fix --debug to also filter syslog() calls
Yoann Congal (1):
bitbake-bblayers/create: Make the example recipe print its message
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I7139cb04b43f722a2118df5346a7a22a13c6a240
diff --git a/poky/documentation/Makefile b/poky/documentation/Makefile
index 7d4058a..4d721d3 100644
--- a/poky/documentation/Makefile
+++ b/poky/documentation/Makefile
@@ -1,390 +1,35 @@
+# Minimal makefile for Sphinx documentation
#
-# SPDX-License-Identifier: CC-BY-2.0-UK
-#
-# This is a single Makefile to handle all generated Yocto Project documents,
-# which includes the BitBake User Manual and the Toaster User Manual.
-# The Makefile needs to live in the documents directory and all figures used
-# in any manuals must be .PNG files and live in the individual book's figures
-# directory as well as in the figures directory for the mega-manual.
-#
-# Note that the figures for the Yocto Project Development Tasks Manual
-# differ depending on the BRANCH being built.
-#
-# The Makefile has these targets:
-# all: If you leave off the target then "all" is implied.
-# You will generate HTML and a tarball of files.
-#
-# pdf: generates a PDF version of a manual. Not valid for the
-# Quick Start or the mega-manual (single, large HTML file
-# comprised of all Yocto Project manuals).
-# html: generates an HTML version of a manual.
-# tarball: creates a tarball for the doc files.
-# validate: validates
-# publish: pushes generated files to the Yocto Project website
-# clean: removes files
-#
-# The Makefile can generate an HTML and PDF version of every document except the
-# Yocto Project Quick Start and the single, HTML mega-manual, which is comprised
-# of all the individual Yocto Project manuals. You can generate these two manuals
-# in HTML form only. The variable DOC indicates the folder name for a given manual.
-# The variable VER represents the distro version of the Yocto Release for which the
-# manuals are being generated. The variable BRANCH is used to indicate the
-# branch (edison or denzil) and is used only when DOC=dev-manual or
-# DOC=mega-manual. If you do not specify a BRANCH, the default branch used
-# will be for the latest Yocto Project release. If you build for either
-# edison or denzil, you must use BRANCH. You do not need to use BRANCH for
-# any release beyond denzil.
-#
-# To build a manual, you must invoke Makefile with the DOC argument. If you
-# are going to publish the manual, then you must invoke Makefile with both the
-# DOC and the VER argument. Furthermore, if you are building or publishing
-# the edison or denzil versions of the Yocto Project Development Tasks Manual or
-# the mega-manual, you must also use the BRANCH argument.
-#
-# Examples:
-#
-# make DOC=bsp-guide
-# make html DOC=brief-yoctoprojectqs
-# make pdf DOC=ref-manual
-# make DOC=dev-manual BRANCH=edison
-# make DOC=mega-manual BRANCH=denzil
-#
-# The first example generates the HTML version of the BSP Guide.
-# The second example generates the HTML version only of the Quick Start. Note
-# that the Quick Start only has an HTML version available. So, the
-# 'make DOC=brief-yoctoprojectqs' command would be equivalent. The third example
-# generates just the PDF version of the Yocto Project Reference Manual.
-# The fourth example generates the HTML 'edison' version of the YP Development
-# Tasks Manual. The last example
-# generates the HTML version of the mega-manual and uses the 'denzil'
-# branch when choosing figures for the tarball of figures. Any example that does
-# not use the BRANCH argument builds the current version of the manual set.
-#
-# The publish target pushes the generated manuals to the Yocto Project
-# website. Unless you are a developer on the YP team, you will not succeed in
-# pushing manuals to this server. All files needed for the manual's HTML form are
-# pushed.
-#
-# Examples:
-#
-# make publish DOC=bsp-guide VER=1.7
-# make publish DOC=adt-manual VER=1.6
-# make publish DOC=dev-manual VER=1.1.1 BRANCH=edison
-# make publish DOC=dev-manual VER=1.2 BRANCH=denzil
-#
-# The first example publishes the 1.7 version of both the PDF and HTML versions of
-# the BSP Guide. The second example publishes the 1.6 version of both the PDF and
-# HTML versions of the ADT Manual. The third example publishes the 1.1.1 version of
-# the PDF and HTML YP Development Tasks Manual for the 'edison' branch. The fourth
-# example publishes the 1.2 version of the PDF and HTML YP Development Tasks Manual
-# for the 'denzil' branch.
-#
-# IN MEMORIAM: This comment is to remember Scott Rifenbark (scottrif), whom we lost
-# in January, 2020. Scott was the primary technical writer for the Yocto Project for
-# over 9 years. In that time, he contributed many thousands of patches, built this
-# documentation tree, and enabled tens of thousands of developers to succeed with
-# embedded Linux. He ran this Makefile many thousands of times. Godspeed, Dude.
-ifeq ($(DOC),brief-yoctoprojectqs)
-XSLTOPTS = --stringparam html.stylesheet brief-yoctoprojectqs-style.css \
- --stringparam chapter.autolabel 0 \
- --stringparam section.autolabel 0 \
- --stringparam section.label.includes.component.label 0 \
- --xinclude
-ALLPREQ = html tarball
-TARFILES = brief-yoctoprojectqs-style.css brief-yoctoprojectqs.html figures/bypqs-title.png \
- figures/yocto-project-transp.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
+# You can set these variables from the command line, and also
+# from the environment for the first two.
+SPHINXOPTS ?=
+SPHINXBUILD ?= sphinx-build
+SOURCEDIR = .
+BUILDDIR = _build
+DESTDIR = final
+ifeq ($(shell if which $(SPHINXBUILD) >/dev/null 2>&1; then echo 1; else echo 0; fi),0)
+$(error "The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed")
endif
-ifeq ($(DOC),overview-manual)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = overview-manual-style.css overview-manual.html figures/overview-manual-title.png \
- figures/git-workflow.png figures/source-repos.png figures/index-downloads.png \
- figures/yp-download.png figures/YP-flow-diagram.png figures/key-dev-elements.png \
- figures/poky-reference-distribution.png figures/cross-development-toolchains.png \
- figures/user-configuration.png figures/layer-input.png figures/source-input.png \
- figures/package-feeds.png figures/patching.png figures/source-fetching.png \
- figures/configuration-compile-autoreconf.png figures/analysis-for-package-splitting.png \
- figures/image-generation.png figures/sdk-generation.png figures/images.png \
- figures/sdk.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
+# Put it first so that "make" without argument is like "make help".
+help:
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
-endif
+.PHONY: help Makefile clean publish
-ifeq ($(DOC),bsp-guide)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = bsp-style.css bsp-guide.html figures/bsp-title.png \
- figures/bsp-dev-flow.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-
-endif
-
-ifeq ($(DOC),dev-manual)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-#
-# Note that the tarfile might produce the "Cannot stat: No such file or
-# directory" error message for .PNG files that are not present when building
-# a particular branch. The list of files is all-inclusive for all branches.
-# Note, if you don't provide a BRANCH option, it defaults to the latest stuff.
-# This would be appropriate for "master" branch.
-#
-
-TARFILES = dev-style.css dev-manual.html figures/buildhistory-web.png \
- figures/dev-title.png figures/buildhistory.png \
- figures/recipe-workflow.png figures/bitbake-build-flow.png \
- figures/multiconfig_files.png figures/cute-files-npm-example.png
-
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-
-endif
-
-ifeq ($(DOC),mega-manual)
-XSLTOPTS = --stringparam html.stylesheet mega-style.css \
- --stringparam chapter.autolabel 1 \
- --stringparam section.autolabel 1 \
- --stringparam section.label.includes.component.label 1 \
- --xinclude
-ALLPREQ = html tarball
-
-TARFILES = mega-manual.html mega-style.css \
- figures/YP-flow-diagram.png \
- figures/using-a-pre-built-image.png \
- figures/poky-title.png figures/buildhistory.png \
- figures/buildhistory-web.png \
- figures/sdk-title.png figures/bsp-title.png \
- figures/kernel-dev-title.png figures/kernel-architecture-overview.png \
- figures/bsp-dev-flow.png \
- figures/dev-title.png \
- figures/git-workflow.png figures/index-downloads.png \
- figures/kernel-dev-flow.png \
- figures/kernel-overview-2-generic.png \
- figures/source-repos.png figures/yp-download.png \
- figures/profile-title.png figures/kernelshark-all.png \
- figures/kernelshark-choose-events.png \
- figures/kernelshark-i915-display.png \
- figures/kernelshark-output-display.png \
- figures/oprofileui-busybox.png figures/oprofileui-copy-to-user.png \
- figures/oprofileui-downloading.png figures/oprofileui-processes.png \
- figures/perf-probe-do_fork-profile.png \
- figures/perf-report-cycles-u.png \
- figures/perf-systemwide.png figures/perf-systemwide-libc.png \
- figures/perf-wget-busybox-annotate-menu.png \
- figures/perf-wget-busybox-annotate-udhcpc.png \
- figures/perf-wget-busybox-debuginfo.png \
- figures/perf-wget-busybox-dso-zoom.png \
- figures/perf-wget-busybox-dso-zoom-menu.png \
- figures/perf-wget-busybox-expanded-stripped.png \
- figures/perf-wget-flat-stripped.png \
- figures/perf-wget-g-copy-from-user-expanded-stripped.png \
- figures/perf-wget-g-copy-to-user-expanded-debuginfo.png \
- figures/perf-wget-g-copy-to-user-expanded-stripped.png \
- figures/perf-wget-g-copy-to-user-expanded-stripped-unresolved-hidden.png \
- figures/pybootchartgui-linux-yocto.png \
- figures/pychart-linux-yocto-rpm.png \
- figures/pychart-linux-yocto-rpm-nostrip.png \
- figures/sched-wakeup-profile.png figures/sysprof-callers.png \
- figures/sysprof-copy-from-user.png figures/sysprof-copy-to-user.png \
- figures/cross-development-toolchains.png \
- figures/user-configuration.png \
- figures/source-input.png figures/package-feeds.png \
- figures/layer-input.png figures/images.png figures/sdk.png \
- figures/source-fetching.png figures/patching.png \
- figures/configuration-compile-autoreconf.png \
- figures/analysis-for-package-splitting.png \
- figures/image-generation.png figures/key-dev-elements.png\
- figures/sdk-generation.png figures/recipe-workflow.png \
- figures/build-workspace-directory.png figures/mega-title.png \
- figures/toaster-title.png figures/hosted-service.png figures/multiconfig_files.png \
- figures/simple-configuration.png figures/poky-reference-distribution.png \
- figures/compatible-layers.png figures/import-layer.png figures/new-project.png \
- figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \
- figures/sdk-devtool-add-flow.png figures/sdk-installed-extensible-sdk-directory.png \
- figures/sdk-devtool-modify-flow.png \
- figures/sdk-devtool-upgrade-flow.png figures/bitbake-build-flow.png figures/bypqs-title.png \
- figures/overview-manual-title.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png \
- figures/bb_multiconfig_files.png figures/bitbake-title.png figures/cute-files-npm-example.png
-
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-
-endif
-
-ifeq ($(DOC),ref-manual)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = ref-manual.html ref-style.css figures/poky-title.png \
- figures/build-workspace-directory.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-endif
-
-ifeq ($(DOC),sdk-manual)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = sdk-manual.html sdk-style.css figures/sdk-title.png \
- figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \
- figures/sdk-installed-extensible-sdk-directory.png figures/sdk-devtool-add-flow.png \
- figures/sdk-devtool-modify-flow.png \
- figures/sdk-devtool-upgrade-flow.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-endif
-
-ifeq ($(DOC),profile-manual)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = profile-manual.html profile-manual-style.css \
- figures/profile-title.png figures/kernelshark-all.png \
- figures/kernelshark-choose-events.png \
- figures/kernelshark-i915-display.png \
- figures/kernelshark-output-display.png \
- figures/oprofileui-busybox.png figures/oprofileui-copy-to-user.png \
- figures/oprofileui-downloading.png figures/oprofileui-processes.png \
- figures/perf-probe-do_fork-profile.png \
- figures/perf-report-cycles-u.png \
- figures/perf-systemwide.png figures/perf-systemwide-libc.png \
- figures/perf-wget-busybox-annotate-menu.png \
- figures/perf-wget-busybox-annotate-udhcpc.png \
- figures/perf-wget-busybox-debuginfo.png \
- figures/perf-wget-busybox-dso-zoom.png \
- figures/perf-wget-busybox-dso-zoom-menu.png \
- figures/perf-wget-busybox-expanded-stripped.png \
- figures/perf-wget-flat-stripped.png \
- figures/perf-wget-g-copy-from-user-expanded-stripped.png \
- figures/perf-wget-g-copy-to-user-expanded-debuginfo.png \
- figures/perf-wget-g-copy-to-user-expanded-stripped.png \
- figures/perf-wget-g-copy-to-user-expanded-stripped-unresolved-hidden.png \
- figures/pybootchartgui-linux-yocto.png \
- figures/pychart-linux-yocto-rpm.png \
- figures/pychart-linux-yocto-rpm-nostrip.png \
- figures/sched-wakeup-profile.png figures/sysprof-callers.png \
- figures/sysprof-copy-from-user.png figures/sysprof-copy-to-user.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-endif
-
-ifeq ($(DOC),kernel-dev)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = kernel-dev.html kernel-dev-style.css \
- figures/kernel-dev-title.png figures/kernel-overview-2-generic.png \
- figures/kernel-architecture-overview.png figures/kernel-dev-flow.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-endif
-
-ifeq ($(DOC),toaster-manual)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = toaster-manual.html toaster-manual-style.css \
- figures/toaster-title.png figures/simple-configuration.png \
- figures/hosted-service.png \
- figures/compatible-layers.png figures/import-layer.png figures/new-project.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-endif
-
-
-ifeq ($(DOC),test-manual)
-XSLTOPTS = --xinclude
-ALLPREQ = html tarball
-TARFILES = test-manual.html test-manual-style.css \
- figures/test-manual-title.png figures/ab-test-cluster.png
-MANUALS = $(DOC)/$(DOC).html
-FIGURES = figures
-STYLESHEET = $(DOC)/*.css
-endif
-
-##
-# These URI should be rewritten by your distribution's xml catalog to
-# match your locally installed XSL stylesheets.
-XSL_BASE_URI = http://docbook.sourceforge.net/release/xsl/1.76.1
-XSL_XHTML_URI = $(XSL_BASE_URI)/xhtml/docbook.xsl
-
-all: $(ALLPREQ)
-
-pdf:
-ifeq ($(DOC),brief-yoctoprojectqs)
- @echo " "
- @echo "ERROR: You cannot generate a PDF file for brief-yoctoprojectqs."
- @echo " "
-
-else ifeq ($(DOC),mega-manual)
- @echo " "
- @echo "ERROR: You cannot generate a mega-manual PDF file."
- @echo " "
-
-else
-
- cd $(DOC); ../tools/poky-docbook-to-pdf $(DOC).xml ../template; cd ..
-endif
-
-html:
-ifeq ($(DOC),mega-manual)
-# See http://www.sagehill.net/docbookxsl/HtmlOutput.html
- @echo " "
- @echo "******** Building "$(DOC)
- @echo " "
- cd $(DOC); xsltproc $(XSLTOPTS) -o $(DOC).html $(DOC)-customization.xsl $(DOC).xml; cd ..
- @echo " "
- @echo "******** Using mega-manual.sed to process external links"
- @echo " "
- cd $(DOC); sed -f ../tools/mega-manual.sed < mega-manual.html > mega-output.html; cd ..
- @echo " "
- @echo "******** Cleaning up transient file mega-output.html"
- @echo " "
- cd $(DOC); rm mega-manual.html; mv mega-output.html mega-manual.html; cd ..
-else
-# See http://www.sagehill.net/docbookxsl/HtmlOutput.html
- @echo " "
- @echo "******** Building "$(DOC)
- @echo " "
- cd $(DOC); xsltproc $(XSLTOPTS) -o $(DOC).html $(DOC)-customization.xsl $(DOC).xml; cd ..
-endif
-
-
-tarball: html
- @echo " "
- @echo "******** Creating Tarball of document files"
- @echo " "
- cd $(DOC); tar -cvzf $(DOC).tgz $(TARFILES); cd ..
-
-validate:
- cd $(DOC); xmllint --postvalid --xinclude --noout $(DOC).xml; cd ..
-
-
-publish:
- @if test -f $(DOC)/$(DOC).html; \
- then \
- echo " "; \
- echo "******** Publishing "$(DOC)".html"; \
- echo " "; \
- scp -r $(MANUALS) $(STYLESHEET) www.yoctoproject.org:/var/www/www.yoctoproject.org-docs/$(VER)/$(DOC); \
- cd $(DOC); scp -r $(FIGURES) www.yoctoproject.org:/var/www/www.yoctoproject.org-docs/$(VER)/$(DOC); \
- else \
- echo " "; \
- echo $(DOC)".html missing. Generate the file first then try again."; \
- echo " "; \
- fi
+publish: Makefile html singlehtml
+ rm -rf $(BUILDDIR)/$(DESTDIR)/
+ mkdir -p $(BUILDDIR)/$(DESTDIR)/
+ cp -r $(BUILDDIR)/html/* $(BUILDDIR)/$(DESTDIR)/
+ cp $(BUILDDIR)/singlehtml/index.html $(BUILDDIR)/$(DESTDIR)/singleindex.html
+ sed -i -e 's@index.html#@singleindex.html#@g' $(BUILDDIR)/$(DESTDIR)/singleindex.html
clean:
- rm -rf $(MANUALS); rm $(DOC)/$(DOC).tgz;
+ @rm -rf $(BUILDDIR)
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: Makefile
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)