[Libvir] [PATCH] Make "make distcheck" work.

Jim Meyering jim at meyering.net
Wed Nov 14 14:57:10 UTC 2007


Here's another infrastructure-fixing patch.
I got most of the way to an honest "make distcheck",
but fixing a final failing sub-test wasn't worth the effort,
so I punted and added the top level "distuninstallcheck"
target to make it skip that part.

	Make "make distcheck" work.

	 * Makefile.am: Expand some "*" wildcards, and (for now) disable
	   the relatively unimportant, distuninstallcheck target.
	   Fix a few redirect-directly-to-target bugs.
	   Add a few $(srcdir)/ prefixes and add an uninstall-local rule.
	 * docs/Makefile.am: More of the same.  Split some long lines.
	 * docs/examples/Makefile.am: Likewise.
	 * python/Makefile.am: Likewise.
	 * python/tests/Makefile.am: Likewise.
	 * qemud/Makefile.am: Likewise.
	 * tests/Makefile.am: Remove the directories already listed in SUBDIRS.

---
 Makefile.am               |    3 +
 docs/Makefile.am          |   95 +++++++++++++++++++++++++++++++++++++++-----
 docs/examples/Makefile.am |   13 ++++--
 python/Makefile.am        |    6 ++-
 python/tests/Makefile.am  |    2 +
 qemud/Makefile.am         |   26 ++++++++----
 tests/Makefile.am         |    8 +---
 7 files changed, 120 insertions(+), 33 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index e1e6884..eaa204e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -41,3 +41,6 @@ cov-am:
 	  > $(top_builddir)/coverage/index.html
 	for i in $(top_builddir)/src/*.gcov ; do o=`echo $$i | sed -e 's,$(top_builddir)/src,coverage,'` ; \
 	  perl $(srcdir)/scripts/coverage-report-entry.pl $$i > $$o.html ; done
+
+# disable this check
+distuninstallcheck:
diff --git a/docs/Makefile.am b/docs/Makefile.am
index c7dfe24..2aa923d 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -7,18 +7,82 @@ DOC_SOURCE_DIR=../src
 PAGES= index.html bugs.html FAQ.html remote.html
 APIPAGES=APIconstructors.html APIfiles.html APIfunctions.html \
     APIsymbols.html APIchunk0.html
-EXTRA_DIST=							\
-	   libvirt-api.xml libvirt-refs.xml apibuild.py		\
-	   *.xsl *.html *.gif html/*.html html/*.png \
-	   *.xml *.rng
-
 
 man_MANS=
 
+html =			\
+  book1.html		\
+  index.html		\
+  libvirt-conf.html	\
+  libvirt-lib.html	\
+  libvirt-libvirt.html	\
+  libvirt-virterror.html
+
+png =		\
+  left.png	\
+  up.png	\
+  home.png	\
+  right.png
+
+gif = \
+  Libxml2-Logo-90x34.gif \
+  architecture.gif \
+  node.gif \
+  redhat.gif
+
+dot_html = \
+  APIchunk0.html \
+  APIchunk1.html \
+  APIchunk2.html \
+  APIchunk3.html \
+  APIchunk4.html \
+  APIchunk5.html \
+  APIchunk6.html \
+  APIchunk7.html \
+  APIconstructors.html \
+  APIfiles.html \
+  APIfunctions.html \
+  APIsymbols.html \
+  FAQ.html \
+  architecture.html \
+  bugs.html \
+  downloads.html \
+  errors.html \
+  format.html \
+  hvsupport.html \
+  index.html \
+  intro.html \
+  libvir.html \
+  news.html \
+  python.html \
+  remote.html \
+  uri.html
+
+xml = \
+  libvirt-api.xml \
+  libvirt-refs.xml \
+  testdomfc4.xml \
+  testdomfv0.xml \
+  testnetdef.xml \
+  testnetpriv.xml \
+  testnode.xml
+
+rng = \
+  libvirt.rng \
+  network.rng
+
+EXTRA_DIST=					\
+  libvirt-api.xml libvirt-refs.xml apibuild.py	\
+  site.xsl newapi.xsl api.xsl			\
+  $(dot_html) $(gif) html			\
+  $(xml) $(rng)
+
 all: web $(top_builddir)/NEWS $(man_MANS)
 
 virsh.1: virsh.pod
-	pod2man -c "Virtualization Support" virsh.pod > virsh.1 && cp virsh.1 $(top_builddir)
+	pod2man -c "Virtualization Support" $(srcdir)/virsh.pod > $@-t
+	mv $@-t $@
+	cp $@ $(top_builddir)
 
 api: libvirt-api.xml libvirt-refs.xml $(APIPAGES) $(srcdir)/html/index.html
 
@@ -50,7 +114,9 @@ $(srcdir)/html/index.html: libvirt-api.xml $(srcdir)/newapi.xsl
 	  echo "Validating the resulting XHTML pages" ; \
 	  $(XMLLINT) --nonet --valid --noout html/*.html ; fi );
 
-libvirt-api.xml libvirt-refs.xml: apibuild.py ../include/libvirt/*.h ../src/*.h ../src/*.c
+libvirt-api.xml libvirt-refs.xml: apibuild.py \
+		$(srcdir)/../include/libvirt/*.h \
+		$(srcdir)/../src/*.h $(srcdir)/../src/*.c
 	-(./apibuild.py)
 
 $(top_builddir)/NEWS: $(top_srcdir)/docs/news.xsl $(top_srcdir)/docs/news.html
@@ -67,8 +133,15 @@ rebuild: api all
 
 install-data-local: 
 	$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)
-	- at INSTALL@ -m 0644 $(srcdir)/libvir.html $(srcdir)/FAQ.html $(srcdir)/redhat.gif $(srcdir)/Libxml2-Logo-90x34.gif $(DESTDIR)$(HTML_DIR)
+	- at INSTALL@ -m 0644 $(srcdir)/libvir.html $(srcdir)/FAQ.html \
+	    $(srcdir)/redhat.gif $(srcdir)/Libxml2-Logo-90x34.gif \
+	  $(DESTDIR)$(HTML_DIR)
 	$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/html
-	- at INSTALL@ -m 0644 $(srcdir)/html/*.html $(DESTDIR)$(HTML_DIR)/html
-	- at INSTALL@ -m 0644 $(srcdir)/html/*.png $(DESTDIR)$(HTML_DIR)/html
-
+	for h in $(html); do \
+	  $(INSTALL) -m 0644 $(srcdir)/html/$$h $(DESTDIR)$(HTML_DIR)/html; done
+	for p in $(png); do \
+	  $(INSTALL) -m 0644 $(srcdir)/html/$$p $(DESTDIR)$(HTML_DIR)/html; done
+
+uninstall-local:
+	for h in $(html); do rm $(DESTDIR)$(HTML_DIR)/html/$$h; done
+	for p in $(png); do rm $(DESTDIR)$(HTML_DIR)/html/$$p; done
diff --git a/docs/examples/Makefile.am b/docs/examples/Makefile.am
index c62d128..8a66999 100644
--- a/docs/examples/Makefile.am
+++ b/docs/examples/Makefile.am
@@ -6,15 +6,20 @@ LDADDS = @STATIC_BINARIES@ $(WARN_CFLAGS) $(top_builddir)/src/libvirt.la
 
 rebuild: examples.xml index.html
 
-examples.xml: index.py *.c
+examples.xml: index.py info1.c suspend.c
 	-@($(srcdir)/index.py)
 
 index.html: examples.xml examples.xsl $(top_srcdir)/docs/site.xsl
-	-@(if [ -x $(XSLTPROC) ] ; then 	   $(XSLTPROC) examples.xsl examples.xml && echo "Rebuilt web page" && xmllint --valid --noout index.html ; fi)
+	-@(if [ -x $(XSLTPROC) ] ; then \
+	  $(XSLTPROC) examples.xsl examples.xml \
+	    && echo "Rebuilt web page" \
+	    && xmllint --valid --noout index.html; \
+	fi)
 
 install-data-local: 
 	$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)
-	- at INSTALL@ -m 0644 $(srcdir)/*.html $(srcdir)/*.c $(srcdir)/*.xml $(srcdir)/*.xsl $(srcdir)/*.res $(DESTDIR)$(HTML_DIR)
+	- at INSTALL@ -m 0644 $(srcdir)/*.html $(srcdir)/*.c $(srcdir)/*.xml \
+	  $(srcdir)/*.xsl $(srcdir)/*.res $(DESTDIR)$(HTML_DIR)
 
 EXTRA_DIST=examples.xsl index.py examples.xml 
 
@@ -37,5 +42,3 @@ tests: $(noinst_PROGRAMS)
 	@(echo '## examples regression tests')
 	@($(CHECKER) ./suspend)
 	@($(CHECKER) ./info1)
-
-
diff --git a/python/Makefile.am b/python/Makefile.am
index 4f97610..1fe60ff 100644
--- a/python/Makefile.am
+++ b/python/Makefile.am
@@ -49,7 +49,8 @@ $(GENERATED): $(srcdir)/$(GENERATE) $(API_DESC)
 	$(PYTHON) $(srcdir)/$(GENERATE) $(srcdir)
 
 libvirt.py: $(srcdir)/libvir.py libvirtclass.py
-	cat $(srcdir)/libvir.py libvirtclass.py > libvirt.py
+	cat $(srcdir)/libvir.py libvirtclass.py > $@-t
+	mv $@-t $@
 
 $(libvirtmod_la_OBJECTS): $(GENERATED)
 
@@ -60,6 +61,9 @@ install-data-local:
 	@(for doc in $(DOCS) ; \
 	   do @INSTALL@ -m 0644 $$doc $(DESTDIR)$(DOCS_DIR) ; done)
 
+uninstall-local:
+	rm -f $(DESTDIR)$(pythondir)/libvirt.py
+
 CLEANFILES= $(GENERATED) libvirt.py
 
 else
diff --git a/python/tests/Makefile.am b/python/tests/Makefile.am
index dfa52e4..6011fef 100644
--- a/python/tests/Makefile.am
+++ b/python/tests/Makefile.am
@@ -32,3 +32,5 @@ install-data-local:
 	-(for test in $(PYTESTS); \
 	  do @INSTALL@ -m 0644 $(srcdir)/$$test $(DESTDIR)$(EXAMPLE_DIR) ; done)
 
+uninstall-local:
+	for test in $(PYTESTS); do rm -f $(DESTDIR)$(EXAMPLE_DIR)/$$test; done
diff --git a/qemud/Makefile.am b/qemud/Makefile.am
index 3da6265..6aedf8c 100644
--- a/qemud/Makefile.am
+++ b/qemud/Makefile.am
@@ -47,19 +47,23 @@ libvirtd_CFLAGS += $(AVAHI_CFLAGS)
 libvirtd_LDADD += $(AVAHI_LIBS)
 endif
 
+default_xml_dest = libvirt/qemu/networks/default.xml
 install-data-local: install-init
 	mkdir -p $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart
-	$(INSTALL_DATA) $(srcdir)/default-network.xml $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml
-	sed -i -e "s,</name>,</name>\n  <uuid>$(UUID)</uuid>," $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml
+	$(INSTALL_DATA) $(srcdir)/default-network.xml \
+	  $(DESTDIR)$(sysconfdir)/$(default_xml_dest)
+	sed -i -e "s,</name>,</name>\n  <uuid>$(UUID)</uuid>," \
+	  $(DESTDIR)$(sysconfdir)/$(default_xml_dest)
 	test -e $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml || \
-           ln -s ../default.xml $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
+           ln -s ../default.xml \
+	    $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
 	mkdir -p $(DESTDIR)$(localstatedir)/log/libvirt/qemu
 	mkdir -p $(DESTDIR)$(localstatedir)/run/libvirt
 	mkdir -p $(DESTDIR)$(localstatedir)/lib/libvirt
 
 uninstall-local: uninstall-init
 	rm -f $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
-	rm -f $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml
+	rm -f $(DESTDIR)$(sysconfdir)/$(default_xml_dest)
 	rmdir $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart || :
 	rmdir $(DESTDIR)$(localstatedir)/log/libvirt/qemu || :
 	rmdir $(DESTDIR)$(localstatedir)/run/libvirt || :
@@ -95,20 +99,24 @@ remote_dispatch_proc_switch.h: remote_generate_stubs.pl remote_protocol.x
 if LIBVIRT_INIT_SCRIPTS_RED_HAT
 install-init: libvirtd.init
 	mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d
-	$(INSTALL_SCRIPT) libvirtd.init $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd
+	$(INSTALL_SCRIPT) libvirtd.init \
+	  $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd
 	mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig
-	$(INSTALL_SCRIPT) $(srcdir)/libvirtd.sysconf $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd
+	$(INSTALL_SCRIPT) $(srcdir)/libvirtd.sysconf \
+	  $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd
 
 uninstall-init:
-	rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd
+	rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd \
+		$(DESTDIR)$(sysconfdir)/sysconfig/libvirtd
 
 libvirtd.init: libvirtd.init.in
 	sed						\
 	    -e s!\@localstatedir\@!@localstatedir@!g	\
 	    -e s!\@sbindir\@!@sbindir@!g		\
 	    -e s!\@sysconfdir\@!@sysconfdir@!g		\
-	    < $< > $@
-	chmod a+x libvirtd.init
+	    < $< > $@-t
+	chmod a+x $@-t
+	mv $@-t $@
 
 CLEANFILES = libvirtd.init
 else
diff --git a/tests/Makefile.am b/tests/Makefile.am
index fec2f20..998877a 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -34,14 +34,8 @@ LDADDS = \
 EXTRA_DIST =		\
 	xmlrpcserver.py	\
 	test_conf.sh	\
-	confdata	\
 	qemuxml2argvdata \
-	xml2sexprdata	\
-	nodeinfodata	\
-	virshdata	\
-	xencapsdata	\
-	sexpr2xmldata	\
-	xmconfigdata
+	nodeinfodata
 
 noinst_PROGRAMS = xmlrpctest xml2sexprtest sexpr2xmltest virshtest conftest \
 	reconnect xmconfigtest xencapstest qemuxml2argvtest qemuxml2xmltest \
-- 
1.5.3.5.666.gfb5f




More information about the libvir-list mailing list