autogen: Touch ocaml/.depend
[libguestfs.git] / tools / Makefile.am
index f593d46..b92243c 100644 (file)
@@ -1,5 +1,5 @@
 # libguestfs virt-* tools
-# Copyright (C) 2009 Red Hat Inc.
+# Copyright (C) 2009-2010 Red Hat Inc.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-tools = cat df edit ls rescue tar
+include $(top_srcdir)/subdir-rules.mk
+
+tools = \
+       cat \
+       df \
+       edit \
+       list-filesystems \
+       list-partitions \
+       ls \
+       make-fs \
+       rescue \
+       resize \
+       tar \
+       win-reg
 
 EXTRA_DIST = \
        run-locally \
-       $(tools:%=virt-%)
+       $(tools:%=virt-%) \
+       make-test-img.sh \
+       test-virt-*.sh
+
+CLEANFILES = test.img
 
 if HAVE_TOOLS
 
 bin_SCRIPTS = $(tools:%=virt-%)
 
+# Manual pages and HTML files for the website.
+
 # XXX Bug in automake?  If you list virt-cat.1 explicitly, then it
 # builds and installs the man pages.  However if this is removed,
 # then the man pages are neither built nor installed.
@@ -47,4 +66,36 @@ $(top_builddir)/html/virt-%.1.html: virt-%
          --outfile html/$<.1.html \
          tools/$<
 
+# Tests.
+
+random_val := $(shell awk 'BEGIN{srand(); print 1+int(255*rand())}' < /dev/null)
+
+TESTS_ENVIRONMENT = \
+       MALLOC_PERTURB_=$(random_val) \
+       LD_LIBRARY_PATH=$(top_builddir)/src/.libs \
+       LIBGUESTFS_PATH=$(top_builddir)/appliance \
+       PERL5LIB=$(top_builddir)/perl/blib/lib:$(top_builddir)/perl/blib/arch
+
+# Build a standard test image to be used by all these tests.
+check_DATA = test.img
+test.img: make-test-img.sh
+       $(TESTS_ENVIRONMENT) $(srcdir)/make-test-img.sh
+
+TESTS = test-virt-cat.sh \
+       test-virt-df.sh \
+       test-virt-list-filesystems.sh \
+       test-virt-ls.sh \
+       test-virt-make-fs.sh \
+       test-virt-resize.sh \
+       test-virt-tar.sh
+
 endif
+
+# Make symlinks from virt-foo.pl to virt-foo.  This is just to keep
+# xgettext happy since it uses the file extension to determine the
+# implementation language of a file.
+
+all-local: $(tools:%=virt-%.pl)
+
+virt-%.pl: virt-%
+       ln -sf $< $@