Fix documentation build * Doxygen needs `RECURSIVE = YES` in order to parse the `detail` subdir. * The `-W` warnings-as-errors option for sphinx doesn't work with the makefile build. Switched to calling sphinx directly. * Fix "citation [cppimport] is not referenced" warning.
diff --git a/.travis.yml b/.travis.yml index ae64317..904fb99 100644 --- a/.travis.yml +++ b/.travis.yml
@@ -73,7 +73,7 @@ curl -fsSL ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.12.linux.bin.tar.gz | tar xz export PATH="$PWD/doxygen-1.8.12/bin:$PATH" script: - - make -C docs html SPHINX_OPTIONS=-W + - $PY_CMD -m sphinx -W -b html docs docs/.build - tools/check-style.sh - flake8 cache:
diff --git a/docs/Doxyfile b/docs/Doxyfile index 4dc8bf0..1b9d129 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile
@@ -1,5 +1,6 @@ PROJECT_NAME = pybind11 INPUT = ../include/pybind11/ +RECURSIVE = YES GENERATE_HTML = NO GENERATE_LATEX = NO
diff --git a/docs/compiling.rst b/docs/compiling.rst index 90b3829..67bd75c 100644 --- a/docs/compiling.rst +++ b/docs/compiling.rst
@@ -14,10 +14,10 @@ Building with cppimport ======================== - cppimport is a small Python import hook that determines whether there is a C++ - source file whose name matches the requested module. If there is, the file is - compiled as a Python extension using pybind11 and placed in the same folder as - the C++ source file. Python is then able to find the module and load it. +[cppimport]_ is a small Python import hook that determines whether there is a C++ +source file whose name matches the requested module. If there is, the file is +compiled as a Python extension using pybind11 and placed in the same folder as +the C++ source file. Python is then able to find the module and load it. .. [cppimport] https://github.com/tbenthompson/cppimport
diff --git a/docs/conf.py b/docs/conf.py index 9f29304..81ff26e 100644 --- a/docs/conf.py +++ b/docs/conf.py
@@ -314,13 +314,13 @@ def generate_doxygen_xml(app): - build_dir = '.build' + build_dir = os.path.join(app.confdir, '.build') if not os.path.exists(build_dir): os.mkdir(build_dir) try: subprocess.call(['doxygen', '--version']) - retcode = subprocess.call(['doxygen']) + retcode = subprocess.call(['doxygen'], cwd=app.confdir) if retcode < 0: sys.stderr.write("doxygen error code: {}\n".format(-retcode)) except OSError as e: