Even VPATH make dist succeeds now --- docs/Makefile.am | 8 ++++---- docs/apibuild.py | 23 +++++++++++++---------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/docs/Makefile.am b/docs/Makefile.am index 473bbbf..8c96e79 100644 --- a/docs/Makefile.am +++ b/docs/Makefile.am @@ -92,7 +92,7 @@ MAINTAINERCLEANFILES = $(dot_html) $(apihtml) $(devhelphtml) all: web -api: libvirt-api.xml libvirt-refs.xml +api: $(srcdir)/libvirt-api.xml $(srcdir)/libvirt-refs.xml web: $(dot_html) html/index.html devhelp/index.html @@ -146,7 +146,7 @@ internals/%.html.tmp: internals/%.html.in subsite.xsl page.xsl sitemap.html.in html/index.html: libvirt-api.xml newapi.xsl page.xsl sitemap.html.in -@if [ -x $(XSLTPROC) ] ; then \ echo "Rebuilding the HTML pages from the XML API" ; \ - $(XSLTPROC) --nonet $(srcdir)/newapi.xsl libvirt-api.xml ; fi + $(XSLTPROC) --nonet $(srcdir)/newapi.xsl $(srcdir)/libvirt-api.xml ; fi -@if test -x $(XMLLINT) && test -x $(XMLCATALOG) ; then \ if $(XMLCATALOG) '$(XML_CATALOG_FILE)' "-//W3C//DTD XHTML 1.0 Strict//EN" \ > /dev/null ; then \ @@ -159,7 +159,7 @@ $(addprefix $(srcdir)/,$(devhelphtml)): $(srcdir)/libvirt-api.xml $(devhelpxsl) -@echo Rebuilding devhelp files -@if [ -x $(XSLTPROC) ] ; then \ $(XSLTPROC) --nonet -o devhelp/libvirt.devhelp \ - $(top_srcdir)/docs/devhelp/devhelp.xsl libvirt-api.xml ; fi + $(top_srcdir)/docs/devhelp/devhelp.xsl $(srcdir)/libvirt-api.xml ; fi python_generated_files = \ $(srcdir)/html/libvirt-libvirt.html \ @@ -179,7 +179,7 @@ clean-local: rm -f *~ *.bak *.hierarchy *.signals *-unused.txt *.html maintainer-clean-local: clean-local - rm -rf libvirt-api.xml libvirt-refs.xml todo.html.in + rm -rf $(srcdir)/libvirt-api.xml $(srcdir)/libvirt-refs.xml todo.html.in rebuild: api all diff --git a/docs/apibuild.py b/docs/apibuild.py index 62b7557..895a313 100755 --- a/docs/apibuild.py +++ b/docs/apibuild.py @@ -1614,8 +1614,9 @@ class CParser: class docBuilder: """A documentation builder""" - def __init__(self, name, directories=['.'], includes=[]): + def __init__(self, name, path='.', directories=['.'], includes=[]): self.name = name + self.path = path self.directories = directories self.includes = includes + included_files.keys() self.modules = {} @@ -2062,7 +2063,7 @@ class docBuilder: output.write(" </index>\n") def serialize(self): - filename = "%s-api.xml" % self.name + filename = "%s/%s-api.xml" % (self.path, self.name) print "Saving XML description %s" % (filename) output = open(filename, "w") output.write('<?xml version="1.0" encoding="ISO-8859-1"?>\n') @@ -2098,7 +2099,7 @@ class docBuilder: output.write("</api>\n") output.close() - filename = "%s-refs.xml" % self.name + filename = "%s/%s-refs.xml" % (self.path, self.name) print "Saving XML Cross References %s" % (filename) output = open(filename, "w") output.write('<?xml version="1.0" encoding="ISO-8859-1"?>\n') @@ -2113,14 +2114,16 @@ def rebuild(): srcdir = os.environ["srcdir"] if glob.glob(srcdir + "/../src/libvirt.c") != [] : print "Rebuilding API description for libvirt" - builder = docBuilder("libvirt", - [srcdir + "/../src", - srcdir + "/../src/util", - srcdir + "/../include/libvirt"], - []) + dirs = [srcdir + "/../src", + srcdir + "/../src/util", + srcdir + "/../include/libvirt"] + if glob.glob(srcdir + "/../include/libvirt/libvirt.h") == [] : + dirs.append("../include/libvirt") + builder = docBuilder("libvirt", srcdir, dirs, []) elif glob.glob("src/libvirt.c") != [] : - print "Rebuilding API description for libvir" - builder = docBuilder("libvirt", ["src", "src/util", "include/libvirt"], + print "Rebuilding API description for libvirt" + builder = docBuilder("libvirt", srcdir, + ["src", "src/util", "include/libvirt"], []) else: print "rebuild() failed, unable to guess the module" -- 1.7.4.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list