From 48b5263646bae2ce40e3ec17e0cfae26a7abc91f Mon Sep 17 00:00:00 2001 From: David Bremner Date: Fri, 29 Oct 2021 11:54:59 -0300 Subject: [PATCH] doc/python-cffi: import from built bindings, not installed module Previously the python-cffi bindings either failed to build, or built for the wrong module by using the installed module. The fix requires correction the module path, building the bindings before docs, and helping python find the built libnotmuch. Based on patch / discussion from Micheal Gruber [1] [1]: id:cover.1634808719.git.git@grubix.eu --- doc/Makefile.local | 12 ++++++++---- doc/conf.py | 2 +- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/doc/Makefile.local b/doc/Makefile.local index f476d1da..730ad4fb 100644 --- a/doc/Makefile.local +++ b/doc/Makefile.local @@ -4,7 +4,7 @@ dir := doc # You can set these variables from the command line. SPHINXOPTS := -q -SPHINXBUILD = sphinx-build +SPHINXBUILD = env LD_LIBRARY_PATH=${NOTMUCH_BUILDDIR}/lib sphinx-build DOCBUILDDIR := $(dir)/_build # Internal variables. @@ -35,7 +35,7 @@ endif INFO_INFO_FILES := $(INFO_TEXI_FILES:.texi=.info) -.PHONY: sphinx-html sphinx-texinfo sphinx-info +.PHONY: sphinx-html sphinx-texinfo sphinx-info doc-prereqs .PHONY: install-man build-man apidocs install-apidocs @@ -46,15 +46,19 @@ ifeq ($(WITH_EMACS),1) $(DOCBUILDDIR)/.roff.stamp $(DOCBUILDDIR)/.html.stamp $(DOCBUILDDIR)/.texi.stamp : docstring.stamp endif +ifeq ($(HAVE_PYTHON3_CFFI),1) +doc-prereqs: python-cffi-bindings +endif + sphinx-html: $(DOCBUILDDIR)/.html.stamp -$(DOCBUILDDIR)/.html.stamp: $(ALL_RST_FILES) +$(DOCBUILDDIR)/.html.stamp: $(ALL_RST_FILES) doc-prereqs $(SPHINXBUILD) -b html -d $(DOCBUILDDIR)/html_doctrees $(ALLSPHINXOPTS) $(DOCBUILDDIR)/html touch $@ sphinx-texinfo: $(DOCBUILDDIR)/.texi.stamp -$(DOCBUILDDIR)/.texi.stamp: $(ALL_RST_FILES) +$(DOCBUILDDIR)/.texi.stamp: $(ALL_RST_FILES) doc-prereqs $(SPHINXBUILD) -b texinfo -d $(DOCBUILDDIR)/texinfo_doctrees $(ALLSPHINXOPTS) $(DOCBUILDDIR)/texinfo touch $@ diff --git a/doc/conf.py b/doc/conf.py index 1fbd102b..c7fd8f5a 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -25,7 +25,7 @@ for pathdir in ['.', '..']: version=infile.read().replace('\n','') # for autodoc -sys.path.insert(0, os.path.join(location, '..', 'bindings', 'python-cffi', 'notmuch2')) +sys.path.insert(0, os.path.join(location, '..', 'bindings', 'python-cffi', 'build', 'stage')) # read generated config for pathdir in ['.', '..']: