From f923299fe868110435526cf768782f5ec7fd5b81 Mon Sep 17 00:00:00 2001 From: scottb Date: Wed, 28 Feb 2018 16:01:18 -0800 Subject: [PATCH] Adds the ability to override the doc build output directory from the command line. (#36604) * Adds the ability to override the doc build output from the command line. * For safety, removed straight rm of BUILDDIR and removed subdirectories instead. * Added check to see if BUILDDIR was defined to main makefile --- docs/docsite/Makefile | 12 ++++++++++-- docs/docsite/Makefile.sphinx | 6 +++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/docs/docsite/Makefile b/docs/docsite/Makefile index 4b5d8d9d20..897c48dfdf 100644 --- a/docs/docsite/Makefile +++ b/docs/docsite/Makefile @@ -11,6 +11,11 @@ else CPUS ?= $(shell nproc) endif +# Sets the build output directory if it's not already specified +ifndef BUILDDIR + BUILDDIR = _build +endif + MODULE_ARGS= ifdef MODULES MODULE_ARGS = -l $(MODULES) @@ -44,6 +49,9 @@ webdocs: docs #TODO: leaving htmlout removal for those having older versions, should eventually be removed also clean: + @echo "Cleaning $(BUILDDIR)" + -rm -rf $(BUILDDIR)/doctrees + -rm -rf $(BUILDDIR)/html -rm -rf htmlout -rm -rf module_docs -rm -rf _build @@ -103,5 +111,5 @@ epub: (CPUS=$(CPUS) make -f Makefile.sphinx epub) htmlsingle: assertrst - sphinx-build -j $(CPUS) -b html -d _build/doctrees ./rst _build/html rst/$(rst) - @echo "Output is in _build/html/$(rst:.rst=.html)" + sphinx-build -j $(CPUS) -b html -d $(BUILDDIR)/doctrees ./rst $(BUILDDIR)/html rst/$(rst) + @echo "Output is in $(BUILDDIR)/$(rst:.rst=.html)" diff --git a/docs/docsite/Makefile.sphinx b/docs/docsite/Makefile.sphinx index f109898e9e..d843506413 100644 --- a/docs/docsite/Makefile.sphinx +++ b/docs/docsite/Makefile.sphinx @@ -6,7 +6,11 @@ SPHINXOPTS = -j $(CPUS) -n -w rst_warnings SPHINXBUILD = sphinx-build SPHINXPROJ = sdfsdf SOURCEDIR = rst -BUILDDIR = _build + +# Sets the build output directory if it's not specified on the command line +ifndef BUILDDIR + BUILDDIR = _build +endif # Put it first so that "make" without argument is like "make help". help: