1 # SPDX-License-Identifier: MIT
3 SPHINX_SOURCE_DIR = $(srcdir)/source
4 SPHINX_EXT_DIR = $(srcdir)/ext
5 SPHINX_BUILD_DIR = $(builddir)/build
6 SPHINX_BUILD_HTML_DIR = $(SPHINX_BUILD_DIR)/html
7 SPHINX_HTML_TARGET = $(SPHINX_BUILD_HTML_DIR)/index.html
9 EXTRA_DIST = $(SPHINX_SOURCE_DIR) $(SPHINX_EXT_DIR)
11 all-local: $(SPHINX_HTML_TARGET)
13 PYTHON_BT2_BUILD_LIB_DIR = $(abs_top_builddir)/src/bindings/python/bt2/build/build_lib
14 PP = $(PYTHON_BT2_BUILD_LIB_DIR)
15 LLP = $(abs_top_builddir)/src/lib/.libs
17 # Sphinx loads the bt2 Python module and thus libbabeltrace2.so. If
18 # AddressSanitizer is used, we must preload libasan.so so that libasan doesn't
19 # complain about not being the first loaded library.
21 # Python produces some leaks, so disable leak detection (we don't care about
24 MAYBE_LD_PRELOAD = LD_PRELOAD="$$($(CC) -print-file-name=libasan.so):$(LD_PRELOAD)"
25 MAYBE_ASAN_OPTIONS = ASAN_OPTIONS="$(ASAN_OPTIONS),detect_leaks=0"
28 # `PATH` is used as a replacement for `LD_LIBRARY_PATH` on Windows
29 # builds (Cygwin, MinGW).
31 # `DYLD_LIBRARY_PATH` is used a replacement for `LD_LIBRARY_PATH` on
34 PATH="$(LLP):$$PATH" \
35 PYTHONPATH="$(PP):$(SPHINX_EXT_DIR)" \
36 LD_LIBRARY_PATH="$(LLP)" \
37 DYLD_LIBRARY_PATH="$(LLP)" \
39 $(MAYBE_ASAN_OPTIONS) \
42 $(SPHINX_SOURCE_DIR)/common.rst \
43 $(SPHINX_SOURCE_DIR)/index.rst \
44 $(SPHINX_SOURCE_DIR)/installation.rst \
45 $(SPHINX_SOURCE_DIR)/examples.rst
47 $(SPHINX_HTML_TARGET): $(SPHINX_SRC)
48 $(SPHINXBUILD) -b html -E $(SPHINX_SOURCE_DIR) $(SPHINX_BUILD_HTML_DIR)
51 rm -rf $(SPHINX_BUILD_DIR)