diff --git a/docs/Makefile.am b/docs/Makefile.am index 5b2896bbe5..0311bbedd8 100644 --- a/docs/Makefile.am +++ b/docs/Makefile.am @@ -116,15 +116,15 @@ kbase_html_in = \ $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/kbase/*.html.in)) kbase_html = $(kbase_html_in:%.html.in=%.html) -# Since we ship pre-built html in the tarball, we must also -# ship the sources, even when those sources are themselves -# generated. # Generate hvsupport.html and news.html first, since they take one extra step. -dot_html_in = \ +dot_html_generated_in = \ hvsupport.html.in \ - news.html.in \ + news.html.in +dot_html_in = \ $(notdir $(wildcard $(srcdir)/*.html.in)) -dot_html = $(dot_html_in:%.html.in=%.html) +dot_html = \ + $(dot_html_generated_in:%.html.in=%.html) \ + $(dot_html_in:%.html.in=%.html) xml = \ libvirt-api.xml \ @@ -166,27 +166,32 @@ EXTRA_DIST= \ apibuild.py genaclperms.pl \ site.xsl subsite.xsl newapi.xsl page.xsl \ wrapstring.xsl \ - $(dot_html) $(dot_html_in) $(gif) $(apihtml) $(apipng) \ - $(xml) $(qemu_xml) $(lxc_xml) $(admin_xml) $(fig) $(png) $(css) \ + $(dot_html_in) $(gif) $(apipng) \ + $(fig) $(png) $(css) \ $(javascript) $(logofiles) \ - $(internals_html_in) $(internals_html) $(fonts) \ - $(kbase_html_in) $(kbase_html) \ + $(internals_html_in) $(fonts) \ + $(kbase_html_in) \ aclperms.htmlinc \ hvsupport.pl \ $(schema_DATA) acl_generated = aclperms.htmlinc -$(srcdir)/aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \ +aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \ $(srcdir)/genaclperms.pl Makefile.am $(AM_V_GEN)$(PERL) $(srcdir)/genaclperms.pl $< > $@ -MAINTAINERCLEANFILES = \ - $(addprefix $(srcdir)/,$(dot_html)) \ - $(addprefix $(srcdir)/,$(apihtml)) \ - $(addprefix $(srcdir)/,$(internals_html)) \ - $(addprefix $(srcdir)/,$(kbase_html)) \ - $(srcdir)/hvsupport.html.in $(srcdir)/aclperms.htmlinc +CLEANFILES = \ + $(dot_html) \ + $(apihtml) \ + $(internals_html) \ + $(kbase_html) \ + $(xml) \ + $(qemu_xml) \ + $(lxc_xml) \ + $(admin_xml) \ + $(dot_html_generated_in) \ + aclperms.htmlinc timestamp="$(shell if test -n "$$SOURCE_DATE_EPOCH"; \ then \ @@ -197,21 +202,21 @@ timestamp="$(shell if test -n "$$SOURCE_DATE_EPOCH"; \ all-am: web -api: $(srcdir)/libvirt-api.xml $(srcdir)/libvirt-refs.xml -qemu_api: $(srcdir)/libvirt-qemu-api.xml $(srcdir)/libvirt-qemu-refs.xml -lxc_api: $(srcdir)/libvirt-lxc-api.xml $(srcdir)/libvirt-lxc-refs.xml -admin_api: $(srcdir)/libvirt-admin-api.xml $(srcdir)/libvirt-admin-refs.xml +api: libvirt-api.xml libvirt-refs.xml +qemu_api: libvirt-qemu-api.xml libvirt-qemu-refs.xml +lxc_api: libvirt-lxc-api.xml libvirt-lxc-refs.xml +admin_api: libvirt-admin-api.xml libvirt-admin-refs.xml web: $(dot_html) $(internals_html) $(kbase_html) \ html/index.html -hvsupport.html: $(srcdir)/hvsupport.html.in +hvsupport.html: hvsupport.html.in -$(srcdir)/hvsupport.html.in: $(srcdir)/hvsupport.pl $(api_DATA) \ +hvsupport.html.in: $(srcdir)/hvsupport.pl $(api_DATA) \ $(top_srcdir)/src/libvirt_public.syms \ $(top_srcdir)/src/libvirt_qemu.syms $(top_srcdir)/src/libvirt_lxc.syms \ $(top_srcdir)/src/driver.h - $(AM_V_GEN)$(PERL) $(srcdir)/hvsupport.pl $(top_srcdir)/src > $@ \ + $(AM_V_GEN)$(PERL) $(srcdir)/hvsupport.pl $(top_srcdir) $(top_builddir) > $@ \ || { rm $@ && exit 1; } news.html.in: \ @@ -226,8 +231,6 @@ EXTRA_DIST += \ $(srcdir)/news.xml \ $(srcdir)/news.rng \ $(srcdir)/news-html.xsl -MAINTAINERCLEANFILES += \ - $(srcdir)/news.html.in %.png: %.fig convert -rotate 90 $< $@ @@ -249,36 +252,36 @@ MAINTAINERCLEANFILES += \ || { rm $@ && exit 1; } %.html: %.html.tmp - $(AM_V_GEN)$(XMLLINT) --nonet --format $< > $(srcdir)/$@ \ - || { rm $(srcdir)/$@ && exit 1; } + $(AM_V_GEN)$(XMLLINT) --nonet --format $< > $@ \ + || { rm $@ && exit 1; } $(apihtml_generated): html/index.html html/index.html: libvirt-api.xml newapi.xsl page.xsl $(APIBUILD_STAMP) - $(AM_V_GEN)$(XSLTPROC) --nonet -o $(srcdir)/ \ + $(AM_V_GEN)$(XSLTPROC) --nonet -o ./ \ --stringparam builddir '$(abs_top_builddir)' \ --stringparam timestamp $(timestamp) \ - $(srcdir)/newapi.xsl $(srcdir)/libvirt-api.xml && \ - $(XMLLINT) --nonet --noout $(srcdir)/html/*.html + $(srcdir)/newapi.xsl libvirt-api.xml && \ + $(XMLLINT) --nonet --noout html/*.html python_generated_files = \ - $(srcdir)/html/libvirt-libvirt-lxc.html \ - $(srcdir)/html/libvirt-libvirt-qemu.html \ - $(srcdir)/html/libvirt-libvirt-admin.html \ - $(srcdir)/html/libvirt-virterror.html \ - $(srcdir)/libvirt-api.xml \ - $(srcdir)/libvirt-refs.xml \ - $(srcdir)/libvirt-lxc-api.xml \ - $(srcdir)/libvirt-lxc-refs.xml \ - $(srcdir)/libvirt-qemu-api.xml \ - $(srcdir)/libvirt-qemu-refs.xml \ - $(srcdir)/libvirt-admin-api.xml \ - $(srcdir)/libvirt-admin-refs.xml \ + html/libvirt-libvirt-lxc.html \ + html/libvirt-libvirt-qemu.html \ + html/libvirt-libvirt-admin.html \ + html/libvirt-virterror.html \ + libvirt-api.xml \ + libvirt-refs.xml \ + libvirt-lxc-api.xml \ + libvirt-lxc-refs.xml \ + libvirt-qemu-api.xml \ + libvirt-qemu-refs.xml \ + libvirt-admin-api.xml \ + libvirt-admin-refs.xml \ $(NULL) APIBUILD=$(srcdir)/apibuild.py -APIBUILD_STAMP=$(APIBUILD).stamp -EXTRA_DIST += $(APIBUILD_STAMP) +APIBUILD_STAMP=apibuild.py.stamp +CLEANFILES += $(APIBUILD_STAMP) $(python_generated_files): $(APIBUILD_STAMP) @@ -327,22 +330,14 @@ $(APIBUILD_STAMP): $(srcdir)/apibuild.py \ check-local: all dist-local: all -clean-local: - rm -f *~ *.bak *.hierarchy *.signals *-unused.txt *.html html/*.html - -maintainer-clean-local: clean-local - rm -rf $(srcdir)/libvirt-api.xml $(srcdir)/libvirt-refs.xml - rm -rf $(srcdir)/libvirt-qemu-api.xml $(srcdir)/libvirt-qemu-refs.xml - rm -rf $(srcdir)/libvirt-lxc-api.xml $(srcdir)/libvirt-lxc-refs.xml - rm -rf $(srcdir)/libvirt-admin-api.xml $(srcdir)/libvirt-admin-refs.xml - rm -rf $(APIBUILD_STAMP) - rebuild: api qemu_api lxc_api admin_api all install-data-local: $(mkinstalldirs) $(DESTDIR)$(HTML_DIR) - for f in $(css) $(dot_html) $(gif) $(png); do \ + for f in $(css) $(gif) $(png); do \ $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR); done + for f in $(dot_html); do \ + $(INSTALL) -m 0644 $$f $(DESTDIR)$(HTML_DIR); done $(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/js for f in $(javascript); do \ $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR)/js/; done @@ -351,15 +346,15 @@ install-data-local: $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR)/logos; done $(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/html for h in $(apihtml); do \ - $(INSTALL) -m 0644 $(srcdir)/$$h $(DESTDIR)$(HTML_DIR)/html; done + $(INSTALL) -m 0644 $$h $(DESTDIR)$(HTML_DIR)/html; done for p in $(apipng); do \ $(INSTALL) -m 0644 $(srcdir)/$$p $(DESTDIR)$(HTML_DIR)/html; done $(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/internals for f in $(internals_html); do \ - $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR)/internals; done + $(INSTALL) -m 0644 $$f $(DESTDIR)$(HTML_DIR)/internals; done $(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/kbase for f in $(kbase_html); do \ - $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR)/kbase; done + $(INSTALL) -m 0644 $$f $(DESTDIR)$(HTML_DIR)/kbase; done $(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/fonts for f in $(fonts); do \ $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR)/fonts; \ diff --git a/docs/apibuild.py b/docs/apibuild.py index d3d0be2d83..af8595083c 100755 --- a/docs/apibuild.py +++ b/docs/apibuild.py @@ -2551,7 +2551,7 @@ class app: srcdir + "/../src/util", srcdir + "/../include/libvirt", builddir + "/../include/libvirt"] - builder = docBuilder(name, srcdir, dirs, []) + builder = docBuilder(name, builddir, dirs, []) else: self.warning("rebuild() failed, unable to guess the module") return None diff --git a/docs/hvsupport.pl b/docs/hvsupport.pl index 494b8a27ec..0977098eac 100755 --- a/docs/hvsupport.pl +++ b/docs/hvsupport.pl @@ -5,23 +5,24 @@ use warnings; use File::Find; -die "syntax: $0 SRCDIR\n" unless int(@ARGV) == 1; +die "syntax: $0 SRCDIR BUILDDIR\n" unless int(@ARGV) == 2; my $srcdir = shift @ARGV; +my $builddir = shift @ARGV; -my $symslibvirt = "$srcdir/libvirt_public.syms"; -my $symsqemu = "$srcdir/libvirt_qemu.syms"; -my $symslxc = "$srcdir/libvirt_lxc.syms"; +my $symslibvirt = "$srcdir/src/libvirt_public.syms"; +my $symsqemu = "$srcdir/src/libvirt_qemu.syms"; +my $symslxc = "$srcdir/src/libvirt_lxc.syms"; my @drivertable = ( - "$srcdir/driver-hypervisor.h", - "$srcdir/driver-interface.h", - "$srcdir/driver-network.h", - "$srcdir/driver-nodedev.h", - "$srcdir/driver-nwfilter.h", - "$srcdir/driver-secret.h", - "$srcdir/driver-state.h", - "$srcdir/driver-storage.h", - "$srcdir/driver-stream.h", + "$srcdir/src/driver-hypervisor.h", + "$srcdir/src/driver-interface.h", + "$srcdir/src/driver-network.h", + "$srcdir/src/driver-nodedev.h", + "$srcdir/src/driver-nwfilter.h", + "$srcdir/src/driver-secret.h", + "$srcdir/src/driver-state.h", + "$srcdir/src/driver-storage.h", + "$srcdir/src/driver-stream.h", ); my %groupheaders = ( @@ -38,10 +39,10 @@ my %groupheaders = ( my @srcs; find({ wanted => sub { - if (m!$srcdir/.*/\w+_(driver|common|tmpl|monitor|hal|udev)\.c$!) { + if (m!$srcdir/src/.*/\w+_(driver|common|tmpl|monitor|hal|udev)\.c$!) { push @srcs, $_ if $_ !~ /vbox_driver\.c/; } - }, no_chdir => 1}, $srcdir); + }, no_chdir => 1}, "$srcdir/src"); # Map API functions to the header and documentation files they're in # so that we can generate proper hyperlinks to their documentation. @@ -120,13 +121,13 @@ sub parseSymsFile { my %apis; # Get the list of all public APIs and their corresponding version -parseSymsFile(\%apis, "LIBVIRT", $symslibvirt, "$srcdir/../docs/libvirt-api.xml"); +parseSymsFile(\%apis, "LIBVIRT", $symslibvirt, "$builddir/docs/libvirt-api.xml"); # And the same for the QEMU specific APIs -parseSymsFile(\%apis, "LIBVIRT_QEMU", $symsqemu, "$srcdir/../docs/libvirt-qemu-api.xml"); +parseSymsFile(\%apis, "LIBVIRT_QEMU", $symsqemu, "$builddir/docs/libvirt-qemu-api.xml"); # And the same for the LXC specific APIs -parseSymsFile(\%apis, "LIBVIRT_LXC", $symslxc, "$srcdir/../docs/libvirt-lxc-api.xml"); +parseSymsFile(\%apis, "LIBVIRT_LXC", $symslxc, "$builddir/docs/libvirt-lxc-api.xml"); # Some special things which aren't public APIs,